fzq #50
@ -2,6 +2,6 @@
|
|||||||
ENV = 'production'
|
ENV = 'production'
|
||||||
|
|
||||||
# base api
|
# base api
|
||||||
VUE_APP_BASE_API = '/api'
|
VUE_APP_BASE_API = ''
|
||||||
VUE_APP_REPORT_DESIGN_URL = '/ureport/designer'
|
VUE_APP_REPORT_DESIGN_URL = '/ureport/designer'
|
||||||
VUE_APP_REPORT_VIEW_URL = '/ureport/preview'
|
VUE_APP_REPORT_VIEW_URL = '/ureport/preview'
|
||||||
|
@ -97,7 +97,7 @@
|
|||||||
"@vue/test-utils": "1.0.0-beta.29",
|
"@vue/test-utils": "1.0.0-beta.29",
|
||||||
"autoprefixer": "^9.5.1",
|
"autoprefixer": "^9.5.1",
|
||||||
"babel-core": "7.0.0-bridge.0",
|
"babel-core": "7.0.0-bridge.0",
|
||||||
"babel-eslint": "10.0.1",
|
"babel-eslint": "^8.2.2",
|
||||||
"babel-jest": "23.6.0",
|
"babel-jest": "23.6.0",
|
||||||
"chalk": "2.4.2",
|
"chalk": "2.4.2",
|
||||||
"chokidar": "2.1.5",
|
"chokidar": "2.1.5",
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-01-17 14:55:09
|
* @Date: 2022-01-17 14:55:09
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-01-17 14:59:07
|
* @LastEditTime: 2022-03-10 14:13:22
|
||||||
* @Description:
|
* @Description:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -16,6 +16,14 @@ export function ProcessInfoList(data) { // 获取工单工艺列表
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function ProcessInfoUpdata(data) { // 获取工单工艺列表
|
||||||
|
return request({
|
||||||
|
url: '/api/wms/work/order/update',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
export function ProcessInfoDetail(id) { // 获取工单工艺单条数据
|
export function ProcessInfoDetail(id) { // 获取工单工艺单条数据
|
||||||
const data = {
|
const data = {
|
||||||
'id': id
|
'id': id
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* @Date: 2021-01-04 17:34:38
|
* @Date: 2021-01-04 17:34:38
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2021-04-12 14:23:30
|
* @LastEditTime: 2022-03-10 16:42:55
|
||||||
* @FilePath: \basic-admin\src\api\org.js
|
* @FilePath: \basic-admin\src\api\org.js
|
||||||
* @Description: 框架基础模块——组织结构
|
* @Description: 框架基础模块——组织结构
|
||||||
*/
|
*/
|
||||||
@ -10,7 +10,7 @@ import request from '@/utils/request'
|
|||||||
// 获取组织结构列表
|
// 获取组织结构列表
|
||||||
export function getOrgList(data) {
|
export function getOrgList(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/org/page',
|
url: '/api/upms/org/page',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -18,7 +18,7 @@ export function getOrgList(data) {
|
|||||||
|
|
||||||
export function getOrgDetail(id) { // 获取组织结构单条数据
|
export function getOrgDetail(id) { // 获取组织结构单条数据
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/org/get',
|
url: '/api/upms/org/get',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: { id }
|
data: { id }
|
||||||
})
|
})
|
||||||
@ -26,7 +26,7 @@ export function getOrgDetail(id) { // 获取组织结构单条数据
|
|||||||
|
|
||||||
// export function getOrgAllList(data) {
|
// export function getOrgAllList(data) {
|
||||||
// return request({
|
// return request({
|
||||||
// url: '/upms/org/list',
|
// url: '/api/upms/org/list',
|
||||||
// method: 'post',
|
// method: 'post',
|
||||||
// data
|
// data
|
||||||
// })
|
// })
|
||||||
@ -35,7 +35,7 @@ export function getOrgDetail(id) { // 获取组织结构单条数据
|
|||||||
// 添加组织结构
|
// 添加组织结构
|
||||||
export function addOrg(data) {
|
export function addOrg(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/org/add',
|
url: '/api/upms/org/add',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -44,7 +44,7 @@ export function addOrg(data) {
|
|||||||
// 修改组织
|
// 修改组织
|
||||||
export function editOrg(data) {
|
export function editOrg(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/org/update',
|
url: '/api/upms/org/update',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -53,7 +53,7 @@ export function editOrg(data) {
|
|||||||
// 删除组织结构
|
// 删除组织结构
|
||||||
export function delOrg(id) {
|
export function delOrg(id) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/org/delete',
|
url: '/api/upms/org/delete',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: { id }
|
data: { id }
|
||||||
})
|
})
|
||||||
|
@ -10,7 +10,7 @@ import request from '@/utils/request'
|
|||||||
// 获取角色详细信息
|
// 获取角色详细信息
|
||||||
export function getRoleInfo(data) {
|
export function getRoleInfo(data) {
|
||||||
return request({
|
return request({
|
||||||
url: `/upms/role/get`,
|
url: `/api/upms/role/get`,
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -18,7 +18,7 @@ export function getRoleInfo(data) {
|
|||||||
|
|
||||||
export function RoleCode() { // 获取code
|
export function RoleCode() { // 获取code
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/role/get-code',
|
url: '/api/upms/role/get-code',
|
||||||
method: 'post'
|
method: 'post'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -26,7 +26,7 @@ export function RoleCode() { // 获取code
|
|||||||
// 获取角色列表
|
// 获取角色列表
|
||||||
export function getRoleList(data) {
|
export function getRoleList(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/role/list',
|
url: '/api/upms/role/list',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -35,7 +35,7 @@ export function getRoleList(data) {
|
|||||||
// 添加角色
|
// 添加角色
|
||||||
export function addRole(data) {
|
export function addRole(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/role/add',
|
url: '/api/upms/role/add',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -44,7 +44,7 @@ export function addRole(data) {
|
|||||||
// 修改角色
|
// 修改角色
|
||||||
export function updateRole(data) {
|
export function updateRole(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/role/update',
|
url: '/api/upms/role/update',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -53,7 +53,7 @@ export function updateRole(data) {
|
|||||||
// 删除角色
|
// 删除角色
|
||||||
export function deleteRole(data) {
|
export function deleteRole(data) {
|
||||||
return request({
|
return request({
|
||||||
url: `/upms/role/delete`,
|
url: `/api/upms/role/delete`,
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -62,7 +62,7 @@ export function deleteRole(data) {
|
|||||||
// 启停角色
|
// 启停角色
|
||||||
export function enableRole(data) {
|
export function enableRole(data) {
|
||||||
return request({
|
return request({
|
||||||
url: `/upms/role/enabled`,
|
url: `/api/upms/role/enabled`,
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -71,7 +71,7 @@ export function enableRole(data) {
|
|||||||
// 用户-角色关联授权
|
// 用户-角色关联授权
|
||||||
export function saveUserRole(data) {
|
export function saveUserRole(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/role/saveUserRole',
|
url: '/api/upms/role/saveUserRole',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -80,7 +80,7 @@ export function saveUserRole(data) {
|
|||||||
// 用户-角色关联获取
|
// 用户-角色关联获取
|
||||||
export function listByUser(id) {
|
export function listByUser(id) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/role/listByUser',
|
url: '/api/upms/role/listByUser',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: { id }
|
data: { id }
|
||||||
})
|
})
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* @Date: 2020-12-14 09:07:03
|
* @Date: 2020-12-14 09:07:03
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-01-11 15:45:54
|
* @LastEditTime: 2022-03-10 16:41:55
|
||||||
* @FilePath: \basic-admin\src\api\user.js
|
* @FilePath: \basic-admin\src\api\user.js
|
||||||
* @Description: 用户管理 & 登录用户的相关api接口定义
|
* @Description: 用户管理 & 登录用户的相关api接口定义
|
||||||
*/
|
*/
|
||||||
@ -38,7 +38,7 @@ export function getUserInfo(data) {
|
|||||||
// 修改当前用户密码
|
// 修改当前用户密码
|
||||||
export function editUserPW(data) {
|
export function editUserPW(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/user/modifyPassword',
|
url: '/api/upms/user/modifyPassword',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -47,17 +47,17 @@ export function editUserPW(data) {
|
|||||||
// 当前用户 找回密码
|
// 当前用户 找回密码
|
||||||
export function findUserPW(data) {
|
export function findUserPW(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/user/findPassword',
|
url: '/api/upms/user/findPassword',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 下面为:用户管理列表
|
// 下面为:用户管理列表
|
||||||
// 获取用户列表 (根据需求可以考虑换成带分页的 /upms/user/page)
|
// 获取用户列表 (根据需求可以考虑换成带分页的 /api/upms/user/page)
|
||||||
export function getUserList(data) {
|
export function getUserList(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/user/page',
|
url: '/api/upms/user/page',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -66,7 +66,7 @@ export function getUserList(data) {
|
|||||||
// 新增用户
|
// 新增用户
|
||||||
export function addUser(data) {
|
export function addUser(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/user/add',
|
url: '/api/upms/user/add',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -75,7 +75,7 @@ export function addUser(data) {
|
|||||||
// 删除用户
|
// 删除用户
|
||||||
export function delUser(data) {
|
export function delUser(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/user/delete',
|
url: '/api/upms/user/delete',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -84,7 +84,7 @@ export function delUser(data) {
|
|||||||
// 修改用户信息
|
// 修改用户信息
|
||||||
export function editUser(data) {
|
export function editUser(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/user/update',
|
url: '/api/upms/user/update',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -93,7 +93,7 @@ export function editUser(data) {
|
|||||||
// 获取用户详细信息
|
// 获取用户详细信息
|
||||||
export function getUserDetail(data) {
|
export function getUserDetail(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/user/get',
|
url: '/api/upms/user/get',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -102,7 +102,7 @@ export function getUserDetail(data) {
|
|||||||
// 管理员重置用户的密码
|
// 管理员重置用户的密码
|
||||||
export function resetUserPW(data) {
|
export function resetUserPW(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/user/resetPassword',
|
url: '/api/upms/user/resetPassword',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
@ -111,7 +111,7 @@ export function resetUserPW(data) {
|
|||||||
// 启停用户信息
|
// 启停用户信息
|
||||||
export function enableUser(data) {
|
export function enableUser(data) {
|
||||||
return request({
|
return request({
|
||||||
url: '/upms/user/enabled',
|
url: '/api/upms/user/enabled',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
|
@ -258,8 +258,8 @@ export default {
|
|||||||
},
|
},
|
||||||
routerTitle: {
|
routerTitle: {
|
||||||
dashboard: {
|
dashboard: {
|
||||||
zh: '仪表盘',
|
zh: '首页',
|
||||||
en: 'Dashboard'
|
en: 'Home'
|
||||||
},
|
},
|
||||||
basic: {
|
basic: {
|
||||||
zh: '系统管理',
|
zh: '系统管理',
|
||||||
@ -751,6 +751,10 @@ export default {
|
|||||||
HistoricalTask: {
|
HistoricalTask: {
|
||||||
zh: '历史任务',
|
zh: '历史任务',
|
||||||
en: 'Historical Task'
|
en: 'Historical Task'
|
||||||
|
},
|
||||||
|
ProcessStorageManagement: {
|
||||||
|
zh: '工序存储区域管理',
|
||||||
|
en: 'Process Storage Management'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
order: {
|
order: {
|
||||||
@ -761,8 +765,8 @@ export default {
|
|||||||
en: 'Power Classification'
|
en: 'Power Classification'
|
||||||
},
|
},
|
||||||
ProcessInfo: {
|
ProcessInfo: {
|
||||||
zh: '工艺信息',
|
zh: '工单工艺信息',
|
||||||
en: 'Process Info'
|
en: 'Order Process Info'
|
||||||
},
|
},
|
||||||
ExecutionInfo: {
|
ExecutionInfo: {
|
||||||
zh: '执行信息',
|
zh: '执行信息',
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* @Author: gtz
|
* @Author: gtz
|
||||||
* @Date: 2021-03-08 09:45:54
|
* @Date: 2021-03-08 09:45:54
|
||||||
* @LastEditors: gtz
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2021-04-15 19:34:46
|
* @LastEditTime: 2022-03-04 15:07:12
|
||||||
* @Description: file content
|
* @Description: file content
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -47,6 +47,7 @@ export default {
|
|||||||
sameEqError: 'Can not choice same equipment!',
|
sameEqError: 'Can not choice same equipment!',
|
||||||
processList: {
|
processList: {
|
||||||
processName: 'Process Step Name',
|
processName: 'Process Step Name',
|
||||||
|
processCode: 'process Code',
|
||||||
processEq: 'Process Step Equipment',
|
processEq: 'Process Step Equipment',
|
||||||
description: 'Description',
|
description: 'Description',
|
||||||
addProcess: 'Add a Process Step',
|
addProcess: 'Add a Process Step',
|
||||||
|
@ -1,8 +1,13 @@
|
|||||||
/*
|
/*
|
||||||
* @Author: gtz
|
* @Author: gtz
|
||||||
* @Date: 2021-03-04 16:13:51
|
* @Date: 2021-03-04 16:13:51
|
||||||
|
<<<<<<< HEAD
|
||||||
* @LastEditors: fzq
|
* @LastEditors: fzq
|
||||||
* @LastEditTime: 2022-03-10 14:05:21
|
* @LastEditTime: 2022-03-10 14:05:21
|
||||||
|
=======
|
||||||
|
* @LastEditors: zwq
|
||||||
|
* @LastEditTime: 2022-03-09 16:34:56
|
||||||
|
>>>>>>> develop
|
||||||
* @Description: file content
|
* @Description: file content
|
||||||
*/
|
*/
|
||||||
export default {
|
export default {
|
||||||
@ -30,6 +35,7 @@ export default {
|
|||||||
cancelButtonText: 'cancel',
|
cancelButtonText: 'cancel',
|
||||||
Tips: 'Tips',
|
Tips: 'Tips',
|
||||||
TipsBefore: 'Are you sure you want to delete',
|
TipsBefore: 'Are you sure you want to delete',
|
||||||
|
TipsStorageBefore: 'Confirm to add location:',
|
||||||
Description: 'Description',
|
Description: 'Description',
|
||||||
Remarks: 'Remarks',
|
Remarks: 'Remarks',
|
||||||
Yes: 'Yes',
|
Yes: 'Yes',
|
||||||
@ -304,6 +310,7 @@ export default {
|
|||||||
BoxStatus: 'Box Status',
|
BoxStatus: 'Box Status',
|
||||||
BoxNumber: 'Box Number',
|
BoxNumber: 'Box Number',
|
||||||
PreviousOperation: 'Previous Operation',
|
PreviousOperation: 'Previous Operation',
|
||||||
|
ExecutionOperation: 'Execution Operation',
|
||||||
NextOperation: 'Next Operation',
|
NextOperation: 'Next Operation',
|
||||||
CompletionTime: 'Completion Time',
|
CompletionTime: 'Completion Time',
|
||||||
StartLocation: 'Start Location',
|
StartLocation: 'Start Location',
|
||||||
@ -311,15 +318,20 @@ export default {
|
|||||||
TaskLocation: 'Task Location',
|
TaskLocation: 'Task Location',
|
||||||
TargetLocation: 'Target Location',
|
TargetLocation: 'Target Location',
|
||||||
OrderName: 'Order Name',
|
OrderName: 'Order Name',
|
||||||
|
OrderType: 'Order Type',
|
||||||
OrderCode: 'Order Code',
|
OrderCode: 'Order Code',
|
||||||
IssueOrderTime: 'Issue Order Time',
|
IssueOrderTime: 'Issue Order Time',
|
||||||
|
startProduceTime: 'Start Produce Time',
|
||||||
TotalProcessName: 'Total Process Name',
|
TotalProcessName: 'Total Process Name',
|
||||||
Priority: 'Priority',
|
Priority: 'Priority',
|
||||||
OrderStatus: 'Order Status',
|
OrderStatus: 'Order Status',
|
||||||
|
triggerOrigin: 'Trigger Origin',
|
||||||
ProcessOrNot: 'Process Or Not',
|
ProcessOrNot: 'Process Or Not',
|
||||||
Unit: 'Unit',
|
Unit: 'Unit',
|
||||||
|
scrapQuantity: 'Scrap Quantity',
|
||||||
RelateProcess: 'Relate Process',
|
RelateProcess: 'Relate Process',
|
||||||
PlanProcessQuantity: 'Plan Process Quantity',
|
PlanProcessQuantity: 'Plan Process Quantity',
|
||||||
|
actualProcessQuantity: 'Actual Process Quantity',
|
||||||
SubProcessName: 'Sub Process Name',
|
SubProcessName: 'Sub Process Name',
|
||||||
TaskBoxNumber: 'Task Box Number',
|
TaskBoxNumber: 'Task Box Number',
|
||||||
FullBoxNumber: 'Full Box Number',
|
FullBoxNumber: 'Full Box Number',
|
||||||
@ -332,6 +344,10 @@ export default {
|
|||||||
IsEmpty: 'Is Empty',
|
IsEmpty: 'Is Empty',
|
||||||
IsEmptyBox: 'Is Empty Box',
|
IsEmptyBox: 'Is Empty Box',
|
||||||
LocationName: 'Location Name',
|
LocationName: 'Location Name',
|
||||||
LocationCode: 'Location Code'
|
LocationCode: 'Location Code',
|
||||||
|
PerformTaskManual: 'Perform Task Manual',
|
||||||
|
processStorageLink: 'Process Storage Link',
|
||||||
|
SelectStorageType: 'Select Storage Type',
|
||||||
|
LocationStorageSetting: 'Location Storage Setting'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
/*
|
/*
|
||||||
* @Author: gtz
|
* @Author: gtz
|
||||||
* @Date: 2021-03-08 09:46:00
|
* @Date: 2021-03-08 09:46:00
|
||||||
* @LastEditors: gtz
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2021-04-15 19:35:00
|
* @LastEditTime: 2022-03-04 15:07:02
|
||||||
* @Description: file content
|
* @Description: file content
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -47,6 +47,7 @@ export default {
|
|||||||
sameEqError: '不能选择相同的设备!',
|
sameEqError: '不能选择相同的设备!',
|
||||||
processList: {
|
processList: {
|
||||||
processName: '工序名称',
|
processName: '工序名称',
|
||||||
|
processCode: '工序编码',
|
||||||
processEq: '工序设备',
|
processEq: '工序设备',
|
||||||
description: '描述',
|
description: '描述',
|
||||||
addProcess: '添加一道工序',
|
addProcess: '添加一道工序',
|
||||||
|
@ -1,9 +1,14 @@
|
|||||||
/*
|
/*
|
||||||
* @Author: gtz
|
* @Author: gtz
|
||||||
* @Date: 2021-03-04 16:13:51
|
* @Date: 2021-03-04 16:13:51
|
||||||
|
<<<<<<< HEAD
|
||||||
* @LastEditors: fzq
|
* @LastEditors: fzq
|
||||||
* @LastEditTime: 2022-03-10 14:05:01
|
* @LastEditTime: 2022-03-10 14:05:01
|
||||||
* @Description: file content
|
* @Description: file content
|
||||||
|
=======
|
||||||
|
* @LastEditors: zwq
|
||||||
|
* @LastEditTime: 2022-03-09 16:34:50
|
||||||
|
>>>>>>> develop
|
||||||
*/
|
*/
|
||||||
export default {
|
export default {
|
||||||
visual: {
|
visual: {
|
||||||
@ -30,6 +35,7 @@ export default {
|
|||||||
cancelButtonText: '取消',
|
cancelButtonText: '取消',
|
||||||
Tips: '提示',
|
Tips: '提示',
|
||||||
TipsBefore: '确定删除',
|
TipsBefore: '确定删除',
|
||||||
|
TipsStorageBefore: '确定添加库位:',
|
||||||
Description: '描述',
|
Description: '描述',
|
||||||
Remarks: '备注',
|
Remarks: '备注',
|
||||||
Or: '或',
|
Or: '或',
|
||||||
@ -311,6 +317,7 @@ export default {
|
|||||||
BoxStatus: '箱状态',
|
BoxStatus: '箱状态',
|
||||||
BoxNumber: '箱号',
|
BoxNumber: '箱号',
|
||||||
PreviousOperation: '上一个工序',
|
PreviousOperation: '上一个工序',
|
||||||
|
ExecutionOperation: '执行工序',
|
||||||
NextOperation: '下一个工序',
|
NextOperation: '下一个工序',
|
||||||
CompletionTime: '完成时间',
|
CompletionTime: '完成时间',
|
||||||
StartLocation: '开始库位',
|
StartLocation: '开始库位',
|
||||||
@ -318,15 +325,20 @@ export default {
|
|||||||
TaskLocation: '任务库位',
|
TaskLocation: '任务库位',
|
||||||
TargetLocation: '目标库位',
|
TargetLocation: '目标库位',
|
||||||
OrderName: '工单名',
|
OrderName: '工单名',
|
||||||
|
OrderType: '工单类型',
|
||||||
OrderCode: '工单编码',
|
OrderCode: '工单编码',
|
||||||
IssueOrderTime: '下发工单时间',
|
IssueOrderTime: '下发工单时间',
|
||||||
|
startProduceTime: '开始生产时间',
|
||||||
TotalProcessName: '总工艺名称',
|
TotalProcessName: '总工艺名称',
|
||||||
Priority: '优先级',
|
Priority: '优先级',
|
||||||
|
scrapQuantity: '废片数量',
|
||||||
OrderStatus: '工单状态',
|
OrderStatus: '工单状态',
|
||||||
|
triggerOrigin: '工单发起方',
|
||||||
ProcessOrNot: '是否关联工艺',
|
ProcessOrNot: '是否关联工艺',
|
||||||
Unit: '单位',
|
Unit: '单位',
|
||||||
RelateProcess: '关联工艺',
|
RelateProcess: '关联工艺',
|
||||||
PlanProcessQuantity: '计划加工数量',
|
PlanProcessQuantity: '计划加工数量',
|
||||||
|
actualProcessQuantity: '实际加工数量',
|
||||||
SubProcessName: '分工艺',
|
SubProcessName: '分工艺',
|
||||||
TaskBoxNumber: '任务箱号',
|
TaskBoxNumber: '任务箱号',
|
||||||
FullBoxNumber: '空箱号',
|
FullBoxNumber: '空箱号',
|
||||||
@ -339,7 +351,10 @@ export default {
|
|||||||
IsEmpty: '是否有基板',
|
IsEmpty: '是否有基板',
|
||||||
IsEmptyBox: '是否空箱',
|
IsEmptyBox: '是否空箱',
|
||||||
LocationName: '库位名',
|
LocationName: '库位名',
|
||||||
LocationCode: '库位编码'
|
LocationCode: '库位编码',
|
||||||
|
PerformTaskManual: '手动执行任务',
|
||||||
|
processStorageLink: '工序关联库位',
|
||||||
|
SelectStorageType: '选择库位类型',
|
||||||
|
LocationStorageSetting: '库位存储箱设置'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -34,16 +34,6 @@
|
|||||||
<!-- <i class="el-icon-caret-bottom" /> -->
|
<!-- <i class="el-icon-caret-bottom" /> -->
|
||||||
</div>
|
</div>
|
||||||
<el-dropdown-menu slot="dropdown">
|
<el-dropdown-menu slot="dropdown">
|
||||||
<router-link to="/profile/index">
|
|
||||||
<el-dropdown-item>
|
|
||||||
<svg-icon class="item-icon" icon-class="user" />
|
|
||||||
{{ 'navbar.profile' | i18nFilter }}
|
|
||||||
</el-dropdown-item>
|
|
||||||
</router-link>
|
|
||||||
<el-dropdown-item @click.native="toHome">
|
|
||||||
<svg-icon class="item-icon" icon-class="help" />
|
|
||||||
{{ 'navbar.help' | i18nFilter }}
|
|
||||||
</el-dropdown-item>
|
|
||||||
<el-dropdown-item @click.native="logout">
|
<el-dropdown-item @click.native="logout">
|
||||||
<svg-icon class="item-icon" icon-class="logout" />
|
<svg-icon class="item-icon" icon-class="logout" />
|
||||||
{{ 'navbar.logOut' | i18nFilter }}
|
{{ 'navbar.logOut' | i18nFilter }}
|
||||||
|
@ -57,19 +57,19 @@ export const constantRoutes = [
|
|||||||
component: () => import('@/views/login/index'),
|
component: () => import('@/views/login/index'),
|
||||||
hidden: true
|
hidden: true
|
||||||
},
|
},
|
||||||
// {
|
{
|
||||||
// path: '/',
|
path: '/',
|
||||||
// component: Layout,
|
component: Layout,
|
||||||
// redirect: '/dashboard',
|
redirect: '/dashboard',
|
||||||
// children: [
|
children: [
|
||||||
// {
|
{
|
||||||
// path: 'dashboard',
|
path: 'dashboard',
|
||||||
// component: () => import('@/views/dashboard/index'),
|
component: () => import('@/views/dashboard/index'),
|
||||||
// name: 'Dashboard',
|
name: 'Dashboard',
|
||||||
// meta: { title: routerTitle.dashboard?.[language] || routerTitle.dashboard.en, icon: 'form', iconPart: 'dashboard', affix: true, required: true, requireToken: true }
|
meta: { title: routerTitle.dashboard?.[language] || routerTitle.dashboard.en, icon: 'form', iconPart: 'dashboard', affix: true, required: true, requireToken: true }
|
||||||
// }
|
}
|
||||||
// ]
|
]
|
||||||
// },
|
},
|
||||||
// {
|
// {
|
||||||
// path: '/',
|
// path: '/',
|
||||||
// component: () => import('@/views/ChoicePart'),
|
// component: () => import('@/views/ChoicePart'),
|
||||||
@ -299,6 +299,29 @@ export const constantRoutes = [
|
|||||||
import('@/views/basicData/Warehouse/HistoricalTask'),
|
import('@/views/basicData/Warehouse/HistoricalTask'),
|
||||||
name: 'HistoricalTask',
|
name: 'HistoricalTask',
|
||||||
meta: { title: routerTitle.Warehouse.HistoricalTask?.[language] || routerTitle.Warehouse.HistoricalTask.en, icon: 'form', affix: true, required: true, requireToken: true }
|
meta: { title: routerTitle.Warehouse.HistoricalTask?.[language] || routerTitle.Warehouse.HistoricalTask.en, icon: 'form', affix: true, required: true, requireToken: true }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/ProcessStorageManagement',
|
||||||
|
component: () =>
|
||||||
|
import('@/views/basicData/Warehouse/ProcessStorageManagement'),
|
||||||
|
name: 'ProcessStorageManagement',
|
||||||
|
meta: { title: routerTitle.Warehouse.ProcessStorageManagement?.[language] || routerTitle.Warehouse.ProcessStorageManagement.en, icon: 'form', affix: true, required: true, requireToken: true }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/ProcessStorageManagementInfo',
|
||||||
|
hidden: true,
|
||||||
|
component: () =>
|
||||||
|
import('@/views/basicData/Warehouse/components/ProcessStorageManagement-info'),
|
||||||
|
name: 'ProcessStorageManagementInfo',
|
||||||
|
meta: { title: routerTitle.Warehouse.ProcessStorageManagement?.[language] || routerTitle.Warehouse.ProcessStorageManagement.en, icon: 'form', affix: true, required: true, requireToken: true }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: '/ProcessStorageLink',
|
||||||
|
hidden: true,
|
||||||
|
component: () =>
|
||||||
|
import('@/views/basicData/Warehouse/components/processStorageLink'),
|
||||||
|
name: 'ProcessStorageLink',
|
||||||
|
meta: { title: routerTitle.Warehouse.ProcessStorageManagement?.[language] || routerTitle.Warehouse.ProcessStorageManagement.en, icon: 'form', affix: true, required: true, requireToken: true }
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -198,3 +198,40 @@ aside {
|
|||||||
.el-dialog__wrapper {
|
.el-dialog__wrapper {
|
||||||
backdrop-filter: blur(5px);
|
backdrop-filter: blur(5px);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar {
|
||||||
|
width: 8px;
|
||||||
|
height: 8px;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar-track-piece {
|
||||||
|
background-color:rgba(144,147,153,0);
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar-corner {
|
||||||
|
background-color:rgba(144,147,153,0);
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar-track {
|
||||||
|
width: 6px;
|
||||||
|
background: rgba(144,147,153,0);
|
||||||
|
-webkit-border-radius: 2em;
|
||||||
|
-moz-border-radius: 2em;
|
||||||
|
border-radius: 2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar-thumb {
|
||||||
|
background-color: rgba(144,147,153,.5);
|
||||||
|
background-clip: padding-box;
|
||||||
|
min-height: 28px;
|
||||||
|
-webkit-border-radius: 2em;
|
||||||
|
-moz-border-radius: 2em;
|
||||||
|
border-radius: 2em;
|
||||||
|
transition: background-color .3s;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar-thumb:hover {
|
||||||
|
background-color: rgba(144,147,153,.3);
|
||||||
|
}
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2020-12-29 16:37:56
|
* @Date: 2020-12-29 16:37:56
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-03-04 10:39:52
|
* @LastEditTime: 2022-03-09 14:59:52
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -91,7 +91,7 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item :label="$t('module.basicData.ScrapInfo.name')" prop="equipmentId">
|
<el-form-item :label="$t('module.basicData.ScrapInfo.name')" prop="equipmentId">
|
||||||
<el-select v-model="dataForm.equipmentId" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.name')])" clearable :style="{width: '100%'}" @change="getScrapGrade">
|
<el-select v-model="dataForm.equipmentId" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.name')])" clearable :style="{width: '100%'}">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="(item, index) in device"
|
v-for="(item, index) in device"
|
||||||
:key="index"
|
:key="index"
|
||||||
@ -101,10 +101,6 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item v-if="tag" :label="$t('module.basicData.ScrapInfo.wasteGrade')" prop="ewasteGrade">
|
|
||||||
<el-input v-model="wasteGrade" clear readonly :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.wasteGrade')])" :disabled="true" />
|
|
||||||
</el-form-item>
|
|
||||||
|
|
||||||
<el-form-item :label="$t('module.basicData.ScrapInfo.cause')" prop="scrapReasonId">
|
<el-form-item :label="$t('module.basicData.ScrapInfo.cause')" prop="scrapReasonId">
|
||||||
<!-- <el-input v-model="dataForm.registerPerson" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.RegisterPerson')])" clearable :style="{width: '100%'}" /> -->
|
<!-- <el-input v-model="dataForm.registerPerson" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.RegisterPerson')])" clearable :style="{width: '100%'}" /> -->
|
||||||
<el-select
|
<el-select
|
||||||
@ -140,7 +136,7 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import i18n from '@/lang'
|
import i18n from '@/lang'
|
||||||
import { getScrapInfo, editScrapInfo, addScrapInfo, getScrap } from '@/api/quality-manage/scrap'
|
import { getScrapInfo, editScrapInfo, addScrapInfo } from '@/api/quality-manage/scrap'
|
||||||
import { scrapReasonList } from '@/api/dict'
|
import { scrapReasonList } from '@/api/dict'
|
||||||
import { getDictWorker } from '@/api/dict'
|
import { getDictWorker } from '@/api/dict'
|
||||||
import { getEqList } from '@/api/equipment/maintain'
|
import { getEqList } from '@/api/equipment/maintain'
|
||||||
@ -182,19 +178,9 @@ export default {
|
|||||||
wasteGradeArr,
|
wasteGradeArr,
|
||||||
entryType,
|
entryType,
|
||||||
rules: {
|
rules: {
|
||||||
name: [{
|
|
||||||
required: true,
|
|
||||||
message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.ScrapInfo.WasteName')]),
|
|
||||||
trigger: 'blur'
|
|
||||||
}],
|
|
||||||
code: [{
|
|
||||||
required: true,
|
|
||||||
message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.ScrapInfo.WasteCode')]),
|
|
||||||
trigger: 'blur'
|
|
||||||
}],
|
|
||||||
equipmentId: [{
|
equipmentId: [{
|
||||||
required: true,
|
required: true,
|
||||||
message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.ScrapInfo.equipmentId')]),
|
message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.ScrapInfo.name')]),
|
||||||
trigger: 'change'
|
trigger: 'change'
|
||||||
}],
|
}],
|
||||||
substrateId: [{
|
substrateId: [{
|
||||||
@ -206,6 +192,11 @@ export default {
|
|||||||
required: true,
|
required: true,
|
||||||
message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.ScrapInfo.registerPerson')]),
|
message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.ScrapInfo.registerPerson')]),
|
||||||
trigger: 'change'
|
trigger: 'change'
|
||||||
|
}],
|
||||||
|
scrapReasonId: [{
|
||||||
|
required: true,
|
||||||
|
message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.ScrapInfo.cause')]),
|
||||||
|
trigger: 'change'
|
||||||
}]
|
}]
|
||||||
},
|
},
|
||||||
dict: {
|
dict: {
|
||||||
@ -214,7 +205,6 @@ export default {
|
|||||||
orderList: []
|
orderList: []
|
||||||
},
|
},
|
||||||
device: [],
|
device: [],
|
||||||
wasteGrade: '',
|
|
||||||
tag: false
|
tag: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -222,19 +212,6 @@ export default {
|
|||||||
this.getDict()
|
this.getDict()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getScrapGrade(val) {
|
|
||||||
getScrap(val).then(res => {
|
|
||||||
if (res.code === 0) {
|
|
||||||
if (res.data) {
|
|
||||||
this.tag = true
|
|
||||||
this.wasteGrade = res.data.dataName
|
|
||||||
} else {
|
|
||||||
this.tag = false
|
|
||||||
this.wasteGrade = ''
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
onClose() {
|
onClose() {
|
||||||
this.$refs['dataForm'].resetFields()
|
this.$refs['dataForm'].resetFields()
|
||||||
},
|
},
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-04-06 19:33:11
|
* @Date: 2021-04-06 19:33:11
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2021-07-09 09:42:54
|
* @LastEditTime: 2022-03-10 16:54:48
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -257,7 +257,7 @@ export default {
|
|||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
this.list = res.data.records
|
this.list = res.data.records
|
||||||
this.list.forEach(item => {
|
this.list.forEach(item => {
|
||||||
item.roleName = item.stringList.toString()
|
item.roleName = item.stringList?.toString()
|
||||||
})
|
})
|
||||||
this.total = res.data.total
|
this.total = res.data.total
|
||||||
this.listLoading = false
|
this.listLoading = false
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2020-12-29 16:37:56
|
* @Date: 2020-12-29 16:37:56
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-03-03 16:43:26
|
* @LastEditTime: 2022-03-09 16:53:23
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -16,7 +16,7 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('module.art.processList.processEq')" prop="equipmentIds">
|
<el-form-item :label="$t('module.art.processList.processEq')" prop="equipmentIds">
|
||||||
<el-select v-model="dataForm.equipmentIds" clearable filterable multiple>
|
<el-select v-model="dataForm.equipmentIds" clearable filterable multiple>
|
||||||
<el-option v-for="item in eqList" :key="item.id" :value="item.id" :label="item.enName" />
|
<el-option v-for="item in eqList" :key="item.id" :value="item.id" :label="item.name" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- <el-form-item :label="$t('module.art.processList.type')" prop="type">
|
<!-- <el-form-item :label="$t('module.art.processList.type')" prop="type">
|
||||||
@ -24,7 +24,7 @@
|
|||||||
<el-option v-for="item in typeList" :key="item.id" :value="item.id" :label="item.name" />
|
<el-option v-for="item in typeList" :key="item.id" :value="item.id" :label="item.name" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item> -->
|
</el-form-item> -->
|
||||||
<el-form-item :label="$t('module.art.processList.description')" prop="address">
|
<el-form-item :label="$t('module.art.processList.description')" prop="description">
|
||||||
<el-input v-model="dataForm.description" :placeholder="$i18nForm(['placeholder.input', $t('module.art.processList.description')])" clearable />
|
<el-input v-model="dataForm.description" :placeholder="$i18nForm(['placeholder.input', $t('module.art.processList.description')])" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
@ -88,10 +88,7 @@ export default {
|
|||||||
this.$refs['dataForm'].resetFields()
|
this.$refs['dataForm'].resetFields()
|
||||||
if (this.dataForm.id) {
|
if (this.dataForm.id) {
|
||||||
getInfo({ id: this.dataForm.id }).then(res => {
|
getInfo({ id: this.dataForm.id }).then(res => {
|
||||||
this.dataForm.id = res.data.id
|
this.dataForm = res.data
|
||||||
this.dataForm.name = res.data.name
|
|
||||||
this.dataForm.type = res.data.type
|
|
||||||
this.dataForm.description = res.data.description
|
|
||||||
this.dataForm.equipmentIds = res.data.equipments.map(item => {
|
this.dataForm.equipmentIds = res.data.equipments.map(item => {
|
||||||
return item.id
|
return item.id
|
||||||
})
|
})
|
||||||
@ -101,7 +98,6 @@ export default {
|
|||||||
},
|
},
|
||||||
// 表单提交
|
// 表单提交
|
||||||
dataFormSubmit() {
|
dataFormSubmit() {
|
||||||
console.log(!this.dataForm.id)
|
|
||||||
this.$refs['dataForm'].validate((valid) => {
|
this.$refs['dataForm'].validate((valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
const data = {
|
const data = {
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item> -->
|
</el-form-item> -->
|
||||||
<el-form-item v-if="false" :label="$t('module.art.artBOM')" prop="bomId">
|
<!-- <el-form-item v-if="false" :label="$t('module.art.artBOM')" prop="bomId">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="obj.bomId"
|
v-model="obj.bomId"
|
||||||
:class="$style.select"
|
:class="$style.select"
|
||||||
@ -47,7 +47,7 @@
|
|||||||
:value="item.id"
|
:value="item.id"
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item> -->
|
||||||
<el-form-item :label="$t('module.art.description')" prop="description">
|
<el-form-item :label="$t('module.art.description')" prop="description">
|
||||||
<el-input v-model="obj.description" />
|
<el-input v-model="obj.description" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -63,7 +63,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { add, update, getInfo, listSubstrate, listBom, getCode } from '@/api/art-manage/art.js'
|
import { add, update, getInfo, getCode } from '@/api/art-manage/art.js'
|
||||||
import SubmitBar from '@/views/art/components/submit-bar'
|
import SubmitBar from '@/views/art/components/submit-bar'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
@ -91,8 +91,6 @@ export default {
|
|||||||
substrateId: '',
|
substrateId: '',
|
||||||
bomId: ''
|
bomId: ''
|
||||||
},
|
},
|
||||||
substrateList: [],
|
|
||||||
bomList: [],
|
|
||||||
rules: {
|
rules: {
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: this.$t('module.art.artName') + this.$t('module.art.notNull'), trigger: 'blur' },
|
{ required: true, message: this.$t('module.art.artName') + this.$t('module.art.notNull'), trigger: 'blur' },
|
||||||
@ -129,14 +127,6 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
init: async function() {
|
init: async function() {
|
||||||
if (this.substrateList.length === 0) {
|
|
||||||
const substrateRes = await listSubstrate()
|
|
||||||
this.substrateList = substrateRes.data
|
|
||||||
}
|
|
||||||
if (this.bomList.length === 0) {
|
|
||||||
const bomRes = await listBom()
|
|
||||||
this.bomList = bomRes.data
|
|
||||||
}
|
|
||||||
if (this.id) {
|
if (this.id) {
|
||||||
const res = await getInfo({ id: this.id })
|
const res = await getInfo({ id: this.id })
|
||||||
this.obj = res.data
|
this.obj = res.data
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: gtz
|
* @Author: gtz
|
||||||
* @Date: 2021-04-06 20:07:22
|
* @Date: 2021-04-06 20:07:22
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-03-03 17:00:54
|
* @LastEditTime: 2022-03-09 16:19:15
|
||||||
* @Description: file content
|
* @Description: file content
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -128,7 +128,7 @@ export default {
|
|||||||
// edit here
|
// edit here
|
||||||
const res = await equipmentlistList()
|
const res = await equipmentlistList()
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
this.eqList = res.data.records
|
this.eqList = res.data
|
||||||
}
|
}
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2020-12-29 15:41:11
|
* @Date: 2020-12-29 15:41:11
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-01-14 15:54:12
|
* @LastEditTime: 2022-03-04 10:56:41
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -46,6 +46,7 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" @click="getList()"> {{ 'btn.search' | i18nFilter }} </el-button>
|
<el-button type="primary" @click="getList()"> {{ 'btn.search' | i18nFilter }} </el-button>
|
||||||
|
<el-button type="primary" @click="manualTask()"> {{ $t('module.basicData.Warehouse.PerformTaskManual') | i18nFilter }} </el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<base-table
|
<base-table
|
||||||
@ -70,12 +71,14 @@
|
|||||||
@pagination="getList()"
|
@pagination="getList()"
|
||||||
/>
|
/>
|
||||||
<current-task-info v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
|
<current-task-info v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
|
||||||
|
<current-task-add v-if="manualTaskVisible" ref="manualTaskRef" @refreshDataList="getList" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { CurrentTaskList } from '@/api/basicData/Warehouse/HistoricalTask'
|
import { CurrentTaskList } from '@/api/basicData/Warehouse/HistoricalTask'
|
||||||
import CurrentTaskInfo from './components/CurrentTaskInfo.vue'
|
import CurrentTaskInfo from './components/CurrentTaskInfo.vue'
|
||||||
|
import CurrentTaskAdd from './components/CurrentTask-add.vue'
|
||||||
import i18n from '@/lang'
|
import i18n from '@/lang'
|
||||||
import BaseTable from '@/components/BaseTable'
|
import BaseTable from '@/components/BaseTable'
|
||||||
import Pagination from '@/components/Pagination' // Secondary package based on el-pagination
|
import Pagination from '@/components/Pagination' // Secondary package based on el-pagination
|
||||||
@ -168,11 +171,12 @@ const tableProps = [
|
|||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'ScrapInfo',
|
name: 'ScrapInfo',
|
||||||
components: { Pagination, BaseTable, MethodBtn, CurrentTaskInfo },
|
components: { Pagination, BaseTable, MethodBtn, CurrentTaskInfo, CurrentTaskAdd },
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
trueWidth: 100,
|
trueWidth: 100,
|
||||||
addOrUpdateVisible: false,
|
addOrUpdateVisible: false,
|
||||||
|
manualTaskVisible: false,
|
||||||
tableProps,
|
tableProps,
|
||||||
tableBtn,
|
tableBtn,
|
||||||
list: [],
|
list: [],
|
||||||
@ -237,6 +241,13 @@ export default {
|
|||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.addOrUpdate.init(id)
|
this.$refs.addOrUpdate.init(id)
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
// 手动执行任务
|
||||||
|
manualTask() {
|
||||||
|
this.manualTaskVisible = true
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.manualTaskRef.init()
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
202
src/views/basicData/Warehouse/ProcessStorageManagement.vue
Normal file
202
src/views/basicData/Warehouse/ProcessStorageManagement.vue
Normal file
@ -0,0 +1,202 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: zwq
|
||||||
|
* @Date: 2020-12-29 15:41:11
|
||||||
|
* @LastEditors: zwq
|
||||||
|
* @LastEditTime: 2022-03-04 15:45:23
|
||||||
|
* @Description:
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<div class="app-container">
|
||||||
|
<el-form
|
||||||
|
ref="formData"
|
||||||
|
:rules="rules"
|
||||||
|
:model="listQuery"
|
||||||
|
:inline="true"
|
||||||
|
size="medium"
|
||||||
|
label-width="100px"
|
||||||
|
>
|
||||||
|
<el-form-item :label="$t('module.art.processList.processName')" prop="processId">
|
||||||
|
<el-select
|
||||||
|
v-model="listQuery.processId"
|
||||||
|
:placeholder="$i18nForm(['placeholder.input', $t('module.art.processList.processName')])"
|
||||||
|
clearable
|
||||||
|
filterable
|
||||||
|
:style="{width: '100%'}"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="(item, index) in processArr"
|
||||||
|
:key="index"
|
||||||
|
:label="item.name"
|
||||||
|
:value="item.id"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item>
|
||||||
|
<el-button type="primary" @click="getList()"> {{ 'btn.search' | i18nFilter }} </el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<base-table
|
||||||
|
:page="listQuery.current"
|
||||||
|
:limit="listQuery.size"
|
||||||
|
:table-config="tableProps"
|
||||||
|
:table-data="list"
|
||||||
|
:is-loading="listLoading"
|
||||||
|
>
|
||||||
|
<method-btn
|
||||||
|
slot="handleBtn"
|
||||||
|
:width="trueWidth"
|
||||||
|
:method-list="tableBtn"
|
||||||
|
@clickBtn="handleClick"
|
||||||
|
/>
|
||||||
|
</base-table>
|
||||||
|
<pagination
|
||||||
|
v-show="total > 0"
|
||||||
|
:total="total"
|
||||||
|
:page.sync="listQuery.current"
|
||||||
|
:limit.sync="listQuery.size"
|
||||||
|
@pagination="getList()"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { list } from '@/api/art-manage/process'
|
||||||
|
import BaseTable from '@/components/BaseTable'
|
||||||
|
import Pagination from '@/components/Pagination' // Secondary package based on el-pagination
|
||||||
|
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn'
|
||||||
|
import { timeFormatter } from '@/filters'
|
||||||
|
import i18n from '@/lang'
|
||||||
|
/**
|
||||||
|
* 表格表头配置项 TypeScript接口注释
|
||||||
|
* tableConfig<ConfigItem> = []
|
||||||
|
*
|
||||||
|
* Interface ConfigItem = {
|
||||||
|
* prop: string,
|
||||||
|
* label: string,
|
||||||
|
* width: string,
|
||||||
|
* align: string,
|
||||||
|
* subcomponent: function,
|
||||||
|
* filter: function
|
||||||
|
* }
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
const tableBtn = [
|
||||||
|
{
|
||||||
|
type: 'see',
|
||||||
|
btnName: i18n.t('module.basicData.Warehouse.processStorageLink')
|
||||||
|
}
|
||||||
|
]
|
||||||
|
const tableProps = [
|
||||||
|
{
|
||||||
|
prop: 'code',
|
||||||
|
label: i18n.t('module.art.processList.processCode'),
|
||||||
|
align: 'center'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
prop: 'name',
|
||||||
|
label: i18n.t('module.art.processList.processName'),
|
||||||
|
align: 'center'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
prop: 'createTime',
|
||||||
|
label: i18n.t('module.art.eqName'),
|
||||||
|
filter: timeFormatter,
|
||||||
|
align: 'center'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'ExecutionInfo',
|
||||||
|
components: { Pagination, BaseTable, MethodBtn },
|
||||||
|
filters: {
|
||||||
|
statusFilter(status) {
|
||||||
|
const statusMap = {
|
||||||
|
published: 'success',
|
||||||
|
draft: 'info',
|
||||||
|
deleted: 'danger'
|
||||||
|
}
|
||||||
|
return statusMap[status]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
tableBtn,
|
||||||
|
trueWidth: 200,
|
||||||
|
tableProps,
|
||||||
|
list: [],
|
||||||
|
processArr: [],
|
||||||
|
total: 0,
|
||||||
|
listLoading: true,
|
||||||
|
rules: {},
|
||||||
|
listQuery: {
|
||||||
|
current: 1,
|
||||||
|
size: 10,
|
||||||
|
processId: ''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getList()
|
||||||
|
this.init()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
handleClick(raw) {
|
||||||
|
this.addNew(raw.data.id)
|
||||||
|
},
|
||||||
|
init() {
|
||||||
|
const lparams = {
|
||||||
|
current: 1,
|
||||||
|
size: 999
|
||||||
|
}
|
||||||
|
list(lparams).then(response => {
|
||||||
|
if (response.data.records) {
|
||||||
|
this.processArr = response.data.records
|
||||||
|
} else {
|
||||||
|
this.processArr.splice(0, this.list.length)
|
||||||
|
}
|
||||||
|
this.total = response.data.total
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getList() {
|
||||||
|
// this.listLoading = true
|
||||||
|
// ExecutionInfoList(this.listQuery).then(response => {
|
||||||
|
// if (response.data.records) {
|
||||||
|
// this.list = response.data.records
|
||||||
|
// } else {
|
||||||
|
// this.list.splice(0, this.list.length)
|
||||||
|
// }
|
||||||
|
// this.total = response.data.total
|
||||||
|
this.list = [
|
||||||
|
{
|
||||||
|
code: 11,
|
||||||
|
name: '11'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
this.listLoading = false
|
||||||
|
// })
|
||||||
|
},
|
||||||
|
// 新增 / 修改
|
||||||
|
addNew(id) {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'ProcessStorageManagementInfo',
|
||||||
|
query: {
|
||||||
|
dictTypeId: id
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.edit-input {
|
||||||
|
padding-right: 100px;
|
||||||
|
}
|
||||||
|
.cancel-btn {
|
||||||
|
position: absolute;
|
||||||
|
right: 15px;
|
||||||
|
top: 10px;
|
||||||
|
}
|
||||||
|
</style>
|
125
src/views/basicData/Warehouse/components/CurrentTask-add.vue
Normal file
125
src/views/basicData/Warehouse/components/CurrentTask-add.vue
Normal file
@ -0,0 +1,125 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: zwq
|
||||||
|
* @Date: 2020-12-29 16:37:56
|
||||||
|
* @LastEditors: zwq
|
||||||
|
* @LastEditTime: 2022-03-04 11:05:23
|
||||||
|
* @Description:
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<el-dialog
|
||||||
|
:title="'btn.see' | i18nFilter"
|
||||||
|
:visible.sync="visible"
|
||||||
|
>
|
||||||
|
<el-row :gutter="10">
|
||||||
|
<el-form
|
||||||
|
ref="dataForm"
|
||||||
|
:model="dataForm"
|
||||||
|
size="medium"
|
||||||
|
label-width="110px"
|
||||||
|
label-position="left"
|
||||||
|
>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.TaskBoxNumber')" prop="taskCode">
|
||||||
|
<el-input v-model="dataForm.taskCode" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.FullBoxNumber')" prop="orderName">
|
||||||
|
<el-input v-model="dataForm.orderName" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.ExecutionOperation')" prop="fullCode">
|
||||||
|
<el-input v-model="dataForm.fullCode" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.TaskStatus')" prop="name">
|
||||||
|
<el-input v-model="dataForm.name" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.ScrapInfo.remark')" prop="remark">
|
||||||
|
<el-input v-model="dataForm.remark" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.TaskLocation')" prop="createTime">
|
||||||
|
<el-input v-model="dataForm.createTime" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.FullBoxStartLocation')" prop="taskType">
|
||||||
|
<el-input v-model="dataForm.taskType" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.Priority')" prop="emptyCode">
|
||||||
|
<el-input v-model="dataForm.emptyCode" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.NextOperation')" prop="anotherCurrLocation">
|
||||||
|
<el-input
|
||||||
|
v-model="dataForm.anotherCurrLocation"
|
||||||
|
readonly
|
||||||
|
:style="{width: '100%'}"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-col>
|
||||||
|
</el-form>
|
||||||
|
</el-row>
|
||||||
|
<span slot="footer" class="dialog-footer">
|
||||||
|
<el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
|
||||||
|
<el-button type="primary" @click="visible = false">{{ $t('module.basicData.Warehouse.PerformTaskManual') | i18nFilter }} </el-button>
|
||||||
|
</span>
|
||||||
|
</el-dialog>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// import { CurrentTaskDetail } from '@/api/basicData/Warehouse/HistoricalTask'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
visible: false,
|
||||||
|
dataForm: {
|
||||||
|
id: '',
|
||||||
|
taskCode: undefined,
|
||||||
|
orderName: undefined,
|
||||||
|
fullCode: undefined,
|
||||||
|
name: undefined,
|
||||||
|
remark: undefined,
|
||||||
|
field119: undefined,
|
||||||
|
createTime: undefined,
|
||||||
|
taskType: undefined,
|
||||||
|
emptyCode: undefined,
|
||||||
|
anotherCurrLocation: undefined,
|
||||||
|
field121: undefined,
|
||||||
|
taskSource: undefined,
|
||||||
|
anotherCurrProcessCode: undefined,
|
||||||
|
anotherNextProcessCode: undefined,
|
||||||
|
anotherTargetLocation: undefined,
|
||||||
|
field126: undefined
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
init(id) {
|
||||||
|
this.dataForm.id = id
|
||||||
|
this.visible = true
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs['dataForm'].resetFields()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
@ -0,0 +1,165 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: zwq
|
||||||
|
* @Date: 2020-12-29 15:41:11
|
||||||
|
* @LastEditors: zwq
|
||||||
|
* @LastEditTime: 2022-03-09 09:57:41
|
||||||
|
* @Description:
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<div class="app-container">
|
||||||
|
<div style="margin:10px 50px">
|
||||||
|
<el-button type="success" @click="goback()">{{ 'btn.back' | i18nFilter }}</el-button>
|
||||||
|
<el-button type="primary" @click="addNew()">{{ 'btn.add' | i18nFilter }}</el-button>
|
||||||
|
</div>
|
||||||
|
<base-table
|
||||||
|
:page="listQuery.current"
|
||||||
|
:limit="listQuery.size"
|
||||||
|
:table-config="tableProps"
|
||||||
|
:table-data="list"
|
||||||
|
:is-loading="listLoading"
|
||||||
|
>
|
||||||
|
<method-btn
|
||||||
|
slot="handleBtn"
|
||||||
|
:width="trueWidth"
|
||||||
|
:method-list="tableBtn"
|
||||||
|
@clickBtn="handleClick"
|
||||||
|
/>
|
||||||
|
</base-table>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import i18n from '@/lang'
|
||||||
|
import BaseTable from '@/components/BaseTable'
|
||||||
|
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn'
|
||||||
|
import { timeFormatter } from '@/filters'
|
||||||
|
/**
|
||||||
|
* 表格表头配置项 TypeScript接口注释
|
||||||
|
* tableConfig<ConfigItem> = []
|
||||||
|
*
|
||||||
|
* Interface ConfigItem = {
|
||||||
|
* prop: string,
|
||||||
|
* label: string,
|
||||||
|
* width: string,
|
||||||
|
* align: string,
|
||||||
|
* subcomponent: function,
|
||||||
|
* filter: function
|
||||||
|
* }
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
const tableBtn = [
|
||||||
|
{
|
||||||
|
type: 'delete',
|
||||||
|
btnName: 'btn.delete'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
const tableProps = [
|
||||||
|
{
|
||||||
|
prop: 'code',
|
||||||
|
label: i18n.t('module.basicData.cache.LocationCode'),
|
||||||
|
filter: timeFormatter,
|
||||||
|
align: 'center'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
prop: 'name',
|
||||||
|
label: i18n.t('module.basicData.cache.LocationName'),
|
||||||
|
align: 'center'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
prop: 'shelfName',
|
||||||
|
label: i18n.t('module.basicData.cache.locationType'),
|
||||||
|
align: 'center'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'Shelf',
|
||||||
|
components: { BaseTable, MethodBtn },
|
||||||
|
filters: {
|
||||||
|
statusFilter(status) {
|
||||||
|
const statusMap = {
|
||||||
|
published: 'success',
|
||||||
|
draft: 'info',
|
||||||
|
deleted: 'danger'
|
||||||
|
}
|
||||||
|
return statusMap[status]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
tableBtn,
|
||||||
|
trueWidth: 200,
|
||||||
|
tableProps,
|
||||||
|
list: [],
|
||||||
|
listLoading: true,
|
||||||
|
listQuery: {
|
||||||
|
current: 1,
|
||||||
|
size: 990,
|
||||||
|
areaId: ''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.listQuery.areaId = this.$route.query.id
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
handleClick(raw) {
|
||||||
|
if (raw.type === 'delete') {
|
||||||
|
this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.name}]?`, this.$t('module.basicData.visual.Tips'), {
|
||||||
|
confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'),
|
||||||
|
cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'),
|
||||||
|
type: 'warning'
|
||||||
|
}).then(() => {
|
||||||
|
// shelfDelete(raw.data.id).then(response => {
|
||||||
|
// this.$message({
|
||||||
|
// message: this.$t('module.basicData.visual.success'),
|
||||||
|
// type: 'success',
|
||||||
|
// duration: 1500,
|
||||||
|
// onClose: () => {
|
||||||
|
// this.getList()
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
// })
|
||||||
|
}).catch(() => {})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getList(key) {
|
||||||
|
this.listLoading = true
|
||||||
|
// shelfList(this.listQuery).then(response => {
|
||||||
|
// if (response.data.records) {
|
||||||
|
// this.list = response.data.records
|
||||||
|
// } else {
|
||||||
|
// this.list.splice(0, this.list.length)
|
||||||
|
// }
|
||||||
|
this.listLoading = false
|
||||||
|
// })
|
||||||
|
},
|
||||||
|
// 新增 / 修改
|
||||||
|
addNew(id) {
|
||||||
|
this.$router.push({
|
||||||
|
name: 'ProcessStorageLink',
|
||||||
|
query: {
|
||||||
|
dictTypeId: id
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
goback() {
|
||||||
|
this.$router.go(-1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.edit-input {
|
||||||
|
padding-right: 100px;
|
||||||
|
}
|
||||||
|
.cancel-btn {
|
||||||
|
position: absolute;
|
||||||
|
right: 15px;
|
||||||
|
top: 10px;
|
||||||
|
}
|
||||||
|
</style>
|
477
src/views/basicData/Warehouse/components/processStorageLink.vue
Normal file
477
src/views/basicData/Warehouse/components/processStorageLink.vue
Normal file
@ -0,0 +1,477 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: gtz
|
||||||
|
* @Date: 2022-03-03 09:16:10
|
||||||
|
* @LastEditors: zwq
|
||||||
|
* @LastEditTime: 2022-03-09 15:17:46
|
||||||
|
* @Description: file content
|
||||||
|
* @FilePath: \mt-ck-wms-ui\src\views\dashboard\index.vue
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<div class="dashboard-container">
|
||||||
|
<el-card class="dashboard-main">
|
||||||
|
<el-row class="dashboard-title">
|
||||||
|
<div class="dashboard-header-line" />
|
||||||
|
<div class="dashboard-header-title">WMS库存信息</div>
|
||||||
|
</el-row>
|
||||||
|
<el-row class="dashboard-legend">
|
||||||
|
<div
|
||||||
|
v-for="item in cassetteStatusList"
|
||||||
|
:key="'cassette' + item.id"
|
||||||
|
class="dashboard-legend-cassette"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
class="dashboard-legend-cassette-cricle"
|
||||||
|
:style="{ background: item.color }"
|
||||||
|
/>
|
||||||
|
{{ item.name }}
|
||||||
|
</div>
|
||||||
|
|
|
||||||
|
<div
|
||||||
|
v-for="item in portAttributeList"
|
||||||
|
:key="'port' + item.id"
|
||||||
|
class="dashboard-legend-port"
|
||||||
|
:style="{ background: item.color }"
|
||||||
|
>
|
||||||
|
{{ item.name }}
|
||||||
|
</div>
|
||||||
|
<div class="dashboard-legend-btn">
|
||||||
|
<el-button type="primary" size="mini" @click="submitLinkList">{{
|
||||||
|
"btn.submit" | i18nFilter
|
||||||
|
}}</el-button>
|
||||||
|
</div>
|
||||||
|
<div class="dashboard-legend-search">
|
||||||
|
<el-select
|
||||||
|
v-model="current"
|
||||||
|
size="mini"
|
||||||
|
placeholder="请选择库存范围"
|
||||||
|
@change="handleChange"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in totalPage"
|
||||||
|
:key="'select' + item"
|
||||||
|
:label="'第' + item + '页'"
|
||||||
|
:value="item"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
</el-row>
|
||||||
|
<el-row
|
||||||
|
v-if="current * 80 < shelfList[0].rowList[0].portList.length"
|
||||||
|
class="dashboard-layout"
|
||||||
|
:gutter="12"
|
||||||
|
>
|
||||||
|
<el-col
|
||||||
|
v-for="item in 4"
|
||||||
|
:key="'shelfbox' + item"
|
||||||
|
class="dashboard-layout-shelf-box"
|
||||||
|
:span="6"
|
||||||
|
>
|
||||||
|
<el-row>
|
||||||
|
<el-col
|
||||||
|
v-for="(i, index) in shelfList"
|
||||||
|
:key="item + 'shelf' + i.id"
|
||||||
|
:span="12"
|
||||||
|
class="dashboard-layout-shelf"
|
||||||
|
>
|
||||||
|
<el-row>
|
||||||
|
<el-col
|
||||||
|
v-for="z in i.rowList"
|
||||||
|
:key="item + 'shelf' + i + 'row' + z.id"
|
||||||
|
:span="12"
|
||||||
|
class="dashboard-layout-row"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
v-for="x in 20"
|
||||||
|
:key="item + 'shelf' + i + 'row' + z + 'item' + x"
|
||||||
|
class="dashboard-layout-item"
|
||||||
|
:style="{
|
||||||
|
background:
|
||||||
|
portAttributeObj[
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute
|
||||||
|
],
|
||||||
|
cursor:
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute === 3
|
||||||
|
? 'not-allowed'
|
||||||
|
: 'pointer',
|
||||||
|
color:
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute === 3
|
||||||
|
? '#A2A8B5'
|
||||||
|
: '',
|
||||||
|
border:
|
||||||
|
selectStorageList.some(StorageItem=>StorageItem.id===z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
|
||||||
|
? '1px solid red' : ''
|
||||||
|
}"
|
||||||
|
@click="
|
||||||
|
setType(
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
]
|
||||||
|
)
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
v-if="
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute !== 3
|
||||||
|
"
|
||||||
|
class="dashboard-layout-item-cricle"
|
||||||
|
:style="{
|
||||||
|
background:
|
||||||
|
cassetteStatusObj[
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].cassetteList[0].status
|
||||||
|
]
|
||||||
|
}"
|
||||||
|
/>
|
||||||
|
{{
|
||||||
|
z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)]
|
||||||
|
.name
|
||||||
|
}}
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<div class="dashboard-layout-footer">
|
||||||
|
{{
|
||||||
|
"第" + (index + 1) + "排(" + ((current - 1) * 4 + item) + ")"
|
||||||
|
}}
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row v-else class="dashboard-layout" :gutter="12">
|
||||||
|
<el-col
|
||||||
|
v-for="item in Math.ceil(
|
||||||
|
(shelfList[0].rowList[0].portList.length - (current - 1) * 80) / 20
|
||||||
|
)"
|
||||||
|
:key="'shelfbox' + item"
|
||||||
|
class="dashboard-layout-shelf-box"
|
||||||
|
:span="6"
|
||||||
|
>
|
||||||
|
<el-row>
|
||||||
|
<el-col
|
||||||
|
v-for="(i, index) in shelfList"
|
||||||
|
:key="item + 'shelf' + i.id"
|
||||||
|
:span="12"
|
||||||
|
class="dashboard-layout-shelf"
|
||||||
|
>
|
||||||
|
<el-row
|
||||||
|
v-if="
|
||||||
|
item <
|
||||||
|
Math.ceil(
|
||||||
|
(shelfList[0].rowList[0].portList.length -
|
||||||
|
(current - 1) * 80) /
|
||||||
|
20
|
||||||
|
)
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<el-col
|
||||||
|
v-for="z in i.rowList"
|
||||||
|
:key="item + 'shelf' + i + 'row' + z.id"
|
||||||
|
:span="12"
|
||||||
|
class="dashboard-layout-row"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
v-for="x in 20"
|
||||||
|
:key="item + 'shelf' + i + 'row' + z + 'item' + x"
|
||||||
|
class="dashboard-layout-item"
|
||||||
|
:style="{
|
||||||
|
background:
|
||||||
|
portAttributeObj[
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute
|
||||||
|
],
|
||||||
|
cursor:
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute === 3
|
||||||
|
? 'not-allowed'
|
||||||
|
: 'pointer',
|
||||||
|
color:
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute === 3
|
||||||
|
? '#A2A8B5'
|
||||||
|
: '',
|
||||||
|
border:
|
||||||
|
selectStorageList.some(StorageItem=>StorageItem.id===z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
|
||||||
|
? '1px solid red' : ''
|
||||||
|
}"
|
||||||
|
@click="
|
||||||
|
setType(
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
]
|
||||||
|
)
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
v-if="
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute !== 3
|
||||||
|
"
|
||||||
|
class="dashboard-layout-item-cricle"
|
||||||
|
:style="{
|
||||||
|
background:
|
||||||
|
cassetteStatusObj[
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].cassetteList[0].status
|
||||||
|
]
|
||||||
|
}"
|
||||||
|
/>
|
||||||
|
{{
|
||||||
|
z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)]
|
||||||
|
.name
|
||||||
|
}}
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row v-else>
|
||||||
|
<el-col
|
||||||
|
v-for="z in i.rowList"
|
||||||
|
:key="item + 'shelf' + i + 'row' + z.id"
|
||||||
|
:span="12"
|
||||||
|
class="dashboard-layout-row"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
v-for="x in shelfList[0].rowList[0].portList.length -
|
||||||
|
(item - 1) * 20 -
|
||||||
|
(current - 1) * 80"
|
||||||
|
:key="item + 'shelf' + i + 'row' + z + 'item' + x"
|
||||||
|
class="dashboard-layout-item"
|
||||||
|
:style="{
|
||||||
|
background:
|
||||||
|
portAttributeObj[
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute
|
||||||
|
],
|
||||||
|
cursor:
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute === 3
|
||||||
|
? 'not-allowed'
|
||||||
|
: 'pointer',
|
||||||
|
color:
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute === 3
|
||||||
|
? '#A2A8B5'
|
||||||
|
: '',
|
||||||
|
border:
|
||||||
|
selectStorageList.some(StorageItem=>StorageItem.id===z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
|
||||||
|
? '1px solid red' : ''
|
||||||
|
}"
|
||||||
|
@click="
|
||||||
|
setType(
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
]
|
||||||
|
)
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
v-if="
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].attribute !== 3
|
||||||
|
"
|
||||||
|
class="dashboard-layout-item-cricle"
|
||||||
|
:style="{
|
||||||
|
background:
|
||||||
|
cassetteStatusObj[
|
||||||
|
z.portList[
|
||||||
|
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
|
||||||
|
].cassetteList[0].status
|
||||||
|
]
|
||||||
|
}"
|
||||||
|
/>
|
||||||
|
{{
|
||||||
|
z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)]
|
||||||
|
.name
|
||||||
|
}}
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<div class="dashboard-layout-footer">
|
||||||
|
{{
|
||||||
|
"第" + (index + 1) + "排(" + ((current - 1) * 4 + item) + ")"
|
||||||
|
}}
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-card>
|
||||||
|
<process-storage-type
|
||||||
|
v-if="typeVisible"
|
||||||
|
ref="typeRef"
|
||||||
|
@refreshDataList="setStorageList"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import testdata from './testdata'
|
||||||
|
import processStorageType from './processStorageType'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'Dashboard',
|
||||||
|
components: { processStorageType },
|
||||||
|
data() {
|
||||||
|
return testdata
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
console.log(this.shelfList)
|
||||||
|
this.totalPage = Math.ceil(
|
||||||
|
this.shelfList[0].rowList[0].portList.length / 80
|
||||||
|
)
|
||||||
|
this.init()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
init() {
|
||||||
|
this.selectStorageList.splice(0, this.selectStorageList.length)
|
||||||
|
},
|
||||||
|
setType(item) {
|
||||||
|
if (item.attribute !== 3) {
|
||||||
|
if (this.selectStorageList.findIndex(StorageItem => StorageItem.id === item.id) + 1) {
|
||||||
|
this.selectStorageList.splice(this.selectStorageList.findIndex(StorageItem => StorageItem.id === item.id), 1)
|
||||||
|
} else {
|
||||||
|
this.typeVisible = true
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.typeRef.init(item.id)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
setStorageList(id, dataForm) {
|
||||||
|
const obj = Object.assign({ id }, dataForm)
|
||||||
|
this.selectStorageList.push(obj)
|
||||||
|
},
|
||||||
|
handleChange(v) {
|
||||||
|
console.log(v)
|
||||||
|
},
|
||||||
|
submitLinkList() {
|
||||||
|
const tipArr = this.selectStorageList.map(item => {
|
||||||
|
return item.id
|
||||||
|
})
|
||||||
|
this.$confirm(`${this.$t('module.basicData.visual.TipsStorageBefore')}[${tipArr.join(',')}]?`, this.$t('module.basicData.visual.Tips'), {
|
||||||
|
confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'),
|
||||||
|
cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'),
|
||||||
|
type: 'warning'
|
||||||
|
}).then(() => {
|
||||||
|
}).catch(() => {})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.dashboard-container {
|
||||||
|
background: #f2f4f9;
|
||||||
|
min-height: calc(100vh - 134px);
|
||||||
|
overflow-x: scroll;
|
||||||
|
padding: 0 16px;
|
||||||
|
padding-top: 24px;
|
||||||
|
font-size: 14px;
|
||||||
|
.dashboard-main {
|
||||||
|
width: 100%;
|
||||||
|
min-width: 1380px;
|
||||||
|
background-color: #fff;
|
||||||
|
border-radius: 8px;
|
||||||
|
min-height: calc(100vh - 186px);
|
||||||
|
.dashboard-title {
|
||||||
|
.dashboard-header-line {
|
||||||
|
display: inline-block;
|
||||||
|
width: 4px;
|
||||||
|
height: 16px;
|
||||||
|
background: #0b58ff;
|
||||||
|
border-radius: 1px;
|
||||||
|
position: relative;
|
||||||
|
top: 2px;
|
||||||
|
margin-right: 4px;
|
||||||
|
}
|
||||||
|
.dashboard-header-title {
|
||||||
|
display: inline-block;
|
||||||
|
font-size: 16px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #000000;
|
||||||
|
line-height: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.dashboard-legend {
|
||||||
|
margin-top: 20px;
|
||||||
|
.dashboard-legend-cassette {
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 24px;
|
||||||
|
.dashboard-legend-cassette-cricle {
|
||||||
|
display: inline-block;
|
||||||
|
width: 12px;
|
||||||
|
height: 12px;
|
||||||
|
border-radius: 6px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.dashboard-legend-port {
|
||||||
|
display: inline-block;
|
||||||
|
height: 24px;
|
||||||
|
line-height: 24px;
|
||||||
|
border-radius: 4px;
|
||||||
|
padding: 0 16px;
|
||||||
|
margin-left: 24px;
|
||||||
|
}
|
||||||
|
.dashboard-legend-btn {
|
||||||
|
margin: 0 20px;
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
.dashboard-legend-search {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.dashboard-layout {
|
||||||
|
margin: 20px 0;
|
||||||
|
.dashboard-layout-shelf-box {
|
||||||
|
.dashboard-layout-footer {
|
||||||
|
text-align: center;
|
||||||
|
margin-top: 12px;
|
||||||
|
}
|
||||||
|
.dashboard-layout-shelf {
|
||||||
|
padding: 0 8px;
|
||||||
|
.dashboard-layout-row {
|
||||||
|
padding: 0 1px;
|
||||||
|
.dashboard-layout-item {
|
||||||
|
width: 100%;
|
||||||
|
text-align: center;
|
||||||
|
height: 32px;
|
||||||
|
box-shadow: 0px 3px 6px 0px rgba(166, 174, 190, 0.8);
|
||||||
|
border-radius: 2px 4px 4px 2px;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
.dashboard-layout-item-cricle {
|
||||||
|
display: inline-block;
|
||||||
|
width: 12px;
|
||||||
|
height: 12px;
|
||||||
|
border-radius: 6px;
|
||||||
|
margin-right: 6px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,94 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: zwq
|
||||||
|
* @Date: 2020-12-29 16:37:56
|
||||||
|
* @LastEditors: zwq
|
||||||
|
* @LastEditTime: 2022-03-10 14:27:47
|
||||||
|
* @Description:
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<el-dialog
|
||||||
|
:title="$t('module.basicData.Warehouse.LocationStorageSetting') | i18nFilter"
|
||||||
|
:visible.sync="visible"
|
||||||
|
>
|
||||||
|
<el-form
|
||||||
|
ref="dataForm"
|
||||||
|
:model="dataForm"
|
||||||
|
size="medium"
|
||||||
|
:rules="dataRule"
|
||||||
|
label-width="110px"
|
||||||
|
label-position="left"
|
||||||
|
>
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.SelectStorageType')" prop="storageType">
|
||||||
|
<el-radio v-model="dataForm.storageType" :label="1">Working Port</el-radio>
|
||||||
|
<el-radio v-model="dataForm.storageType" :label="2">Buffer Port</el-radio>
|
||||||
|
<el-radio v-model="dataForm.storageType" :label="3">Exception Port</el-radio>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item :label="$t('module.basicData.storageBox.name')" prop="storageBoxName">
|
||||||
|
<el-select v-model="dataForm.storageBoxName" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.storageBox.name')])" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="item in storageBoxArr"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.storageBoxName"
|
||||||
|
:value="item.id"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<span slot="footer" class="dialog-footer">
|
||||||
|
<el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
|
||||||
|
<el-button type="primary" @click="dataFormSubmit()">{{ 'btn.confirm' | i18nFilter }}</el-button>
|
||||||
|
</span>
|
||||||
|
</el-dialog>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { storageBoxList } from '@/api/basicData/Cache/storageBox'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
visible: false,
|
||||||
|
storageId: '',
|
||||||
|
dataForm: {
|
||||||
|
storageType: 1,
|
||||||
|
storageBoxName: ''
|
||||||
|
},
|
||||||
|
dataRule: {
|
||||||
|
storageBoxName: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.storageBox.name')]),
|
||||||
|
trigger: 'change' }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
storageBoxArr: []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
init(id) {
|
||||||
|
this.storageId = id
|
||||||
|
const listQuery = {
|
||||||
|
current: 1,
|
||||||
|
size: 999
|
||||||
|
}
|
||||||
|
storageBoxList(listQuery).then(response => {
|
||||||
|
if (response.data.records) {
|
||||||
|
this.storageBoxArr = response.data.records
|
||||||
|
} else {
|
||||||
|
this.storageBoxArr.splice(0, this.list.length)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.visible = true
|
||||||
|
},
|
||||||
|
// 表单提交
|
||||||
|
dataFormSubmit() {
|
||||||
|
this.$refs['dataForm'].validate((valid) => {
|
||||||
|
if (valid) {
|
||||||
|
this.visible = false
|
||||||
|
this.$emit('refreshDataList', this.storageId, this.dataForm)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
2955
src/views/basicData/Warehouse/components/testdata.js
Normal file
2955
src/views/basicData/Warehouse/components/testdata.js
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,15 +1,194 @@
|
|||||||
|
<!--
|
||||||
|
* @Author: gtz
|
||||||
|
* @Date: 2022-03-03 09:16:10
|
||||||
|
* @LastEditors: gtz
|
||||||
|
* @LastEditTime: 2022-03-08 14:34:24
|
||||||
|
* @Description: file content
|
||||||
|
* @FilePath: \mt-ck-wms-ui\src\views\dashboard\index.vue
|
||||||
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div class="dashboard-container">
|
<div class="dashboard-container">
|
||||||
<!-- <component :is="currentRole" /> -->
|
<el-card class="dashboard-main">
|
||||||
<admin-dashboard />
|
<el-row class="dashboard-title">
|
||||||
|
<div class="dashboard-header-line" />
|
||||||
|
<div class="dashboard-header-title">WMS库存信息</div>
|
||||||
|
</el-row>
|
||||||
|
<el-row class="dashboard-legend">
|
||||||
|
<div v-for="item in cassetteStatusList" :key="'cassette' + item.id" class="dashboard-legend-cassette">
|
||||||
|
<div class="dashboard-legend-cassette-cricle" :style="{background: item.color}" />
|
||||||
|
{{ item.name }}
|
||||||
|
</div>
|
||||||
|
|
|
||||||
|
<div v-for="item in portAttributeList" :key="'port' + item.id" class="dashboard-legend-port" :style="{background: item.color}">
|
||||||
|
{{ item.name }}
|
||||||
|
</div>
|
||||||
|
<div class="dashboard-legend-search">
|
||||||
|
<el-select v-model="current" size="mini" placeholder="请选择库存范围" @change="handleChange">
|
||||||
|
<el-option v-for="item in totalPage" :key="'select' + item" :label="'第' + item + '页'" :value="item" />
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
</el-row>
|
||||||
|
<el-row v-if="current * 80 < shelfList[0].rowList[0].portList.length" class="dashboard-layout" :gutter="12">
|
||||||
|
<el-col v-for="item in 4" :key="'shelfbox' + item" class="dashboard-layout-shelf-box" :span="6">
|
||||||
|
<el-row>
|
||||||
|
<el-col v-for="(i, index) in shelfList" :key="item + 'shelf' + i.id" :span="12" class="dashboard-layout-shelf">
|
||||||
|
<el-row>
|
||||||
|
<el-col v-for="z in i.rowList" :key="item + 'shelf' + i + 'row' + z.id" :span="12" class="dashboard-layout-row">
|
||||||
|
<div v-for="x in 20" :key="item + 'shelf' + i + 'row' + z + 'item' + x" class="dashboard-layout-item" :style="{background: portAttributeObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? 'not-allowed' : 'pointer', color: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? '#A2A8B5' : ''}">
|
||||||
|
<div v-if="z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3" class="dashboard-layout-item-cricle" :style="{background: cassetteStatusObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteList[0].status]}" />
|
||||||
|
{{ z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name }}
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<div class="dashboard-layout-footer">
|
||||||
|
{{ '第' + (index + 1) + '排(' + ((current - 1) * 4 + item) + ')' }}
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row v-else class="dashboard-layout" :gutter="12">
|
||||||
|
<el-col v-for="item in Math.ceil((shelfList[0].rowList[0].portList.length - (current - 1) * 80) / 20)" :key="'shelfbox' + item" class="dashboard-layout-shelf-box" :span="6">
|
||||||
|
<el-row>
|
||||||
|
<el-col v-for="(i, index) in shelfList" :key="item + 'shelf' + i.id" :span="12" class="dashboard-layout-shelf">
|
||||||
|
<el-row v-if="item < Math.ceil((shelfList[0].rowList[0].portList.length - (current - 1) * 80) / 20)">
|
||||||
|
<el-col v-for="z in i.rowList" :key="item + 'shelf' + i + 'row' + z.id" :span="12" class="dashboard-layout-row">
|
||||||
|
<div v-for="x in 20" :key="item + 'shelf' + i + 'row' + z + 'item' + x" class="dashboard-layout-item" :style="{background: portAttributeObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? 'not-allowed' : 'pointer', color: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? '#A2A8B5' : ''}">
|
||||||
|
<div v-if="z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3" class="dashboard-layout-item-cricle" :style="{background: cassetteStatusObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteList[0].status]}" />
|
||||||
|
{{ z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name }}
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row v-else>
|
||||||
|
<el-col v-for="z in i.rowList" :key="item + 'shelf' + i + 'row' + z.id" :span="12" class="dashboard-layout-row">
|
||||||
|
<div v-for="x in shelfList[0].rowList[0].portList.length - (item - 1) * 20 - (current - 1) * 80" :key="item + 'shelf' + i + 'row' + z + 'item' + x" class="dashboard-layout-item" :style="{background: portAttributeObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? 'not-allowed' : 'pointer', color: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? '#A2A8B5' : ''}">
|
||||||
|
<div v-if="z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3" class="dashboard-layout-item-cricle" :style="{background: cassetteStatusObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteList[0].status]}" />
|
||||||
|
{{ z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name }}
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<div class="dashboard-layout-footer">
|
||||||
|
{{ '第' + (index + 1) + '排(' + ((current - 1) * 4 + item) + ')' }}
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-card>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import AdminDashboard from './admin'
|
import testdata from './testdata'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'Dashboard',
|
name: 'Dashboard',
|
||||||
components: { AdminDashboard }
|
data() {
|
||||||
|
return testdata
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
console.log(this.shelfList)
|
||||||
|
this.totalPage = Math.ceil(this.shelfList[0].rowList[0].portList.length / 80)
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
handleChange(v) {
|
||||||
|
console.log(v)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.dashboard-container {
|
||||||
|
background: #F2F4F9;
|
||||||
|
min-height: calc(100vh - 134px);
|
||||||
|
overflow-x: scroll;
|
||||||
|
padding: 0 16px;
|
||||||
|
padding-top: 24px;
|
||||||
|
font-size: 14px;
|
||||||
|
.dashboard-main {
|
||||||
|
width: 100%;
|
||||||
|
min-width: 1380px;
|
||||||
|
background-color: #fff;
|
||||||
|
border-radius: 8px;
|
||||||
|
min-height: calc(100vh - 186px);
|
||||||
|
.dashboard-title {
|
||||||
|
.dashboard-header-line{
|
||||||
|
display: inline-block;
|
||||||
|
width: 4px;
|
||||||
|
height: 16px;
|
||||||
|
background: #0B58FF;
|
||||||
|
border-radius: 1px;
|
||||||
|
position: relative;
|
||||||
|
top: 2px;
|
||||||
|
margin-right: 4px;
|
||||||
|
}
|
||||||
|
.dashboard-header-title{
|
||||||
|
display: inline-block;
|
||||||
|
font-size: 16px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #000000;
|
||||||
|
line-height: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.dashboard-legend {
|
||||||
|
margin-top: 20px;
|
||||||
|
.dashboard-legend-cassette {
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 24px;
|
||||||
|
.dashboard-legend-cassette-cricle {
|
||||||
|
display: inline-block;
|
||||||
|
width: 12px;
|
||||||
|
height: 12px;
|
||||||
|
border-radius: 6px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.dashboard-legend-port {
|
||||||
|
display: inline-block;
|
||||||
|
height: 24px;
|
||||||
|
line-height: 24px;
|
||||||
|
border-radius: 4px;
|
||||||
|
padding: 0 16px;
|
||||||
|
margin-left: 24px;
|
||||||
|
}
|
||||||
|
.dashboard-legend-search {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.dashboard-layout {
|
||||||
|
margin: 20px 0;
|
||||||
|
.dashboard-layout-shelf-box {
|
||||||
|
.dashboard-layout-footer {
|
||||||
|
text-align: center;
|
||||||
|
margin-top: 12px;
|
||||||
|
}
|
||||||
|
.dashboard-layout-shelf {
|
||||||
|
padding: 0 8px;
|
||||||
|
.dashboard-layout-row {
|
||||||
|
padding: 0 1px;
|
||||||
|
.dashboard-layout-item {
|
||||||
|
width: 100%;
|
||||||
|
text-align: center;
|
||||||
|
height: 32px;
|
||||||
|
box-shadow: 0px 3px 6px 0px rgba(166, 174, 190, 0.8);
|
||||||
|
border-radius: 2px 4px 4px 2px;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
.dashboard-layout-item-cricle{
|
||||||
|
display: inline-block;
|
||||||
|
width: 12px;
|
||||||
|
height: 12px;
|
||||||
|
border-radius: 6px;
|
||||||
|
margin-right: 6px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
2953
src/views/dashboard/testdata.js
Normal file
2953
src/views/dashboard/testdata.js
Normal file
File diff suppressed because it is too large
Load Diff
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2020-12-29 15:41:11
|
* @Date: 2020-12-29 15:41:11
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-01-17 15:26:35
|
* @LastEditTime: 2022-03-09 14:46:12
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -143,7 +143,7 @@ export default {
|
|||||||
},
|
},
|
||||||
getList(key) {
|
getList(key) {
|
||||||
this.listLoading = true
|
this.listLoading = true
|
||||||
this.listQuery.code = key
|
this.listQuery.name = key
|
||||||
ExecutionInfoList(this.listQuery).then(response => {
|
ExecutionInfoList(this.listQuery).then(response => {
|
||||||
if (response.data.records) {
|
if (response.data.records) {
|
||||||
this.list = response.data.records
|
this.list = response.data.records
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2020-12-29 15:41:11
|
* @Date: 2020-12-29 15:41:11
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-01-17 15:32:00
|
* @LastEditTime: 2022-03-09 14:44:58
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -150,7 +150,7 @@ export default {
|
|||||||
},
|
},
|
||||||
getList(key) {
|
getList(key) {
|
||||||
this.listLoading = true
|
this.listLoading = true
|
||||||
this.listQuery.code = key
|
this.listQuery.name = key
|
||||||
ProcessInfoList(this.listQuery).then(response => {
|
ProcessInfoList(this.listQuery).then(response => {
|
||||||
if (response.data.records) {
|
if (response.data.records) {
|
||||||
this.list = response.data.records
|
this.list = response.data.records
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2020-12-29 16:37:56
|
* @Date: 2020-12-29 16:37:56
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-01-17 15:21:50
|
* @LastEditTime: 2022-03-09 16:43:01
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -26,8 +26,8 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item :label="$t('module.basicData.Warehouse.IssueOrderTime')" prop="createTime">
|
<el-form-item :label="$t('module.basicData.Warehouse.OrderStatus')" prop="status">
|
||||||
<el-input v-model="dataForm.createTime" :placeholder="$t('module.basicData.Warehouse.IssueOrderTime')" readonly :style="{width: '100%'}" />
|
<el-input v-model="dataForm.status" :placeholder="$t('module.basicData.Warehouse.OrderStatus')" readonly :style="{width: '100%'}" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
@ -35,18 +35,33 @@
|
|||||||
<el-input v-model="dataForm.planQuantity" :placeholder="$t('module.basicData.Warehouse.PlanProcessQuantity')" readonly :style="{width: '100%'}" />
|
<el-input v-model="dataForm.planQuantity" :placeholder="$t('module.basicData.Warehouse.PlanProcessQuantity')" readonly :style="{width: '100%'}" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.Priority')" prop="priority">
|
||||||
|
<el-input v-model="dataForm.priority" :placeholder="$t('module.basicData.Warehouse.Priority')" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item :label="$t('module.basicData.Warehouse.OrderCode')" prop="taskCode">
|
<el-form-item :label="$t('module.basicData.Warehouse.OrderCode')" prop="code">
|
||||||
<el-input v-model="dataForm.taskCode" :placeholder="$t('module.basicData.Warehouse.OrderCode')" readonly :style="{width: '100%'}" />
|
<el-input v-model="dataForm.code" :placeholder="$t('module.basicData.Warehouse.OrderCode')" readonly :style="{width: '100%'}" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item :label="$t('module.basicData.Warehouse.OrderStatus')" prop="taskType">
|
<el-form-item :label="$t('module.basicData.Warehouse.startProduceTime')" prop="startProduceTime">
|
||||||
<el-input v-model="dataForm.taskType" :placeholder="$t('module.basicData.Warehouse.OrderStatus')" readonly :style="{width: '100%'}" />
|
<el-input v-model="dataForm.startProduceTime" :placeholder="$t('module.basicData.Warehouse.startProduceTime')" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.actualProcessQuantity')" prop="actualQuantity">
|
||||||
|
<el-input v-model="dataForm.actualQuantity" :placeholder="$t('module.basicData.Warehouse.actualProcessQuantity')" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.triggerOrigin')" prop="triggerOrigin">
|
||||||
|
<el-input v-model="dataForm.triggerOrigin" :placeholder="$t('module.basicData.Warehouse.triggerOrigin')" readonly :style="{width: '100%'}" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@ -68,6 +83,16 @@
|
|||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.scrapQuantity')" prop="scrapQuantity">
|
||||||
|
<el-input v-model="dataForm.scrapQuantity" :placeholder="$t('module.basicData.Warehouse.scrapQuantity')" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.OrderType')" prop="type">
|
||||||
|
<el-input v-model="dataForm.type" :placeholder="$t('module.basicData.Warehouse.OrderType')" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-form>
|
</el-form>
|
||||||
@ -79,7 +104,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { ExecutionInfoDetail } from '@/api/orderManage/00A'
|
import { ProcessInfoDetail } from '@/api/orderManage/00A'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
@ -89,8 +114,14 @@ export default {
|
|||||||
id: 0,
|
id: 0,
|
||||||
name: undefined,
|
name: undefined,
|
||||||
createTime: undefined,
|
createTime: undefined,
|
||||||
taskCode: undefined,
|
priority: '',
|
||||||
taskType: undefined,
|
actualQuantity: '',
|
||||||
|
startProduceTime: '',
|
||||||
|
scrapQuantity: '',
|
||||||
|
triggerOrigin: '',
|
||||||
|
type: '',
|
||||||
|
code: undefined,
|
||||||
|
status: undefined,
|
||||||
craftName: undefined,
|
craftName: undefined,
|
||||||
planQuantity: undefined,
|
planQuantity: undefined,
|
||||||
subProccessName: undefined
|
subProccessName: undefined
|
||||||
@ -104,11 +135,44 @@ export default {
|
|||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs['dataForm'].resetFields()
|
this.$refs['dataForm'].resetFields()
|
||||||
if (this.dataForm.id) {
|
if (this.dataForm.id) {
|
||||||
ExecutionInfoDetail(this.dataForm.id).then(res => {
|
ProcessInfoDetail(this.dataForm.id).then(res => {
|
||||||
|
res.data.status = this.statusfilter('orderStatus', res.data.status)
|
||||||
|
res.data.type = this.statusfilter('orderType', res.data.type)
|
||||||
|
res.data.priority = this.statusfilter('priority', res.data.priority)
|
||||||
|
res.data.triggerOrigin = this.statusfilter('triggerOrigin', res.data.triggerOrigin)
|
||||||
this.dataForm = res.data
|
this.dataForm = res.data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
statusfilter(type, val) {
|
||||||
|
const filterObj = {
|
||||||
|
orderStatus: {
|
||||||
|
'1': '未激活',
|
||||||
|
'2': '等待',
|
||||||
|
'3': '激活',
|
||||||
|
'4': '暂停',
|
||||||
|
'9': '完成'
|
||||||
|
},
|
||||||
|
priority: {
|
||||||
|
'1': '低',
|
||||||
|
'2': '正常',
|
||||||
|
'3': '高'
|
||||||
|
},
|
||||||
|
orderType: {
|
||||||
|
'1': '生产工单',
|
||||||
|
'2': '重工工单',
|
||||||
|
'3': '测试工单'
|
||||||
|
},
|
||||||
|
triggerOrigin: {
|
||||||
|
'1': 'MES',
|
||||||
|
'2': 'ERP',
|
||||||
|
'3': 'PID1',
|
||||||
|
'4': '00A',
|
||||||
|
'5': '00C'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return filterObj?.[type]?.[val]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2020-12-29 16:37:56
|
* @Date: 2020-12-29 16:37:56
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-01-17 15:22:08
|
* @LastEditTime: 2022-03-09 16:40:11
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -26,8 +26,8 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item :label="$t('module.basicData.Warehouse.IssueOrderTime')" prop="createTime">
|
<el-form-item :label="$t('module.basicData.Warehouse.OrderStatus')" prop="status">
|
||||||
<el-input v-model="dataForm.createTime" :placeholder="$t('module.basicData.Warehouse.IssueOrderTime')" readonly :style="{width: '100%'}" />
|
<el-input v-model="dataForm.status" :placeholder="$t('module.basicData.Warehouse.OrderStatus')" readonly :style="{width: '100%'}" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
@ -35,18 +35,33 @@
|
|||||||
<el-input v-model="dataForm.planQuantity" :placeholder="$t('module.basicData.Warehouse.PlanProcessQuantity')" readonly :style="{width: '100%'}" />
|
<el-input v-model="dataForm.planQuantity" :placeholder="$t('module.basicData.Warehouse.PlanProcessQuantity')" readonly :style="{width: '100%'}" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.Priority')" prop="priority">
|
||||||
|
<el-input v-model="dataForm.priority" :placeholder="$t('module.basicData.Warehouse.Priority')" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item :label="$t('module.basicData.Warehouse.OrderCode')" prop="taskCode">
|
<el-form-item :label="$t('module.basicData.Warehouse.OrderCode')" prop="code">
|
||||||
<el-input v-model="dataForm.taskCode" :placeholder="$t('module.basicData.Warehouse.OrderCode')" readonly :style="{width: '100%'}" />
|
<el-input v-model="dataForm.code" :placeholder="$t('module.basicData.Warehouse.OrderCode')" readonly :style="{width: '100%'}" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item :label="$t('module.basicData.Warehouse.OrderStatus')" prop="taskType">
|
<el-form-item :label="$t('module.basicData.Warehouse.startProduceTime')" prop="startProduceTime">
|
||||||
<el-input v-model="dataForm.taskType" :placeholder="$t('module.basicData.Warehouse.OrderStatus')" readonly :style="{width: '100%'}" />
|
<el-input v-model="dataForm.startProduceTime" :placeholder="$t('module.basicData.Warehouse.startProduceTime')" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.actualProcessQuantity')" prop="actualQuantity">
|
||||||
|
<el-input v-model="dataForm.actualQuantity" :placeholder="$t('module.basicData.Warehouse.actualProcessQuantity')" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.triggerOrigin')" prop="triggerOrigin">
|
||||||
|
<el-input v-model="dataForm.triggerOrigin" :placeholder="$t('module.basicData.Warehouse.triggerOrigin')" readonly :style="{width: '100%'}" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@ -68,6 +83,16 @@
|
|||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.scrapQuantity')" prop="scrapQuantity">
|
||||||
|
<el-input v-model="dataForm.scrapQuantity" :placeholder="$t('module.basicData.Warehouse.scrapQuantity')" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item :label="$t('module.basicData.Warehouse.OrderType')" prop="type">
|
||||||
|
<el-input v-model="dataForm.type" :placeholder="$t('module.basicData.Warehouse.OrderType')" readonly :style="{width: '100%'}" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-form>
|
</el-form>
|
||||||
@ -89,8 +114,14 @@ export default {
|
|||||||
id: 0,
|
id: 0,
|
||||||
name: undefined,
|
name: undefined,
|
||||||
createTime: undefined,
|
createTime: undefined,
|
||||||
taskCode: undefined,
|
priority: '',
|
||||||
taskType: undefined,
|
actualQuantity: '',
|
||||||
|
startProduceTime: '',
|
||||||
|
scrapQuantity: '',
|
||||||
|
triggerOrigin: '',
|
||||||
|
type: '',
|
||||||
|
code: undefined,
|
||||||
|
status: undefined,
|
||||||
craftName: undefined,
|
craftName: undefined,
|
||||||
planQuantity: undefined,
|
planQuantity: undefined,
|
||||||
subProccessName: undefined
|
subProccessName: undefined
|
||||||
@ -105,10 +136,43 @@ export default {
|
|||||||
this.$refs['dataForm'].resetFields()
|
this.$refs['dataForm'].resetFields()
|
||||||
if (this.dataForm.id) {
|
if (this.dataForm.id) {
|
||||||
ProcessInfoDetail(this.dataForm.id).then(res => {
|
ProcessInfoDetail(this.dataForm.id).then(res => {
|
||||||
|
res.data.status = this.statusfilter('orderStatus', res.data.status)
|
||||||
|
res.data.type = this.statusfilter('orderType', res.data.type)
|
||||||
|
res.data.priority = this.statusfilter('priority', res.data.priority)
|
||||||
|
res.data.triggerOrigin = this.statusfilter('triggerOrigin', res.data.triggerOrigin)
|
||||||
this.dataForm = res.data
|
this.dataForm = res.data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
statusfilter(type, val) {
|
||||||
|
const filterObj = {
|
||||||
|
orderStatus: {
|
||||||
|
'1': '未激活',
|
||||||
|
'2': '等待',
|
||||||
|
'3': '激活',
|
||||||
|
'4': '暂停',
|
||||||
|
'9': '完成'
|
||||||
|
},
|
||||||
|
priority: {
|
||||||
|
'1': '低',
|
||||||
|
'2': '正常',
|
||||||
|
'3': '高'
|
||||||
|
},
|
||||||
|
orderType: {
|
||||||
|
'1': '生产工单',
|
||||||
|
'2': '重工工单',
|
||||||
|
'3': '测试工单'
|
||||||
|
},
|
||||||
|
triggerOrigin: {
|
||||||
|
'1': 'MES',
|
||||||
|
'2': 'ERP',
|
||||||
|
'3': 'PID1',
|
||||||
|
'4': '00A',
|
||||||
|
'5': '00C'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return filterObj?.[type]?.[val]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Date: 2021-01-07 20:09:37
|
* @Date: 2021-01-07 20:09:37
|
||||||
* @LastEditors: zwq
|
* @LastEditors: zwq
|
||||||
* @LastEditTime: 2022-01-17 15:16:29
|
* @LastEditTime: 2022-03-10 14:25:50
|
||||||
* @FilePath: \basic-admin\src\components\BaseTable\subcomponents\CheckDetail.vue
|
* @FilePath: \basic-admin\src\components\BaseTable\subcomponents\CheckDetail.vue
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
@ -16,9 +16,9 @@
|
|||||||
<el-select v-model="value" placeholder="请选择">
|
<el-select v-model="value" placeholder="请选择">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in options"
|
v-for="item in options"
|
||||||
:key="item.value"
|
:key="item.id"
|
||||||
:label="item.label"
|
:label="item.name"
|
||||||
:value="item.value"
|
:value="item.id"
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</div>
|
</div>
|
||||||
@ -32,6 +32,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import { list } from '@/api/art-manage/art.js'
|
||||||
|
import { ProcessInfoUpdata } from '@/api/orderManage/00A'
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
injectData: {
|
injectData: {
|
||||||
@ -42,23 +44,38 @@ export default {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
visible: false,
|
visible: false,
|
||||||
options: [{
|
options: [],
|
||||||
value: '选项1',
|
|
||||||
label: '黄金糕'
|
|
||||||
}, {
|
|
||||||
value: '选项2',
|
|
||||||
label: '双皮奶'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
value: ''
|
value: ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
this.init()
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
init() {
|
||||||
|
list({
|
||||||
|
current: 1,
|
||||||
|
size: 999
|
||||||
|
}).then(response => {
|
||||||
|
this.options = response.data.records
|
||||||
|
})
|
||||||
|
},
|
||||||
emitClick() {
|
emitClick() {
|
||||||
console.log(this.injectData)
|
const data = {
|
||||||
console.log(this.value)
|
id: this.injectData.id,
|
||||||
|
subProcessId: this.value
|
||||||
|
}
|
||||||
|
ProcessInfoUpdata(data).then(res => {
|
||||||
|
this.$message({
|
||||||
|
message: this.$t('module.basicData.visual.success'),
|
||||||
|
type: 'success',
|
||||||
|
duration: 1500,
|
||||||
|
onClose: () => {
|
||||||
this.visible = false
|
this.visible = false
|
||||||
}
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
Loading…
Reference in New Issue
Block a user