Compare commits
	
		
			123 Commits
		
	
	
		
			9f1a4226c3
			...
			fzq
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					c595794b1a | ||
| 
						 | 
					72ac5b9998 | ||
| ddc3f5d49d | |||
| db0a906323 | |||
| 93a412d243 | |||
| aa85593884 | |||
| a77918c059 | |||
| 
						 | 
					d8336aced0 | ||
| 
						 | 
					43983bc929 | ||
| 6d3309ed2b | |||
| cae8938e22 | |||
| 03b13c77aa | |||
| 
						 | 
					985ec95bc6 | ||
| 
						 | 
					453f66b7b3 | ||
| 47793c38da | |||
| dcb7801d24 | |||
| f59fc1a594 | |||
| b2c50e8c56 | |||
| dd8e54f743 | |||
| 8142f16662 | |||
| 5ec45b87ca | |||
| 
						 | 
					445ad7f280 | ||
| 
						 | 
					15f9fb0f5b | ||
| 114bfeccf3 | |||
| 018695fe70 | |||
| 9aaffbb8b4 | |||
| 2a2bd1d726 | |||
| dd029f2055 | |||
| fe54918801 | |||
| ced191b4df | |||
| 995db83484 | |||
| 40f426f7f5 | |||
| 61270a542d | |||
| 3ecaa99a8c | |||
| 79238fca27 | |||
| 73d8951bbb | |||
| 2f19b50e20 | |||
| 6d4594b338 | |||
| d4168e6157 | |||
| dfb1f3d97b | |||
| 26772a324a | |||
| 
						 | 
					aae6117db7 | ||
| 
						 | 
					99f92f6891 | ||
| d8424e1752 | |||
| 598f49e378 | |||
| 982c25fa0b | |||
| 2756e75aaf | |||
| 74883db1c0 | |||
| 643277e1c7 | |||
| 4a834c3dc1 | |||
| 6b20524a5f | |||
| 
						 | 
					f219b55d0c | ||
| 
						 | 
					79b7fe0eec | ||
| 2329a20c4f | |||
| 7aba931c94 | |||
| 176fd99cd1 | |||
| 77fbbb630b | |||
| 18b932afa1 | |||
| 251d507db7 | |||
| 8502f5d7d1 | |||
| 9eea286c08 | |||
| d4e0384e10 | |||
| 983be7801c | |||
| d725cb7a0c | |||
| ef8a7ef497 | |||
| 6ac3fcb572 | |||
| 
						 | 
					3e6389f0eb | ||
| 
						 | 
					afde4d5225 | ||
| 8da50584fc | |||
| 2351e96c9e | |||
| 5277788174 | |||
| 127092be26 | |||
| 21d45adf22 | |||
| 3d3c802d01 | |||
| 
						 | 
					4263eb79a0 | ||
| 
						 | 
					7775d15b67 | ||
| d21c69e883 | |||
| 4921ba62ed | |||
| c58d4fb90b | |||
| f273bd32de | |||
| 7fd51b5211 | |||
| 5dda7cd772 | |||
| 60fb71791a | |||
| e7629a6ea0 | |||
| 633313c34e | |||
| 7a798d354b | |||
| ddcae6d119 | |||
| cf1e32049c | |||
| 
						 | 
					44411b19cd | ||
| 
						 | 
					7afe3c3ec7 | ||
| c5f564797b | |||
| 0b6f2ea996 | |||
| 3a8debc3be | |||
| 2876f44536 | |||
| 6361c3a47f | |||
| 73ac7e04ce | |||
| 0adf1dad1e | |||
| 77f1831fc2 | |||
| 3112915398 | |||
| 507b9da319 | |||
| 6b6eb66145 | |||
| 02ac7ee486 | |||
| 83fdc49dbb | |||
| 68902f0f6c | |||
| 76dba55bae | |||
| 66302849a3 | |||
| 238d8ba41c | |||
| 27786fb197 | |||
| b6d0d32b6f | |||
| 9f42c5e33e | |||
| a2adcc0fd3 | |||
| 0c0679cb1e | |||
| 4743fdc191 | |||
| cf888de5d8 | |||
| ba3983e085 | |||
| c9d77e20a0 | |||
| 1ed431e10a | |||
| cbcbe5ccfa | |||
| a214eb9bad | |||
| e3be286a50 | |||
| f5a003876f | |||
| de76ca416c | |||
| 
						 | 
					95afd175a3 | 
@@ -2,6 +2,6 @@
 | 
			
		||||
ENV = 'production'
 | 
			
		||||
 | 
			
		||||
# base api
 | 
			
		||||
VUE_APP_BASE_API = '/api'
 | 
			
		||||
VUE_APP_BASE_API = ''
 | 
			
		||||
VUE_APP_REPORT_DESIGN_URL = '/ureport/designer'
 | 
			
		||||
VUE_APP_REPORT_VIEW_URL = '/ureport/preview'
 | 
			
		||||
 
 | 
			
		||||
@@ -97,7 +97,7 @@
 | 
			
		||||
    "@vue/test-utils": "1.0.0-beta.29",
 | 
			
		||||
    "autoprefixer": "^9.5.1",
 | 
			
		||||
    "babel-core": "7.0.0-bridge.0",
 | 
			
		||||
    "babel-eslint": "10.0.1",
 | 
			
		||||
    "babel-eslint": "^8.2.2",
 | 
			
		||||
    "babel-jest": "23.6.0",
 | 
			
		||||
    "chalk": "2.4.2",
 | 
			
		||||
    "chokidar": "2.1.5",
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
 * @Author: fzq
 | 
			
		||||
 * @Date: 2022-03-06 18:13:49
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-06 18:29:43
 | 
			
		||||
 * @LastEditTime: 2022-03-09 10:44:04
 | 
			
		||||
 */
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
 | 
			
		||||
@@ -46,3 +46,27 @@ export function locaDelete(id) { // 删除工序库位信息单条数据
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function locationList(data) { // 获取库位id列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/processlocation/locationList',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function portAttrList(data) { // 获取库位属性列表,关联数据字典
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/processlocation/portAttrList',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function workSequenList(data) { // 获取工序id列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/processlocation/workSequenList',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:00:14
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 13:59:54
 | 
			
		||||
 * @LastEditTime: 2022-03-11 16:23:43
 | 
			
		||||
 * @Description:
 | 
			
		||||
 */
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
@@ -84,3 +84,19 @@ export function StorageBoxRackDelete(id) { // 删除存储箱上架单条数据
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function batchListAdd(data) { // 新增工序库位关联
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/processlocation/batchList',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function locationByProcessList(data) { // 工序库位列表获取
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/processlocation/locationByProcess',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										27
									
								
								src/api/dashboard.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								src/api/dashboard.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,27 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2022-03-16 16:08:06
 | 
			
		||||
 * @LastEditors: gtz
 | 
			
		||||
 * @LastEditTime: 2022-03-16 16:45:41
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 * @FilePath: \mt-ck-wms-ui\src\api\dashboard.js
 | 
			
		||||
 */
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
 | 
			
		||||
// 获取菜单列表
 | 
			
		||||
export function getPortList(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/location/shelfList',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// 获取菜单详情
 | 
			
		||||
export function getPortDetail(id) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/storage/box/circ/info/getByLocationId',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Date: 2020-12-28 20:46:53
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-04-25 14:52:11
 | 
			
		||||
 * @LastEditTime: 2022-03-11 09:16:13
 | 
			
		||||
 * @FilePath: \basic-admin\src\api\menu.js
 | 
			
		||||
 * @Description: 菜单api接口定义
 | 
			
		||||
 */
 | 
			
		||||
@@ -10,7 +10,7 @@ import request from '@/utils/request'
 | 
			
		||||
// 获取菜单列表
 | 
			
		||||
export function getMenuList(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/menu/list',
 | 
			
		||||
    url: '/api/upms/menu/list',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -19,7 +19,7 @@ export function getMenuList(data) {
 | 
			
		||||
// 获取菜单详情
 | 
			
		||||
export function getMenuDetail(id) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/menu/get',
 | 
			
		||||
    url: '/api/upms/menu/get',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
@@ -28,7 +28,7 @@ export function getMenuDetail(id) {
 | 
			
		||||
// 新增菜单
 | 
			
		||||
export function addMenu(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/menu/add',
 | 
			
		||||
    url: '/api/upms/menu/add',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -37,7 +37,7 @@ export function addMenu(data) {
 | 
			
		||||
// 删除菜单
 | 
			
		||||
export function delMenu(id) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/menu/delete',
 | 
			
		||||
    url: '/api/upms/menu/delete',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
@@ -46,7 +46,7 @@ export function delMenu(id) {
 | 
			
		||||
// 启停菜单
 | 
			
		||||
export function enableMenu(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/menu/enabled',
 | 
			
		||||
    url: '/api/upms/menu/enabled',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -55,7 +55,7 @@ export function enableMenu(data) {
 | 
			
		||||
// 修改菜单
 | 
			
		||||
export function editMenu(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/menu/update',
 | 
			
		||||
    url: '/api/upms/menu/update',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -64,7 +64,7 @@ export function editMenu(data) {
 | 
			
		||||
// 菜单-角色关联授权
 | 
			
		||||
export function saveRoleMenu(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/menu/saveRoleMenu',
 | 
			
		||||
    url: '/api/upms/menu/saveRoleMenu',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -73,7 +73,7 @@ export function saveRoleMenu(data) {
 | 
			
		||||
// 菜单-角色关联获取
 | 
			
		||||
export function listByRole(id) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/menu/listByRole',
 | 
			
		||||
    url: '/api/upms/menu/listByRole',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
 
 | 
			
		||||
@@ -2,13 +2,13 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2022-01-17 14:55:09
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 14:59:07
 | 
			
		||||
 * @LastEditTime: 2022-03-28 13:52:12
 | 
			
		||||
 * @Description:
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
 | 
			
		||||
export function ProcessInfoList(data) { // 获取工单工艺列表
 | 
			
		||||
export function ProcessInfoList(data) { // 获取工单列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/work/order/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
@@ -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) { // 获取工单工艺单条数据
 | 
			
		||||
  const data = {
 | 
			
		||||
    'id': id
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Date: 2021-01-04 17:34:38
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-04-12 14:23:30
 | 
			
		||||
 * @LastEditTime: 2022-03-10 16:42:55
 | 
			
		||||
 * @FilePath: \basic-admin\src\api\org.js
 | 
			
		||||
 * @Description: 框架基础模块——组织结构
 | 
			
		||||
 */
 | 
			
		||||
@@ -10,7 +10,7 @@ import request from '@/utils/request'
 | 
			
		||||
// 获取组织结构列表
 | 
			
		||||
export function getOrgList(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/org/page',
 | 
			
		||||
    url: '/api/upms/org/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -18,7 +18,7 @@ export function getOrgList(data) {
 | 
			
		||||
 | 
			
		||||
export function getOrgDetail(id) { // 获取组织结构单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/org/get',
 | 
			
		||||
    url: '/api/upms/org/get',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
@@ -26,7 +26,7 @@ export function getOrgDetail(id) { // 获取组织结构单条数据
 | 
			
		||||
 | 
			
		||||
// export function getOrgAllList(data) {
 | 
			
		||||
//   return request({
 | 
			
		||||
//     url: '/upms/org/list',
 | 
			
		||||
//     url: '/api/upms/org/list',
 | 
			
		||||
//     method: 'post',
 | 
			
		||||
//     data
 | 
			
		||||
//   })
 | 
			
		||||
@@ -35,7 +35,7 @@ export function getOrgDetail(id) { // 获取组织结构单条数据
 | 
			
		||||
// 添加组织结构
 | 
			
		||||
export function addOrg(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/org/add',
 | 
			
		||||
    url: '/api/upms/org/add',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -44,7 +44,7 @@ export function addOrg(data) {
 | 
			
		||||
// 修改组织
 | 
			
		||||
export function editOrg(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/org/update',
 | 
			
		||||
    url: '/api/upms/org/update',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -53,7 +53,7 @@ export function editOrg(data) {
 | 
			
		||||
// 删除组织结构
 | 
			
		||||
export function delOrg(id) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/org/delete',
 | 
			
		||||
    url: '/api/upms/org/delete',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-03-07 18:39:03
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-06 19:27:01
 | 
			
		||||
 * @LastEditTime: 2022-03-08 15:31:13
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
@@ -28,7 +28,8 @@ export function download(data) {
 | 
			
		||||
    url: '/api/report/report-storage-box/excel-download',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data,
 | 
			
		||||
    'responseType': 'arraybuffer'
 | 
			
		||||
    responseType: 'blob',
 | 
			
		||||
    timeout: 60000
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -10,7 +10,7 @@ import request from '@/utils/request'
 | 
			
		||||
// 获取角色详细信息
 | 
			
		||||
export function getRoleInfo(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: `/upms/role/get`,
 | 
			
		||||
    url: `/api/upms/role/get`,
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -18,7 +18,7 @@ export function getRoleInfo(data) {
 | 
			
		||||
 | 
			
		||||
export function RoleCode() { // 获取code
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/role/get-code',
 | 
			
		||||
    url: '/api/upms/role/get-code',
 | 
			
		||||
    method: 'post'
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
@@ -26,7 +26,7 @@ export function RoleCode() { // 获取code
 | 
			
		||||
// 获取角色列表
 | 
			
		||||
export function getRoleList(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/role/list',
 | 
			
		||||
    url: '/api/upms/role/list',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -35,7 +35,7 @@ export function getRoleList(data) {
 | 
			
		||||
// 添加角色
 | 
			
		||||
export function addRole(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/role/add',
 | 
			
		||||
    url: '/api/upms/role/add',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -44,7 +44,7 @@ export function addRole(data) {
 | 
			
		||||
// 修改角色
 | 
			
		||||
export function updateRole(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/role/update',
 | 
			
		||||
    url: '/api/upms/role/update',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -53,7 +53,7 @@ export function updateRole(data) {
 | 
			
		||||
// 删除角色
 | 
			
		||||
export function deleteRole(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: `/upms/role/delete`,
 | 
			
		||||
    url: `/api/upms/role/delete`,
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -62,7 +62,7 @@ export function deleteRole(data) {
 | 
			
		||||
// 启停角色
 | 
			
		||||
export function enableRole(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: `/upms/role/enabled`,
 | 
			
		||||
    url: `/api/upms/role/enabled`,
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -71,7 +71,7 @@ export function enableRole(data) {
 | 
			
		||||
// 用户-角色关联授权
 | 
			
		||||
export function saveUserRole(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/role/saveUserRole',
 | 
			
		||||
    url: '/api/upms/role/saveUserRole',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -80,7 +80,7 @@ export function saveUserRole(data) {
 | 
			
		||||
// 用户-角色关联获取
 | 
			
		||||
export function listByUser(id) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/role/listByUser',
 | 
			
		||||
    url: '/api/upms/role/listByUser',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Date: 2020-12-14 09:07:03
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-11 15:45:54
 | 
			
		||||
 * @LastEditTime: 2022-03-10 16:41:55
 | 
			
		||||
 * @FilePath: \basic-admin\src\api\user.js
 | 
			
		||||
 * @Description: 用户管理 & 登录用户的相关api接口定义
 | 
			
		||||
 */
 | 
			
		||||
@@ -38,7 +38,7 @@ export function getUserInfo(data) {
 | 
			
		||||
// 修改当前用户密码
 | 
			
		||||
export function editUserPW(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/user/modifyPassword',
 | 
			
		||||
    url: '/api/upms/user/modifyPassword',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -47,17 +47,17 @@ export function editUserPW(data) {
 | 
			
		||||
// 当前用户 找回密码
 | 
			
		||||
export function findUserPW(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/user/findPassword',
 | 
			
		||||
    url: '/api/upms/user/findPassword',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// 下面为:用户管理列表
 | 
			
		||||
// 获取用户列表 (根据需求可以考虑换成带分页的 /upms/user/page)
 | 
			
		||||
// 获取用户列表 (根据需求可以考虑换成带分页的 /api/upms/user/page)
 | 
			
		||||
export function getUserList(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/user/page',
 | 
			
		||||
    url: '/api/upms/user/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -66,7 +66,7 @@ export function getUserList(data) {
 | 
			
		||||
// 新增用户
 | 
			
		||||
export function addUser(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/user/add',
 | 
			
		||||
    url: '/api/upms/user/add',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -75,7 +75,7 @@ export function addUser(data) {
 | 
			
		||||
// 删除用户
 | 
			
		||||
export function delUser(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/user/delete',
 | 
			
		||||
    url: '/api/upms/user/delete',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -84,7 +84,7 @@ export function delUser(data) {
 | 
			
		||||
// 修改用户信息
 | 
			
		||||
export function editUser(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/user/update',
 | 
			
		||||
    url: '/api/upms/user/update',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -93,7 +93,7 @@ export function editUser(data) {
 | 
			
		||||
// 获取用户详细信息
 | 
			
		||||
export function getUserDetail(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/user/get',
 | 
			
		||||
    url: '/api/upms/user/get',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -102,7 +102,7 @@ export function getUserDetail(data) {
 | 
			
		||||
// 管理员重置用户的密码
 | 
			
		||||
export function resetUserPW(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/user/resetPassword',
 | 
			
		||||
    url: '/api/upms/user/resetPassword',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -111,7 +111,7 @@ export function resetUserPW(data) {
 | 
			
		||||
// 启停用户信息
 | 
			
		||||
export function enableUser(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/upms/user/enabled',
 | 
			
		||||
    url: '/api/upms/user/enabled',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
 
 | 
			
		||||
@@ -68,6 +68,10 @@ export default {
 | 
			
		||||
      zh: '返回',
 | 
			
		||||
      en: 'Back'
 | 
			
		||||
    },
 | 
			
		||||
    export: {
 | 
			
		||||
      zh: '导出',
 | 
			
		||||
      en: 'Export'
 | 
			
		||||
    },
 | 
			
		||||
    checkLog: {
 | 
			
		||||
      zh: '查看日志',
 | 
			
		||||
      en: 'Check Log'
 | 
			
		||||
@@ -111,6 +115,10 @@ export default {
 | 
			
		||||
    design: {
 | 
			
		||||
      zh: '设计',
 | 
			
		||||
      en: 'Design'
 | 
			
		||||
    },
 | 
			
		||||
    refresh: {
 | 
			
		||||
      zh: '刷新',
 | 
			
		||||
      en: 'Refresh'
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  navbar: {
 | 
			
		||||
@@ -254,8 +262,8 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  routerTitle: {
 | 
			
		||||
    dashboard: {
 | 
			
		||||
      zh: '仪表盘',
 | 
			
		||||
      en: 'Dashboard'
 | 
			
		||||
      zh: '首页',
 | 
			
		||||
      en: 'Home'
 | 
			
		||||
    },
 | 
			
		||||
    basic: {
 | 
			
		||||
      zh: '系统管理',
 | 
			
		||||
@@ -747,6 +755,10 @@ export default {
 | 
			
		||||
      HistoricalTask: {
 | 
			
		||||
        zh: '历史任务',
 | 
			
		||||
        en: 'Historical Task'
 | 
			
		||||
      },
 | 
			
		||||
      ProcessStorageManagement: {
 | 
			
		||||
        zh: '工序存储区域管理',
 | 
			
		||||
        en: 'Process Storage Management'
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    order: {
 | 
			
		||||
@@ -757,8 +769,8 @@ export default {
 | 
			
		||||
        en: 'Power Classification'
 | 
			
		||||
      },
 | 
			
		||||
      ProcessInfo: {
 | 
			
		||||
        zh: '工艺信息',
 | 
			
		||||
        en: 'Process Info'
 | 
			
		||||
        zh: '工单工艺信息',
 | 
			
		||||
        en: 'Order Process Info'
 | 
			
		||||
      },
 | 
			
		||||
      ExecutionInfo: {
 | 
			
		||||
        zh: '执行信息',
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-03-04 16:19:14
 | 
			
		||||
 * @LastEditors: Please set LastEditors
 | 
			
		||||
 * @LastEditTime: 2021-07-13 20:32:02
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-08 15:48:54
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
@@ -90,5 +90,9 @@ export default {
 | 
			
		||||
  download: {
 | 
			
		||||
    zh: '下载',
 | 
			
		||||
    en: 'download'
 | 
			
		||||
  },
 | 
			
		||||
  export: {
 | 
			
		||||
    zh: '导出',
 | 
			
		||||
    en: 'export'
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-03-08 09:45:54
 | 
			
		||||
 * @LastEditors: gtz
 | 
			
		||||
 * @LastEditTime: 2021-04-15 19:34:46
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 15:07:12
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
@@ -47,6 +47,7 @@ export default {
 | 
			
		||||
  sameEqError: 'Can not choice same equipment!',
 | 
			
		||||
  processList: {
 | 
			
		||||
    processName: 'Process Step Name',
 | 
			
		||||
    processCode: 'process Code',
 | 
			
		||||
    processEq: 'Process Step Equipment',
 | 
			
		||||
    description: 'Description',
 | 
			
		||||
    addProcess: 'Add a Process Step',
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-03-04 16:13:51
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 10:13:58
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-28 11:13:15
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
export default {
 | 
			
		||||
@@ -30,6 +30,8 @@ export default {
 | 
			
		||||
    cancelButtonText: 'cancel',
 | 
			
		||||
    Tips: 'Tips',
 | 
			
		||||
    TipsBefore: 'Are you sure you want to delete',
 | 
			
		||||
    TipsStorageBefore: 'Confirm to add location:',
 | 
			
		||||
    PleaseAddLocationFirst: 'Please Add Location First!',
 | 
			
		||||
    Description: 'Description',
 | 
			
		||||
    Remarks: 'Remarks',
 | 
			
		||||
    Yes: 'Yes',
 | 
			
		||||
@@ -53,7 +55,9 @@ export default {
 | 
			
		||||
    editLocation: 'Edit Location Point',
 | 
			
		||||
    location: 'Location',
 | 
			
		||||
    locationTip: 'Click the picture below to select a point. After selecting a point, select a location in the pop-up box. If you do not select a location when adding a new point, you cannot select the next point. If you want to adjust the order of the points, drag the label at the bottom of the picture to the position you want to adjust. Click to confirm the submission point information and click Reset to reset the point information to the state when the pop-up box is opened',
 | 
			
		||||
    locationInfo: 'Location Point Info'
 | 
			
		||||
    locationInfo: 'Location Point Info',
 | 
			
		||||
    storageCode: 'storageBoxCode',
 | 
			
		||||
    storageBoxFid: 'StorageBox FID Code'
 | 
			
		||||
  },
 | 
			
		||||
  factory: {
 | 
			
		||||
    placeholderName: 'Name Or Code',
 | 
			
		||||
@@ -126,6 +130,20 @@ export default {
 | 
			
		||||
    AlarmTypeCode: 'Alarm Type Code',
 | 
			
		||||
    LevelCode: 'Level Code'
 | 
			
		||||
  },
 | 
			
		||||
  processLocation: {
 | 
			
		||||
    sequence: 'Sequence',
 | 
			
		||||
    locationName: 'Location Name',
 | 
			
		||||
    isProcess: 'Location Type',
 | 
			
		||||
    locationId: 'Location Id',
 | 
			
		||||
    workSequenId: 'Work Sequence Id',
 | 
			
		||||
    equipmentMark: 'Equipment Mark',
 | 
			
		||||
    portAttrId: 'Port Attribute Id',
 | 
			
		||||
    goodsShelves: 'Goods Shelves',
 | 
			
		||||
    ProcessLocation: 'Process Location',
 | 
			
		||||
    CacheLocation: 'Cache Location',
 | 
			
		||||
    aShelf: 'Shelf A',
 | 
			
		||||
    bShelf: 'Shelf B'
 | 
			
		||||
  },
 | 
			
		||||
  cache: {
 | 
			
		||||
    CacheCode: 'Ports Code',
 | 
			
		||||
    CacheName: 'Ports Name',
 | 
			
		||||
@@ -147,7 +165,20 @@ export default {
 | 
			
		||||
    LocationName: 'Location Name',
 | 
			
		||||
    anotherName: 'Another Name',
 | 
			
		||||
    place: 'Place',
 | 
			
		||||
    addCacheArea: 'add Ports Shelf'
 | 
			
		||||
    addCacheArea: 'add Ports Shelf',
 | 
			
		||||
    warning: 'Layers and Columns must be integer!',
 | 
			
		||||
    logisticsEquipment: 'Logistics Equipment',
 | 
			
		||||
    processEquipment: 'Process Equipment',
 | 
			
		||||
    sheCode: 'Shelf Code',
 | 
			
		||||
    sheName: 'Shelf Name',
 | 
			
		||||
    locaNum: 'Location Number',
 | 
			
		||||
    addLocation: 'Add Location',
 | 
			
		||||
    columnMark: 'Column Mark',
 | 
			
		||||
    rowMark: 'Row Mark',
 | 
			
		||||
    status: 'Status',
 | 
			
		||||
    man: 'Man',
 | 
			
		||||
    woman: 'Woman',
 | 
			
		||||
    locationNumber: 'Location Number'
 | 
			
		||||
  },
 | 
			
		||||
  storageBox: {
 | 
			
		||||
    name: 'Name',
 | 
			
		||||
@@ -159,7 +190,10 @@ export default {
 | 
			
		||||
    remark: 'Remark',
 | 
			
		||||
    PositionNo: 'PositionNo',
 | 
			
		||||
    PositionCode: 'PositionCode',
 | 
			
		||||
    PositionCodeAlias: 'PositionCodeAlias'
 | 
			
		||||
    PositionCodeAlias: 'PositionCodeAlias',
 | 
			
		||||
    scrapped: 'Scrapped',
 | 
			
		||||
    normal: 'Normal',
 | 
			
		||||
    repairing: 'Repairing'
 | 
			
		||||
  },
 | 
			
		||||
  equipment: {
 | 
			
		||||
    EquipmentName: 'Equipment Name',
 | 
			
		||||
@@ -237,7 +271,7 @@ export default {
 | 
			
		||||
    entryType: 'Manual/Automatic',
 | 
			
		||||
    automatic: 'automatic',
 | 
			
		||||
    manual: 'Manual',
 | 
			
		||||
    workOrderId: 'workOrderId'
 | 
			
		||||
    workOrderName: 'Work Order Name'
 | 
			
		||||
  },
 | 
			
		||||
  productPool: {
 | 
			
		||||
    productName: 'Product Name',
 | 
			
		||||
@@ -287,6 +321,7 @@ export default {
 | 
			
		||||
    BoxStatus: 'Box Status',
 | 
			
		||||
    BoxNumber: 'Box Number',
 | 
			
		||||
    PreviousOperation: 'Previous Operation',
 | 
			
		||||
    ExecutionOperation: 'Execution Operation',
 | 
			
		||||
    NextOperation: 'Next Operation',
 | 
			
		||||
    CompletionTime: 'Completion Time',
 | 
			
		||||
    StartLocation: 'Start Location',
 | 
			
		||||
@@ -294,15 +329,20 @@ export default {
 | 
			
		||||
    TaskLocation: 'Task Location',
 | 
			
		||||
    TargetLocation: 'Target Location',
 | 
			
		||||
    OrderName: 'Order Name',
 | 
			
		||||
    OrderType: 'Order Type',
 | 
			
		||||
    OrderCode: 'Order Code',
 | 
			
		||||
    IssueOrderTime: 'Issue Order Time',
 | 
			
		||||
    startProduceTime: 'Start Produce Time',
 | 
			
		||||
    TotalProcessName: 'Total Process Name',
 | 
			
		||||
    Priority: 'Priority',
 | 
			
		||||
    OrderStatus: 'Order Status',
 | 
			
		||||
    triggerOrigin: 'Trigger Origin',
 | 
			
		||||
    ProcessOrNot: 'Process Or Not',
 | 
			
		||||
    Unit: 'Unit',
 | 
			
		||||
    scrapQuantity: 'Scrap Quantity',
 | 
			
		||||
    RelateProcess: 'Relate Process',
 | 
			
		||||
    PlanProcessQuantity: 'Plan Process Quantity',
 | 
			
		||||
    actualProcessQuantity: 'Actual Process Quantity',
 | 
			
		||||
    SubProcessName: 'Sub Process Name',
 | 
			
		||||
    TaskBoxNumber: 'Task Box Number',
 | 
			
		||||
    FullBoxNumber: 'Full Box Number',
 | 
			
		||||
@@ -315,6 +355,19 @@ export default {
 | 
			
		||||
    IsEmpty: 'Is Empty',
 | 
			
		||||
    IsEmptyBox: 'Is Empty Box',
 | 
			
		||||
    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',
 | 
			
		||||
    publishTask: 'Publish The Task',
 | 
			
		||||
    startPosition: 'Start',
 | 
			
		||||
    endPosition: 'End',
 | 
			
		||||
    taskType: 'Task Type',
 | 
			
		||||
    ExWarehouse: 'Ex Warehouse',
 | 
			
		||||
    InWarehouse: 'In Warehouse',
 | 
			
		||||
    Circulation: 'Circulation',
 | 
			
		||||
    Initialization: 'Initialization',
 | 
			
		||||
    Damage: 'Damage'
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										23
									
								
								src/lang/i18n/en/module/dashboard.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								src/lang/i18n/en/module/dashboard.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2022-03-15 16:42:34
 | 
			
		||||
 * @LastEditors: gtz
 | 
			
		||||
 * @LastEditTime: 2022-03-16 20:01:32
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 * @FilePath: \mt-ck-wms-ui\src\lang\i18n\en\module\dashboard.js
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  first: 'First Row',
 | 
			
		||||
  second: 'Second Row',
 | 
			
		||||
  title: 'WMS Inventory Information',
 | 
			
		||||
  pageHeader: 'No.',
 | 
			
		||||
  pageFooter: ' Page',
 | 
			
		||||
  isEmpty: 'Is Empty',
 | 
			
		||||
  status: 'Status',
 | 
			
		||||
  storageBoxCode: 'Cassette Code',
 | 
			
		||||
  name: 'Location Name',
 | 
			
		||||
  attribute: 'Location Attribute',
 | 
			
		||||
  cassetteStatus: 'Cassette Status',
 | 
			
		||||
  workOrderNo: 'Work Order Number'
 | 
			
		||||
}
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-03-04 16:12:46
 | 
			
		||||
 * @LastEditors: gtz
 | 
			
		||||
 * @LastEditTime: 2021-04-22 19:49:39
 | 
			
		||||
 * @LastEditTime: 2022-03-15 16:44:11
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
@@ -17,6 +17,7 @@ import quality from './quality'
 | 
			
		||||
import factory from './factory'
 | 
			
		||||
import formManage from './formManage'
 | 
			
		||||
import report from './report'
 | 
			
		||||
import dashboard from './dashboard'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  basicData,
 | 
			
		||||
@@ -29,5 +30,6 @@ export default {
 | 
			
		||||
  quality,
 | 
			
		||||
  factory,
 | 
			
		||||
  formManage,
 | 
			
		||||
  report
 | 
			
		||||
  report,
 | 
			
		||||
  dashboard
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-04-22 19:48:46
 | 
			
		||||
 * @LastEditors: gtz
 | 
			
		||||
 * @LastEditTime: 2021-04-23 14:36:08
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-18 14:50:00
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
@@ -11,7 +11,35 @@ export default {
 | 
			
		||||
    reportName: 'Report name',
 | 
			
		||||
    reportSort: 'Report Sort',
 | 
			
		||||
    createTime: 'Create Date',
 | 
			
		||||
    operation: 'Operation'
 | 
			
		||||
    operation: 'Operation',
 | 
			
		||||
    storageBoxNumber: 'StorageBox Number',
 | 
			
		||||
    queryFiltering: 'Query Filtering',
 | 
			
		||||
    storageBoxReport: 'StorageBoxReport'
 | 
			
		||||
  },
 | 
			
		||||
  inventory: {
 | 
			
		||||
    code: 'Code',
 | 
			
		||||
    status: 'Status',
 | 
			
		||||
    inprocessCode: 'Inprocess Code',
 | 
			
		||||
    nextprocessCode: 'Next Process Code',
 | 
			
		||||
    currentLocation: 'Current Location',
 | 
			
		||||
    storeTime: 'Store Time',
 | 
			
		||||
    orderName: 'Order Name',
 | 
			
		||||
    substrateDetails: 'Substrate Details',
 | 
			
		||||
    viewSubstrates: 'View Substrates',
 | 
			
		||||
    manual: 'Manual',
 | 
			
		||||
    downl: 'Download'
 | 
			
		||||
  },
 | 
			
		||||
  substrate: {
 | 
			
		||||
    substrateCode: 'SubstrateCode',
 | 
			
		||||
    location: 'Location',
 | 
			
		||||
    storeTime: 'Store Time',
 | 
			
		||||
    substrateStatus: 'Substrate Status',
 | 
			
		||||
    editSubstrate: 'Edit Substrate',
 | 
			
		||||
    interCode: 'Inter Code',
 | 
			
		||||
    subStorageStatus: 'Sub Storage Status',
 | 
			
		||||
    load: 'Load',
 | 
			
		||||
    unload: 'Unload',
 | 
			
		||||
    machineHandID: 'Machine Hand ID'
 | 
			
		||||
  },
 | 
			
		||||
  reportSort: {
 | 
			
		||||
    all: 'All'
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-03-08 09:46:00
 | 
			
		||||
 * @LastEditors: gtz
 | 
			
		||||
 * @LastEditTime: 2021-04-15 19:35:00
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 15:07:02
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
@@ -47,6 +47,7 @@ export default {
 | 
			
		||||
  sameEqError: '不能选择相同的设备!',
 | 
			
		||||
  processList: {
 | 
			
		||||
    processName: '工序名称',
 | 
			
		||||
    processCode: '工序编码',
 | 
			
		||||
    processEq: '工序设备',
 | 
			
		||||
    description: '描述',
 | 
			
		||||
    addProcess: '添加一道工序',
 | 
			
		||||
 
 | 
			
		||||
@@ -1,14 +1,9 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-03-04 16:13:51
 | 
			
		||||
<<<<<<< HEAD
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-06 19:53:27
 | 
			
		||||
=======
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 10:13:41
 | 
			
		||||
>>>>>>> develop
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 * @LastEditTime: 2022-03-28 11:13:13
 | 
			
		||||
 * * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
export default {
 | 
			
		||||
  visual: {
 | 
			
		||||
@@ -35,6 +30,8 @@ export default {
 | 
			
		||||
    cancelButtonText: '取消',
 | 
			
		||||
    Tips: '提示',
 | 
			
		||||
    TipsBefore: '确定删除',
 | 
			
		||||
    TipsStorageBefore: '确定添加库位:',
 | 
			
		||||
    PleaseAddLocationFirst: '请先添加库位!',
 | 
			
		||||
    Description: '描述',
 | 
			
		||||
    Remarks: '备注',
 | 
			
		||||
    Or: '或',
 | 
			
		||||
@@ -58,7 +55,9 @@ export default {
 | 
			
		||||
    editLocation: '编辑库位点',
 | 
			
		||||
    location: '库位',
 | 
			
		||||
    locationTip: '点击下方图片选点,选点后在弹出框内选择库位,新增点位时未选择库位无法进行下一个选点,若想调整点位顺序可拖动图片下方的标签到你想调整的位置,点击确定提交点位信息,点击重置将点位信息重置到打开弹出框时的状态',
 | 
			
		||||
    locationInfo: '库位点信息'
 | 
			
		||||
    locationInfo: '库位点信息',
 | 
			
		||||
    storageCode: '存储箱号',
 | 
			
		||||
    storageBoxFid: '存储箱名FID编码'
 | 
			
		||||
  },
 | 
			
		||||
  factory: {
 | 
			
		||||
    placeholderName: '名称或编码',
 | 
			
		||||
@@ -157,7 +156,16 @@ export default {
 | 
			
		||||
    place: '位置',
 | 
			
		||||
    addCacheArea: '添加货架',
 | 
			
		||||
    addLocation: '添加库位',
 | 
			
		||||
    status: '状态'
 | 
			
		||||
    status: '状态',
 | 
			
		||||
    warning: '行列标必须为整数!',
 | 
			
		||||
    logisticsEquipment: '物流设备',
 | 
			
		||||
    processEquipment: '工艺设备',
 | 
			
		||||
    sheCode: '货架编码',
 | 
			
		||||
    sheName: '货架名',
 | 
			
		||||
    locaNum: '库存数量',
 | 
			
		||||
    man: '男',
 | 
			
		||||
    woman: '女',
 | 
			
		||||
    locationNumber: '库位编号'
 | 
			
		||||
  },
 | 
			
		||||
  storageBox: {
 | 
			
		||||
    name: '存储箱名称',
 | 
			
		||||
@@ -169,7 +177,11 @@ export default {
 | 
			
		||||
    remark: '备注',
 | 
			
		||||
    PositionNo: '位置序号',
 | 
			
		||||
    PositionCode: '位置编码',
 | 
			
		||||
    PositionCodeAlias: '位置编码别名'
 | 
			
		||||
    PositionCodeAlias: '位置编码别名',
 | 
			
		||||
    scrapped: '报废',
 | 
			
		||||
    normal: '正常',
 | 
			
		||||
    repairing: '维修中'
 | 
			
		||||
 | 
			
		||||
  },
 | 
			
		||||
  equipment: {
 | 
			
		||||
    shortName: '名称缩写',
 | 
			
		||||
@@ -249,15 +261,21 @@ export default {
 | 
			
		||||
    entryType: '手动/自动',
 | 
			
		||||
    automatic: '自动',
 | 
			
		||||
    manual: '手动',
 | 
			
		||||
    workOrderId: '工单名称'
 | 
			
		||||
    workOrderName: '工单名称'
 | 
			
		||||
  },
 | 
			
		||||
  processLocation: {
 | 
			
		||||
    sequence: '顺序',
 | 
			
		||||
    locationName: '库位名',
 | 
			
		||||
    isProcess: '是否为工序准备箱',
 | 
			
		||||
    isProcess: '库位类型',
 | 
			
		||||
    locationId: '库位ID',
 | 
			
		||||
    workSequenId: '工序ID',
 | 
			
		||||
    equipmentMark: '设备标记'
 | 
			
		||||
    equipmentMark: '设备标记',
 | 
			
		||||
    portAttrId: '库位属性ID',
 | 
			
		||||
    goodsShelves: '货架',
 | 
			
		||||
    CacheLocation: '缓存区库位',
 | 
			
		||||
    ProcessLocation: '工序库位',
 | 
			
		||||
    aShelf: 'a货架',
 | 
			
		||||
    bShelf: 'b货架'
 | 
			
		||||
  },
 | 
			
		||||
  productPool: {
 | 
			
		||||
    productName: '产品名称',
 | 
			
		||||
@@ -307,6 +325,7 @@ export default {
 | 
			
		||||
    BoxStatus: '箱状态',
 | 
			
		||||
    BoxNumber: '箱号',
 | 
			
		||||
    PreviousOperation: '上一个工序',
 | 
			
		||||
    ExecutionOperation: '执行工序',
 | 
			
		||||
    NextOperation: '下一个工序',
 | 
			
		||||
    CompletionTime: '完成时间',
 | 
			
		||||
    StartLocation: '开始库位',
 | 
			
		||||
@@ -314,15 +333,20 @@ export default {
 | 
			
		||||
    TaskLocation: '任务库位',
 | 
			
		||||
    TargetLocation: '目标库位',
 | 
			
		||||
    OrderName: '工单名',
 | 
			
		||||
    OrderType: '工单类型',
 | 
			
		||||
    OrderCode: '工单编码',
 | 
			
		||||
    IssueOrderTime: '下发工单时间',
 | 
			
		||||
    startProduceTime: '开始生产时间',
 | 
			
		||||
    TotalProcessName: '总工艺名称',
 | 
			
		||||
    Priority: '优先级',
 | 
			
		||||
    scrapQuantity: '废片数量',
 | 
			
		||||
    OrderStatus: '工单状态',
 | 
			
		||||
    triggerOrigin: '工单发起方',
 | 
			
		||||
    ProcessOrNot: '是否关联工艺',
 | 
			
		||||
    Unit: '单位',
 | 
			
		||||
    RelateProcess: '关联工艺',
 | 
			
		||||
    PlanProcessQuantity: '计划加工数量',
 | 
			
		||||
    actualProcessQuantity: '实际加工数量',
 | 
			
		||||
    SubProcessName: '分工艺',
 | 
			
		||||
    TaskBoxNumber: '任务箱号',
 | 
			
		||||
    FullBoxNumber: '空箱号',
 | 
			
		||||
@@ -335,7 +359,19 @@ export default {
 | 
			
		||||
    IsEmpty: '是否有基板',
 | 
			
		||||
    IsEmptyBox: '是否空箱',
 | 
			
		||||
    LocationName: '库位名',
 | 
			
		||||
    LocationCode: '库位编码'
 | 
			
		||||
 | 
			
		||||
    LocationCode: '库位编码',
 | 
			
		||||
    PerformTaskManual: '手动执行任务',
 | 
			
		||||
    processStorageLink: '工序关联库位',
 | 
			
		||||
    SelectStorageType: '选择库位类型',
 | 
			
		||||
    LocationStorageSetting: '库位存储箱设置',
 | 
			
		||||
    publishTask: '发布任务',
 | 
			
		||||
    startPosition: '起点',
 | 
			
		||||
    endPosition: '终点',
 | 
			
		||||
    taskType: '任务类型',
 | 
			
		||||
    ExWarehouse: '出库',
 | 
			
		||||
    InWarehouse: '入库',
 | 
			
		||||
    Circulation: '流转',
 | 
			
		||||
    Initialization: '初始化',
 | 
			
		||||
    Damage: '损坏'
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										23
									
								
								src/lang/i18n/zh/module/dashboard.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								src/lang/i18n/zh/module/dashboard.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2022-03-15 16:42:34
 | 
			
		||||
 * @LastEditors: gtz
 | 
			
		||||
 * @LastEditTime: 2022-03-16 20:01:27
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 * @FilePath: \mt-ck-wms-ui\src\lang\i18n\zh\module\dashboard.js
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  first: '第一排',
 | 
			
		||||
  second: '第二排',
 | 
			
		||||
  title: 'WMS库存信息',
 | 
			
		||||
  pageHeader: '第',
 | 
			
		||||
  pageFooter: '页',
 | 
			
		||||
  isEmpty: '是否为空',
 | 
			
		||||
  status: '状态',
 | 
			
		||||
  storageBoxCode: '存储箱编码',
 | 
			
		||||
  name: '库位名',
 | 
			
		||||
  attribute: '库位属性',
 | 
			
		||||
  cassetteStatus: '存储箱状态',
 | 
			
		||||
  workOrderNo: '工单号'
 | 
			
		||||
}
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-03-04 16:12:46
 | 
			
		||||
 * @LastEditors: gtz
 | 
			
		||||
 * @LastEditTime: 2021-04-22 19:49:47
 | 
			
		||||
 * @LastEditTime: 2022-03-15 16:44:05
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
@@ -17,6 +17,7 @@ import quality from './quality'
 | 
			
		||||
import factory from './factory'
 | 
			
		||||
import formManage from './formManage'
 | 
			
		||||
import report from './report'
 | 
			
		||||
import dashboard from './dashboard'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  basicData,
 | 
			
		||||
@@ -29,5 +30,6 @@ export default {
 | 
			
		||||
  quality,
 | 
			
		||||
  factory,
 | 
			
		||||
  formManage,
 | 
			
		||||
  report
 | 
			
		||||
  report,
 | 
			
		||||
  dashboard
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-04-22 19:48:46
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-06 16:50:50
 | 
			
		||||
 * @LastEditTime: 2022-03-18 14:49:43
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
@@ -13,7 +13,8 @@ export default {
 | 
			
		||||
    createTime: '添加时间',
 | 
			
		||||
    operation: '操作',
 | 
			
		||||
    storageBoxNumber: '存储箱号',
 | 
			
		||||
    queryFiltering: '查询过滤'
 | 
			
		||||
    queryFiltering: '查询过滤',
 | 
			
		||||
    storageBoxReport: '存储箱报表'
 | 
			
		||||
  },
 | 
			
		||||
  inventory: {
 | 
			
		||||
    code: '存储箱号',
 | 
			
		||||
@@ -34,7 +35,11 @@ export default {
 | 
			
		||||
    storeTime: '入库时间',
 | 
			
		||||
    substrateStatus: '基板状态',
 | 
			
		||||
    editSubstrate: '编辑基板',
 | 
			
		||||
    interCode: '内部编码'
 | 
			
		||||
    interCode: '内部编码',
 | 
			
		||||
    subStorageStatus: '存取状态',
 | 
			
		||||
    load: '上片',
 | 
			
		||||
    unload: '下片',
 | 
			
		||||
    machineHandID: '机械手ID'
 | 
			
		||||
  },
 | 
			
		||||
  reportSort: {
 | 
			
		||||
    all: '全部'
 | 
			
		||||
 
 | 
			
		||||
@@ -11,10 +11,10 @@
 | 
			
		||||
 | 
			
		||||
    <div class="right-menu">
 | 
			
		||||
 | 
			
		||||
      <div v-if="showhome" class="right-menu-back" @click="toHome">
 | 
			
		||||
      <!-- <div v-if="showhome" class="right-menu-back" @click="toHome">
 | 
			
		||||
        <svg-icon class="item-icon" icon-class="home" />
 | 
			
		||||
        {{ 'navbar.homepage' | i18nFilter }}
 | 
			
		||||
      </div>
 | 
			
		||||
      </div> -->
 | 
			
		||||
 | 
			
		||||
      <template>
 | 
			
		||||
        <lang-select class="right-menu-item hover-effect" />
 | 
			
		||||
@@ -34,16 +34,6 @@
 | 
			
		||||
          <!-- <i class="el-icon-caret-bottom" /> -->
 | 
			
		||||
        </div>
 | 
			
		||||
        <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">
 | 
			
		||||
            <svg-icon class="item-icon" icon-class="logout" />
 | 
			
		||||
            {{ 'navbar.logOut' | i18nFilter }}
 | 
			
		||||
 
 | 
			
		||||
@@ -59,19 +59,6 @@ export const constantRoutes = [
 | 
			
		||||
  },
 | 
			
		||||
  // {
 | 
			
		||||
  //   path: '/',
 | 
			
		||||
  //   component: Layout,
 | 
			
		||||
  //   redirect: '/dashboard',
 | 
			
		||||
  //   children: [
 | 
			
		||||
  //     {
 | 
			
		||||
  //       path: 'dashboard',
 | 
			
		||||
  //       component: () => import('@/views/dashboard/index'),
 | 
			
		||||
  //       name: 'Dashboard',
 | 
			
		||||
  //       meta: { title: routerTitle.dashboard?.[language] || routerTitle.dashboard.en, icon: 'form', iconPart: 'dashboard', affix: true, required: true, requireToken: true }
 | 
			
		||||
  //     }
 | 
			
		||||
  //   ]
 | 
			
		||||
  // },
 | 
			
		||||
  // {
 | 
			
		||||
  //   path: '/',
 | 
			
		||||
  //   component: () => import('@/views/ChoicePart'),
 | 
			
		||||
  //   hidden: true,
 | 
			
		||||
  //   meta: { requireToken: true }
 | 
			
		||||
@@ -91,6 +78,20 @@ export const constantRoutes = [
 | 
			
		||||
    component: () => import('@/views/error-page/401'),
 | 
			
		||||
    hidden: true
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    path: '/dashboard',
 | 
			
		||||
    component: Layout,
 | 
			
		||||
    redirect: '/dashboard',
 | 
			
		||||
    name: 'Dash',
 | 
			
		||||
    children: [
 | 
			
		||||
      {
 | 
			
		||||
        path: 'dashboard',
 | 
			
		||||
        component: () => import('@/views/dashboard/index'),
 | 
			
		||||
        name: 'Dashboard',
 | 
			
		||||
        meta: { title: routerTitle.dashboard?.[language] || routerTitle.dashboard.en, icon: 'form', affix: true, required: true, requireToken: true, noCache: true }
 | 
			
		||||
      }
 | 
			
		||||
    ]
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    path: '/',
 | 
			
		||||
    component: Layout,
 | 
			
		||||
@@ -159,6 +160,7 @@ export const constantRoutes = [
 | 
			
		||||
        path: 'processInfo',
 | 
			
		||||
        component: () => import('@/views/basicData/Process/processInfo'),
 | 
			
		||||
        name: 'processInfo',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.basicData.process.processInfo?.[language] || routerTitle.basicData.process.processInfo.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
@@ -214,12 +216,13 @@ export const constantRoutes = [
 | 
			
		||||
        path: 'staff',
 | 
			
		||||
        component: () => import('@/views/basicData/GroupModule/staff'),
 | 
			
		||||
        name: 'staff',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.basicData.teamManage.staff?.[language] || routerTitle.basicData.teamManage.staff.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: '/dataDictionary',
 | 
			
		||||
        path: '/DataDictionary',
 | 
			
		||||
        component: () => import('@/views/basicData/index'),
 | 
			
		||||
        name: 'dataDictionary',
 | 
			
		||||
        name: 'DataDictionary',
 | 
			
		||||
        meta: { title: routerTitle.basicData.dataDictionaryType.dataDictionary?.[language] || routerTitle.basicData.dataDictionaryType.dataDictionary.en, icon: 'form', affix: true, required: true, requireToken: true },
 | 
			
		||||
        children: [{
 | 
			
		||||
          path: 'dataDictionary',
 | 
			
		||||
@@ -259,7 +262,7 @@ export const constantRoutes = [
 | 
			
		||||
      {
 | 
			
		||||
        path: 'processList',
 | 
			
		||||
        component: () => import('@/views/art/processList'),
 | 
			
		||||
        name: 'Process',
 | 
			
		||||
        name: 'processList',
 | 
			
		||||
        meta: { title: routerTitle.technology.processList?.[language] || routerTitle.technology.processList.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      }
 | 
			
		||||
    ]
 | 
			
		||||
@@ -267,7 +270,7 @@ export const constantRoutes = [
 | 
			
		||||
  {
 | 
			
		||||
    path: '/Warehouse',
 | 
			
		||||
    component: Layout,
 | 
			
		||||
    redirect: '/Warehouse/workOrderManage',
 | 
			
		||||
    redirect: '/Warehouse/StorageBoxInfo',
 | 
			
		||||
    name: 'Warehouse',
 | 
			
		||||
    meta: { title: routerTitle.Warehouse?.[language] || routerTitle.Warehouse.en, icon: 'form', iconPart: 'orderManage', affix: true, required: true, requireToken: true },
 | 
			
		||||
    children: [
 | 
			
		||||
@@ -280,6 +283,7 @@ export const constantRoutes = [
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: '/StorageBoxRack',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        component: () =>
 | 
			
		||||
          import('@/views/basicData/Warehouse/StorageBoxRack'),
 | 
			
		||||
        name: 'StorageBoxRack',
 | 
			
		||||
@@ -298,6 +302,29 @@ export const constantRoutes = [
 | 
			
		||||
          import('@/views/basicData/Warehouse/HistoricalTask'),
 | 
			
		||||
        name: 'HistoricalTask',
 | 
			
		||||
        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 }
 | 
			
		||||
      }
 | 
			
		||||
    ]
 | 
			
		||||
  },
 | 
			
		||||
@@ -411,6 +438,7 @@ export const constantRoutes = [
 | 
			
		||||
      path: 'currentSubstrate',
 | 
			
		||||
      component: () => import('@/views/report-manage/CurrentSubstrate'),
 | 
			
		||||
      name: 'currentSubstrate',
 | 
			
		||||
      hidden: true,
 | 
			
		||||
      meta: { title: routerTitle.form.currentSubstrate?.[language] || routerTitle.form.currentSubstrate.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
@@ -471,7 +499,7 @@ export const constantRoutes = [
 | 
			
		||||
    path: '/basic',
 | 
			
		||||
    component: Layout,
 | 
			
		||||
    redirect: '/user/manager',
 | 
			
		||||
    name: 'ArticleManager',
 | 
			
		||||
    name: 'basic',
 | 
			
		||||
    meta: { title: routerTitle.basic?.[language] || routerTitle.basic.en, icon: 'form', iconPart: 'ArticleManager', affix: true, required: true, requireToken: true },
 | 
			
		||||
    children: [
 | 
			
		||||
      {
 | 
			
		||||
@@ -490,7 +518,6 @@ export const constantRoutes = [
 | 
			
		||||
        path: 'menumanager',
 | 
			
		||||
        component: () => import('@/views/MenuManager'),
 | 
			
		||||
        name: 'MenuManager',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.basic.menumanage?.[language] || routerTitle.basic.menumanage.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
 
 | 
			
		||||
@@ -198,3 +198,40 @@ aside {
 | 
			
		||||
.el-dialog__wrapper {
 | 
			
		||||
  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);
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: DY
 | 
			
		||||
 * @Date: 2021-12-16 15:41:11
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @LastEditTime: 2022-03-03 15:26:05
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 09:04:30
 | 
			
		||||
 * @Description: E10
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -84,18 +84,18 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    // this.getEqList()
 | 
			
		||||
    this.getList()
 | 
			
		||||
    // this.getList()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    async getEqList() {
 | 
			
		||||
      const res = await equipmentList({
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 999
 | 
			
		||||
      })
 | 
			
		||||
      if (res.code === 0) {
 | 
			
		||||
        this.eqList = res.data
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    // async getEqList() {
 | 
			
		||||
    //   const res = await equipmentList({
 | 
			
		||||
    //     current: 1,
 | 
			
		||||
    //     size: 999
 | 
			
		||||
    //   })
 | 
			
		||||
    //   if (res.code === 0) {
 | 
			
		||||
    //     this.eqList = res.data
 | 
			
		||||
    //   }
 | 
			
		||||
    // },
 | 
			
		||||
    toE10() {
 | 
			
		||||
      this.$router.push({
 | 
			
		||||
        name: 'E10'
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: DY
 | 
			
		||||
 * @Date: 2021-12-16 15:41:11
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @LastEditTime: 2022-03-03 15:26:28
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 09:04:19
 | 
			
		||||
 * @Description: MCBF
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -83,18 +83,18 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    // this.getEqList()
 | 
			
		||||
    this.getList()
 | 
			
		||||
    // this.getList()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    async getEqList() {
 | 
			
		||||
      const res = await equipmentList({
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 999
 | 
			
		||||
      })
 | 
			
		||||
      if (res.code === 0) {
 | 
			
		||||
        this.eqList = res.data
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    // async getEqList() {
 | 
			
		||||
    //   const res = await equipmentList({
 | 
			
		||||
    //     current: 1,
 | 
			
		||||
    //     size: 999
 | 
			
		||||
    //   })
 | 
			
		||||
    //   if (res.code === 0) {
 | 
			
		||||
    //     this.eqList = res.data
 | 
			
		||||
    //   }
 | 
			
		||||
    // },
 | 
			
		||||
    toE10() {
 | 
			
		||||
      this.$router.push({
 | 
			
		||||
        name: 'E10'
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: DY
 | 
			
		||||
 * @Date: 2021-12-16 15:41:11
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @LastEditTime: 2022-03-03 15:26:44
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 09:04:09
 | 
			
		||||
 * @Description: MTTR
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -83,18 +83,18 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    // this.getEqList()
 | 
			
		||||
    this.getList()
 | 
			
		||||
    // this.getList()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    async getEqList() {
 | 
			
		||||
      const res = await equipmentList({
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 999
 | 
			
		||||
      })
 | 
			
		||||
      if (res.code === 0) {
 | 
			
		||||
        this.eqList = res.data
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    // async getEqList() {
 | 
			
		||||
    //   const res = await equipmentList({
 | 
			
		||||
    //     current: 1,
 | 
			
		||||
    //     size: 999
 | 
			
		||||
    //   })
 | 
			
		||||
    //   if (res.code === 0) {
 | 
			
		||||
    //     this.eqList = res.data
 | 
			
		||||
    //   }
 | 
			
		||||
    // },
 | 
			
		||||
    toE10() {
 | 
			
		||||
      this.$router.push({
 | 
			
		||||
        name: 'E10'
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: DY
 | 
			
		||||
 * @Date: 2021-12-16 15:41:11
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @LastEditTime: 2022-03-03 15:26:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 09:03:58
 | 
			
		||||
 * @Description: OEE
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -83,18 +83,18 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    // this.getEqList()
 | 
			
		||||
    this.getList()
 | 
			
		||||
    // this.getList()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    async getEqList() {
 | 
			
		||||
      const res = await equipmentList({
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 999
 | 
			
		||||
      })
 | 
			
		||||
      if (res.code === 0) {
 | 
			
		||||
        this.eqList = res.data
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    // async getEqList() {
 | 
			
		||||
    //   const res = await equipmentList({
 | 
			
		||||
    //     current: 1,
 | 
			
		||||
    //     size: 999
 | 
			
		||||
    //   })
 | 
			
		||||
    //   if (res.code === 0) {
 | 
			
		||||
    //     this.eqList = res.data
 | 
			
		||||
    //   }
 | 
			
		||||
    // },
 | 
			
		||||
    toE10() {
 | 
			
		||||
      this.$router.push({
 | 
			
		||||
        name: 'E10'
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @LastEditTime: 2022-03-03 16:22:24
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 09:03:35
 | 
			
		||||
 * @Description: E10详情表格
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -108,15 +108,15 @@ export default {
 | 
			
		||||
      this.listQuery.startTime = this.time1
 | 
			
		||||
      this.listQuery.endTime = this.time2
 | 
			
		||||
      this.listQuery.equipmentName = this.equipmentName
 | 
			
		||||
      getE10StackDetail(this.listQuery).then(res => {
 | 
			
		||||
        if (res.data !== []) {
 | 
			
		||||
          this.list = res.data.detail.records
 | 
			
		||||
          this.total = res.data.detail.total
 | 
			
		||||
          this.list.forEach(item => {
 | 
			
		||||
            item.equipmentName = this.equipmentName
 | 
			
		||||
          })
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
      // getE10StackDetail(this.listQuery).then(res => {
 | 
			
		||||
      //   if (res.data !== []) {
 | 
			
		||||
      //     this.list = res.data.detail.records
 | 
			
		||||
      //     this.total = res.data.detail.total
 | 
			
		||||
      //     this.list.forEach(item => {
 | 
			
		||||
      //       item.equipmentName = this.equipmentName
 | 
			
		||||
      //     })
 | 
			
		||||
      //   }
 | 
			
		||||
      // })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @LastEditTime: 2022-03-03 16:46:06
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 09:03:23
 | 
			
		||||
 * @Description: Mttr详情表格
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -109,12 +109,12 @@ export default {
 | 
			
		||||
      this.listQuery.startTime = this.time1
 | 
			
		||||
      this.listQuery.endTime = this.time2
 | 
			
		||||
      this.listQuery.equipmentName = this.equipmentName
 | 
			
		||||
      getMttrDetail(this.listQuery).then(res => {
 | 
			
		||||
        if (res.data !== []) {
 | 
			
		||||
          this.list = res.data.detail.records
 | 
			
		||||
          this.total = res.data.detail.total
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
      // getMttrDetail(this.listQuery).then(res => {
 | 
			
		||||
      //   if (res.data !== []) {
 | 
			
		||||
      //     this.list = res.data.detail.records
 | 
			
		||||
      //     this.total = res.data.detail.total
 | 
			
		||||
      //   }
 | 
			
		||||
      // })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 10:39:52
 | 
			
		||||
 * @LastEditTime: 2022-03-16 14:11:09
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -66,10 +66,10 @@
 | 
			
		||||
          </el-select>
 | 
			
		||||
        </el-form-item>
 | 
			
		||||
 | 
			
		||||
        <el-form-item :label="$t('module.basicData.ScrapInfo.workOrderId')" prop="workOrderId">
 | 
			
		||||
        <el-form-item :label="$t('module.basicData.ScrapInfo.workOrderName')" prop="workOrderId">
 | 
			
		||||
          <el-select
 | 
			
		||||
            v-model="dataForm.workOrderId"
 | 
			
		||||
            :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.workOrderId')])"
 | 
			
		||||
            :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.workOrderName')])"
 | 
			
		||||
            clearable
 | 
			
		||||
            :style="{width: '100%'}"
 | 
			
		||||
          >
 | 
			
		||||
@@ -91,7 +91,7 @@
 | 
			
		||||
        </el-form-item>
 | 
			
		||||
 | 
			
		||||
        <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
 | 
			
		||||
              v-for="(item, index) in device"
 | 
			
		||||
              :key="index"
 | 
			
		||||
@@ -101,10 +101,6 @@
 | 
			
		||||
          </el-select>
 | 
			
		||||
        </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-input v-model="dataForm.registerPerson" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.RegisterPerson')])" clearable :style="{width: '100%'}" /> -->
 | 
			
		||||
          <el-select
 | 
			
		||||
@@ -139,8 +135,9 @@
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import moment from 'moment'
 | 
			
		||||
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 { getDictWorker } from '@/api/dict'
 | 
			
		||||
import { getEqList } from '@/api/equipment/maintain'
 | 
			
		||||
@@ -168,6 +165,7 @@ export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      moment,
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: 0,
 | 
			
		||||
        source: undefined,
 | 
			
		||||
@@ -182,19 +180,9 @@ export default {
 | 
			
		||||
      wasteGradeArr,
 | 
			
		||||
      entryType,
 | 
			
		||||
      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: [{
 | 
			
		||||
          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'
 | 
			
		||||
        }],
 | 
			
		||||
        substrateId: [{
 | 
			
		||||
@@ -206,6 +194,11 @@ export default {
 | 
			
		||||
          required: true,
 | 
			
		||||
          message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.ScrapInfo.registerPerson')]),
 | 
			
		||||
          trigger: 'change'
 | 
			
		||||
        }],
 | 
			
		||||
        scrapReasonId: [{
 | 
			
		||||
          required: true,
 | 
			
		||||
          message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.ScrapInfo.cause')]),
 | 
			
		||||
          trigger: 'change'
 | 
			
		||||
        }]
 | 
			
		||||
      },
 | 
			
		||||
      dict: {
 | 
			
		||||
@@ -214,7 +207,6 @@ export default {
 | 
			
		||||
        orderList: []
 | 
			
		||||
      },
 | 
			
		||||
      device: [],
 | 
			
		||||
      wasteGrade: '',
 | 
			
		||||
      tag: false
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
@@ -222,19 +214,6 @@ export default {
 | 
			
		||||
    this.getDict()
 | 
			
		||||
  },
 | 
			
		||||
  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() {
 | 
			
		||||
      this.$refs['dataForm'].resetFields()
 | 
			
		||||
    },
 | 
			
		||||
@@ -246,6 +225,8 @@ export default {
 | 
			
		||||
          getScrapInfo({ id: this.dataForm.id }).then(res => {
 | 
			
		||||
            this.dataForm = res.data
 | 
			
		||||
          })
 | 
			
		||||
        } else {
 | 
			
		||||
          this.dataForm.registerTime = this.moment()
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 10:40:51
 | 
			
		||||
 * @LastEditTime: 2022-03-28 13:52:30
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -11,10 +11,9 @@
 | 
			
		||||
      :model="formData"
 | 
			
		||||
      :inline="true"
 | 
			
		||||
      size="medium"
 | 
			
		||||
      label-width="100px"
 | 
			
		||||
    >
 | 
			
		||||
      <el-form-item v-if="false" :label="$t('module.basicData.ScrapInfo.PlateId')" prop="basalId">
 | 
			
		||||
        <el-input v-model="formData.basalId" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.PlateId')])" style="width:200px" clearable />
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.ScrapInfo.PlateId')" prop="substrateId">
 | 
			
		||||
        <el-input v-model="formData.substrateId" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.PlateId')])" style="width:200px" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.ScrapInfo.TimePeriod')" prop="time">
 | 
			
		||||
        <el-date-picker
 | 
			
		||||
@@ -38,6 +37,16 @@
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.ScrapInfo.workOrderName')" prop="workOrderId">
 | 
			
		||||
        <el-select v-model="formData.workOrderId" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.workOrderName')])" clearable :style="{width: '100%'}" filterable>
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="(item, index) in orderList"
 | 
			
		||||
            :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-button type="primary" @click="addNew()"> {{ 'btn.add' | i18nFilter }} </el-button>
 | 
			
		||||
@@ -79,6 +88,7 @@ import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn'
 | 
			
		||||
import { timeFormatter } from '@/filters'
 | 
			
		||||
import i18n from '@/lang'
 | 
			
		||||
import { getEqList } from '@/api/equipment/maintain'
 | 
			
		||||
import { ProcessInfoList } from '@/api/orderManage/00A'
 | 
			
		||||
// import DictFilter from '@/components/BaseTable/subcomponents/DataDictFilter'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 TypeScript接口注释
 | 
			
		||||
@@ -113,8 +123,13 @@ const tableProps = [
 | 
			
		||||
  //   filter: timeFormatter
 | 
			
		||||
  // },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'source',
 | 
			
		||||
    label: i18n.t('module.basicData.ScrapInfo.source'),
 | 
			
		||||
    prop: 'substrateId',
 | 
			
		||||
    label: i18n.t('module.basicData.ScrapInfo.PlateId'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'workOrderName',
 | 
			
		||||
    label: i18n.t('module.basicData.ScrapInfo.workOrderName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
@@ -122,11 +137,6 @@ const tableProps = [
 | 
			
		||||
    label: i18n.t('module.basicData.ScrapInfo.name'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'substrateId',
 | 
			
		||||
    label: i18n.t('module.basicData.ScrapInfo.PlateId'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'registerPersonName',
 | 
			
		||||
    label: i18n.t('module.basicData.ScrapInfo.RegisterPerson'),
 | 
			
		||||
@@ -138,6 +148,11 @@ const tableProps = [
 | 
			
		||||
    filter: timeFormatter,
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'placeOfRegis',
 | 
			
		||||
    label: i18n.t('module.basicData.ScrapInfo.registrationPlace'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'scrapReason',
 | 
			
		||||
    label: i18n.t('module.basicData.ScrapInfo.cause'),
 | 
			
		||||
@@ -166,7 +181,9 @@ export default {
 | 
			
		||||
      listLoading: true,
 | 
			
		||||
      formData: {
 | 
			
		||||
        timeSlot: null,
 | 
			
		||||
        basalId: '',
 | 
			
		||||
        substrateId: '',
 | 
			
		||||
        workOrderId: '',
 | 
			
		||||
        equipmentId: '',
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 10,
 | 
			
		||||
        id: ''
 | 
			
		||||
@@ -178,6 +195,7 @@ export default {
 | 
			
		||||
      dict: {
 | 
			
		||||
        scrap: []
 | 
			
		||||
      },
 | 
			
		||||
      orderList: [],
 | 
			
		||||
      device: []
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
@@ -236,6 +254,13 @@ export default {
 | 
			
		||||
      if (result1.code === 0) {
 | 
			
		||||
        this.device = result1.data.records
 | 
			
		||||
      }
 | 
			
		||||
      const result2 = await ProcessInfoList({
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 999
 | 
			
		||||
      })
 | 
			
		||||
      if (result2.code === 0) {
 | 
			
		||||
        this.orderList = result2.data.records
 | 
			
		||||
      }
 | 
			
		||||
      const result = await scrapReasonList()
 | 
			
		||||
      this.dict.scrap = result
 | 
			
		||||
    },
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2021-04-06 19:33:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-07-09 09:42:54
 | 
			
		||||
 * @LastEditTime: 2022-03-10 16:54:48
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -257,7 +257,7 @@ export default {
 | 
			
		||||
      if (res.code === 0) {
 | 
			
		||||
        this.list = res.data.records
 | 
			
		||||
        this.list.forEach(item => {
 | 
			
		||||
          item.roleName = item.stringList.toString()
 | 
			
		||||
          item.roleName = item.stringList?.toString()
 | 
			
		||||
        })
 | 
			
		||||
        this.total = res.data.total
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-03 16:43:26
 | 
			
		||||
 * @LastEditTime: 2022-03-16 14:30:59
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -15,8 +15,8 @@
 | 
			
		||||
        <el-input v-model="dataForm.name" :placeholder="$i18nForm(['placeholder.input', $t('module.art.processList.processName')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.art.processList.processEq')" prop="equipmentIds">
 | 
			
		||||
        <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-select v-model="dataForm.equipmentIds" clearable filterable multiple @change="$forceUpdate()">
 | 
			
		||||
          <el-option v-for="item in eqList" :key="item.id" :value="item.id" :label="item.name" />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <!-- <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-select>
 | 
			
		||||
      </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-form-item>
 | 
			
		||||
    </el-form>
 | 
			
		||||
@@ -88,10 +88,7 @@ export default {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        if (this.dataForm.id) {
 | 
			
		||||
          getInfo({ id: this.dataForm.id }).then(res => {
 | 
			
		||||
            this.dataForm.id = res.data.id
 | 
			
		||||
            this.dataForm.name = res.data.name
 | 
			
		||||
            this.dataForm.type = res.data.type
 | 
			
		||||
            this.dataForm.description = res.data.description
 | 
			
		||||
            this.dataForm = res.data
 | 
			
		||||
            this.dataForm.equipmentIds = res.data.equipments.map(item => {
 | 
			
		||||
              return item.id
 | 
			
		||||
            })
 | 
			
		||||
@@ -101,7 +98,6 @@ export default {
 | 
			
		||||
    },
 | 
			
		||||
    // 表单提交
 | 
			
		||||
    dataFormSubmit() {
 | 
			
		||||
      console.log(!this.dataForm.id)
 | 
			
		||||
      this.$refs['dataForm'].validate((valid) => {
 | 
			
		||||
        if (valid) {
 | 
			
		||||
          const data = {
 | 
			
		||||
 
 | 
			
		||||
@@ -32,7 +32,7 @@
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </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
 | 
			
		||||
          v-model="obj.bomId"
 | 
			
		||||
          :class="$style.select"
 | 
			
		||||
@@ -47,7 +47,7 @@
 | 
			
		||||
            :value="item.id"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      </el-form-item> -->
 | 
			
		||||
      <el-form-item :label="$t('module.art.description')" prop="description">
 | 
			
		||||
        <el-input v-model="obj.description" />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
@@ -63,7 +63,7 @@
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<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'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
@@ -91,8 +91,6 @@ export default {
 | 
			
		||||
        substrateId: '',
 | 
			
		||||
        bomId: ''
 | 
			
		||||
      },
 | 
			
		||||
      substrateList: [],
 | 
			
		||||
      bomList: [],
 | 
			
		||||
      rules: {
 | 
			
		||||
        name: [
 | 
			
		||||
          { required: true, message: this.$t('module.art.artName') + this.$t('module.art.notNull'), trigger: 'blur' },
 | 
			
		||||
@@ -129,14 +127,6 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    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) {
 | 
			
		||||
        const res = await getInfo({ id: this.id })
 | 
			
		||||
        this.obj = res.data
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-04-06 20:07:22
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-03 17:00:54
 | 
			
		||||
 * @LastEditTime: 2022-03-09 16:19:15
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -128,7 +128,7 @@ export default {
 | 
			
		||||
      // edit here
 | 
			
		||||
      const res = await equipmentlistList()
 | 
			
		||||
      if (res.code === 0) {
 | 
			
		||||
        this.eqList = res.data.records
 | 
			
		||||
        this.eqList = res.data
 | 
			
		||||
      }
 | 
			
		||||
      this.getList()
 | 
			
		||||
    },
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 19:08:00
 | 
			
		||||
 * @LastEditTime: 2022-03-19 10:25:46
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -17,7 +17,9 @@
 | 
			
		||||
      @getDataList="getList"
 | 
			
		||||
      @add="addNew"
 | 
			
		||||
    />
 | 
			
		||||
    <el-button type="success" @click="goback()">{{ 'btn.back' | i18nFilter }}</el-button>
 | 
			
		||||
    <div style="title">{{ sheCode }}:{{ shCode }}    {{ sheName }}:{{ shName }}    {{ locaNum }}:{{ num }}
 | 
			
		||||
      <el-button type="success" @click="goback()">{{ 'btn.back' | i18nFilter }}</el-button>
 | 
			
		||||
    </div>
 | 
			
		||||
    <base-table
 | 
			
		||||
      :page="listQuery.current"
 | 
			
		||||
      :limit="listQuery.size"
 | 
			
		||||
@@ -100,14 +102,19 @@ const tableProps = [
 | 
			
		||||
    label: i18n.t('module.basicData.cache.columnMark'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  // {
 | 
			
		||||
  //   prop: 'locationType',
 | 
			
		||||
  //   label: i18n.t('module.basicData.cache.locationType'),
 | 
			
		||||
  //   align: 'center'
 | 
			
		||||
  // },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'locationType',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.locationType'),
 | 
			
		||||
    prop: 'statusName',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.status'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'status',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.status'),
 | 
			
		||||
    prop: 'locationNumber',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.locationNumber'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
@@ -127,24 +134,36 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      shCode: '',
 | 
			
		||||
      shName: '',
 | 
			
		||||
      num: 0,
 | 
			
		||||
      addOrUpdateVisible: false,
 | 
			
		||||
      keyNameAdd: i18n.t('module.basicData.visual.keyword'),
 | 
			
		||||
      placeholderName: this.$t('module.basicData.cache.LocationName'),
 | 
			
		||||
      tableBtn,
 | 
			
		||||
      trueWidth: 200,
 | 
			
		||||
      tableProps,
 | 
			
		||||
      list: [],
 | 
			
		||||
      list: [{
 | 
			
		||||
        statusName: ''
 | 
			
		||||
      }],
 | 
			
		||||
      listLoading: true,
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        name: '',
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 990,
 | 
			
		||||
        shelfId: '',
 | 
			
		||||
        id: ''
 | 
			
		||||
      }
 | 
			
		||||
        size: 20
 | 
			
		||||
        // shelfId: '',
 | 
			
		||||
        // id: ''
 | 
			
		||||
      },
 | 
			
		||||
      sheCode: this.$t('module.basicData.cache.sheCode'),
 | 
			
		||||
      sheName: this.$t('module.basicData.cache.sheName'),
 | 
			
		||||
      locaNum: this.$t('module.basicData.cache.locaNum')
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.listQuery.shelfId = this.$route.query.id
 | 
			
		||||
    this.shCode = this.$route.query.code
 | 
			
		||||
    this.shName = this.$route.query.shelfName
 | 
			
		||||
    this.num = this.$route.query.total
 | 
			
		||||
    this.getList()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
@@ -175,11 +194,22 @@ export default {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      this.listQuery.name = key
 | 
			
		||||
      // shelfId与查询参数id关联
 | 
			
		||||
      console.log(this.listQuery)
 | 
			
		||||
      this.listQuery.id = this.listQuery.shelfId
 | 
			
		||||
      locationList(this.listQuery).then(response => {
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.list = response.data.records
 | 
			
		||||
          console.log(this.list)
 | 
			
		||||
          // 1是Working Port,2是Buffer Port,3是Exception Port与status进行替换
 | 
			
		||||
          for (var x = 0; x < this.list.length; x++) {
 | 
			
		||||
            if (this.list[x].status === 1) {
 | 
			
		||||
              this.list[x].statusName = 'Working Port'
 | 
			
		||||
            } else if (this.list[x].status === 2) {
 | 
			
		||||
              this.list[x].statusName = 'Buffer Port'
 | 
			
		||||
            } else if (this.list[x].status === 3) {
 | 
			
		||||
              this.list[x].statusName = 'Exception Port'
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        } else {
 | 
			
		||||
          this.list.splice(0, this.list.length)
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 18:59:53
 | 
			
		||||
 * @LastEditTime: 2022-03-23 11:03:08
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -20,17 +20,33 @@
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.cache.anotherName')" prop="locationNameAlias">
 | 
			
		||||
        <el-input v-model="dataForm.locationNameAlias" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.anotherName')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.cache.rowMark')" prop="layers">
 | 
			
		||||
      <!-- <el-form-item :label="$t('module.basicData.cache.rowMark')" prop="layers">
 | 
			
		||||
        <el-input v-model="dataForm.layers" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.rowMark')])" clearable />
 | 
			
		||||
      </el-form-item> -->
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.cache.rowMark')" prop="layers">
 | 
			
		||||
        <el-input-number v-model="dataForm.layers" :step="1" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.rowMark')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.cache.columnMark')" prop="columns">
 | 
			
		||||
        <el-input v-model="dataForm.columns" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.columnMark')])" clearable />
 | 
			
		||||
        <el-input-number v-model="dataForm.columns" :step="1" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.columnMark')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.cache.locationType')" prop="locationType">
 | 
			
		||||
      <!-- <el-form-item :label="$t('module.basicData.cache.locationType')" prop="locationType">
 | 
			
		||||
        <el-input v-model="dataForm.locationType" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.locationType')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.cache.status')" prop="status">
 | 
			
		||||
      </el-form-item> -->
 | 
			
		||||
      <!-- <el-form-item :label="$t('module.basicData.cache.status')" prop="status">
 | 
			
		||||
        <el-input v-model="dataForm.status" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.status')])" clearable />
 | 
			
		||||
      </el-form-item> -->
 | 
			
		||||
      <!-- <el-form-item :label="$t('module.basicData.cache.status')" prop="status">
 | 
			
		||||
        <el-select v-model="dataForm.status">
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in options"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item> -->
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.cache.locationNumber')" prop="locationNumber">
 | 
			
		||||
        <el-input v-model="dataForm.locationNumber" :step="1" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.locationNumber')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
    </el-form>
 | 
			
		||||
    <span slot="footer" class="dialog-footer">
 | 
			
		||||
@@ -61,17 +77,39 @@ export default {
 | 
			
		||||
        code: '',
 | 
			
		||||
        locationNameAlias: '',
 | 
			
		||||
        rowNum: '',
 | 
			
		||||
        columns: '',
 | 
			
		||||
        layers: '',
 | 
			
		||||
        status: '',
 | 
			
		||||
        locationType: ''
 | 
			
		||||
        status: null,
 | 
			
		||||
        locationType: '',
 | 
			
		||||
        locationNumber: 0
 | 
			
		||||
      },
 | 
			
		||||
      options: [
 | 
			
		||||
        {
 | 
			
		||||
          value: 1,
 | 
			
		||||
          label: 'Working Port'
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          value: 2,
 | 
			
		||||
          label: 'Buffer Port'
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          value: 3,
 | 
			
		||||
          label: 'Exception Port'
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      dataRule: {
 | 
			
		||||
        name: [
 | 
			
		||||
          { required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.cache.LocationName')]), trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        code: [
 | 
			
		||||
          { required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.cache.LocationCode')]), trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        layers: [
 | 
			
		||||
          { required: true, pattern: /^[1-9]\d*$/, message: this.$t('module.basicData.cache.warning'), trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        columns: [
 | 
			
		||||
          { required: true, pattern: /^[1-9]\d*$/, message: this.$t('module.basicData.cache.warning'), trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        locationNumber: [
 | 
			
		||||
          { required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.cache.locationNumber')]), trigger: 'blur' }
 | 
			
		||||
        ]
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
@@ -85,6 +123,7 @@ export default {
 | 
			
		||||
        if (this.dataForm.id) {
 | 
			
		||||
          locationDetail(this.dataForm.id).then(res => {
 | 
			
		||||
            this.dataForm = res.data
 | 
			
		||||
            // console.log(this.dataForm)
 | 
			
		||||
          })
 | 
			
		||||
        } else {
 | 
			
		||||
          locationCode().then(res => {
 | 
			
		||||
@@ -106,7 +145,8 @@ export default {
 | 
			
		||||
            'shelfId': this.shelfId,
 | 
			
		||||
            'id': this.dataForm.id,
 | 
			
		||||
            'status': this.dataForm.status,
 | 
			
		||||
            'locationType': this.dataForm.locationType
 | 
			
		||||
            'locationType': this.dataForm.locationType,
 | 
			
		||||
            'locationNumber': this.dataForm.locationNumber
 | 
			
		||||
          }
 | 
			
		||||
          if (this.dataForm.id) {
 | 
			
		||||
            locationUpdate(data).then(res => {
 | 
			
		||||
@@ -138,6 +178,28 @@ export default {
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
    // isInt(value){
 | 
			
		||||
    //   for(var i = 0; i < value.length; i++) {
 | 
			
		||||
    //     if(charAt[i] == '.'){
 | 
			
		||||
    //     }
 | 
			
		||||
    //   }
 | 
			
		||||
    // }
 | 
			
		||||
    // isInt(value) {
 | 
			
		||||
    //   let zero = /^0+\d*$/ // 过滤以0开头的数据(不含小数点)
 | 
			
		||||
    //   let dublue = /^0{2,}\.\d+$/ // 过滤小数点前有两个以上0的数字
 | 
			
		||||
    //   let point = /^\d+\.?\d+$/ //  以数字开头,可以允许出现一次或0次小数点,以数字结尾(这里的数字必须有两个)
 | 
			
		||||
    //   let reg = /^[1-9]{1}$/ // 匹配只有一个数字的情况
 | 
			
		||||
    //   if (!value) {
 | 
			
		||||
    //     return false
 | 
			
		||||
    //   }
 | 
			
		||||
    //   if (zero.test(value) || dublue.test(value)) { // 首先过滤掉错误的数据
 | 
			
		||||
    //     return false
 | 
			
		||||
    //   } else if (point.test(value) || reg.test(value)) { // 匹配数据,如果输入的数字只有一位数时用reg匹配
 | 
			
		||||
    //     return true
 | 
			
		||||
    //   } else {
 | 
			
		||||
    //     return false
 | 
			
		||||
    //   }
 | 
			
		||||
    // }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Date: 2021-01-07 20:09:37
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-03 18:39:03
 | 
			
		||||
 * @LastEditTime: 2022-03-15 09:48:09
 | 
			
		||||
 * @FilePath: \basic-admin\src\components\BaseTable\subcomponents\CheckDetail.vue
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
@@ -24,7 +24,10 @@ export default {
 | 
			
		||||
      this.$router.push({
 | 
			
		||||
        name: 'locationAdd',
 | 
			
		||||
        query: {
 | 
			
		||||
          id: this.injectData.id
 | 
			
		||||
          id: this.injectData.id,
 | 
			
		||||
          code: this.injectData.code,
 | 
			
		||||
          total: this.injectData.total,
 | 
			
		||||
          shelfName: this.injectData.shelfName
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-03-11 09:22:52
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-10 19:20:22
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -25,7 +25,7 @@
 | 
			
		||||
        @clickBtn="handleClick"
 | 
			
		||||
      />
 | 
			
		||||
    </base-table>
 | 
			
		||||
    <shelfAttr-add v-if="addOrUpdateVisible" ref="addOrUpdate" :area-id="listQuery.areaId" @refreshDataList="getList" />
 | 
			
		||||
    <shelfAttr-add v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
@@ -163,7 +163,7 @@ export default {
 | 
			
		||||
    addNew(id) {
 | 
			
		||||
      this.addOrUpdateVisible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs.addOrUpdate.init(id)
 | 
			
		||||
        this.$refs.addOrUpdate.init(id, true)
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    goback() {
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-03 19:00:08
 | 
			
		||||
 * @LastEditTime: 2022-03-10 19:38:31
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -47,7 +47,7 @@
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { shelfList, shelfDetail, shelfUpdate, shelfAdd, shelfCode } from '@/api/basicData/Cache/shelf'
 | 
			
		||||
import { shelfDetail, shelfUpdate, shelfAdd, shelfCode } from '@/api/basicData/Cache/shelf'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  props: {
 | 
			
		||||
@@ -86,36 +86,60 @@ export default {
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init(id, isPage) {
 | 
			
		||||
      this.isPage = isPage || false
 | 
			
		||||
    // init(id, isPage) {
 | 
			
		||||
    //   this.isPage = isPage || false
 | 
			
		||||
    //   this.dataForm.id = id || ''
 | 
			
		||||
    //   if (!this.isPage) {
 | 
			
		||||
    //     this.dataForm.areaId = this.areaId
 | 
			
		||||
    //   }
 | 
			
		||||
    //   this.areaArr.splice(0, this.areaArr.length)
 | 
			
		||||
    //   const params = {
 | 
			
		||||
    //     current: 1,
 | 
			
		||||
    //     size: 500
 | 
			
		||||
    //   }
 | 
			
		||||
    //   shelfList(params).then(response => {
 | 
			
		||||
    //     if (response.data.records) {
 | 
			
		||||
    //       this.areaArr = response.data.records
 | 
			
		||||
    //     }
 | 
			
		||||
    //   })
 | 
			
		||||
    //   this.visible = true
 | 
			
		||||
    //   this.$nextTick(() => {
 | 
			
		||||
    //     this.$refs['dataForm'].resetFields()
 | 
			
		||||
    //     if (this.dataForm.id) {
 | 
			
		||||
    //       shelfDetail(this.dataForm.id).then(res => {
 | 
			
		||||
    //         this.dataForm = res.data
 | 
			
		||||
    //       })
 | 
			
		||||
    //     } else {
 | 
			
		||||
    //       shelfCode().then(res => {
 | 
			
		||||
    //         this.dataForm.code = res.data
 | 
			
		||||
    //       })
 | 
			
		||||
    //     }
 | 
			
		||||
    //   })
 | 
			
		||||
    // },
 | 
			
		||||
    init(id) {
 | 
			
		||||
      this.dataForm.id = id || ''
 | 
			
		||||
      if (!this.isPage) {
 | 
			
		||||
        this.dataForm.areaId = this.areaId
 | 
			
		||||
      }
 | 
			
		||||
      this.areaArr.splice(0, this.areaArr.length)
 | 
			
		||||
      const params = {
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 500
 | 
			
		||||
      }
 | 
			
		||||
      shelfList(params).then(response => {
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.areaArr = response.data.records
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
      this.visible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        if (this.dataForm.id) {
 | 
			
		||||
          // console.log(this.dataForm)
 | 
			
		||||
          shelfDetail(this.dataForm.id).then(res => {
 | 
			
		||||
            // console.log(res)
 | 
			
		||||
            this.dataForm = res.data
 | 
			
		||||
          })
 | 
			
		||||
        } else {
 | 
			
		||||
          this.dataForm.shelfName = ''
 | 
			
		||||
          shelfCode().then(res => {
 | 
			
		||||
            this.dataForm.code = res.data
 | 
			
		||||
          })
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
      // console.log(this.dataForm)
 | 
			
		||||
    },
 | 
			
		||||
    // getClose() {
 | 
			
		||||
    //   this.dataForm.shelfName = ''
 | 
			
		||||
    //   console.log(this.dataForm)
 | 
			
		||||
    // },
 | 
			
		||||
    // 表单提交
 | 
			
		||||
    dataFormSubmit() {
 | 
			
		||||
      this.$refs['dataForm'].validate((valid) => {
 | 
			
		||||
@@ -136,7 +160,7 @@ export default {
 | 
			
		||||
            })
 | 
			
		||||
          } else {
 | 
			
		||||
            shelfAdd(data).then(res => {
 | 
			
		||||
              console.log(res)
 | 
			
		||||
              // console.log(res)
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: this.$t('module.basicData.visual.success'),
 | 
			
		||||
                type: 'success',
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-11 16:45:30
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-23 11:04:20
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -30,6 +30,9 @@
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.visual.storageBoxFid')" prop="storageBoxFid">
 | 
			
		||||
        <el-input v-model="dataForm.storageBoxFid" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.storageBoxFid')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.visual.Remarks')" prop="note">
 | 
			
		||||
        <el-input v-model="dataForm.note" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.Remarks')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
@@ -52,22 +55,23 @@ export default {
 | 
			
		||||
        id: 0,
 | 
			
		||||
        storageBoxName: '',
 | 
			
		||||
        code: '',
 | 
			
		||||
        status: 0,
 | 
			
		||||
        status: '',
 | 
			
		||||
        enName: '',
 | 
			
		||||
        note: ''
 | 
			
		||||
        note: '',
 | 
			
		||||
        storageBoxFid: ''
 | 
			
		||||
      },
 | 
			
		||||
      options: [
 | 
			
		||||
        {
 | 
			
		||||
          value: 0,
 | 
			
		||||
          label: '正常'
 | 
			
		||||
          label: this.$t('module.basicData.storageBox.normal')
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          value: 1,
 | 
			
		||||
          label: '维修中'
 | 
			
		||||
          label: this.$t('module.basicData.storageBox.repairing')
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          value: 2,
 | 
			
		||||
          label: '报废'
 | 
			
		||||
          label: this.$t('module.basicData.storageBox.scrapped')
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      dataRule: {
 | 
			
		||||
 
 | 
			
		||||
@@ -2,17 +2,17 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 19:00:14
 | 
			
		||||
 * @LastEditTime: 2022-03-10 20:18:52
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <!-- <head-form
 | 
			
		||||
    <head-form
 | 
			
		||||
      :placeholder-name="placeholderName"
 | 
			
		||||
      :key-name="keyName"
 | 
			
		||||
      @getDataList="getList"
 | 
			
		||||
      @add="addNew"
 | 
			
		||||
    /> -->
 | 
			
		||||
    />
 | 
			
		||||
    <base-table
 | 
			
		||||
      :page="listQuery.current"
 | 
			
		||||
      :limit="listQuery.size"
 | 
			
		||||
@@ -39,7 +39,7 @@
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>import i18n from '@/lang'
 | 
			
		||||
// import HeadForm from '@/components/basicData/HeadForm'
 | 
			
		||||
import HeadForm from '@/components/basicData/HeadForm'
 | 
			
		||||
import BaseTable from '@/components/BaseTable'
 | 
			
		||||
import Pagination from '@/components/Pagination' // Secondary package based on el-pagination
 | 
			
		||||
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn'
 | 
			
		||||
@@ -108,7 +108,7 @@ const tableProps = [
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'Area',
 | 
			
		||||
  components: { Pagination, BaseTable, MethodBtn, shelfAttrAdd },
 | 
			
		||||
  components: { Pagination, BaseTable, MethodBtn, HeadForm, shelfAttrAdd },
 | 
			
		||||
  filters: {
 | 
			
		||||
    statusFilter(status) {
 | 
			
		||||
      const statusMap = {
 | 
			
		||||
@@ -122,7 +122,7 @@ export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      addOrUpdateVisible: false,
 | 
			
		||||
      keyName: i18n.t('module.basicData.visual.keyword'),
 | 
			
		||||
      keyName: this.$t('module.basicData.cache.ShelfName'),
 | 
			
		||||
      placeholderName: this.$t('module.basicData.cache.ShelfName'),
 | 
			
		||||
      tableBtn,
 | 
			
		||||
      trueWidth: 200,
 | 
			
		||||
@@ -178,9 +178,9 @@ export default {
 | 
			
		||||
    getList(key) {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      this.listQuery.shelfName = key
 | 
			
		||||
      console.log(this.listQuery)
 | 
			
		||||
      // console.log(this.listQuery)
 | 
			
		||||
      shelfList(this.listQuery).then(response => {
 | 
			
		||||
        // console.log(response)
 | 
			
		||||
        console.log(response)
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.list = response.data.records
 | 
			
		||||
          this.list.forEach(item => {
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-11 16:46:48
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-23 11:06:20
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -81,13 +81,13 @@ const tableProps = [
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'storageBoxName',
 | 
			
		||||
    label: i18n.t('module.basicData.storageBox.name'),
 | 
			
		||||
    prop: 'code',
 | 
			
		||||
    label: i18n.t('module.basicData.storageBox.code'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'code',
 | 
			
		||||
    label: i18n.t('module.basicData.storageBox.code'),
 | 
			
		||||
    prop: 'storageBoxName',
 | 
			
		||||
    label: i18n.t('module.basicData.storageBox.name'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
@@ -101,6 +101,11 @@ const tableProps = [
 | 
			
		||||
    filter: basicData('storage'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'storageBoxFid',
 | 
			
		||||
    label: i18n.t('module.basicData.visual.storageBoxFid'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'note',
 | 
			
		||||
    label: i18n.t('module.basicData.storageBox.remark'),
 | 
			
		||||
@@ -124,8 +129,8 @@ export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      addOrUpdateVisible: false,
 | 
			
		||||
      keyName: i18n.t('module.basicData.visual.keyword'),
 | 
			
		||||
      placeholderName: this.$t('module.basicData.storageBox.name') + this.$t('module.basicData.visual.Or') + this.$t('module.basicData.storageBox.code'),
 | 
			
		||||
      keyName: this.$t('module.basicData.storageBox.name'),
 | 
			
		||||
      placeholderName: this.$t('module.basicData.storageBox.name'),
 | 
			
		||||
      tableBtn,
 | 
			
		||||
      trueWidth: 200,
 | 
			
		||||
      tableProps,
 | 
			
		||||
@@ -173,6 +178,7 @@ export default {
 | 
			
		||||
      storageBoxList(this.listQuery).then(response => {
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.list = response.data.records
 | 
			
		||||
          console.log(this.list)
 | 
			
		||||
        } else {
 | 
			
		||||
          this.list.splice(0, this.list.length)
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
@@ -54,8 +54,18 @@
 | 
			
		||||
                />
 | 
			
		||||
              </el-select>
 | 
			
		||||
            </el-form-item> -->
 | 
			
		||||
            <el-form-item :label="$t('module.basicData.equipment.EquipmentType')" prop="equipmentType">
 | 
			
		||||
            <!-- <el-form-item :label="$t('module.basicData.equipment.EquipmentType')" prop="equipmentType">
 | 
			
		||||
              <el-input v-model="dataForm.equipmentType" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.equipment.EquipmentType')])" clearable :style="{width: '100%'}" />
 | 
			
		||||
            </el-form-item> -->
 | 
			
		||||
            <el-form-item :label="$t('module.basicData.equipment.EquipmentType')" prop="equipmentType">
 | 
			
		||||
              <el-select v-model="dataForm.equipmentType" :placeholder="this.$t('module.basicData.cache.logisticsEquipment')" default>
 | 
			
		||||
                <el-option
 | 
			
		||||
                  v-for="item in options"
 | 
			
		||||
                  :key="item.value"
 | 
			
		||||
                  :label="item.label"
 | 
			
		||||
                  :value="item.value"
 | 
			
		||||
                />
 | 
			
		||||
              </el-select>
 | 
			
		||||
            </el-form-item>
 | 
			
		||||
          </el-col>
 | 
			
		||||
          <el-col :span="8">
 | 
			
		||||
@@ -389,7 +399,7 @@ export default {
 | 
			
		||||
        code: '',
 | 
			
		||||
        enName: '',
 | 
			
		||||
        abbr: '',
 | 
			
		||||
        equipmentType: '',
 | 
			
		||||
        equipmentType: '1',
 | 
			
		||||
        spec: '',
 | 
			
		||||
        createTime: '',
 | 
			
		||||
        enterTime: '',
 | 
			
		||||
@@ -412,6 +422,16 @@ export default {
 | 
			
		||||
        maintenanceTime: '',
 | 
			
		||||
        maintenanceCycle: ''
 | 
			
		||||
      },
 | 
			
		||||
      options: [
 | 
			
		||||
        {
 | 
			
		||||
          value: '1',
 | 
			
		||||
          label: this.$t('module.basicData.cache.logisticsEquipment')
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          value: '2',
 | 
			
		||||
          label: this.$t('module.basicData.cache.processEquipment')
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      rules: {
 | 
			
		||||
        name: [{
 | 
			
		||||
          required: true,
 | 
			
		||||
@@ -425,8 +445,8 @@ export default {
 | 
			
		||||
        }],
 | 
			
		||||
        equipmentType: [{
 | 
			
		||||
          required: true,
 | 
			
		||||
          message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.equipment.EquipmentType')]),
 | 
			
		||||
          trigger: 'change'
 | 
			
		||||
          message: this.$i18nForm(['placeholder.select', this.$t('module.basicData.equipment.EquipmentType')]),
 | 
			
		||||
          trigger: 'blur'
 | 
			
		||||
        }]
 | 
			
		||||
        // maintenanceCycle: [{
 | 
			
		||||
        //   required: true,
 | 
			
		||||
@@ -496,6 +516,7 @@ export default {
 | 
			
		||||
          this.listLoading = true
 | 
			
		||||
          equipmentInfoDetail(this.listQuery.equipmentId).then(res => {
 | 
			
		||||
            this.dataForm = res.data
 | 
			
		||||
            console.log(this.dataForm)
 | 
			
		||||
          })
 | 
			
		||||
          equipmentInfoAttrList(this.listQuery).then(response => {
 | 
			
		||||
            if (response.data.records) {
 | 
			
		||||
@@ -514,9 +535,9 @@ export default {
 | 
			
		||||
    },
 | 
			
		||||
    getList() {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      console.log(this.listQuery)
 | 
			
		||||
      // console.log(this.listQuery)
 | 
			
		||||
      equipmentInfoAttrList(this.listQuery).then(response => {
 | 
			
		||||
        console.log(response)
 | 
			
		||||
        // console.log(response)
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.list = response.data.records
 | 
			
		||||
        } else {
 | 
			
		||||
@@ -549,13 +570,14 @@ export default {
 | 
			
		||||
    },
 | 
			
		||||
    // 表单提交
 | 
			
		||||
    dataFormSubmit() {
 | 
			
		||||
      console.log(this.dataForm)
 | 
			
		||||
      console.log(this.dataForm.eInfo)
 | 
			
		||||
      // console.log(this.dataForm)
 | 
			
		||||
      // console.log(this.dataForm.eInfo)
 | 
			
		||||
      this.$refs['dataForm'].validate((valid) => {
 | 
			
		||||
        if (valid) {
 | 
			
		||||
          const data = this.dataForm
 | 
			
		||||
          data.id = this.listQuery.equipmentId
 | 
			
		||||
          if (this.listQuery.equipmentId) {
 | 
			
		||||
            // console.log(data)
 | 
			
		||||
            equipmentInfoUpdate(data).then(res => {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: this.$t('module.basicData.visual.success'),
 | 
			
		||||
@@ -564,6 +586,7 @@ export default {
 | 
			
		||||
              })
 | 
			
		||||
            })
 | 
			
		||||
          } else {
 | 
			
		||||
            console.log(data)
 | 
			
		||||
            equipmentInfoAdd(data).then(res => {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: this.$t('module.basicData.visual.success'),
 | 
			
		||||
@@ -621,9 +644,9 @@ export default {
 | 
			
		||||
          'fileUrl': res.data[0].fileUrl,
 | 
			
		||||
          'typeCode': this.typeCode.typeCode
 | 
			
		||||
        }
 | 
			
		||||
      console.log(data)
 | 
			
		||||
      // console.log(data)
 | 
			
		||||
      equipmentInfoFileAdd(data).then(res => {
 | 
			
		||||
        console.log(res)
 | 
			
		||||
        // console.log(res)
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    downloadFile(id) {
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-05 11:01:57
 | 
			
		||||
 * @LastEditTime: 2022-03-10 15:09:41
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -93,7 +93,7 @@ const tableProps = [
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'equipmentType',
 | 
			
		||||
    prop: 'typeName',
 | 
			
		||||
    label: i18n.t('module.basicData.equipment.EquipmentType'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
@@ -130,12 +130,14 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      keyName: i18n.t('module.basicData.visual.keyword'),
 | 
			
		||||
      placeholderName: this.$t('module.basicData.equipment.EquipmentName') + this.$t('module.basicData.visual.Or') + this.$t('module.basicData.equipment.EquipmentCode'),
 | 
			
		||||
      keyName: this.$t('module.basicData.equipment.EquipmentCode'),
 | 
			
		||||
      placeholderName: this.$t('module.basicData.equipment.EquipmentCode'),
 | 
			
		||||
      tableBtn,
 | 
			
		||||
      trueWidth: 240,
 | 
			
		||||
      tableProps,
 | 
			
		||||
      list: [],
 | 
			
		||||
      list: [{
 | 
			
		||||
        typeName: ''
 | 
			
		||||
      }],
 | 
			
		||||
      total: 0,
 | 
			
		||||
      listLoading: true,
 | 
			
		||||
      listQuery: {
 | 
			
		||||
@@ -180,11 +182,20 @@ export default {
 | 
			
		||||
        console.log(response)
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.list = response.data.records
 | 
			
		||||
          // 1是物流设备,2是工艺设备,与equipmentType进行替换
 | 
			
		||||
          for (var x = 0; x < this.list.length; x++) {
 | 
			
		||||
            if (this.list[x].equipmentType === '1') {
 | 
			
		||||
              this.list[x].typeName = this.$t('module.basicData.cache.logisticsEquipment')
 | 
			
		||||
            } else if (this.list[x].equipmentType === '2') {
 | 
			
		||||
              this.list[x].typeName = this.$t('module.basicData.cache.processEquipment')
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        } else {
 | 
			
		||||
          this.list.splice(0, this.list.length)
 | 
			
		||||
        }
 | 
			
		||||
        this.total = response.data.total
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
        console.log(this.list)
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    // 新增 / 修改
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-04 10:06:01
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-15 18:33:01
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -169,10 +169,10 @@ export default {
 | 
			
		||||
        }]
 | 
			
		||||
      },
 | 
			
		||||
      sexOptions: [{
 | 
			
		||||
        'label': '男',
 | 
			
		||||
        'label': this.$t('module.basicData.cache.man'),
 | 
			
		||||
        'value': 1
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '女',
 | 
			
		||||
        'label': this.$t('module.basicData.cache.woman'),
 | 
			
		||||
        'value': 0
 | 
			
		||||
      }],
 | 
			
		||||
      onDutyOptions: [{
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-05-21 14:41:36
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-19 10:20:40
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -127,11 +127,6 @@ const tableProps = [
 | 
			
		||||
    label: i18n.t('module.basicData.staff.Wechat'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'majorArr',
 | 
			
		||||
    label: i18n.t('module.basicData.staff.Profession'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'workshop',
 | 
			
		||||
    label: i18n.t('module.basicData.staff.Workshop'),
 | 
			
		||||
 
 | 
			
		||||
@@ -4,32 +4,65 @@
 | 
			
		||||
 * @Author: fzq
 | 
			
		||||
 * @Date: 2022-03-04 11:12:42
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-06 19:17:36
 | 
			
		||||
 * @LastEditTime: 2022-03-09 16:12:04
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="!dataForm.locationId ? 'btn.add' : 'btn.edit' | i18nFilter"
 | 
			
		||||
    :title="!dataForm.id ? 'btn.add' : 'btn.edit' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
  >
 | 
			
		||||
    <el-form ref="dataForm" :model="dataForm" label-width="130px" @keyup.enter.native="dataFormSubmit()">
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.processLocation.sequence')" prop="sequence">
 | 
			
		||||
        <el-input v-model="dataForm.sequence" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.sequence')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.processLocation.workSequenId')" prop="workSequenId">
 | 
			
		||||
        <el-input v-model="dataForm.workSequenId" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.workSequenId')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <!-- <el-form-item :label="$t('module.basicData.processLocation.locationName')" prop="locationName">
 | 
			
		||||
        <el-input v-model="dataForm.locationId" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.locationName')])" clearable />
 | 
			
		||||
      </el-form-item> -->
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.processLocation.locationName')" prop="locationName">
 | 
			
		||||
        <el-input v-model="dataForm.locationName" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.locationName')])" clearable />
 | 
			
		||||
        <el-select v-model="dataForm.locationName" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.locationName')])">
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in dataForm"
 | 
			
		||||
            :key="item.locationName"
 | 
			
		||||
            :label="item.locationName"
 | 
			
		||||
            :value="item.locationName"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.processLocation.locationId')" prop="locationId">
 | 
			
		||||
        <el-input v-model="dataForm.locationId" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.locationId')])" clearable />
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.processLocation.portAttrId')" prop="portAttrId">
 | 
			
		||||
        <el-input v-model="dataForm.portAttrId" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.portAttrId')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.processLocation.isProcess')" prop="isProcess">
 | 
			
		||||
      <!-- <el-form-item :label="$t('module.basicData.processLocation.isProcess')" prop="isProcess">
 | 
			
		||||
        <el-input v-model="dataForm.isProcess" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.isProcess')])" clearable />
 | 
			
		||||
      </el-form-item> -->
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.processLocation.isProcess')" prop="isProcess">
 | 
			
		||||
        <el-select v-model="dataForm.isProcess" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.isProcess')])">
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in options"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.processLocation.equipmentMark')" prop="equipmentMark">
 | 
			
		||||
        <el-input v-model="dataForm.equipmentMark" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.equipmentMark')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.processLocation.sequence')" prop="sequence">
 | 
			
		||||
        <el-input v-model="dataForm.sequence" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.sequence')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <!-- <el-form-item :label="$t('module.basicData.processLocation.goodsShelves')" prop="goodsShelves">
 | 
			
		||||
        <el-input v-model="dataForm.goodsShelves" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.goodsShelves')])" clearable />
 | 
			
		||||
      </el-form-item> -->
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.processLocation.goodsShelves')" prop="goodsShelves">
 | 
			
		||||
        <el-select v-model="dataForm.goodsShelves" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.processLocation.goodsShelves')])">
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in options2"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
    </el-form>
 | 
			
		||||
    <span slot="footer" class="dialog-footer">
 | 
			
		||||
      <el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
 | 
			
		||||
@@ -39,40 +72,88 @@
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { detail, update, add } from '@/api/basicData/Cache/processLocation'
 | 
			
		||||
import { detail, update, add, locationList } from '@/api/basicData/Cache/processLocation'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: 0,
 | 
			
		||||
        sequence: '',
 | 
			
		||||
        locationName: '',
 | 
			
		||||
        isProcess: '',
 | 
			
		||||
        equipmentMark: ''
 | 
			
		||||
      },
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 10,
 | 
			
		||||
        locationId: '',
 | 
			
		||||
        workSequenId: '',
 | 
			
		||||
        locationId: '',
 | 
			
		||||
        portAttrId: '',
 | 
			
		||||
        isProcess: '',
 | 
			
		||||
        equipmentMark: '',
 | 
			
		||||
        sequence: '',
 | 
			
		||||
        goodsShelves: '',
 | 
			
		||||
        locationName: ''
 | 
			
		||||
      },
 | 
			
		||||
      options: [
 | 
			
		||||
        {
 | 
			
		||||
          value: 0,
 | 
			
		||||
          label: this.$t('module.basicData.processLocation.CacheLocation')
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          value: 1,
 | 
			
		||||
          label: this.$t('module.basicData.processLocation.ProcessLocation')
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      options2: [
 | 
			
		||||
        {
 | 
			
		||||
          value: 0,
 | 
			
		||||
          label: this.$t('module.basicData.processLocation.aShelf')
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          value: 1,
 | 
			
		||||
          label: this.$t('module.basicData.processLocation.bShelf')
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      // options3: [
 | 
			
		||||
      //   {
 | 
			
		||||
      //     value: this.dataForm.locationId,
 | 
			
		||||
      //     label: this.dataForm.locationName
 | 
			
		||||
      //   }
 | 
			
		||||
      // ],
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        id: ''
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init(LocationId) {
 | 
			
		||||
      this.listQuery.LocationId = LocationId || ''
 | 
			
		||||
    init(id) {
 | 
			
		||||
      this.listQuery.id = id || ''
 | 
			
		||||
      this.visible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        if (this.listQuery.LocationId) {
 | 
			
		||||
        locationList().then(res => {
 | 
			
		||||
          // console.log(res)
 | 
			
		||||
          // this.dataForm.locationId = res.data.id'
 | 
			
		||||
          for (var i = 0; i < res.data.length; i++) {
 | 
			
		||||
            this.dataForm.locationId = res.data[i].id
 | 
			
		||||
            this.dataForm.locationName = res.data[i].locationName
 | 
			
		||||
          }
 | 
			
		||||
          // console.log(this.dataForm)
 | 
			
		||||
        })
 | 
			
		||||
        // portAttrList().then(res => {
 | 
			
		||||
        //   console.log(res)
 | 
			
		||||
        // })
 | 
			
		||||
        // workSequenList().then(res => {
 | 
			
		||||
        //   console.log(res)
 | 
			
		||||
        // })
 | 
			
		||||
        // console.log(this.listQuery)
 | 
			
		||||
        if (this.listQuery.id) {
 | 
			
		||||
          // list(this.listQuery).then(res =>{
 | 
			
		||||
          //   this.list = response.data.records
 | 
			
		||||
          // })
 | 
			
		||||
          detail(this.dataForm.id).then(res => {
 | 
			
		||||
            this.dataForm = res.data
 | 
			
		||||
          detail(this.listQuery.id).then(res => {
 | 
			
		||||
            this.dataForm.equipmentMark = res.data.equipmentMark
 | 
			
		||||
            this.dataForm.goodsShelves = res.data.goodsShelves
 | 
			
		||||
            this.dataForm.id = res.data.id
 | 
			
		||||
            this.dataForm.isProcess = res.data.isProcess
 | 
			
		||||
            this.dataForm.portAttrId = res.data.portAttrId
 | 
			
		||||
            this.dataForm.sequence = res.data.sequence
 | 
			
		||||
            this.dataForm.workSequenId = res.data.workSequenId
 | 
			
		||||
            console.log(this.dataForm)
 | 
			
		||||
          })
 | 
			
		||||
        } else {
 | 
			
		||||
          // storageBoxCode().then(res => {
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
 * @Author: fzq
 | 
			
		||||
 * @Date: 2022-03-03 09:51:25
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-06 19:15:25
 | 
			
		||||
 * @LastEditTime: 2022-03-08 16:56:40
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
@@ -35,7 +35,7 @@
 | 
			
		||||
      :limit.sync="listQuery.size"
 | 
			
		||||
      @pagination="getList()"
 | 
			
		||||
    />
 | 
			
		||||
    <processInfo-add v-if="addOrUpdateVisible" ref="addOrUpdate" :cache-id="listQuery.cacheId" @refreshDataList="getList" />
 | 
			
		||||
    <processInfo-add v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
@@ -46,7 +46,6 @@ import processInfoAdd from './components/processInfo-add'
 | 
			
		||||
import Pagination from '@/components/Pagination' // Secondary package based on el-pagination
 | 
			
		||||
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn'
 | 
			
		||||
import { list, locaDelete } from '@/api/basicData/Cache/processLocation'
 | 
			
		||||
import { timeFormatter } from '@/filters'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 TypeScript接口注释
 | 
			
		||||
 * tableConfig<ConfigItem> = []
 | 
			
		||||
@@ -75,24 +74,8 @@ const tableBtn = [
 | 
			
		||||
]
 | 
			
		||||
const tableProps = [
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'createTime',
 | 
			
		||||
    label: i18n.t('module.basicData.factory.createTime'),
 | 
			
		||||
    filter: timeFormatter,
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'sequence',
 | 
			
		||||
    label: i18n.t('module.basicData.processLocation.sequence'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'locationName',
 | 
			
		||||
    label: i18n.t('module.basicData.processLocation.locationName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'isProcess',
 | 
			
		||||
    label: i18n.t('module.basicData.processLocation.isProcess'),
 | 
			
		||||
    prop: 'workSequenId',
 | 
			
		||||
    label: i18n.t('module.basicData.processLocation.workSequenId'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
@@ -101,14 +84,34 @@ const tableProps = [
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'workSequenId',
 | 
			
		||||
    label: i18n.t('module.basicData.processLocation.workSequenId'),
 | 
			
		||||
    prop: 'portAttrId',
 | 
			
		||||
    label: i18n.t('module.basicData.processLocation.portAttrId'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'isProcess',
 | 
			
		||||
    label: i18n.t('module.basicData.processLocation.isProcess'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'equipmentMark',
 | 
			
		||||
    label: i18n.t('module.basicData.processLocation.equipmentMark'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'sequence',
 | 
			
		||||
    label: i18n.t('module.basicData.processLocation.sequence'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'goodsShelves',
 | 
			
		||||
    label: i18n.t('module.basicData.processLocation.goodsShelves'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'locationName',
 | 
			
		||||
    label: i18n.t('module.basicData.processLocation.locationName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
@@ -152,12 +155,11 @@ export default {
 | 
			
		||||
  methods: {
 | 
			
		||||
    handleClick(raw) {
 | 
			
		||||
      if (raw.type === 'delete') {
 | 
			
		||||
        this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.locationName}]?`, this.$t('module.basicData.visual.Tips'), {
 | 
			
		||||
        this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.id}]?`, this.$t('module.basicData.visual.Tips'), {
 | 
			
		||||
          confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'),
 | 
			
		||||
          cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'),
 | 
			
		||||
          type: 'warning'
 | 
			
		||||
        }).then(() => {
 | 
			
		||||
          console.log(raw.data)
 | 
			
		||||
          locaDelete(raw.data.id).then(response => {
 | 
			
		||||
            this.$message({
 | 
			
		||||
              message: this.$t('module.basicData.visual.success'),
 | 
			
		||||
@@ -170,9 +172,9 @@ export default {
 | 
			
		||||
          })
 | 
			
		||||
        }).catch(() => {})
 | 
			
		||||
      } else if (raw.type === 'edit') {
 | 
			
		||||
        this.addNew(raw.data.locationId)
 | 
			
		||||
        this.addNew(raw.data.id)
 | 
			
		||||
      } else {
 | 
			
		||||
        this.addNew(raw.data.locationId, true)
 | 
			
		||||
        this.addNew(raw.data.id, true)
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    getList(key) {
 | 
			
		||||
@@ -185,7 +187,7 @@ export default {
 | 
			
		||||
          this.list.splice(0, this.list.length)
 | 
			
		||||
        }
 | 
			
		||||
        this.total = response.data.total
 | 
			
		||||
        console.log(response)
 | 
			
		||||
        // console.log(response)
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-14 15:54:12
 | 
			
		||||
 * @LastEditTime: 2022-03-22 10:36:05
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -12,7 +12,6 @@
 | 
			
		||||
      :model="formData"
 | 
			
		||||
      :inline="true"
 | 
			
		||||
      size="medium"
 | 
			
		||||
      label-width="100px"
 | 
			
		||||
    >
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.TaskType')" prop="taskType">
 | 
			
		||||
        <el-select v-model="formData.taskType" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.TaskType')])" clearable>
 | 
			
		||||
@@ -46,6 +45,8 @@
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item>
 | 
			
		||||
        <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-button type="primary" @click="publishTask()"> {{ $t('module.basicData.Warehouse.publishTask') | i18nFilter }} </el-button>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
    </el-form>
 | 
			
		||||
    <base-table
 | 
			
		||||
@@ -70,17 +71,21 @@
 | 
			
		||||
      @pagination="getList()"
 | 
			
		||||
    />
 | 
			
		||||
    <current-task-info v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
 | 
			
		||||
    <current-task-add v-if="manualTaskVisible" ref="manualTaskRef" @refreshDataList="getList" />
 | 
			
		||||
    <publish-task v-if="publishTaskVisible" ref="publishTask" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { CurrentTaskList } from '@/api/basicData/Warehouse/HistoricalTask'
 | 
			
		||||
import CurrentTaskInfo from './components/CurrentTaskInfo.vue'
 | 
			
		||||
import CurrentTaskAdd from './components/CurrentTask-add.vue'
 | 
			
		||||
import PublishTask from './components/PublishTask.vue'
 | 
			
		||||
import i18n from '@/lang'
 | 
			
		||||
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 { timeFormatter } from '@/filters'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 TypeScript接口注释
 | 
			
		||||
 * tableConfig<ConfigItem> = []
 | 
			
		||||
@@ -112,6 +117,7 @@ const tableProps = [
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'createTime',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.ExecutionTime'),
 | 
			
		||||
    filter: timeFormatter,
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
@@ -168,11 +174,13 @@ const tableProps = [
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'ScrapInfo',
 | 
			
		||||
  components: { Pagination, BaseTable, MethodBtn, CurrentTaskInfo },
 | 
			
		||||
  components: { Pagination, BaseTable, MethodBtn, CurrentTaskInfo, CurrentTaskAdd, PublishTask },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      trueWidth: 100,
 | 
			
		||||
      addOrUpdateVisible: false,
 | 
			
		||||
      manualTaskVisible: false,
 | 
			
		||||
      publishTaskVisible: false,
 | 
			
		||||
      tableProps,
 | 
			
		||||
      tableBtn,
 | 
			
		||||
      list: [],
 | 
			
		||||
@@ -186,20 +194,20 @@ export default {
 | 
			
		||||
        size: 10
 | 
			
		||||
      },
 | 
			
		||||
      taskTypeList: [{
 | 
			
		||||
        'label': '出库',
 | 
			
		||||
        'label': i18n.t('module.basicData.Warehouse.ExWarehouse'),
 | 
			
		||||
        'value': 0
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '入库',
 | 
			
		||||
        'label': i18n.t('module.basicData.Warehouse.InWarehouse'),
 | 
			
		||||
        'value': 1
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '流转',
 | 
			
		||||
        'label': i18n.t('module.basicData.Warehouse.Circulation'),
 | 
			
		||||
        'value': 2
 | 
			
		||||
      }],
 | 
			
		||||
      TaskStatusList: [{
 | 
			
		||||
        'label': '初始化',
 | 
			
		||||
        'label': i18n.t('module.basicData.Warehouse.Initialization'),
 | 
			
		||||
        'value': 0
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '损坏',
 | 
			
		||||
        'label': i18n.t('module.basicData.Warehouse.Damage'),
 | 
			
		||||
        'value': 1
 | 
			
		||||
      }],
 | 
			
		||||
      VehicleNameList: [{
 | 
			
		||||
@@ -237,6 +245,20 @@ export default {
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs.addOrUpdate.init(id)
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    // 手动执行任务
 | 
			
		||||
    manualTask() {
 | 
			
		||||
      this.manualTaskVisible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs.manualTaskRef.init()
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    // 发布任务
 | 
			
		||||
    publishTask() {
 | 
			
		||||
      this.publishTaskVisible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs.publishTask.init()
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-13 15:49:01
 | 
			
		||||
 * @LastEditTime: 2022-03-16 09:46:13
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -12,7 +12,6 @@
 | 
			
		||||
      :model="formData"
 | 
			
		||||
      :inline="true"
 | 
			
		||||
      size="medium"
 | 
			
		||||
      label-width="100px"
 | 
			
		||||
    >
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.TaskType')" prop="taskType">
 | 
			
		||||
        <el-select v-model="formData.taskType" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.TaskType')])" clearable>
 | 
			
		||||
@@ -44,7 +43,7 @@
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.TimeSlot')" prop="time">
 | 
			
		||||
      <!-- <el-form-item :label="$t('module.basicData.Warehouse.TimeSlot')" prop="time">
 | 
			
		||||
        <el-date-picker
 | 
			
		||||
          v-model="formData.timeSlot"
 | 
			
		||||
          type="daterange"
 | 
			
		||||
@@ -55,7 +54,7 @@
 | 
			
		||||
          :range-separator="$t('module.orderManage.order.To')"
 | 
			
		||||
          clearable
 | 
			
		||||
        />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      </el-form-item> -->
 | 
			
		||||
      <el-form-item>
 | 
			
		||||
        <el-button type="primary" @click="getList()"> {{ 'btn.search' | i18nFilter }} </el-button>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
@@ -92,7 +91,7 @@ import i18n from '@/lang'
 | 
			
		||||
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 { timeFormatter } from '@/filters'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 TypeScript接口注释
 | 
			
		||||
 * tableConfig<ConfigItem> = []
 | 
			
		||||
@@ -124,31 +123,27 @@ const tableProps = [
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'createTime',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.ExecutionTime'),
 | 
			
		||||
    filter: timeFormatter,
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'status',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TaskStatus'),
 | 
			
		||||
    prop: 'taskSource',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TaskSource'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  // {
 | 
			
		||||
  //   prop: 'taskType',
 | 
			
		||||
  //   label: i18n.t('module.basicData.Warehouse.TaskType'),
 | 
			
		||||
  //   align: 'center'
 | 
			
		||||
  // },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'name',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.VehicleName'),
 | 
			
		||||
    prop: 'taskType',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TaskType'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  // {
 | 
			
		||||
  //   prop: 'substrateNo',
 | 
			
		||||
  //   label: i18n.t('module.basicData.Warehouse.BoxStatus'),
 | 
			
		||||
  //   align: 'center'
 | 
			
		||||
  // },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'wcode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.BoxNumber'),
 | 
			
		||||
    prop: 'fullCode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TaskBoxNumber'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'emptyCode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.FullBoxNumber'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
@@ -162,19 +157,24 @@ const tableProps = [
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'updateTime',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.CompletionTime'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'currLocation',
 | 
			
		||||
    prop: 'anotherCurrLocation',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.StartLocation'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'targetLocation',
 | 
			
		||||
    prop: 'anotherTargetLocation',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TargetLocation'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'currLocation',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.FullBoxStartLocation'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'name',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.VehicleName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
@@ -194,9 +194,9 @@ export default {
 | 
			
		||||
        taskType: '',
 | 
			
		||||
        status: '',
 | 
			
		||||
        equipmentId: '',
 | 
			
		||||
        timeSlot: [],
 | 
			
		||||
        endTime: '',
 | 
			
		||||
        startTime: '',
 | 
			
		||||
        // timeSlot: [],
 | 
			
		||||
        // endTime: '',
 | 
			
		||||
        // startTime: '',
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 10
 | 
			
		||||
      },
 | 
			
		||||
@@ -231,13 +231,13 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    getList() {
 | 
			
		||||
      if (this.formData.timeSlot) {
 | 
			
		||||
        this.formData.startTime = this.formData.timeSlot[0]
 | 
			
		||||
        this.formData.endTime = this.formData.timeSlot[1]
 | 
			
		||||
      } else {
 | 
			
		||||
        this.formData.startTime = ''
 | 
			
		||||
        this.formData.endTime = ''
 | 
			
		||||
      }
 | 
			
		||||
      // if (this.formData.timeSlot) {
 | 
			
		||||
      //   this.formData.startTime = this.formData.timeSlot[0]
 | 
			
		||||
      //   this.formData.endTime = this.formData.timeSlot[1]
 | 
			
		||||
      // } else {
 | 
			
		||||
      //   this.formData.startTime = ''
 | 
			
		||||
      //   this.formData.endTime = ''
 | 
			
		||||
      // }
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      HistoricalTaskList(this.formData).then(response => {
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										195
									
								
								src/views/basicData/Warehouse/ProcessStorageManagement.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										195
									
								
								src/views/basicData/Warehouse/ProcessStorageManagement.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,195 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-16 09:46:19
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <el-form
 | 
			
		||||
      ref="formData"
 | 
			
		||||
      :rules="rules"
 | 
			
		||||
      :model="listQuery"
 | 
			
		||||
      :inline="true"
 | 
			
		||||
      size="medium"
 | 
			
		||||
    >
 | 
			
		||||
      <el-form-item :label="$t('module.art.processList.processName')" prop="key">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="listQuery.key"
 | 
			
		||||
          :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.name"
 | 
			
		||||
          />
 | 
			
		||||
        </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 i18n from '@/lang'
 | 
			
		||||
import { timeFormatter } from '@/filters'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 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,
 | 
			
		||||
        key: ''
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  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
 | 
			
		||||
      list(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.listLoading = false
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    // 新增 / 修改
 | 
			
		||||
    addNew(id) {
 | 
			
		||||
      this.$router.push({
 | 
			
		||||
        name: 'ProcessStorageManagementInfo',
 | 
			
		||||
        query: {
 | 
			
		||||
          id
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.edit-input {
 | 
			
		||||
  padding-right: 100px;
 | 
			
		||||
}
 | 
			
		||||
.cancel-btn {
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  right: 15px;
 | 
			
		||||
  top: 10px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
@@ -2,12 +2,12 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-18 14:30:25
 | 
			
		||||
 * @LastEditTime: 2022-03-16 09:45:26
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <el-form ref="listQuery" :model="listQuery" :inline="true" label-width="120px" @keyup.enter.native="getList()">
 | 
			
		||||
    <el-form ref="listQuery" :model="listQuery" :inline="true" @keyup.enter.native="getList()">
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.StorageBoxNumber')" prop="code">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="listQuery.code"
 | 
			
		||||
@@ -92,7 +92,7 @@ const tableProps = [
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'StorageBoxInfo',
 | 
			
		||||
  name: 'ScrapInfo',
 | 
			
		||||
  components: { Pagination, BaseTable },
 | 
			
		||||
  filters: {
 | 
			
		||||
    statusFilter(status) {
 | 
			
		||||
@@ -123,15 +123,18 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.getList()
 | 
			
		||||
    const listQuery1 = {
 | 
			
		||||
      current: 1,
 | 
			
		||||
      size: 100
 | 
			
		||||
    }
 | 
			
		||||
    StorageBoxRackCode(listQuery1).then(res => {
 | 
			
		||||
      this.storageBoxList = res.data.records
 | 
			
		||||
    })
 | 
			
		||||
    this.init()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init() {
 | 
			
		||||
      const listQuery1 = {
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 100
 | 
			
		||||
      }
 | 
			
		||||
      StorageBoxRackCode(listQuery1).then(res => {
 | 
			
		||||
        this.storageBoxList = res.data.records
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    getList() {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      StorageBoxInfoList(this.listQuery).then(response => {
 | 
			
		||||
 
 | 
			
		||||
@@ -2,12 +2,12 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 14:06:53
 | 
			
		||||
 * @LastEditTime: 2022-03-16 09:46:26
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <el-form ref="listQuery" :model="listQuery" :inline="true" label-width="120px" @keyup.enter.native="getList()">
 | 
			
		||||
    <el-form ref="listQuery" :model="listQuery" :inline="true" @keyup.enter.native="getList()">
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.LocationName')" prop="currLocationId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="listQuery.currLocationId"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										205
									
								
								src/views/basicData/Warehouse/components/CurrentTask-add.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										205
									
								
								src/views/basicData/Warehouse/components/CurrentTask-add.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,205 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-16 09:49:10
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="$t('module.basicData.Warehouse.PerformTaskManual')"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
  >
 | 
			
		||||
    <el-row :gutter="10">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="dataForm"
 | 
			
		||||
        :model="dataForm"
 | 
			
		||||
        size="medium"
 | 
			
		||||
        label-width="170px"
 | 
			
		||||
        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-select
 | 
			
		||||
                  v-model="dataForm.taskCode"
 | 
			
		||||
                  :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.StorageBoxNumber')])"
 | 
			
		||||
                  clearable
 | 
			
		||||
                  filterable
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                >
 | 
			
		||||
                  <el-option
 | 
			
		||||
                    v-for="(item, index) in storageBoxList"
 | 
			
		||||
                    :key="index"
 | 
			
		||||
                    :label="item.code"
 | 
			
		||||
                    :value="item.code"
 | 
			
		||||
                  />
 | 
			
		||||
                </el-select>
 | 
			
		||||
              </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" :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.ExecutionOperation')" prop="fullCode">
 | 
			
		||||
                <el-select
 | 
			
		||||
                  v-model="dataForm.fullCode"
 | 
			
		||||
                  :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-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TaskStatus')" prop="TaskStatus">
 | 
			
		||||
                <el-select
 | 
			
		||||
                  v-model="dataForm.TaskStatus"
 | 
			
		||||
                  :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.TaskStatus')])"
 | 
			
		||||
                  clearable
 | 
			
		||||
                  filterable
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                >
 | 
			
		||||
                  <el-option
 | 
			
		||||
                    v-for="(item, index) in TaskStatusArr"
 | 
			
		||||
                    :key="index"
 | 
			
		||||
                    :label="item.dataName"
 | 
			
		||||
                    :value="item.dataCode"
 | 
			
		||||
                  />
 | 
			
		||||
                </el-select>
 | 
			
		||||
              </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" :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" :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" :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" :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.NextOperation')" prop="anotherCurrLocation">
 | 
			
		||||
                <el-select
 | 
			
		||||
                  v-model="dataForm.anotherCurrLocation"
 | 
			
		||||
                  :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.NextOperation')])"
 | 
			
		||||
                  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-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'
 | 
			
		||||
import { list } from '@/api/art-manage/process'
 | 
			
		||||
import { dataDictionaryDataList } from '@/api/basicData/dataDictionary'
 | 
			
		||||
import { StorageBoxRackCode } from '@/api/basicData/Warehouse/StorageBoxInfo'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      processArr: [],
 | 
			
		||||
      TaskStatusArr: [],
 | 
			
		||||
      storageBoxList: [],
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: '',
 | 
			
		||||
        taskCode: undefined,
 | 
			
		||||
        orderName: undefined,
 | 
			
		||||
        fullCode: undefined,
 | 
			
		||||
        TaskStatus: 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
 | 
			
		||||
      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
 | 
			
		||||
      })
 | 
			
		||||
      StorageBoxRackCode(lparams).then(res => {
 | 
			
		||||
        this.storageBoxList = res.data.records
 | 
			
		||||
      })
 | 
			
		||||
      dataDictionaryDataList({
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 999,
 | 
			
		||||
        dictTypeId: '6'
 | 
			
		||||
      }).then(response => {
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.TaskStatusArr = response.data.records
 | 
			
		||||
        } else {
 | 
			
		||||
          this.TaskStatusArr.splice(0, this.scrapsArr.length)
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-14 15:55:39
 | 
			
		||||
 * @LastEditTime: 2022-03-16 09:50:12
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -15,7 +15,7 @@
 | 
			
		||||
        ref="dataForm"
 | 
			
		||||
        :model="dataForm"
 | 
			
		||||
        size="medium"
 | 
			
		||||
        label-width="110px"
 | 
			
		||||
        label-width="160px"
 | 
			
		||||
        label-position="left"
 | 
			
		||||
      >
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
 
 | 
			
		||||
@@ -2,20 +2,21 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-13 16:22:39
 | 
			
		||||
 * @LastEditTime: 2022-03-16 09:50:58
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="'btn.see' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
    width="60%"
 | 
			
		||||
  >
 | 
			
		||||
    <el-row :gutter="10">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="dataForm"
 | 
			
		||||
        :model="dataForm"
 | 
			
		||||
        size="medium"
 | 
			
		||||
        label-width="110px"
 | 
			
		||||
        label-width="170px"
 | 
			
		||||
        label-position="left"
 | 
			
		||||
      >
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
 
 | 
			
		||||
@@ -0,0 +1,159 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-17 14:50:20
 | 
			
		||||
 * @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 { locationByProcessList } from '@/api/basicData/Warehouse/StorageBoxInfo'
 | 
			
		||||
import i18n from '@/lang'
 | 
			
		||||
import BaseTable from '@/components/BaseTable'
 | 
			
		||||
// import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 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'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'locationName',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.LocationName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'Shelf',
 | 
			
		||||
  components: { BaseTable },
 | 
			
		||||
  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,
 | 
			
		||||
        workSequenId: ''
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.listQuery.workSequenId = 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() {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      locationByProcessList(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() {
 | 
			
		||||
      this.$router.push({
 | 
			
		||||
        name: 'ProcessStorageLink',
 | 
			
		||||
        query: {
 | 
			
		||||
          id: this.listQuery.workSequenId
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    goback() {
 | 
			
		||||
      this.$router.go(-1)
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.edit-input {
 | 
			
		||||
  padding-right: 100px;
 | 
			
		||||
}
 | 
			
		||||
.cancel-btn {
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  right: 15px;
 | 
			
		||||
  top: 10px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
							
								
								
									
										75
									
								
								src/views/basicData/Warehouse/components/PublishTask.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								src/views/basicData/Warehouse/components/PublishTask.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,75 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2022-03-12 14:17:55
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-16 14:18:33
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 * @FilePath: \mt-ck-wms-ui\src\views\basicData\Warehouse\components\PublishTask.vue
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="'btn.see' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
  >
 | 
			
		||||
    <el-row :gutter="10">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="dataForm"
 | 
			
		||||
        :model="dataForm"
 | 
			
		||||
        :rules="dataRule"
 | 
			
		||||
        size="medium"
 | 
			
		||||
        label-width="110px"
 | 
			
		||||
        label-position="left"
 | 
			
		||||
      >
 | 
			
		||||
        <el-form-item :label="$t('module.basicData.Warehouse.startPosition')" prop="startPosition">
 | 
			
		||||
          <el-input v-model="dataForm.startPosition" :style="{width: '100%'}" />
 | 
			
		||||
        </el-form-item>
 | 
			
		||||
        <el-form-item :label="$t('module.basicData.Warehouse.endPosition')" prop="endPosition">
 | 
			
		||||
          <el-input v-model="dataForm.endPosition" :style="{width: '100%'}" />
 | 
			
		||||
        </el-form-item>
 | 
			
		||||
        <el-form-item :label="$t('module.basicData.Warehouse.taskType')" prop="taskType">
 | 
			
		||||
          <el-input v-model="dataForm.taskType" :style="{width: '100%'}" />
 | 
			
		||||
        </el-form-item>
 | 
			
		||||
      </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">{{ 'btn.submit' | i18nFilter }} </el-button>
 | 
			
		||||
    </span>
 | 
			
		||||
  </el-dialog>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
// import { CurrentTaskDetail } from '@/api/basicData/Warehouse/HistoricalTask'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        startPosition: null,
 | 
			
		||||
        endPosition: null,
 | 
			
		||||
        taskType: null
 | 
			
		||||
      },
 | 
			
		||||
      dataRule: {
 | 
			
		||||
        startPosition: [
 | 
			
		||||
          { required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.Warehouse.startPosition')]), trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        endPosition: [
 | 
			
		||||
          { required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.Warehouse.endPosition')]), trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        taskType: [
 | 
			
		||||
          { required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.Warehouse.taskType')]), trigger: 'blur' }
 | 
			
		||||
        ]
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init() {
 | 
			
		||||
      this.visible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 11:21:26
 | 
			
		||||
 * @LastEditTime: 2022-03-16 09:47:25
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -10,7 +10,7 @@
 | 
			
		||||
    :title="!dataForm.id ? 'btn.add' : 'btn.edit' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
  >
 | 
			
		||||
    <el-form ref="dataForm" :model="dataForm" :rules="dataRule" label-width="120px" @keyup.enter.native="dataFormSubmit()">
 | 
			
		||||
    <el-form ref="dataForm" :model="dataForm" :rules="dataRule" @keyup.enter.native="dataFormSubmit()">
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.LocationName')" prop="currLocationId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="dataForm.currLocationId"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										652
									
								
								src/views/basicData/Warehouse/components/processStorageLink.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										652
									
								
								src/views/basicData/Warehouse/components/processStorageLink.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,652 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2022-03-03 09:16:10
 | 
			
		||||
 * @LastEditors: gtz
 | 
			
		||||
 * @LastEditTime: 2022-03-18 16:33:59
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 * @FilePath: \mt-ck-wms-ui\src\views\basicData\Warehouse\components\processStorageLink.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">
 | 
			
		||||
          {{ $t("module.dashboard.title") }}
 | 
			
		||||
        </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>
 | 
			
		||||
          <el-button type="warning" size="mini" @click="init()">{{
 | 
			
		||||
            "btn.reset" | i18nFilter
 | 
			
		||||
          }}</el-button>
 | 
			
		||||
          <el-button type="success" size="mini" @click="goback()">{{
 | 
			
		||||
            "btn.back" | i18nFilter
 | 
			
		||||
          }}</el-button>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="dashboard-legend-search">
 | 
			
		||||
          <el-select
 | 
			
		||||
            v-model="current"
 | 
			
		||||
            size="mini"
 | 
			
		||||
            @change="handleChange"
 | 
			
		||||
          ><el-option
 | 
			
		||||
            v-for="item in totalPage"
 | 
			
		||||
            :key="'select' + item"
 | 
			
		||||
            :label="
 | 
			
		||||
              $t('module.dashboard.pageHeader') +
 | 
			
		||||
                item +
 | 
			
		||||
                $t('module.dashboard.pageFooter')
 | 
			
		||||
            "
 | 
			
		||||
            :value="item"
 | 
			
		||||
          />
 | 
			
		||||
          </el-select>
 | 
			
		||||
        </div>
 | 
			
		||||
      </el-row>
 | 
			
		||||
      <el-row
 | 
			
		||||
        v-if="current * 80 < shelfVoList[0].rowVoList[0].portVoList.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 shelfVoList"
 | 
			
		||||
              :key="item + 'shelf' + i.id"
 | 
			
		||||
              :span="12"
 | 
			
		||||
              class="dashboard-layout-shelf"
 | 
			
		||||
            >
 | 
			
		||||
              <el-row>
 | 
			
		||||
                <el-col
 | 
			
		||||
                  v-for="z in i.rowVoList"
 | 
			
		||||
                  :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.portVoList[
 | 
			
		||||
                            (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                          ].attribute
 | 
			
		||||
                        ],
 | 
			
		||||
                      cursor:
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].attribute === '3'
 | 
			
		||||
                          ? 'not-allowed'
 | 
			
		||||
                          : 'pointer',
 | 
			
		||||
                      color:
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].attribute === '3'
 | 
			
		||||
                          ? '#A2A8B5'
 | 
			
		||||
                          : '',
 | 
			
		||||
                      border: selectStorageList.some(
 | 
			
		||||
                        StorageItem =>
 | 
			
		||||
                          StorageItem.locationId ===
 | 
			
		||||
                          z.portVoList[
 | 
			
		||||
                            (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                          ].id
 | 
			
		||||
                      )
 | 
			
		||||
                        ? '2px dashed red'
 | 
			
		||||
                        : ''
 | 
			
		||||
                    }"
 | 
			
		||||
                    @click="
 | 
			
		||||
                      setType(
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ]
 | 
			
		||||
                      )
 | 
			
		||||
                    "
 | 
			
		||||
                  >
 | 
			
		||||
                    <div
 | 
			
		||||
                      v-if="
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].attribute !== '3'
 | 
			
		||||
                      "
 | 
			
		||||
                      class="dashboard-layout-item-cricle"
 | 
			
		||||
                      :style="{
 | 
			
		||||
                        background: z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].cassetteVoList[0]
 | 
			
		||||
                          ? cassetteStatusObj[
 | 
			
		||||
                            z.portVoList[
 | 
			
		||||
                              (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                            ].cassetteVoList[0].status
 | 
			
		||||
                          ]
 | 
			
		||||
                          : ''
 | 
			
		||||
                      }"
 | 
			
		||||
                    />
 | 
			
		||||
                    <div
 | 
			
		||||
                      v-if="
 | 
			
		||||
                        StorageList.some(
 | 
			
		||||
                          StorageItem =>
 | 
			
		||||
                            StorageItem.id ===
 | 
			
		||||
                            z.portVoList[
 | 
			
		||||
                              (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                            ].id
 | 
			
		||||
                        )"
 | 
			
		||||
                      class="dashboard-layout-item-horn"
 | 
			
		||||
                    />
 | 
			
		||||
                    {{
 | 
			
		||||
                      z.portVoList[
 | 
			
		||||
                        (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                      ].attribute !== '3'
 | 
			
		||||
                        ? z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].name
 | 
			
		||||
                        : "XXXX"
 | 
			
		||||
                    }}
 | 
			
		||||
                  </div>
 | 
			
		||||
                </el-col>
 | 
			
		||||
              </el-row>
 | 
			
		||||
              <div class="dashboard-layout-footer">
 | 
			
		||||
                {{
 | 
			
		||||
                  $t(bottomIndex[index]) +
 | 
			
		||||
                    "(" +
 | 
			
		||||
                    ((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(
 | 
			
		||||
            (shelfVoList[0].rowVoList[0].portVoList.length -
 | 
			
		||||
              (current - 1) * 80) /
 | 
			
		||||
              20
 | 
			
		||||
          )"
 | 
			
		||||
          :key="'shelfbox' + item"
 | 
			
		||||
          class="dashboard-layout-shelf-box"
 | 
			
		||||
          :span="6"
 | 
			
		||||
        >
 | 
			
		||||
          <el-row>
 | 
			
		||||
            <el-col
 | 
			
		||||
              v-for="(i, index) in shelfVoList"
 | 
			
		||||
              :key="item + 'shelf' + i.id"
 | 
			
		||||
              :span="12"
 | 
			
		||||
              class="dashboard-layout-shelf"
 | 
			
		||||
            >
 | 
			
		||||
              <el-row
 | 
			
		||||
                v-if="
 | 
			
		||||
                  item <
 | 
			
		||||
                    Math.ceil(
 | 
			
		||||
                      (shelfVoList[0].rowVoList[0].portVoList.length -
 | 
			
		||||
                        (current - 1) * 80) /
 | 
			
		||||
                        20
 | 
			
		||||
                    )
 | 
			
		||||
                "
 | 
			
		||||
              >
 | 
			
		||||
                <el-col
 | 
			
		||||
                  v-for="z in i.rowVoList"
 | 
			
		||||
                  :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.portVoList[
 | 
			
		||||
                            (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                          ].attribute
 | 
			
		||||
                        ],
 | 
			
		||||
                      cursor:
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].attribute === '3'
 | 
			
		||||
                          ? 'not-allowed'
 | 
			
		||||
                          : 'pointer',
 | 
			
		||||
                      color:
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].attribute === '3'
 | 
			
		||||
                          ? '#A2A8B5'
 | 
			
		||||
                          : '',
 | 
			
		||||
                      border: selectStorageList.some(
 | 
			
		||||
                        StorageItem =>
 | 
			
		||||
                          StorageItem.locationId ===
 | 
			
		||||
                          z.portVoList[
 | 
			
		||||
                            (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                          ].id
 | 
			
		||||
                      )
 | 
			
		||||
                        ? '2px dashed red'
 | 
			
		||||
                        : ''
 | 
			
		||||
                    }"
 | 
			
		||||
                    @click="
 | 
			
		||||
                      setType(
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ]
 | 
			
		||||
                      )
 | 
			
		||||
                    "
 | 
			
		||||
                  >
 | 
			
		||||
                    <div
 | 
			
		||||
                      v-if="
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].attribute !== '3'
 | 
			
		||||
                      "
 | 
			
		||||
                      class="dashboard-layout-item-cricle"
 | 
			
		||||
                      :style="{
 | 
			
		||||
                        background: z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].cassetteVoList[0]
 | 
			
		||||
                          ? cassetteStatusObj[
 | 
			
		||||
                            z.portVoList[
 | 
			
		||||
                              (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                            ].cassetteVoList[0].status
 | 
			
		||||
                          ]
 | 
			
		||||
                          : ''
 | 
			
		||||
                      }"
 | 
			
		||||
                    />
 | 
			
		||||
                    <div
 | 
			
		||||
                      v-if="
 | 
			
		||||
                        StorageList.some(
 | 
			
		||||
                          StorageItem =>
 | 
			
		||||
                            StorageItem.id ===
 | 
			
		||||
                            z.portVoList[
 | 
			
		||||
                              (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                            ].id
 | 
			
		||||
                        )"
 | 
			
		||||
                      class="dashboard-layout-item-horn"
 | 
			
		||||
                    />
 | 
			
		||||
                    {{
 | 
			
		||||
                      z.portVoList[
 | 
			
		||||
                        (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                      ].attribute !== '3'
 | 
			
		||||
                        ? z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].name
 | 
			
		||||
                        : "XXXX"
 | 
			
		||||
                    }}
 | 
			
		||||
                  </div>
 | 
			
		||||
                </el-col>
 | 
			
		||||
              </el-row>
 | 
			
		||||
              <el-row v-else>
 | 
			
		||||
                <el-col
 | 
			
		||||
                  v-for="z in i.rowVoList"
 | 
			
		||||
                  :key="item + 'shelf' + i + 'row' + z.id"
 | 
			
		||||
                  :span="12"
 | 
			
		||||
                  class="dashboard-layout-row"
 | 
			
		||||
                >
 | 
			
		||||
                  <div
 | 
			
		||||
                    v-for="x in shelfVoList[0].rowVoList[0].portVoList.length -
 | 
			
		||||
                      (item - 1) * 20 -
 | 
			
		||||
                      (current - 1) * 80"
 | 
			
		||||
                    :key="item + 'shelf' + i + 'row' + z + 'item' + x"
 | 
			
		||||
                    class="dashboard-layout-item"
 | 
			
		||||
                    :style="{
 | 
			
		||||
                      background:
 | 
			
		||||
                        portAttributeObj[
 | 
			
		||||
                          z.portVoList[
 | 
			
		||||
                            (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                          ].attribute
 | 
			
		||||
                        ],
 | 
			
		||||
                      cursor:
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].attribute === '3'
 | 
			
		||||
                          ? 'not-allowed'
 | 
			
		||||
                          : 'pointer',
 | 
			
		||||
                      color:
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].attribute === '3'
 | 
			
		||||
                          ? '#A2A8B5'
 | 
			
		||||
                          : '',
 | 
			
		||||
                      border: selectStorageList.some(
 | 
			
		||||
                        StorageItem =>
 | 
			
		||||
                          StorageItem.locationId ===
 | 
			
		||||
                          z.portVoList[
 | 
			
		||||
                            (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                          ].id
 | 
			
		||||
                      )
 | 
			
		||||
                        ? '2px dashed red'
 | 
			
		||||
                        : ''
 | 
			
		||||
                    }"
 | 
			
		||||
                    @click="
 | 
			
		||||
                      setType(
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ]
 | 
			
		||||
                      )
 | 
			
		||||
                    "
 | 
			
		||||
                  >
 | 
			
		||||
                    <div
 | 
			
		||||
                      v-if="
 | 
			
		||||
                        z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].attribute !== '3'
 | 
			
		||||
                      "
 | 
			
		||||
                      class="dashboard-layout-item-cricle"
 | 
			
		||||
                      :style="{
 | 
			
		||||
                        background: z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].cassetteVoList[0]
 | 
			
		||||
                          ? cassetteStatusObj[
 | 
			
		||||
                            z.portVoList[
 | 
			
		||||
                              (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                            ].cassetteVoList[0].status
 | 
			
		||||
                          ]
 | 
			
		||||
                          : ''
 | 
			
		||||
                      }"
 | 
			
		||||
                    />
 | 
			
		||||
                    <div
 | 
			
		||||
                      v-if="
 | 
			
		||||
                        StorageList.some(
 | 
			
		||||
                          StorageItem =>
 | 
			
		||||
                            StorageItem.id ===
 | 
			
		||||
                            z.portVoList[
 | 
			
		||||
                              (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                            ].id
 | 
			
		||||
                        )"
 | 
			
		||||
                      class="dashboard-layout-item-horn"
 | 
			
		||||
                    />
 | 
			
		||||
                    {{
 | 
			
		||||
                      z.portVoList[
 | 
			
		||||
                        (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                      ].attribute !== '3'
 | 
			
		||||
                        ? z.portVoList[
 | 
			
		||||
                          (current - 1) * 80 + (item - 1) * 20 + (x - 1)
 | 
			
		||||
                        ].name
 | 
			
		||||
                        : "XXXX"
 | 
			
		||||
                    }}
 | 
			
		||||
                  </div>
 | 
			
		||||
                </el-col>
 | 
			
		||||
              </el-row>
 | 
			
		||||
              <div class="dashboard-layout-footer">
 | 
			
		||||
                {{
 | 
			
		||||
                  $t(bottomIndex[index]) +
 | 
			
		||||
                    "(" +
 | 
			
		||||
                    ((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 { getPortList } from '@/api/dashboard'
 | 
			
		||||
import { locationByProcessList } from '@/api/basicData/Warehouse/StorageBoxInfo'
 | 
			
		||||
import { batchListAdd } from '@/api/basicData/Warehouse/StorageBoxInfo'
 | 
			
		||||
import testdata from './testdata'
 | 
			
		||||
import processStorageType from './processStorageType'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'ProcessStorageLink1',
 | 
			
		||||
  components: { processStorageType },
 | 
			
		||||
  data() {
 | 
			
		||||
    return testdata
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.id = this.$route.query.id
 | 
			
		||||
    this.totalPage = Math.ceil(
 | 
			
		||||
      this.shelfVoList[0].rowVoList[0].portVoList.length / 80
 | 
			
		||||
    )
 | 
			
		||||
    this.init()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init() {
 | 
			
		||||
      getPortList().then(res => {
 | 
			
		||||
        this.shelfVoList = res.data[0].shelfVoList
 | 
			
		||||
        this.totalPage = Math.ceil(
 | 
			
		||||
          this.shelfVoList[0].rowVoList[0].portVoList.length / 80
 | 
			
		||||
        )
 | 
			
		||||
      })
 | 
			
		||||
      locationByProcessList({
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 990,
 | 
			
		||||
        workSequenId: this.id
 | 
			
		||||
      }).then(response => {
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.StorageList = response.data.records
 | 
			
		||||
        } else {
 | 
			
		||||
          this.StorageList.splice(0, this.StorageList.length)
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
      this.selectStorageList.splice(0, this.selectStorageList.length)
 | 
			
		||||
    },
 | 
			
		||||
    setType(item) {
 | 
			
		||||
      if (item.attribute !== '3') {
 | 
			
		||||
        if (
 | 
			
		||||
          this.selectStorageList.findIndex(
 | 
			
		||||
            StorageItem => StorageItem.locationId === item.id
 | 
			
		||||
          ) + 1
 | 
			
		||||
        ) {
 | 
			
		||||
          this.selectStorageList.splice(
 | 
			
		||||
            this.selectStorageList.findIndex(
 | 
			
		||||
              StorageItem => StorageItem.locationId === item.id
 | 
			
		||||
            ),
 | 
			
		||||
            1
 | 
			
		||||
          )
 | 
			
		||||
        } else {
 | 
			
		||||
          const isExist = this.StorageList.some(
 | 
			
		||||
            StorageItem =>
 | 
			
		||||
              StorageItem.id === item.id
 | 
			
		||||
          )
 | 
			
		||||
          this.typeVisible = true
 | 
			
		||||
          this.$nextTick(() => {
 | 
			
		||||
            this.$refs.typeRef.init(item.id, item.name, item.attribute, isExist)
 | 
			
		||||
          })
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    setStorageList(locationId, locationName, dataForm) {
 | 
			
		||||
      const obj = Object.assign({ locationId, locationName }, dataForm)
 | 
			
		||||
      this.selectStorageList.push(obj)
 | 
			
		||||
    },
 | 
			
		||||
    handleChange(v) {
 | 
			
		||||
      console.log(v)
 | 
			
		||||
    },
 | 
			
		||||
    submitLinkList() {
 | 
			
		||||
      if (this.selectStorageList.length) {
 | 
			
		||||
        const tipArr = this.selectStorageList.map(item => {
 | 
			
		||||
          return item.locationName
 | 
			
		||||
        })
 | 
			
		||||
        const obj = {
 | 
			
		||||
          workSequenId: this.id,
 | 
			
		||||
          processLocationStorageList: this.selectStorageList
 | 
			
		||||
        }
 | 
			
		||||
        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(() => {
 | 
			
		||||
            batchListAdd(obj).then(res => {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: this.$t('module.basicData.visual.success'),
 | 
			
		||||
                type: 'success',
 | 
			
		||||
                duration: 1500,
 | 
			
		||||
                onClose: () => {
 | 
			
		||||
                  this.init()
 | 
			
		||||
                }
 | 
			
		||||
              })
 | 
			
		||||
            })
 | 
			
		||||
          })
 | 
			
		||||
          .catch(() => {})
 | 
			
		||||
      } else {
 | 
			
		||||
        this.$message({
 | 
			
		||||
          message: this.$t('module.basicData.visual.PleaseAddLocationFirst'),
 | 
			
		||||
          type: 'warning',
 | 
			
		||||
          duration: 1500
 | 
			
		||||
        })
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    goback() {
 | 
			
		||||
      this.selectStorageList.splice(0, this.selectStorageList.length)
 | 
			
		||||
      this.$router.go(-1)
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</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;
 | 
			
		||||
              position: relative;
 | 
			
		||||
              .dashboard-layout-item-cricle {
 | 
			
		||||
                display: inline-block;
 | 
			
		||||
                width: 12px;
 | 
			
		||||
                height: 12px;
 | 
			
		||||
                border-radius: 6px;
 | 
			
		||||
                margin-right: 6px;
 | 
			
		||||
              }
 | 
			
		||||
              .dashboard-layout-item-horn {
 | 
			
		||||
                position: absolute;
 | 
			
		||||
                width: 0;
 | 
			
		||||
                height: 0;
 | 
			
		||||
                right: 0;
 | 
			
		||||
                top: 0;
 | 
			
		||||
                border-style: solid;
 | 
			
		||||
                border-width: 14px 0px 0px 14px;
 | 
			
		||||
                border-color: #0B58FF transparent transparent transparent;
 | 
			
		||||
              }
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
							
								
								
									
										109
									
								
								src/views/basicData/Warehouse/components/processStorageType.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								src/views/basicData/Warehouse/components/processStorageType.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,109 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-03-18 09:39:09
 | 
			
		||||
 * @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-position="left"
 | 
			
		||||
    >
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.SelectStorageType')" prop="portAttrId">
 | 
			
		||||
        <el-radio v-model="dataForm.portAttrId" label="1">Working Port</el-radio>
 | 
			
		||||
        <el-radio v-model="dataForm.portAttrId" label="2">Buffer Port</el-radio>
 | 
			
		||||
        <el-radio v-model="dataForm.portAttrId" label="3">Exception Port</el-radio>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.storageBox.name')" prop="storageId">
 | 
			
		||||
        <el-select v-model="dataForm.storageId" 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 { getPortDetail } from '@/api/dashboard'
 | 
			
		||||
import { storageBoxList } from '@/api/basicData/Cache/storageBox'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      locationId: '',
 | 
			
		||||
      locationName: '',
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        portAttrId: '1',
 | 
			
		||||
        storageId: ''
 | 
			
		||||
      },
 | 
			
		||||
      dataRule: {
 | 
			
		||||
        storageId: [
 | 
			
		||||
          {
 | 
			
		||||
            required: true,
 | 
			
		||||
            message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.storageBox.name')]),
 | 
			
		||||
            trigger: 'change' }
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      storageBoxArr: []
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init(id, name, attribute, isExist) {
 | 
			
		||||
      this.locationId = id
 | 
			
		||||
      this.locationName = name
 | 
			
		||||
      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.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        if (attribute) {
 | 
			
		||||
          this.dataForm.portAttrId = attribute
 | 
			
		||||
        } else {
 | 
			
		||||
          this.dataForm.portAttrId = '1'
 | 
			
		||||
        }
 | 
			
		||||
        if (isExist) {
 | 
			
		||||
          getPortDetail(id).then(res => {
 | 
			
		||||
            if (res.code === 0) { this.dataForm.storageId = res.data.storageBoxId }
 | 
			
		||||
          })
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
      this.visible = true
 | 
			
		||||
    },
 | 
			
		||||
    // 表单提交
 | 
			
		||||
    dataFormSubmit() {
 | 
			
		||||
      this.$refs['dataForm'].validate((valid) => {
 | 
			
		||||
        if (valid) {
 | 
			
		||||
          this.visible = false
 | 
			
		||||
          this.$emit('refreshDataList', this.locationId, this.locationName, this.dataForm)
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
							
								
								
									
										2612
									
								
								src/views/basicData/Warehouse/components/testdata.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2612
									
								
								src/views/basicData/Warehouse/components/testdata.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										157
									
								
								src/views/dashboard/components/PortDetail.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										157
									
								
								src/views/dashboard/components/PortDetail.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,157 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-04-02 15:57:14
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="'btn.detail' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
    width="70%"
 | 
			
		||||
  >
 | 
			
		||||
    <el-row :gutter="10">
 | 
			
		||||
      <el-form ref="dataForm" :model="dataForm" label-width="150px">
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.dashboard.name')" prop="name">
 | 
			
		||||
            {{ dataForm.name }}
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.dashboard.attribute')" prop="attribute">
 | 
			
		||||
            {{ dataForm.attribute ? portAttributeObj[dataForm.attribute] : '' }}
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.dashboard.cassetteStatus')" prop="cassetteVoList">
 | 
			
		||||
            {{ dataForm.cassetteVoList && dataForm.cassetteVoList.length && dataForm.cassetteVoList[0].status ? cassetteStatusObj[dataForm.cassetteVoList[0].status] : '' }}
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.dashboard.workOrderNo')" prop="workOrderNo">
 | 
			
		||||
            {{ dataForm.workOrderNo }}
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.dashboard.storageBoxCode')" prop="storageBoxCode">
 | 
			
		||||
            {{ dataForm.storageBoxCode }}
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
      </el-form>
 | 
			
		||||
    </el-row>
 | 
			
		||||
    <base-table
 | 
			
		||||
      :page="listQuery.current"
 | 
			
		||||
      :limit="listQuery.size"
 | 
			
		||||
      :table-config="tableProps"
 | 
			
		||||
      :table-data="list"
 | 
			
		||||
      :is-loading="listLoading"
 | 
			
		||||
    />
 | 
			
		||||
    <span slot="footer" class="dialog-footer">
 | 
			
		||||
      <el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
 | 
			
		||||
    </span>
 | 
			
		||||
  </el-dialog>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import i18n from '@/lang'
 | 
			
		||||
import { listSubstrate } from '@/api/report-manage/report'
 | 
			
		||||
import BaseTable from '@/components/BaseTable'
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'substrateCode',
 | 
			
		||||
    label: i18n.t('module.report.substrate.substrateCode'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'subPosition',
 | 
			
		||||
    label: i18n.t('module.report.substrate.location'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'storeTime',
 | 
			
		||||
    label: i18n.t('module.report.substrate.storeTime'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'status',
 | 
			
		||||
    label: i18n.t('module.report.substrate.substrateStatus'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'subStorageStatusName',
 | 
			
		||||
    label: i18n.t('module.report.substrate.subStorageStatus'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'machineHandID',
 | 
			
		||||
    label: i18n.t('module.report.substrate.machineHandID'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  components: { BaseTable },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      tableProps,
 | 
			
		||||
      list: [],
 | 
			
		||||
      listLoading: true,
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 500,
 | 
			
		||||
        locationStorageSubID: ''
 | 
			
		||||
      },
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        code: null,
 | 
			
		||||
        createTime: null,
 | 
			
		||||
        currLocation: null,
 | 
			
		||||
        currLocationId: null,
 | 
			
		||||
        id: null,
 | 
			
		||||
        isEmpty: null,
 | 
			
		||||
        status: null,
 | 
			
		||||
        storageBoxCode: null,
 | 
			
		||||
        storageBoxId: null,
 | 
			
		||||
        updateTime: null
 | 
			
		||||
      },
 | 
			
		||||
      cassetteStatusObj: {
 | 
			
		||||
        '1': 'Empty Cassette',
 | 
			
		||||
        '2': 'Dummy Cassette',
 | 
			
		||||
        '3': 'OK Cassette',
 | 
			
		||||
        '4': 'NOK Cassette'
 | 
			
		||||
      },
 | 
			
		||||
      portAttributeObj: {
 | 
			
		||||
        1: 'Working Port',
 | 
			
		||||
        2: 'Buffer Port',
 | 
			
		||||
        3: 'Exception Port'
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init(data) {
 | 
			
		||||
      console.log(data)
 | 
			
		||||
      this.visible = true
 | 
			
		||||
      this.dataForm = data
 | 
			
		||||
      this.listQuery.locationStorageSubID = data.locationStorageSubId
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      listSubstrate(this.listQuery).then(response => {
 | 
			
		||||
        if (response.data) {
 | 
			
		||||
          this.list = response.data
 | 
			
		||||
          for (var x = 0; x < this.list.length; x++) {
 | 
			
		||||
            if (this.list[x].subStorageStatus === 1) {
 | 
			
		||||
              this.list[x].subStorageStatusName = this.$t('module.report.substrate.load')
 | 
			
		||||
            } else if (this.list[x].subStorageStatus === 2) {
 | 
			
		||||
              this.list[x].subStorageStatusName = this.$t('module.report.substrate.unload')
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        } else {
 | 
			
		||||
          this.list.splice(0, this.list.length)
 | 
			
		||||
        }
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
@@ -1,15 +1,216 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2022-03-03 09:16:10
 | 
			
		||||
 * @LastEditors: gtz
 | 
			
		||||
 * @LastEditTime: 2022-03-18 16:29:33
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 * @FilePath: \mt-ck-wms-ui\src\views\dashboard\index.vue
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="dashboard-container">
 | 
			
		||||
    <!-- <component :is="currentRole" /> -->
 | 
			
		||||
    <admin-dashboard />
 | 
			
		||||
    <el-card class="dashboard-main">
 | 
			
		||||
      <el-row class="dashboard-title">
 | 
			
		||||
        <div class="dashboard-header-line" />
 | 
			
		||||
        <div class="dashboard-header-title">{{ $t('module.dashboard.title') }}</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" @change="handleChange">
 | 
			
		||||
            <el-option v-for="item in totalPage" :key="'select' + item" :label="$t('module.dashboard.pageHeader') + item + $t('module.dashboard.pageFooter')" :value="item" />
 | 
			
		||||
          </el-select>
 | 
			
		||||
          <el-button type="primary" @click="refresh">{{ 'btn.refresh' | i18nFilter }}</el-button>
 | 
			
		||||
        </div>
 | 
			
		||||
      </el-row>
 | 
			
		||||
      <el-row v-if="current * 80 < shelfVoList[0].rowVoList[0].portVoList.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 shelfVoList" :key="item + 'shelf' + i.id" :span="12" class="dashboard-layout-shelf">
 | 
			
		||||
              <el-row>
 | 
			
		||||
                <el-col v-for="z in i.rowVoList" :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.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? 'not-allowed' : 'pointer', color: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? '#A2A8B5' : ''}" @click="handlePort(z, x)">
 | 
			
		||||
                    <div v-if="z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== '3'" class="dashboard-layout-item-cricle" :style="{background: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0] ? cassetteStatusObj[z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0].status] : ''}" />
 | 
			
		||||
                    {{ z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== '3' ? z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name : 'XXXX' }}
 | 
			
		||||
                  </div>
 | 
			
		||||
                </el-col>
 | 
			
		||||
              </el-row>
 | 
			
		||||
              <div class="dashboard-layout-footer">
 | 
			
		||||
                {{ $t(rowIndex[index]) + '(' + ((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((shelfVoList[0].rowVoList[0].portVoList.length - (current - 1) * 80) / 20)" :key="'shelfbox' + item" class="dashboard-layout-shelf-box" :span="6">
 | 
			
		||||
          <el-row>
 | 
			
		||||
            <el-col v-for="(i, index) in shelfVoList" :key="item + 'shelf' + i.id" :span="12" class="dashboard-layout-shelf">
 | 
			
		||||
              <el-row v-if="item < Math.ceil((shelfVoList[0].rowVoList[0].portVoList.length - (current - 1) * 80) / 20)">
 | 
			
		||||
                <el-col v-for="z in i.rowVoList" :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.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? 'not-allowed' : 'pointer', color: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? '#A2A8B5' : ''}" @click="handlePort(z, x)">
 | 
			
		||||
                    <div v-if="z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== '3'" class="dashboard-layout-item-cricle" :style="{background: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0] ? cassetteStatusObj[z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0].status] : ''}" />
 | 
			
		||||
                    {{ z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== '3' ? z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name : 'XXXX' }}
 | 
			
		||||
                  </div>
 | 
			
		||||
                </el-col>
 | 
			
		||||
              </el-row>
 | 
			
		||||
              <el-row v-else>
 | 
			
		||||
                <el-col v-for="z in i.rowVoList" :key="item + 'shelf' + i + 'row' + z.id" :span="12" class="dashboard-layout-row">
 | 
			
		||||
                  <div v-for="x in shelfVoList[0].rowVoList[0].portVoList.length - (item - 1) * 20 - (current - 1) * 80" :key="item + 'shelf' + i + 'row' + z + 'item' + x" class="dashboard-layout-item" :style="{background: portAttributeObj[z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? 'not-allowed' : 'pointer', color: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? '#A2A8B5' : ''}" @click="handlePort(z, x)">
 | 
			
		||||
                    <div v-if="z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== '3'" class="dashboard-layout-item-cricle" :style="{background: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0] ? cassetteStatusObj[z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0].status] : ''}" />
 | 
			
		||||
                    {{ z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== '3' ? z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name : 'XXXX' }}
 | 
			
		||||
                  </div>
 | 
			
		||||
                </el-col>
 | 
			
		||||
              </el-row>
 | 
			
		||||
              <div class="dashboard-layout-footer">
 | 
			
		||||
                {{ $t(rowIndex[index]) + '(' + ((current - 1) * 4 + item) + ')' }}
 | 
			
		||||
              </div>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </el-row>
 | 
			
		||||
        </el-col>
 | 
			
		||||
      </el-row>
 | 
			
		||||
    </el-card>
 | 
			
		||||
    <port-detail ref="addOrUpdate" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import AdminDashboard from './admin'
 | 
			
		||||
import testdata from './testdata'
 | 
			
		||||
import { getPortList, getPortDetail } from '@/api/dashboard'
 | 
			
		||||
import portDetail from './components/PortDetail'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'Dashboard',
 | 
			
		||||
  components: { AdminDashboard }
 | 
			
		||||
  components: { portDetail },
 | 
			
		||||
  data() {
 | 
			
		||||
    return testdata
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.totalPage = Math.ceil(this.shelfVoList[0].rowVoList[0].portVoList.length / 80)
 | 
			
		||||
    this.init()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init() {
 | 
			
		||||
      getPortList().then(res => {
 | 
			
		||||
        this.shelfVoList = res.data[0].shelfVoList
 | 
			
		||||
        this.totalPage = Math.ceil(this.shelfVoList[0].rowVoList[0].portVoList.length / 80)
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    handleChange(v) {
 | 
			
		||||
      console.log(v)
 | 
			
		||||
    },
 | 
			
		||||
    handlePort(z, x) {
 | 
			
		||||
      getPortDetail(z.portVoList[x - 1].id).then(res => {
 | 
			
		||||
        this.addOrUpdateVisible = true
 | 
			
		||||
        this.$nextTick(() => {
 | 
			
		||||
          this.$refs.addOrUpdate.init({ ...(res.data), ...z.portVoList[x - 1] })
 | 
			
		||||
        })
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    refresh() {
 | 
			
		||||
      this.init()
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</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>
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2609
									
								
								src/views/dashboard/testdata.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2609
									
								
								src/views/dashboard/testdata.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:26:35
 | 
			
		||||
 * @LastEditTime: 2022-03-09 14:46:12
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -143,7 +143,7 @@ export default {
 | 
			
		||||
    },
 | 
			
		||||
    getList(key) {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      this.listQuery.code = key
 | 
			
		||||
      this.listQuery.name = key
 | 
			
		||||
      ExecutionInfoList(this.listQuery).then(response => {
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.list = response.data.records
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:32:00
 | 
			
		||||
 * @LastEditTime: 2022-03-09 14:44:58
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -150,7 +150,7 @@ export default {
 | 
			
		||||
    },
 | 
			
		||||
    getList(key) {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      this.listQuery.code = key
 | 
			
		||||
      this.listQuery.name = key
 | 
			
		||||
      ProcessInfoList(this.listQuery).then(response => {
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.list = response.data.records
 | 
			
		||||
 
 | 
			
		||||
@@ -2,20 +2,21 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:21:50
 | 
			
		||||
 * @LastEditTime: 2022-03-16 14:17:40
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="'btn.see' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
    width="70%"
 | 
			
		||||
  >
 | 
			
		||||
    <el-row :gutter="10">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="dataForm"
 | 
			
		||||
        :model="dataForm"
 | 
			
		||||
        size="medium"
 | 
			
		||||
        label-width="110px"
 | 
			
		||||
        label-width="180px"
 | 
			
		||||
        label-position="left"
 | 
			
		||||
      >
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
@@ -26,8 +27,8 @@
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.IssueOrderTime')" prop="createTime">
 | 
			
		||||
                <el-input v-model="dataForm.createTime" :placeholder="$t('module.basicData.Warehouse.IssueOrderTime')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderStatus')" prop="status">
 | 
			
		||||
                <el-input v-model="dataForm.status" :placeholder="$t('module.basicData.Warehouse.OrderStatus')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
@@ -35,18 +36,43 @@
 | 
			
		||||
                <el-input v-model="dataForm.planQuantity" :placeholder="$t('module.basicData.Warehouse.PlanProcessQuantity')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </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-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.CompletionTime')" prop="finishProduceTime">
 | 
			
		||||
                <el-input v-model="dataForm.finishProduceTime" :placeholder="$t('module.basicData.Warehouse.CompletionTime')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </el-row>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-row>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderCode')" prop="taskCode">
 | 
			
		||||
                <el-input v-model="dataForm.taskCode" :placeholder="$t('module.basicData.Warehouse.OrderCode')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderCode')" prop="code">
 | 
			
		||||
                <el-input v-model="dataForm.code" :placeholder="$t('module.basicData.Warehouse.OrderCode')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderStatus')" prop="taskType">
 | 
			
		||||
                <el-input v-model="dataForm.taskType" :placeholder="$t('module.basicData.Warehouse.OrderStatus')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.startProduceTime')" prop="startProduceTime">
 | 
			
		||||
                <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-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.ProcessOrNot')" prop="ProcessOrNot">
 | 
			
		||||
                <el-input v-model="dataForm.ProcessOrNot" :placeholder="$t('module.basicData.Warehouse.ProcessOrNot')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </el-row>
 | 
			
		||||
@@ -68,6 +94,16 @@
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </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-col>
 | 
			
		||||
      </el-form>
 | 
			
		||||
@@ -80,6 +116,7 @@
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { ExecutionInfoDetail } from '@/api/orderManage/00A'
 | 
			
		||||
import { timeFormatter } from '@/filters'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
@@ -88,9 +125,15 @@ export default {
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: 0,
 | 
			
		||||
        name: undefined,
 | 
			
		||||
        createTime: undefined,
 | 
			
		||||
        taskCode: undefined,
 | 
			
		||||
        taskType: undefined,
 | 
			
		||||
        priority: '',
 | 
			
		||||
        actualQuantity: '',
 | 
			
		||||
        startProduceTime: '',
 | 
			
		||||
        finishProduceTime: '',
 | 
			
		||||
        scrapQuantity: '',
 | 
			
		||||
        triggerOrigin: '',
 | 
			
		||||
        type: '',
 | 
			
		||||
        code: undefined,
 | 
			
		||||
        status: undefined,
 | 
			
		||||
        craftName: undefined,
 | 
			
		||||
        planQuantity: undefined,
 | 
			
		||||
        subProccessName: undefined
 | 
			
		||||
@@ -105,10 +148,46 @@ export default {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        if (this.dataForm.id) {
 | 
			
		||||
          ExecutionInfoDetail(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)
 | 
			
		||||
            res.data.finishProduceTime = timeFormatter(res.data.finishProduceTime)
 | 
			
		||||
            res.data.startProduceTime = timeFormatter(res.data.startProduceTime)
 | 
			
		||||
            res.data.ProcessOrNot = res.data.processId ? '是' : '否'
 | 
			
		||||
            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,20 +2,21 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:22:08
 | 
			
		||||
 * @LastEditTime: 2022-03-16 14:17:37
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="'btn.see' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
    width="70%"
 | 
			
		||||
  >
 | 
			
		||||
    <el-row :gutter="10">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="dataForm"
 | 
			
		||||
        :model="dataForm"
 | 
			
		||||
        size="medium"
 | 
			
		||||
        label-width="110px"
 | 
			
		||||
        label-width="180px"
 | 
			
		||||
        label-position="left"
 | 
			
		||||
      >
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
@@ -26,8 +27,8 @@
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.IssueOrderTime')" prop="createTime">
 | 
			
		||||
                <el-input v-model="dataForm.createTime" :placeholder="$t('module.basicData.Warehouse.IssueOrderTime')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderStatus')" prop="status">
 | 
			
		||||
                <el-input v-model="dataForm.status" :placeholder="$t('module.basicData.Warehouse.OrderStatus')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
@@ -35,18 +36,33 @@
 | 
			
		||||
                <el-input v-model="dataForm.planQuantity" :placeholder="$t('module.basicData.Warehouse.PlanProcessQuantity')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </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-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-row>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderCode')" prop="taskCode">
 | 
			
		||||
                <el-input v-model="dataForm.taskCode" :placeholder="$t('module.basicData.Warehouse.OrderCode')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderCode')" prop="code">
 | 
			
		||||
                <el-input v-model="dataForm.code" :placeholder="$t('module.basicData.Warehouse.OrderCode')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderStatus')" prop="taskType">
 | 
			
		||||
                <el-input v-model="dataForm.taskType" :placeholder="$t('module.basicData.Warehouse.OrderStatus')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.startProduceTime')" prop="startProduceTime">
 | 
			
		||||
                <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-col>
 | 
			
		||||
          </el-row>
 | 
			
		||||
@@ -68,6 +84,16 @@
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </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-col>
 | 
			
		||||
      </el-form>
 | 
			
		||||
@@ -80,6 +106,7 @@
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { ProcessInfoDetail } from '@/api/orderManage/00A'
 | 
			
		||||
import { timeFormatter } from '@/filters'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
@@ -88,9 +115,14 @@ export default {
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: 0,
 | 
			
		||||
        name: undefined,
 | 
			
		||||
        createTime: undefined,
 | 
			
		||||
        taskCode: undefined,
 | 
			
		||||
        taskType: undefined,
 | 
			
		||||
        priority: '',
 | 
			
		||||
        actualQuantity: '',
 | 
			
		||||
        startProduceTime: '',
 | 
			
		||||
        scrapQuantity: '',
 | 
			
		||||
        triggerOrigin: '',
 | 
			
		||||
        type: '',
 | 
			
		||||
        code: undefined,
 | 
			
		||||
        status: undefined,
 | 
			
		||||
        craftName: undefined,
 | 
			
		||||
        planQuantity: undefined,
 | 
			
		||||
        subProccessName: undefined
 | 
			
		||||
@@ -105,10 +137,44 @@ export default {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        if (this.dataForm.id) {
 | 
			
		||||
          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)
 | 
			
		||||
            res.data.startProduceTime = timeFormatter(res.data.startProduceTime)
 | 
			
		||||
            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
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:16:29
 | 
			
		||||
 * @LastEditTime: 2022-03-19 13:47:06
 | 
			
		||||
 * @FilePath: \basic-admin\src\components\BaseTable\subcomponents\CheckDetail.vue
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
@@ -13,18 +13,18 @@
 | 
			
		||||
      width="160"
 | 
			
		||||
    >
 | 
			
		||||
      <div>
 | 
			
		||||
        <el-select v-model="value" placeholder="请选择">
 | 
			
		||||
        <el-select v-model="value" :placeholder="$t('module.basicData.Warehouse.RelateProcess')">
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in options"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
            :key="item.id"
 | 
			
		||||
            :label="item.name"
 | 
			
		||||
            :value="item.id"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div style="text-align: right; margin: 0">
 | 
			
		||||
        <el-button size="mini" type="text" @click="visible = false">取消</el-button>
 | 
			
		||||
        <el-button type="primary" size="mini" @click="emitClick">确定</el-button>
 | 
			
		||||
        <el-button size="mini" type="text" @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
 | 
			
		||||
        <el-button type="primary" size="mini" @click="emitClick">{{ 'btn.confirm' | i18nFilter }}</el-button>
 | 
			
		||||
      </div>
 | 
			
		||||
      <el-button slot="reference" type="text">{{ $t('module.basicData.Warehouse.RelateProcess') }}</el-button>
 | 
			
		||||
    </el-popover>
 | 
			
		||||
@@ -32,6 +32,8 @@
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { list } from '@/api/art-manage/art.js'
 | 
			
		||||
import { ProcessInfoUpdata } from '@/api/orderManage/00A'
 | 
			
		||||
export default {
 | 
			
		||||
  props: {
 | 
			
		||||
    injectData: {
 | 
			
		||||
@@ -42,22 +44,38 @@ export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      options: [{
 | 
			
		||||
        value: '选项1',
 | 
			
		||||
        label: '黄金糕'
 | 
			
		||||
      }, {
 | 
			
		||||
        value: '选项2',
 | 
			
		||||
        label: '双皮奶'
 | 
			
		||||
      }
 | 
			
		||||
      ],
 | 
			
		||||
      options: [],
 | 
			
		||||
      value: ''
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.init()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init() {
 | 
			
		||||
      list({
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 999
 | 
			
		||||
      }).then(response => {
 | 
			
		||||
        this.options = response.data.records
 | 
			
		||||
      })
 | 
			
		||||
      this.value = this.injectData.processId
 | 
			
		||||
    },
 | 
			
		||||
    emitClick() {
 | 
			
		||||
      console.log(this.injectData)
 | 
			
		||||
      console.log(this.value)
 | 
			
		||||
      this.visible = false
 | 
			
		||||
      const data = {
 | 
			
		||||
        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
 | 
			
		||||
          }
 | 
			
		||||
        })
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
 * @Author: fzq
 | 
			
		||||
 * @Date: 2022-03-04 20:54:54
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-06 19:32:34
 | 
			
		||||
 * @LastEditTime: 2022-05-30 13:40:33
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
@@ -195,7 +195,23 @@ export default {
 | 
			
		||||
      this.listQuery.code = key
 | 
			
		||||
      // console.log(this.listQuery)
 | 
			
		||||
      download(this.listQuery).then(res => {
 | 
			
		||||
        console.log(res)
 | 
			
		||||
        let fileName = ''
 | 
			
		||||
        const contentDisposition = res.headers['content-disposition']
 | 
			
		||||
        if (contentDisposition) {
 | 
			
		||||
          // fileName = contentDisposition.slice(contentDisposition.indexOf('filename=') + 9)
 | 
			
		||||
          fileName = this.$t('module.report.reportList.storageBoxReport') + '.xlsx'
 | 
			
		||||
        }
 | 
			
		||||
        const blob = new Blob([res.data])
 | 
			
		||||
        const reader = new FileReader()
 | 
			
		||||
        reader.readAsDataURL(blob)
 | 
			
		||||
        reader.onload = (e) => {
 | 
			
		||||
          const a = document.createElement('a')
 | 
			
		||||
          a.download = fileName
 | 
			
		||||
          a.href = e.target.result
 | 
			
		||||
          document.body.appendChild(a)
 | 
			
		||||
          a.click()
 | 
			
		||||
          document.body.removeChild(a)
 | 
			
		||||
        }
 | 
			
		||||
        // const fileName = `${+new Date()}.xlsx`
 | 
			
		||||
        // const blob = new Blob([res], { type: 'application/vnd.ms-excel;charset=utf-8' })
 | 
			
		||||
        // if (navigator.msSaveBlob) {
 | 
			
		||||
@@ -207,6 +223,7 @@ export default {
 | 
			
		||||
        //   link.click()
 | 
			
		||||
        //   URL.revokeObjectURL(link.href)
 | 
			
		||||
        // }
 | 
			
		||||
        this.getList()
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
    // 新增 / 修改
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
 * @Author: fzq
 | 
			
		||||
 * @Date: 2022-03-06 17:06:51
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-06 17:10:16
 | 
			
		||||
 * @LastEditTime: 2022-03-07 10:35:29
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-form :inline="true" @keyup.enter.native="getDataList()">
 | 
			
		||||
@@ -14,7 +14,7 @@
 | 
			
		||||
    <el-form-item>
 | 
			
		||||
      <el-button type="primary" @click="getDataList()">{{ 'btn.search' | i18nFilter }}</el-button>
 | 
			
		||||
      <el-button v-if="showAdd" type="primary" @click="add()">{{ 'btn.add' | i18nFilter }}</el-button>
 | 
			
		||||
      <el-button type="success" @click="downl()">{{ '导出' | i18nFilter }}</el-button>
 | 
			
		||||
      <el-button type="success" @click="downl()">{{ 'btn.export' | i18nFilter }}</el-button>
 | 
			
		||||
    </el-form-item>
 | 
			
		||||
  </el-form>
 | 
			
		||||
</template>
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
 * @Author: fzq
 | 
			
		||||
 * @Date: 2022-03-05 17:45:46
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-06 16:46:54
 | 
			
		||||
 * @LastEditTime: 2022-03-20 09:35:03
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <!-- <el-dialog
 | 
			
		||||
@@ -19,17 +19,33 @@
 | 
			
		||||
      <el-form-item :label="$t('module.report.substrate.substrateCode')" prop="substrateCode">
 | 
			
		||||
        <el-input v-model="dataForm.substrateCode" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.substrateCode')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.report.substrate.location')" prop="location">
 | 
			
		||||
        <el-input v-model="dataForm.location" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.location')])" clearable />
 | 
			
		||||
      <el-form-item :label="$t('module.report.substrate.location')" prop="subPosition">
 | 
			
		||||
        <el-input v-model="dataForm.subPosition" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.location')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.report.substrate.storeTime')" prop="storeTime">
 | 
			
		||||
        <el-input v-model="dataForm.storeTime" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.storeTime')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.report.substrate.substrateStatus')" prop="substrateStatus">
 | 
			
		||||
        <el-input v-model="dataForm.substrateStatus" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.substrateStatus')])" clearable />
 | 
			
		||||
      <el-form-item :label="$t('module.report.substrate.substrateStatus')" prop="status">
 | 
			
		||||
        <el-input v-model="dataForm.status" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.substrateStatus')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.report.substrate.interCode')" prop="interCode">
 | 
			
		||||
      <!-- <el-form-item :label="$t('module.report.substrate.interCode')" prop="interCode">
 | 
			
		||||
        <el-input v-model="dataForm.interCode" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.interCode')])" clearable />
 | 
			
		||||
      </el-form-item> -->
 | 
			
		||||
      <!-- <el-form-item :label="$t('module.report.substrate.subStorageStatus')" prop="subStorageStatus">
 | 
			
		||||
        <el-input v-model="dataForm.subStorageStatus" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.subStorageStatus')])" clearable />
 | 
			
		||||
      </el-form-item> -->
 | 
			
		||||
      <el-form-item :label="$t('module.report.substrate.subStorageStatus')" prop="subStorageStatus">
 | 
			
		||||
        <el-select v-model="dataForm.subStorageStatus" :placeholder="this.$t('module.report.substrate.subStorageStatus')" default>
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in options"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.report.substrate.machineHandID')" prop="machineHandID">
 | 
			
		||||
        <el-input v-model="dataForm.machineHandID" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.machineHandID')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
    </el-form>
 | 
			
		||||
    <span slot="footer" class="dialog-footer">
 | 
			
		||||
@@ -40,7 +56,7 @@
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { updateSubstrate, listSubstrate } from '@/api/report-manage/report'
 | 
			
		||||
import { updateSubstrate } from '@/api/report-manage/report'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  props: {
 | 
			
		||||
@@ -55,19 +71,32 @@ export default {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: '',
 | 
			
		||||
        substrateCode: '',
 | 
			
		||||
        location: '',
 | 
			
		||||
        storeTime: '',
 | 
			
		||||
        substrateStatus: '',
 | 
			
		||||
        code: '',
 | 
			
		||||
        storageBoxId: '',
 | 
			
		||||
        storageCode: '',
 | 
			
		||||
        interCode: ''
 | 
			
		||||
        // substrateCode: '',
 | 
			
		||||
        // locationName: '',
 | 
			
		||||
        // storeTime: '',
 | 
			
		||||
        // substrateStatus: '',
 | 
			
		||||
        // code: '',
 | 
			
		||||
        // storageBoxId: '',
 | 
			
		||||
        // storageCode: '',
 | 
			
		||||
        // interCode: '',
 | 
			
		||||
        // id: '',
 | 
			
		||||
        // current: 1,
 | 
			
		||||
        // size: 10,
 | 
			
		||||
        // locationStorageSubID: ''
 | 
			
		||||
      },
 | 
			
		||||
      options: [
 | 
			
		||||
        {
 | 
			
		||||
          value: 1,
 | 
			
		||||
          label: this.$t('module.report.substrate.load')
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          value: 2,
 | 
			
		||||
          label: this.$t('module.report.substrate.unload')
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      list: {
 | 
			
		||||
        id: '',
 | 
			
		||||
        location: '',
 | 
			
		||||
        locationName: '',
 | 
			
		||||
        storeTime: '',
 | 
			
		||||
        substrateCode: '',
 | 
			
		||||
        substrateStatus: ''
 | 
			
		||||
@@ -75,12 +104,6 @@ export default {
 | 
			
		||||
      dataRule: {
 | 
			
		||||
        substrateCode: [
 | 
			
		||||
          { required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.report.substrate.substrateCode')]), trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        code: [
 | 
			
		||||
          { required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.report.substrate.substrateCode')]), trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        interCode: [
 | 
			
		||||
          { required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.report.substrate.substrateCode')]), trigger: 'blur' }
 | 
			
		||||
        ]
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
@@ -107,34 +130,40 @@ export default {
 | 
			
		||||
    //     })
 | 
			
		||||
    //   })
 | 
			
		||||
    // },
 | 
			
		||||
    init(id) {
 | 
			
		||||
    init(data) {
 | 
			
		||||
      // this.dataForm.id = id || ''
 | 
			
		||||
      this.dataForm.storageBoxId = this.$route.query.id
 | 
			
		||||
      this.dataForm.storageCode = this.$route.query.code
 | 
			
		||||
      // console.log(this.$route.query)
 | 
			
		||||
      // this.dataForm.id = this.$route.query.id
 | 
			
		||||
      // this.dataForm.substrateCode = this.$route.query.substrateCode
 | 
			
		||||
      // this.dataForm.locationStorageSubID = this.$route.query.locationStorageSubID
 | 
			
		||||
      this.dataForm = data
 | 
			
		||||
      this.visible = true
 | 
			
		||||
      listSubstrate(this.dataForm).then(res => {
 | 
			
		||||
        console.log(res.data[0])
 | 
			
		||||
        this.dataForm.id = res.data[0].id
 | 
			
		||||
        this.dataForm.location = res.data[0].location
 | 
			
		||||
        this.dataForm.storeTime = res.data[0].storeTime
 | 
			
		||||
        this.dataForm.substrateCode = res.data[0].substrateCode
 | 
			
		||||
        this.dataForm.substrateStatus = res.data[0].substrateStatus
 | 
			
		||||
        this.dataForm.interCode = res.data[0].interCode
 | 
			
		||||
        // console.log(this.dataForm)
 | 
			
		||||
      })
 | 
			
		||||
      // console.log(this.dataForm)
 | 
			
		||||
      // listSubstrate(this.dataForm).then(res => {
 | 
			
		||||
      //   // console.log(res)
 | 
			
		||||
      //   this.dataForm.id = res.data[0].id
 | 
			
		||||
      //   this.dataForm.location = res.data[0].location
 | 
			
		||||
      //   this.dataForm.storeTime = res.data[0].storeTime
 | 
			
		||||
      //   this.dataForm.substrateCode = res.data[0].substrateCode
 | 
			
		||||
      //   this.dataForm.substrateStatus = res.data[0].substrateStatus
 | 
			
		||||
      //   this.dataForm.interCode = res.data[0].interCode
 | 
			
		||||
      //   // console.log(this.dataForm)
 | 
			
		||||
      // })
 | 
			
		||||
    },
 | 
			
		||||
    // 表单提交
 | 
			
		||||
    dataFormSubmit() {
 | 
			
		||||
      this.$refs['dataForm'].validate((valid) => {
 | 
			
		||||
        if (valid) {
 | 
			
		||||
          const data = {
 | 
			
		||||
            'substrateStatus': this.dataForm.substrateStatus,
 | 
			
		||||
            'status': this.dataForm.status,
 | 
			
		||||
            'storeTime': this.dataForm.storeTime,
 | 
			
		||||
            'id': this.dataForm.id,
 | 
			
		||||
            'substrateCode': this.dataForm.substrateCode,
 | 
			
		||||
            'location': this.dataForm.location,
 | 
			
		||||
            'interCode': this.dataForm.interCode,
 | 
			
		||||
            'storageBoxId': this.dataForm.storageBoxId
 | 
			
		||||
            'subPosition': this.dataForm.subPosition,
 | 
			
		||||
            // 'interCode': this.dataForm.interCode,
 | 
			
		||||
            'storageBoxFid': this.dataForm.storageBoxFid,
 | 
			
		||||
            'machineHandID': this.dataForm.machineHandID,
 | 
			
		||||
            'subStorageStatus': this.dataForm.subStorageStatus
 | 
			
		||||
          }
 | 
			
		||||
          console.log(data)
 | 
			
		||||
          updateSubstrate(data).then(res => {
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
 * @Author: fzq
 | 
			
		||||
 * @Date: 2022-03-05 14:35:07
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-05 16:44:43
 | 
			
		||||
 * @LastEditTime: 2022-03-16 16:13:58
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <span>
 | 
			
		||||
@@ -26,7 +26,8 @@ export default {
 | 
			
		||||
        name: 'viewSubstrate',
 | 
			
		||||
        query: {
 | 
			
		||||
          id: this.injectData.id,
 | 
			
		||||
          code: this.injectData.code
 | 
			
		||||
          code: this.injectData.code,
 | 
			
		||||
          locationStorageSubID: this.injectData.locationStorageSubID
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
 * @Author: fzq
 | 
			
		||||
 * @Date: 2022-03-05 15:55:45
 | 
			
		||||
 * @LastEditors: fzq
 | 
			
		||||
 * @LastEditTime: 2022-03-05 19:44:47
 | 
			
		||||
 * @LastEditTime: 2022-03-20 09:35:05
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
@@ -12,7 +12,7 @@
 | 
			
		||||
      <el-button type="success" @click="goback()">{{ 'btn.back' | i18nFilter }}</el-button>
 | 
			
		||||
      <el-button type="primary" @click="addNew()">{{ 'btn.add' | i18nFilter }}</el-button>
 | 
			
		||||
    </div> -->
 | 
			
		||||
    <div style="title">存储箱号:{{ num }}
 | 
			
		||||
    <div style="title">{{ storageCode }}:{{ num }}
 | 
			
		||||
      <el-button type="success" style="back" @click="goback()">{{ 'btn.back' | i18nFilter }}</el-button>
 | 
			
		||||
    </div>
 | 
			
		||||
    <base-table
 | 
			
		||||
@@ -29,7 +29,7 @@
 | 
			
		||||
        @clickBtn="handleClick"
 | 
			
		||||
      />
 | 
			
		||||
    </base-table>
 | 
			
		||||
    <edit-substrate v-if="addOrUpdateVisible" :id="listQuery.id" ref="addOrUpdate" @refreshDataList="getList" />
 | 
			
		||||
    <edit-substrate v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
@@ -71,7 +71,7 @@ const tableProps = [
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'location',
 | 
			
		||||
    prop: 'subPosition',
 | 
			
		||||
    label: i18n.t('module.report.substrate.location'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
@@ -81,9 +81,19 @@ const tableProps = [
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'substrateStatus',
 | 
			
		||||
    prop: 'status',
 | 
			
		||||
    label: i18n.t('module.report.substrate.substrateStatus'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'subStorageStatusName',
 | 
			
		||||
    label: i18n.t('module.report.substrate.subStorageStatus'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'machineHandID',
 | 
			
		||||
    label: i18n.t('module.report.substrate.machineHandID'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
@@ -104,6 +114,7 @@ export default {
 | 
			
		||||
    return {
 | 
			
		||||
      addOrUpdateVisible: false,
 | 
			
		||||
      num: '',
 | 
			
		||||
      storageCode: this.$t('module.basicData.visual.storageCode'),
 | 
			
		||||
      tableBtn,
 | 
			
		||||
      trueWidth: 200,
 | 
			
		||||
      tableProps,
 | 
			
		||||
@@ -112,12 +123,17 @@ export default {
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 10,
 | 
			
		||||
        substrateCode: ''
 | 
			
		||||
      }
 | 
			
		||||
        locationStorageSubID: ''
 | 
			
		||||
        // storageBoxCode: '',
 | 
			
		||||
        // storageBoxId: ''
 | 
			
		||||
      },
 | 
			
		||||
      count: 0
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.listQuery.substrateCode = this.$route.query.code
 | 
			
		||||
    this.listQuery.storageBoxCode = this.$route.query.code
 | 
			
		||||
    // this.listQuery.storageBoxId = this.$route.query.id
 | 
			
		||||
    this.listQuery.locationStorageSubID = this.$route.query.locationStorageSubID
 | 
			
		||||
    this.getList()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
@@ -128,7 +144,7 @@ export default {
 | 
			
		||||
          cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'),
 | 
			
		||||
          type: 'warning'
 | 
			
		||||
        }).then(() => {
 | 
			
		||||
        //   console.log(raw.data)
 | 
			
		||||
          // console.log(raw.data)
 | 
			
		||||
          deleSubstrate(raw.data).then(response => {
 | 
			
		||||
            this.$message({
 | 
			
		||||
              message: this.$t('module.basicData.visual.success'),
 | 
			
		||||
@@ -141,17 +157,27 @@ export default {
 | 
			
		||||
          })
 | 
			
		||||
        }).catch(() => {})
 | 
			
		||||
      } else {
 | 
			
		||||
        this.addNew(raw.data.id)
 | 
			
		||||
        // this.count = raw.data._pageIndex
 | 
			
		||||
        // console.log(this.count)
 | 
			
		||||
        this.addNew(raw.data)
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    getList() {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      this.num = this.listQuery.substrateCode
 | 
			
		||||
      this.num = this.listQuery.storageBoxCode
 | 
			
		||||
      this.listQuery.code = this.$route.query.code
 | 
			
		||||
      console.log(this.listQuery)
 | 
			
		||||
      // console.log(this.listQuery)
 | 
			
		||||
      listSubstrate(this.listQuery).then(response => {
 | 
			
		||||
        // console.log(response)
 | 
			
		||||
        if (response.data) {
 | 
			
		||||
          this.list = response.data
 | 
			
		||||
          for (var x = 0; x < this.list.length; x++) {
 | 
			
		||||
            if (this.list[x].subStorageStatus === 1) {
 | 
			
		||||
              this.list[x].subStorageStatusName = this.$t('module.report.substrate.load')
 | 
			
		||||
            } else if (this.list[x].subStorageStatus === 2) {
 | 
			
		||||
              this.list[x].subStorageStatusName = this.$t('module.report.substrate.unload')
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
          console.log(this.list)
 | 
			
		||||
        } else {
 | 
			
		||||
          this.list.splice(0, this.list.length)
 | 
			
		||||
 
 | 
			
		||||
@@ -46,9 +46,9 @@ module.exports = {
 | 
			
		||||
    // 这里写入需要代理的api和对应的目标地址
 | 
			
		||||
    proxy: {
 | 
			
		||||
      '/api': {
 | 
			
		||||
        target: 'http://localhost:8080',
 | 
			
		||||
        // target: 'http://localhost:8080',
 | 
			
		||||
        // target: 'http://192.168.0.148:8080',
 | 
			
		||||
        // target: 'http://a.wms.picaiba.com/api',
 | 
			
		||||
        target: 'http://a.wms.picaiba.com/api',
 | 
			
		||||
        // target: 'http://192.168.0.127:8080',
 | 
			
		||||
        // target: 'http://192.168.0.165:8080',
 | 
			
		||||
        // target: 'http://192.168.43.105:8080',
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user