Compare commits
	
		
			15 Commits
		
	
	
		
			9673c1ba30
			...
			d47343af69
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					d47343af69 | ||
| 
						 | 
					b800893ea5 | ||
| f3f1c972b4 | |||
| fb496d8a97 | |||
| 
						 | 
					aa94abd681 | ||
| 2455f83b74 | |||
| 9006efdb67 | |||
| 
						 | 
					ce4bf752f0 | ||
| 
						 | 
					16610e1390 | ||
| 8f01c92374 | |||
| d07e209936 | |||
| 975d14c886 | |||
| b0f0582e51 | |||
| 602af58f2d | |||
| 7bc184c9c7 | 
@@ -96,7 +96,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",
 | 
			
		||||
 
 | 
			
		||||
@@ -2,14 +2,14 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:00:14
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-01-27 16:42:27
 | 
			
		||||
 * @LastEditTime: 2022-01-11 16:16:07
 | 
			
		||||
 * @Description:
 | 
			
		||||
 */
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
 | 
			
		||||
export function areaList(data) { // 获取缓存区区域信息列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/area/page',
 | 
			
		||||
    url: '/api/wms/area/shelf',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -17,7 +17,7 @@ export function areaList(data) { // 获取缓存区区域信息列表
 | 
			
		||||
 | 
			
		||||
export function areaDetail(id) { // 获取缓存区区域信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/area/get',
 | 
			
		||||
    url: '/api/wms/area/get',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
@@ -25,7 +25,7 @@ export function areaDetail(id) { // 获取缓存区区域信息单条数据
 | 
			
		||||
 | 
			
		||||
export function areaUpdate(data) { // 更新缓存区区域信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/area/update',
 | 
			
		||||
    url: '/api/wms/area/update',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -33,7 +33,7 @@ export function areaUpdate(data) { // 更新缓存区区域信息单条数据
 | 
			
		||||
 | 
			
		||||
export function areaAdd(data) { // 新增缓存区区域信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/area/add',
 | 
			
		||||
    url: '/api/wms/area/add',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -41,14 +41,14 @@ export function areaAdd(data) { // 新增缓存区区域信息单条数据
 | 
			
		||||
 | 
			
		||||
export function areaCode() { // 获取缓存区区域信息code
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/area/get-code',
 | 
			
		||||
    url: '/api/wms/area/getCode',
 | 
			
		||||
    method: 'post'
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function areaDelete(id) { // 删除缓存区区域信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/area/delete',
 | 
			
		||||
    url: '/api/wms/area/delete',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
 
 | 
			
		||||
@@ -2,14 +2,14 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:00:14
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-01-20 15:31:32
 | 
			
		||||
 * @LastEditTime: 2022-01-11 15:50:42
 | 
			
		||||
 * @Description:
 | 
			
		||||
 */
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
 | 
			
		||||
export function cacheList(data) { // 获取缓存区信息列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/cache/page',
 | 
			
		||||
    url: '/api/wms/area/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -17,7 +17,7 @@ export function cacheList(data) { // 获取缓存区信息列表
 | 
			
		||||
 | 
			
		||||
export function cacheDetail(id) { // 获取缓存区信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/cache/get',
 | 
			
		||||
    url: '/api/wms/area/getById',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
@@ -25,7 +25,7 @@ export function cacheDetail(id) { // 获取缓存区信息单条数据
 | 
			
		||||
 | 
			
		||||
export function cacheUpdate(data) { // 更新缓存区信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/cache/update',
 | 
			
		||||
    url: '/api/wms/area/update',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -33,7 +33,7 @@ export function cacheUpdate(data) { // 更新缓存区信息单条数据
 | 
			
		||||
 | 
			
		||||
export function cacheAdd(data) { // 新增缓存区信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/cache/add',
 | 
			
		||||
    url: '/api/wms/area/add',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -41,14 +41,14 @@ export function cacheAdd(data) { // 新增缓存区信息单条数据
 | 
			
		||||
 | 
			
		||||
export function cacheCode() { // 获取缓存区信息code
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/cache/get-code',
 | 
			
		||||
    url: '/api/wms/area/getCode',
 | 
			
		||||
    method: 'post'
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function cacheDelete(id) { // 删除缓存区信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/cache/delete',
 | 
			
		||||
    url: '/api/wms/area/delete',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
 
 | 
			
		||||
@@ -2,14 +2,14 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:00:14
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-07-21 14:29:10
 | 
			
		||||
 * @LastEditTime: 2022-01-11 16:43:22
 | 
			
		||||
 * @Description:
 | 
			
		||||
 */
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
 | 
			
		||||
export function storageBoxList(data) { // 获取存储箱列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/storage-tank/page',
 | 
			
		||||
    url: '/api/wms/storagebox/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -17,7 +17,7 @@ export function storageBoxList(data) { // 获取存储箱列表
 | 
			
		||||
 | 
			
		||||
export function storageBoxDetail(id) { // 获取存储箱单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/storage-tank/get',
 | 
			
		||||
    url: '/api/wms/storagebox/getById',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
@@ -25,7 +25,7 @@ export function storageBoxDetail(id) { // 获取存储箱单条数据
 | 
			
		||||
 | 
			
		||||
export function storageBoxUpdate(data) { // 更新存储箱单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/storage-tank/update',
 | 
			
		||||
    url: '/api/wms/storagebox/update',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -33,7 +33,7 @@ export function storageBoxUpdate(data) { // 更新存储箱单条数据
 | 
			
		||||
 | 
			
		||||
export function storageBoxAdd(data) { // 新增存储箱单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/storage-tank/add',
 | 
			
		||||
    url: '/api/wms/storagebox/add',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -41,14 +41,14 @@ export function storageBoxAdd(data) { // 新增存储箱单条数据
 | 
			
		||||
 | 
			
		||||
export function storageBoxCode() { // 获取存储箱code
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/storage-tank/get-code',
 | 
			
		||||
    url: '/api/wms/storagebox/getCode',
 | 
			
		||||
    method: 'post'
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function storageBoxDelete(id) { // 删除存储箱单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/storage-tank/delete',
 | 
			
		||||
    url: '/api/wms/storagebox/delete',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
@@ -56,14 +56,14 @@ export function storageBoxDelete(id) { // 删除存储箱单条数据
 | 
			
		||||
 | 
			
		||||
export function PositionDetailInfoAdd(data) { // 新增存储箱地址单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/storage-tank-site/add',
 | 
			
		||||
    url: '/api/wms/storagebox/add',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
export function PositionDetailInfoList(data) { // 获取存储箱地址列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/storage-tank-site/page',
 | 
			
		||||
    url: '/api/wms/storagebox-site/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
 
 | 
			
		||||
@@ -2,14 +2,14 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:00:14
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-03-12 09:40:01
 | 
			
		||||
 * @LastEditTime: 2022-01-10 17:00:16
 | 
			
		||||
 * @Description:
 | 
			
		||||
 */
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
 | 
			
		||||
export function equipmentInfoList(data) { // 获取设备信息列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/equipment/page',
 | 
			
		||||
    url: '/api/wms/equipment/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -17,7 +17,7 @@ export function equipmentInfoList(data) { // 获取设备信息列表
 | 
			
		||||
 | 
			
		||||
export function equipmentInfoDetail(id) { // 获取设备信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/equipment/get',
 | 
			
		||||
    url: '/api/wms/equipment/get',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
@@ -25,7 +25,7 @@ export function equipmentInfoDetail(id) { // 获取设备信息单条数据
 | 
			
		||||
 | 
			
		||||
export function equipmentInfoUpdate(data) { // 更新设备信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/equipment/update',
 | 
			
		||||
    url: '/api/wms/equipment/update',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -33,7 +33,7 @@ export function equipmentInfoUpdate(data) { // 更新设备信息单条数据
 | 
			
		||||
 | 
			
		||||
export function equipmentInfoAdd(data) { // 新增设备信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/equipment/add',
 | 
			
		||||
    url: '/api/wms/equipment/add',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -41,14 +41,14 @@ export function equipmentInfoAdd(data) { // 新增设备信息单条数据
 | 
			
		||||
 | 
			
		||||
export function equipmentInfoCode() { // 获取设备信息code
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/equipment/get-code',
 | 
			
		||||
    url: '/api/wms/equipment/getCode',
 | 
			
		||||
    method: 'post'
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function equipmentInfoDelete(id) { // 删除设备信息单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/equipment/delete',
 | 
			
		||||
    url: '/api/wms/equipment/delete',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
@@ -56,7 +56,7 @@ export function equipmentInfoDelete(id) { // 删除设备信息单条数据
 | 
			
		||||
 | 
			
		||||
export function equipmentInfoFileAdd(data) { // 设备信息上传
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/equipment-file/update-file',
 | 
			
		||||
    url: '/api/wms/equipment-file/update-file',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
@@ -64,7 +64,7 @@ export function equipmentInfoFileAdd(data) { // 设备信息上传
 | 
			
		||||
 | 
			
		||||
export function getEquipmentInfoFile(data) { // 设备信息下载
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/basic/equipment-file/get-by-param',
 | 
			
		||||
    url: '/api/wms/equipment-file/get-by-param',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										46
									
								
								src/api/basicData/Warehouse/HistoricalTask.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								src/api/basicData/Warehouse/HistoricalTask.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,46 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:00:14
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-14 15:29:26
 | 
			
		||||
 * @Description:
 | 
			
		||||
 */
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
 | 
			
		||||
export function HistoricalTaskList(data) { // 获取任务列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/car/task/execution/info/his/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function HistoricalTaskDetail(id) { // 获取任务单条数据
 | 
			
		||||
  const data = {
 | 
			
		||||
    'id': id
 | 
			
		||||
  }
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/car/task/execution/info/his/get',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function CurrentTaskList(data) { // 获取任务列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/car/task/execution/info/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function CurrentTaskDetail(id) { // 获取任务单条数据
 | 
			
		||||
  const data = {
 | 
			
		||||
    'id': id
 | 
			
		||||
  }
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/car/task/execution/info/get',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										86
									
								
								src/api/basicData/Warehouse/StorageBoxInfo.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										86
									
								
								src/api/basicData/Warehouse/StorageBoxInfo.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,86 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:00:14
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 13:59:54
 | 
			
		||||
 * @Description:
 | 
			
		||||
 */
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
 | 
			
		||||
export function StorageBoxInfoList(data) { // 获取存储箱使用情况
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/storage/box/circ/info/his/page/by/code',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function StorageBoxInfoDetail(id) { // 获取存储箱单条数据
 | 
			
		||||
  const data = {
 | 
			
		||||
    'id': id
 | 
			
		||||
  }
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/storage/box/get',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function StorageBoxRackList(data) { // 获取存储箱上架列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/storage/box/circ/info/page/for/bind',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function locationList(data) { // 获取库位列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/location/list',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function StorageBoxRackDetail(id) { // 获取存储箱上架单条数据
 | 
			
		||||
  const data = {
 | 
			
		||||
    'id': id
 | 
			
		||||
  }
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/storage/box/circ/info/get',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function StorageBoxRackUpdate(data) { // 更新存储箱上架单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/storage/box/circ/info/update',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function StorageBoxRackAdd(data) { // 新增存储箱上架单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/storage/box/circ/info/add',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function StorageBoxRackCode(data) { // 获取存储箱上架code
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/storagebox/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function StorageBoxRackDelete(id) { // 删除存储箱上架单条数据
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/storage/box/circ/info/delete',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data: { id }
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										47
									
								
								src/api/orderManage/00A.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								src/api/orderManage/00A.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,47 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2022-01-17 14:55:09
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 14:59:07
 | 
			
		||||
 * @Description:
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
import request from '@/utils/request'
 | 
			
		||||
 | 
			
		||||
export function ProcessInfoList(data) { // 获取工单工艺列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/work/order/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function ProcessInfoDetail(id) { // 获取工单工艺单条数据
 | 
			
		||||
  const data = {
 | 
			
		||||
    'id': id
 | 
			
		||||
  }
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/work/order/get',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function ExecutionInfoList(data) { // 获取工单执行列表
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/work/order/execute/page',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function ExecutionInfoDetail(id) { // 获取工单执行单条数据
 | 
			
		||||
  const data = {
 | 
			
		||||
    'id': id
 | 
			
		||||
  }
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/wms/work/order/execute/get',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Date: 2020-12-14 09:07:03
 | 
			
		||||
 * @LastEditors: Please set LastEditors
 | 
			
		||||
 * @LastEditTime: 2021-12-06 15:14:46
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-11 15:45:54
 | 
			
		||||
 * @FilePath: \basic-admin\src\api\user.js
 | 
			
		||||
 * @Description: 用户管理 & 登录用户的相关api接口定义
 | 
			
		||||
 */
 | 
			
		||||
@@ -27,13 +27,13 @@ export function logout() {
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
// 获取当前登录的用户信息
 | 
			
		||||
// export function getUserInfo(data) {
 | 
			
		||||
//   return request({
 | 
			
		||||
//     url: '/passport/getLoginUser',
 | 
			
		||||
//     method: 'post',
 | 
			
		||||
//     data
 | 
			
		||||
//   })
 | 
			
		||||
// }
 | 
			
		||||
export function getUserInfo(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: '/api/passport/getLoginUser',
 | 
			
		||||
    method: 'post',
 | 
			
		||||
    data
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// 修改当前用户密码
 | 
			
		||||
export function editUserPW(data) {
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Date: 2020-12-29 16:49:28
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-07-21 15:56:54
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:31:40
 | 
			
		||||
 * @FilePath: \basic-admin\src\filters\basicData\index.js
 | 
			
		||||
 * @Description:
 | 
			
		||||
 */
 | 
			
		||||
@@ -63,9 +63,9 @@ const table = {
 | 
			
		||||
    '1': i18n.t('basicDataFilter.enableState.enable')
 | 
			
		||||
  },
 | 
			
		||||
  storage: {
 | 
			
		||||
    '0': i18n.t('basicDataFilter.enableState.normal'),
 | 
			
		||||
    '1': i18n.t('basicDataFilter.enableState.repairing'),
 | 
			
		||||
    '2': i18n.t('basicDataFilter.enableState.scrap')
 | 
			
		||||
    '0': i18n.t('basicDataFilter.storage.normal'),
 | 
			
		||||
    '1': i18n.t('basicDataFilter.storage.repairing'),
 | 
			
		||||
    '2': i18n.t('basicDataFilter.storage.scrap')
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										33
									
								
								src/filters/basicData/warehouse.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								src/filters/basicData/warehouse.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,33 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2022-01-17 11:30:41
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 11:33:29
 | 
			
		||||
 * @Description:
 | 
			
		||||
 */
 | 
			
		||||
/*
 | 
			
		||||
 * @Date: 2020-12-29 16:49:28
 | 
			
		||||
 * @LastEditors: gtz
 | 
			
		||||
 * @LastEditTime: 2021-04-13 13:49:51
 | 
			
		||||
 * @FilePath: \basic-admin\src\filters\DataDict\index.js
 | 
			
		||||
 * @Description: 部分常量的数据字典定义
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
import i18n from '@/lang'
 | 
			
		||||
 | 
			
		||||
const table = {
 | 
			
		||||
  yesOrNo: {
 | 
			
		||||
    '0': i18n.t('baseDict.yesOrNo.no'),
 | 
			
		||||
    '1': i18n.t('baseDict.yesOrNo.yes')
 | 
			
		||||
  },
 | 
			
		||||
  enableState: {
 | 
			
		||||
    '0': i18n.t('basicDataFilter.enableState.disable'),
 | 
			
		||||
    '1': i18n.t('basicDataFilter.enableState.enable')
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export default function(dictTable) {
 | 
			
		||||
  return function(val) {
 | 
			
		||||
    return table?.[dictTable]?.[val]
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@@ -548,8 +548,8 @@ export default {
 | 
			
		||||
        zh: '缓存区信息',
 | 
			
		||||
        en: 'Ports Info',
 | 
			
		||||
        ports: {
 | 
			
		||||
          zh: '仓库',
 | 
			
		||||
          en: 'Warehouse'
 | 
			
		||||
          zh: '缓存区信息',
 | 
			
		||||
          en: 'Ports Info'
 | 
			
		||||
        },
 | 
			
		||||
        area: {
 | 
			
		||||
          zh: '区域',
 | 
			
		||||
@@ -705,6 +705,26 @@ export default {
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    Warehouse: {
 | 
			
		||||
      zh: '仓库管理',
 | 
			
		||||
      en: 'Warehouse Manager',
 | 
			
		||||
      StorageBoxInfo: {
 | 
			
		||||
        zh: '存储箱信息',
 | 
			
		||||
        en: 'Storage Box Info'
 | 
			
		||||
      },
 | 
			
		||||
      StorageBoxRack: {
 | 
			
		||||
        zh: '存储箱上架',
 | 
			
		||||
        en: 'Storage Box Rack'
 | 
			
		||||
      },
 | 
			
		||||
      CurrentTask: {
 | 
			
		||||
        zh: '当前任务',
 | 
			
		||||
        en: 'Current Task'
 | 
			
		||||
      },
 | 
			
		||||
      HistoricalTask: {
 | 
			
		||||
        zh: '历史任务',
 | 
			
		||||
        en: 'Historical Task'
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    order: {
 | 
			
		||||
      zh: '工单管理',
 | 
			
		||||
      en: 'Order Manager',
 | 
			
		||||
@@ -712,6 +732,14 @@ export default {
 | 
			
		||||
        zh: 'Power Classification',
 | 
			
		||||
        en: 'Power Classification'
 | 
			
		||||
      },
 | 
			
		||||
      ProcessInfo: {
 | 
			
		||||
        zh: '工艺信息',
 | 
			
		||||
        en: 'Process Info'
 | 
			
		||||
      },
 | 
			
		||||
      ExecutionInfo: {
 | 
			
		||||
        zh: '执行信息',
 | 
			
		||||
        en: 'Execution Info'
 | 
			
		||||
      },
 | 
			
		||||
      consumption: {
 | 
			
		||||
        zh: '工单能耗',
 | 
			
		||||
        en: 'Energy consumption of the repair order'
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-03-04 16:13:51
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-07-21 09:59:34
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:12:18
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
export default {
 | 
			
		||||
@@ -130,9 +130,11 @@ export default {
 | 
			
		||||
    CacheCode: 'Ports Code',
 | 
			
		||||
    CacheName: 'Ports Name',
 | 
			
		||||
    StockNumber: 'Stock Number',
 | 
			
		||||
    AreaNumber: 'Area Number',
 | 
			
		||||
    AreaCode: 'Area Code',
 | 
			
		||||
    AreaName: 'Area Name',
 | 
			
		||||
    AreaNumber: 'Shelf Number',
 | 
			
		||||
    AreaCode: 'Shelf Code',
 | 
			
		||||
    AreaName: 'Shelf Name',
 | 
			
		||||
    rowNum: 'Row Num',
 | 
			
		||||
    columnNum: 'Column Num',
 | 
			
		||||
    Shelf: 'Shelf',
 | 
			
		||||
    ManageShelves: 'Manage Shelves',
 | 
			
		||||
    ShelfCode: 'Shelf Code',
 | 
			
		||||
@@ -145,7 +147,7 @@ export default {
 | 
			
		||||
    LocationName: 'Location Name',
 | 
			
		||||
    anotherName: 'Another Name',
 | 
			
		||||
    place: 'Place',
 | 
			
		||||
    addCacheArea: 'add Ports Area'
 | 
			
		||||
    addCacheArea: 'add Ports Shelf'
 | 
			
		||||
  },
 | 
			
		||||
  storageBox: {
 | 
			
		||||
    name: 'Name',
 | 
			
		||||
@@ -272,5 +274,46 @@ export default {
 | 
			
		||||
  EquipmentScrapGrade: {
 | 
			
		||||
    keyword: 'name',
 | 
			
		||||
    ScrapGrade: 'Scrap Grade'
 | 
			
		||||
  },
 | 
			
		||||
  Warehouse: {
 | 
			
		||||
    Code: 'Code',
 | 
			
		||||
    TaskType: 'Task Type',
 | 
			
		||||
    TaskStatus: 'Task Status',
 | 
			
		||||
    TaskSource: 'Task Source',
 | 
			
		||||
    VehicleName: 'Vehicle Name',
 | 
			
		||||
    TimeSlot: 'Time Slot',
 | 
			
		||||
    ExecutionTime: 'Execution Time',
 | 
			
		||||
    BoxStatus: 'Box Status',
 | 
			
		||||
    BoxNumber: 'Box Number',
 | 
			
		||||
    PreviousOperation: 'Previous Operation',
 | 
			
		||||
    NextOperation: 'Next Operation',
 | 
			
		||||
    CompletionTime: 'Completion Time',
 | 
			
		||||
    StartLocation: 'Start Location',
 | 
			
		||||
    FullBoxStartLocation: 'FullBox Start Location',
 | 
			
		||||
    TaskLocation: 'Task Location',
 | 
			
		||||
    TargetLocation: 'Target Location',
 | 
			
		||||
    OrderName: 'Order Name',
 | 
			
		||||
    OrderCode: 'Order Code',
 | 
			
		||||
    IssueOrderTime: 'Issue Order Time',
 | 
			
		||||
    TotalProcessName: 'Total Process Name',
 | 
			
		||||
    Priority: 'Priority',
 | 
			
		||||
    OrderStatus: 'Order Status',
 | 
			
		||||
    ProcessOrNot: 'Process Or Not',
 | 
			
		||||
    Unit: 'Unit',
 | 
			
		||||
    RelateProcess: 'Relate Process',
 | 
			
		||||
    PlanProcessQuantity: 'Plan Process Quantity',
 | 
			
		||||
    SubProcessName: 'Sub Process Name',
 | 
			
		||||
    TaskBoxNumber: 'Task Box Number',
 | 
			
		||||
    FullBoxNumber: 'Full Box Number',
 | 
			
		||||
    EmptyFork: 'Empty Fork',
 | 
			
		||||
    TaskBoxFork: 'Task Box Fork',
 | 
			
		||||
    EmptyHandlingTime: 'Empty Handling Time',
 | 
			
		||||
    TaskBoxHandlingTime: 'TaskBox Handling Time',
 | 
			
		||||
    StorageBoxNumber: 'Storage Box Number',
 | 
			
		||||
    CurrentLocation: 'Current Location',
 | 
			
		||||
    IsEmpty: 'Is Empty',
 | 
			
		||||
    IsEmptyBox: 'Is Empty Box',
 | 
			
		||||
    LocationName: 'Location Name',
 | 
			
		||||
    LocationCode: 'Location Code'
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: gtz
 | 
			
		||||
 * @Date: 2021-03-04 16:13:51
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-07-21 09:58:59
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:12:12
 | 
			
		||||
 * @Description: file content
 | 
			
		||||
 */
 | 
			
		||||
export default {
 | 
			
		||||
@@ -130,22 +130,24 @@ export default {
 | 
			
		||||
    CacheCode: '缓存区编码',
 | 
			
		||||
    CacheName: '缓存区名称',
 | 
			
		||||
    StockNumber: '库位数量',
 | 
			
		||||
    AreaNumber: '区域数量',
 | 
			
		||||
    AreaCode: '区域编码',
 | 
			
		||||
    AreaName: '区域名称',
 | 
			
		||||
    AreaNumber: '货架数量',
 | 
			
		||||
    AreaCode: '货架编码',
 | 
			
		||||
    AreaName: '货架名称',
 | 
			
		||||
    rowNum: '行数',
 | 
			
		||||
    columnNum: '列数',
 | 
			
		||||
    Shelf: '货架',
 | 
			
		||||
    ManageShelves: '管理货架',
 | 
			
		||||
    ShelfCode: '货架编码',
 | 
			
		||||
    ShelfName: '货架名称',
 | 
			
		||||
    ShelfNumber: '货架数量',
 | 
			
		||||
    StorageQuantity: '存储数量',
 | 
			
		||||
    Location: '货位',
 | 
			
		||||
    Location: '库位',
 | 
			
		||||
    ManageLocation: '管理货位',
 | 
			
		||||
    LocationCode: '库位编码',
 | 
			
		||||
    LocationName: '库位名称',
 | 
			
		||||
    anotherName: '别名',
 | 
			
		||||
    place: '位置',
 | 
			
		||||
    addCacheArea: '添加区域'
 | 
			
		||||
    addCacheArea: '添加货架'
 | 
			
		||||
  },
 | 
			
		||||
  storageBox: {
 | 
			
		||||
    name: '名称',
 | 
			
		||||
@@ -272,5 +274,47 @@ export default {
 | 
			
		||||
  EquipmentScrapGrade: {
 | 
			
		||||
    keyword: '名称',
 | 
			
		||||
    ScrapGrade: '废片等级'
 | 
			
		||||
  },
 | 
			
		||||
  Warehouse: {
 | 
			
		||||
    Code: '编码',
 | 
			
		||||
    TaskType: '任务类型',
 | 
			
		||||
    TaskStatus: '任务状态',
 | 
			
		||||
    TaskSource: '任务来源',
 | 
			
		||||
    VehicleName: '车辆名',
 | 
			
		||||
    TimeSlot: '时间段',
 | 
			
		||||
    ExecutionTime: '执行时间',
 | 
			
		||||
    BoxStatus: '箱状态',
 | 
			
		||||
    BoxNumber: '箱号',
 | 
			
		||||
    PreviousOperation: '上一个工序',
 | 
			
		||||
    NextOperation: '下一个工序',
 | 
			
		||||
    CompletionTime: '完成时间',
 | 
			
		||||
    StartLocation: '开始库位',
 | 
			
		||||
    FullBoxStartLocation: '空箱开始库位',
 | 
			
		||||
    TaskLocation: '任务库位',
 | 
			
		||||
    TargetLocation: '目标库位',
 | 
			
		||||
    OrderName: '工单名',
 | 
			
		||||
    OrderCode: '工单编码',
 | 
			
		||||
    IssueOrderTime: '下发工单时间',
 | 
			
		||||
    TotalProcessName: '总工艺名称',
 | 
			
		||||
    Priority: '优先级',
 | 
			
		||||
    OrderStatus: '工单状态',
 | 
			
		||||
    ProcessOrNot: '是否关联工艺',
 | 
			
		||||
    Unit: '单位',
 | 
			
		||||
    RelateProcess: '关联工艺',
 | 
			
		||||
    PlanProcessQuantity: '计划加工数量',
 | 
			
		||||
    SubProcessName: '分工艺',
 | 
			
		||||
    TaskBoxNumber: '任务箱号',
 | 
			
		||||
    FullBoxNumber: '空箱号',
 | 
			
		||||
    EmptyFork: '空箱货叉',
 | 
			
		||||
    TaskBoxFork: '任务箱货叉',
 | 
			
		||||
    EmptyHandlingTime: '搬运空箱时间',
 | 
			
		||||
    TaskBoxHandlingTime: '搬运任务箱时间',
 | 
			
		||||
    StorageBoxNumber: '存储箱号',
 | 
			
		||||
    CurrentLocation: '当前库位',
 | 
			
		||||
    IsEmpty: '是否有基板',
 | 
			
		||||
    IsEmptyBox: '是否空箱',
 | 
			
		||||
    LocationName: '库位名',
 | 
			
		||||
    LocationCode: '库位编码'
 | 
			
		||||
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -15,11 +15,6 @@
 | 
			
		||||
        <svg-icon class="item-icon" icon-class="home" />
 | 
			
		||||
        {{ 'navbar.homepage' | i18nFilter }}
 | 
			
		||||
      </div>
 | 
			
		||||
      <div class="right-menu-back">
 | 
			
		||||
        <el-badge :value="alarmList.length" class="item" style="line-height: 0; margin: 0 10px;" @click.native="toAlarm">
 | 
			
		||||
          <svg-icon style="width: 24px; height: 24px" class="item-icon" icon-class="alarm" />
 | 
			
		||||
        </el-badge>
 | 
			
		||||
      </div>
 | 
			
		||||
 | 
			
		||||
      <template>
 | 
			
		||||
        <lang-select class="right-menu-item hover-effect" />
 | 
			
		||||
@@ -27,15 +22,15 @@
 | 
			
		||||
      <div v-if="showhome" class="right-menu-back">
 | 
			
		||||
        <a href="Lodap.zip"><i class="el-icon-download" /></a>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div class="right-menu-back">
 | 
			
		||||
      <!-- <div class="right-menu-back">
 | 
			
		||||
        <i class="el-icon-alarm-clock" />
 | 
			
		||||
        {{ formatTime }}
 | 
			
		||||
      </div>
 | 
			
		||||
      </div> -->
 | 
			
		||||
 | 
			
		||||
      <el-dropdown class="avatar-container right-menu-item hover-effect" trigger="click">
 | 
			
		||||
        <div class="avatar-wrapper">
 | 
			
		||||
          <img :src="require('@/assets/img/head.png')" class="user-avatar">
 | 
			
		||||
          <div class="avatar-username">{{ username }}</div>
 | 
			
		||||
          <!-- <div class="avatar-username">{{ username }}</div> -->
 | 
			
		||||
          <!-- <i class="el-icon-caret-bottom" /> -->
 | 
			
		||||
        </div>
 | 
			
		||||
        <el-dropdown-menu slot="dropdown">
 | 
			
		||||
@@ -71,7 +66,6 @@
 | 
			
		||||
<script>
 | 
			
		||||
import axios from 'axios'
 | 
			
		||||
import { mapGetters } from 'vuex'
 | 
			
		||||
import { alarmInfoList } from '@/api/basicData/AlarmManagement/alarmInfo'
 | 
			
		||||
import Breadcrumb from '@/components/Breadcrumb'
 | 
			
		||||
import Hamburger from '@/components/Hamburger'
 | 
			
		||||
import LangSelect from '@/components/LangSelect'
 | 
			
		||||
@@ -122,16 +116,9 @@ export default {
 | 
			
		||||
      if (val <= 0) {
 | 
			
		||||
        this.logout()
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    $route: function() {
 | 
			
		||||
      this.getAlarm()
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  mounted() {
 | 
			
		||||
    this.getAlarm()
 | 
			
		||||
    logoutInterval = setInterval(() => {
 | 
			
		||||
      this.logoutTime -= 1000
 | 
			
		||||
    }, 1000)
 | 
			
		||||
    addEventListener('click', this.logoutTimeReset)
 | 
			
		||||
    addEventListener('keydown', this.logoutTimeReset)
 | 
			
		||||
    addEventListener('visibilitychange', this.visibilitychangeListener)
 | 
			
		||||
@@ -192,24 +179,6 @@ export default {
 | 
			
		||||
    async toHome() {
 | 
			
		||||
      this.$store.dispatch('app/setChoicepart')
 | 
			
		||||
      this.$router.push('/')
 | 
			
		||||
    },
 | 
			
		||||
    getAlarm() {
 | 
			
		||||
      alarmInfoList({
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 1000,
 | 
			
		||||
        alarmType: '',
 | 
			
		||||
        code: '',
 | 
			
		||||
        alarmGrade: ''
 | 
			
		||||
      }).then(response => {
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.alarmList = response.data.records
 | 
			
		||||
        } else {
 | 
			
		||||
          this.alarmList = []
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    toAlarm() {
 | 
			
		||||
      this.$router.push('/AlarmManagement/AlarmInfo')
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -94,414 +94,175 @@ export const constantRoutes = [
 | 
			
		||||
  {
 | 
			
		||||
    path: '/',
 | 
			
		||||
    component: Layout,
 | 
			
		||||
    redirect: '/Ports/ports',
 | 
			
		||||
    redirect: '/ports',
 | 
			
		||||
    name: 'basicData',
 | 
			
		||||
    meta: { title: routerTitle.basicData?.[language] || routerTitle.basicData.en, icon: 'form', iconPart: 'basicData', affix: true, required: true, requireToken: true },
 | 
			
		||||
    children: [
 | 
			
		||||
      {
 | 
			
		||||
        path: '/Ports',
 | 
			
		||||
        component: () => import('@/views/basicData/index'),
 | 
			
		||||
        name: 'Ports',
 | 
			
		||||
        meta: { title: routerTitle.basicData.ports?.[language] || routerTitle.basicData.ports.en, icon: 'form', affix: true, required: true, requireToken: true },
 | 
			
		||||
        children: [
 | 
			
		||||
          {
 | 
			
		||||
            path: 'ports',
 | 
			
		||||
            component: () => import('@/views/basicData/Cache/cache'),
 | 
			
		||||
            name: 'ports',
 | 
			
		||||
            meta: { title: routerTitle.basicData.ports.ports?.[language] || routerTitle.basicData.ports.ports.en, icon: 'form', affix: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'area',
 | 
			
		||||
            component: () => import('@/views/basicData/Cache/area'),
 | 
			
		||||
            name: 'area',
 | 
			
		||||
            meta: { title: routerTitle.basicData.ports.area?.[language] || routerTitle.basicData.ports.area.en, icon: 'form', affix: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'shelf',
 | 
			
		||||
            component: () => import('@/views/basicData/Cache/shelf'),
 | 
			
		||||
            name: 'shelf',
 | 
			
		||||
            meta: { title: routerTitle.basicData.ports.shelf?.[language] || routerTitle.basicData.ports.shelf.en, icon: 'form', affix: true }
 | 
			
		||||
          }, {
 | 
			
		||||
            path: 'cacheAdd',
 | 
			
		||||
            component: () => import('@/views/basicData/Cache/components/cache-add'),
 | 
			
		||||
            name: 'cacheAdd',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.basicData.ports.cacheAdd?.[language] || routerTitle.basicData.ports.cacheAdd.en, icon: 'form', affix: true }
 | 
			
		||||
          }, {
 | 
			
		||||
            path: 'shelfAdd',
 | 
			
		||||
            component: () => import('@/views/basicData/Cache/components/shelf-add'),
 | 
			
		||||
            name: 'shelfAdd',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.basicData.ports.shelfAdd?.[language] || routerTitle.basicData.ports.shelfAdd.en, icon: 'form', affix: true }
 | 
			
		||||
          }, {
 | 
			
		||||
            path: 'locationAdd',
 | 
			
		||||
            component: () => import('@/views/basicData/Cache/components/location-add'),
 | 
			
		||||
            name: 'locationAdd',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.basicData.ports.locationAdd?.[language] || routerTitle.basicData.ports.locationAdd.en, icon: 'form', affix: true }
 | 
			
		||||
          }, {
 | 
			
		||||
            path: 'storageBox',
 | 
			
		||||
            component: () => import('@/views/basicData/Cache/storageBox'),
 | 
			
		||||
            name: 'storageBox',
 | 
			
		||||
            meta: { title: routerTitle.basicData.ports.storageBox?.[language] || routerTitle.basicData.ports.storageBox.en, icon: 'form', affix: true }
 | 
			
		||||
          }, {
 | 
			
		||||
            path: 'PositionDetailInfo',
 | 
			
		||||
            component: () => import('@/views/basicData/Cache/components/PositionDetailInfo'),
 | 
			
		||||
            name: 'PositionDetailInfo',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.basicData.ports.PositionDetailInfo?.[language] || routerTitle.basicData.ports.PositionDetailInfo.en, icon: 'form', affix: true }
 | 
			
		||||
          }
 | 
			
		||||
        ]
 | 
			
		||||
        path: 'ports',
 | 
			
		||||
        component: () => import('@/views/basicData/Cache/cache'),
 | 
			
		||||
        name: 'ports',
 | 
			
		||||
        meta: { title: routerTitle.basicData.ports.ports?.[language] || routerTitle.basicData.ports.ports.en, icon: 'form', affix: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: '/Equipment',
 | 
			
		||||
        component: () => import('@/views/basicData/index'),
 | 
			
		||||
        name: 'Equipment',
 | 
			
		||||
        meta: { title: routerTitle.basicData.equipment?.[language] || routerTitle.basicData.equipment.en, icon: 'form', affix: true, required: true, requireToken: true },
 | 
			
		||||
        children: [
 | 
			
		||||
          {
 | 
			
		||||
            path: 'equipmentInfo',
 | 
			
		||||
            component: () =>
 | 
			
		||||
        path: 'area',
 | 
			
		||||
        component: () => import('@/views/basicData/Cache/area'),
 | 
			
		||||
        name: 'area',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.basicData.ports.area?.[language] || routerTitle.basicData.ports.area.en, icon: 'form', affix: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: 'shelf',
 | 
			
		||||
        component: () => import('@/views/basicData/Cache/shelf'),
 | 
			
		||||
        name: 'shelf',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.basicData.ports.shelf?.[language] || routerTitle.basicData.ports.shelf.en, icon: 'form', affix: true }
 | 
			
		||||
      }, {
 | 
			
		||||
        path: 'cacheAdd',
 | 
			
		||||
        component: () => import('@/views/basicData/Cache/components/cache-add'),
 | 
			
		||||
        name: 'cacheAdd',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.basicData.ports.cacheAdd?.[language] || routerTitle.basicData.ports.cacheAdd.en, icon: 'form', affix: true }
 | 
			
		||||
      }, {
 | 
			
		||||
        path: 'shelfAdd',
 | 
			
		||||
        component: () => import('@/views/basicData/Cache/components/shelf-add'),
 | 
			
		||||
        name: 'shelfAdd',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.basicData.ports.shelfAdd?.[language] || routerTitle.basicData.ports.shelfAdd.en, icon: 'form', affix: true }
 | 
			
		||||
      }, {
 | 
			
		||||
        path: 'locationAdd',
 | 
			
		||||
        component: () => import('@/views/basicData/Cache/components/location-add'),
 | 
			
		||||
        name: 'locationAdd',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.basicData.ports.locationAdd?.[language] || routerTitle.basicData.ports.locationAdd.en, icon: 'form', affix: true }
 | 
			
		||||
      }, {
 | 
			
		||||
        path: 'storageBox',
 | 
			
		||||
        component: () => import('@/views/basicData/Cache/storageBox'),
 | 
			
		||||
        name: 'storageBox',
 | 
			
		||||
        meta: { title: routerTitle.basicData.ports.storageBox?.[language] || routerTitle.basicData.ports.storageBox.en, icon: 'form', affix: true }
 | 
			
		||||
      }, {
 | 
			
		||||
        path: 'PositionDetailInfo',
 | 
			
		||||
        component: () => import('@/views/basicData/Cache/components/PositionDetailInfo'),
 | 
			
		||||
        name: 'PositionDetailInfo',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.basicData.ports.PositionDetailInfo?.[language] || routerTitle.basicData.ports.PositionDetailInfo.en, icon: 'form', affix: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: 'equipmentInfo',
 | 
			
		||||
        component: () =>
 | 
			
		||||
              import('@/views/basicData/Equipment/equipmentInfo'),
 | 
			
		||||
            name: 'equipmentInfo',
 | 
			
		||||
            meta: { title: routerTitle.basicData.equipment.equipmentInfo?.[language] || routerTitle.basicData.equipment.equipmentInfo.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'equipmentInfoAdd',
 | 
			
		||||
            component: () => import('@/views/basicData/Equipment/components/equipmentInfo-add'),
 | 
			
		||||
            name: 'equipmentInfoAdd',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.basicData.equipment.equipmentInfoAdd?.[language] || routerTitle.basicData.equipment.equipmentInfoAdd.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'equipmentType',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/basicData/Equipment/equipmentType'),
 | 
			
		||||
            name: 'equipmentType',
 | 
			
		||||
            meta: { title: routerTitle.basicData.equipment.equipmentType?.[language] || routerTitle.basicData.equipment.equipmentType.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'EquipmentGroup',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/basicData/Equipment/EquipmentGroup'),
 | 
			
		||||
            name: 'EquipmentGroup',
 | 
			
		||||
            meta: { title: routerTitle.basicData.equipment.EquipmentGroup?.[language] || routerTitle.basicData.equipment.EquipmentGroup.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'equipmentTypeAlarm',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/basicData/Equipment/equipmentTypeAlarm'),
 | 
			
		||||
            name: 'equipmentTypeAlarm',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.basicData.equipment.equipmentTypeAlarm?.[language] || routerTitle.basicData.equipment.equipmentTypeAlarm.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'maintenanceType',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/basicData/Equipment/maintenanceType'),
 | 
			
		||||
            name: 'maintenanceType',
 | 
			
		||||
            meta: { title: routerTitle.basicData.equipment.maintenanceType?.[language] || routerTitle.basicData.equipment.maintenanceType.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'maintenanceCycle',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/basicData/Equipment/maintenanceCycle'),
 | 
			
		||||
            name: 'maintenanceCycle',
 | 
			
		||||
            meta: { title: routerTitle.basicData.equipment.maintenanceCycle?.[language] || routerTitle.basicData.equipment.maintenanceCycle.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: '/equipmentDetectInfo',
 | 
			
		||||
            component: () => import('@/views/basicData/index'),
 | 
			
		||||
            name: 'equipmentDetectInfo',
 | 
			
		||||
            meta: { title: routerTitle.basicData.equipment.equipmentDetectInfo?.[language] || routerTitle.basicData.equipment.equipmentDetectInfo.en, icon: 'form', affix: true, required: true, requireToken: true },
 | 
			
		||||
            children: [
 | 
			
		||||
              {
 | 
			
		||||
                path: 'equipmentDetectSystem',
 | 
			
		||||
                component: () =>
 | 
			
		||||
                  import('@/views/basicData/Equipment/equipmentDetectSystem'),
 | 
			
		||||
                name: 'equipmentDetectSystem',
 | 
			
		||||
                meta: { title: routerTitle.basicData.equipment.equipmentDetectInfo.equipmentDetectSystem?.[language] || routerTitle.basicData.equipment.equipmentDetectInfo.equipmentDetectSystem.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
              },
 | 
			
		||||
              {
 | 
			
		||||
                path: 'equipmentDetectArea',
 | 
			
		||||
                component: () =>
 | 
			
		||||
                  import('@/views/basicData/Equipment/equipmentDetectArea'),
 | 
			
		||||
                name: 'equipmentDetectArea',
 | 
			
		||||
                meta: { title: routerTitle.basicData.equipment.equipmentDetectInfo.equipmentDetectArea?.[language] || routerTitle.basicData.equipment.equipmentDetectInfo.equipmentDetectArea.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
              },
 | 
			
		||||
              {
 | 
			
		||||
                path: 'equipmentDetectAreaAdd',
 | 
			
		||||
                component: () =>
 | 
			
		||||
                  import('@/views/basicData/Equipment/components/equipmentDetectArea-add'),
 | 
			
		||||
                name: 'equipmentDetectAreaAdd',
 | 
			
		||||
                hidden: true,
 | 
			
		||||
                meta: { title: routerTitle.basicData.equipment.equipmentDetectInfo.equipmentDetectArea?.[language] || routerTitle.basicData.equipment.equipmentDetectInfo.equipmentDetectArea.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
              },
 | 
			
		||||
              {
 | 
			
		||||
                path: 'detectSystemSettings',
 | 
			
		||||
                component: () =>
 | 
			
		||||
                  import('@/views/basicData/Equipment/detectSystemSettings'),
 | 
			
		||||
                name: 'detectSystemSettings',
 | 
			
		||||
                meta: { title: routerTitle.basicData.equipment.equipmentDetectInfo.detectSystemSettings?.[language] || routerTitle.basicData.equipment.equipmentDetectInfo.detectSystemSettings.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
              },
 | 
			
		||||
              {
 | 
			
		||||
                path: 'detectSystemSettingsAdd',
 | 
			
		||||
                component: () =>
 | 
			
		||||
                  import('@/views/basicData/Equipment/components/detectSystemSettings-add'),
 | 
			
		||||
                name: 'detectSystemSettingsAdd',
 | 
			
		||||
                hidden: true,
 | 
			
		||||
                meta: { title: routerTitle.basicData.equipment.equipmentDetectInfo.detectSystemSettings?.[language] || routerTitle.basicData.equipment.equipmentDetectInfo.detectSystemSettings.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
              }
 | 
			
		||||
            ]
 | 
			
		||||
          }
 | 
			
		||||
          // {
 | 
			
		||||
          //   path: 'spareParts',
 | 
			
		||||
          //   component: () => import('@/views/basicData/Equipment/spareParts'),
 | 
			
		||||
          //   name: 'spareParts',
 | 
			
		||||
          //   meta: { title: routerTitle.basicData.equipment.spareParts?.[language] || routerTitle.basicData.equipment.spareParts.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          // },
 | 
			
		||||
          // {
 | 
			
		||||
          //   path: 'equipmentLink',
 | 
			
		||||
          //   component: () =>
 | 
			
		||||
          //     import('@/views/basicData/Equipment/equipmentLink'),
 | 
			
		||||
          //   name: 'equipmentLink',
 | 
			
		||||
          //   meta: { title: routerTitle.basicData.equipment.equipmentLink?.[language] || routerTitle.basicData.equipment.equipmentLink.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          // },
 | 
			
		||||
          // {
 | 
			
		||||
          //   path: 'equipmentLinkAdd',
 | 
			
		||||
          //   component: () => import('@/views/basicData/Equipment/components/equipmentLink-add'),
 | 
			
		||||
          //   name: 'equipmentLinkAdd',
 | 
			
		||||
          //   hidden: true,
 | 
			
		||||
          //   meta: { title: routerTitle.basicData.equipment.equipmentLinkAdd?.[language] || routerTitle.basicData.equipment.equipmentInfoAdd.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          // }
 | 
			
		||||
        ]
 | 
			
		||||
        name: 'equipmentInfo',
 | 
			
		||||
        meta: { title: routerTitle.basicData.equipment.equipmentInfo?.[language] || routerTitle.basicData.equipment.equipmentInfo.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: 'equipmentInfoAdd',
 | 
			
		||||
        component: () => import('@/views/basicData/Equipment/components/equipmentInfo-add'),
 | 
			
		||||
        name: 'equipmentInfoAdd',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.basicData.equipment.equipmentInfoAdd?.[language] || routerTitle.basicData.equipment.equipmentInfoAdd.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      }
 | 
			
		||||
    ]
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    path: '/art',
 | 
			
		||||
    path: '/Warehouse',
 | 
			
		||||
    component: Layout,
 | 
			
		||||
    redirect: '/art/list',
 | 
			
		||||
    name: 'ArtManager',
 | 
			
		||||
    meta: { title: routerTitle.technology?.[language] || routerTitle.technology.en, icon: 'form', iconPart: 'ArtManager', affix: true, required: true, requireToken: true },
 | 
			
		||||
    redirect: '/Warehouse/workOrderManage',
 | 
			
		||||
    name: 'Warehouse',
 | 
			
		||||
    meta: { title: routerTitle.Warehouse?.[language] || routerTitle.Warehouse.en, icon: 'form', iconPart: 'orderManage', affix: true, required: true, requireToken: true },
 | 
			
		||||
    children: [
 | 
			
		||||
      {
 | 
			
		||||
        path: 'list',
 | 
			
		||||
        component: () => import('@/views/art/list'),
 | 
			
		||||
        name: 'ArtList',
 | 
			
		||||
        meta: { title: routerTitle.technology.technologylist?.[language] || routerTitle.technology.technologylist.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
        path: '/StorageBoxInfo',
 | 
			
		||||
        component: () =>
 | 
			
		||||
          import('@/views/basicData/Warehouse/StorageBoxInfo'),
 | 
			
		||||
        name: 'StorageBoxInfo',
 | 
			
		||||
        meta: { title: routerTitle.Warehouse.StorageBoxInfo?.[language] || routerTitle.Warehouse.StorageBoxInfo.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: 'process',
 | 
			
		||||
        component: () => import('@/views/art/process/list'),
 | 
			
		||||
        name: 'Process',
 | 
			
		||||
        meta: { title: routerTitle.technology.technologyprocess?.[language] || routerTitle.technology.technologyprocess.en, icon: 'form', affix: true, required: true, requireToken: true },
 | 
			
		||||
        hidden: true
 | 
			
		||||
        path: '/StorageBoxRack',
 | 
			
		||||
        component: () =>
 | 
			
		||||
          import('@/views/basicData/Warehouse/StorageBoxRack'),
 | 
			
		||||
        name: 'StorageBoxRack',
 | 
			
		||||
        meta: { title: routerTitle.Warehouse.StorageBoxRack?.[language] || routerTitle.Warehouse.StorageBoxRack.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: 'processList',
 | 
			
		||||
        component: () => import('@/views/art/processList'),
 | 
			
		||||
        name: 'Process',
 | 
			
		||||
        meta: { title: routerTitle.technology.processList?.[language] || routerTitle.technology.processList.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
        path: '/CurrentTask',
 | 
			
		||||
        component: () =>
 | 
			
		||||
          import('@/views/basicData/Warehouse/CurrentTask'),
 | 
			
		||||
        name: 'CurrentTask',
 | 
			
		||||
        meta: { title: routerTitle.Warehouse.CurrentTask?.[language] || routerTitle.Warehouse.CurrentTask.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: '/HistoricalTask',
 | 
			
		||||
        component: () =>
 | 
			
		||||
          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: '/order',
 | 
			
		||||
    component: Layout,
 | 
			
		||||
    redirect: '/order/workOrderManage',
 | 
			
		||||
    redirect: '/order/ProcessInfo',
 | 
			
		||||
    name: 'orderManage',
 | 
			
		||||
    meta: { title: routerTitle.order?.[language] || routerTitle.order.en, icon: 'form', iconPart: 'orderManage', affix: true, required: true, requireToken: true },
 | 
			
		||||
    children: [
 | 
			
		||||
      {
 | 
			
		||||
        path: 'powerClassification',
 | 
			
		||||
        path: 'ProcessInfo',
 | 
			
		||||
        component: () =>
 | 
			
		||||
          import('@/views/orderManage/powerClassification'),
 | 
			
		||||
        name: 'powerClassification',
 | 
			
		||||
        meta: { title: routerTitle.order.powerClassification?.[language] || routerTitle.order.powerClassification.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          import('@/views/orderManage/ProcessInfo'),
 | 
			
		||||
        name: 'ProcessInfo',
 | 
			
		||||
        meta: { title: routerTitle.order.ProcessInfo?.[language] || routerTitle.order.ProcessInfo.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: 'erpToMesData',
 | 
			
		||||
        path: 'ExecutionInfo',
 | 
			
		||||
        component: () =>
 | 
			
		||||
          import('@/views/orderManage/erpToMesData'),
 | 
			
		||||
        name: 'erpToMesData',
 | 
			
		||||
        meta: { title: routerTitle.order.erpToMesData?.[language] || routerTitle.order.erpToMesData.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: 'erpToMesVisualization',
 | 
			
		||||
        component: () =>
 | 
			
		||||
          import('@/views/orderManage/visualization'),
 | 
			
		||||
        name: 'erpToMesVisualization',
 | 
			
		||||
        meta: { title: routerTitle.order.erpToMesVisualization?.[language] || routerTitle.order.erpToMesVisualization.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: 'mesToErp',
 | 
			
		||||
        component: () =>
 | 
			
		||||
          import('@/views/orderManage/mesToErp'),
 | 
			
		||||
        name: 'mesToErp',
 | 
			
		||||
        meta: { title: 'mesToErp', icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: '/workOrderManage',
 | 
			
		||||
        component: () => import('@/views/orderManage/index'),
 | 
			
		||||
        name: 'workOrderManage',
 | 
			
		||||
        meta: { title: routerTitle.order.workOrderManage?.[language] || routerTitle.order.workOrderManage.en, icon: 'form', affix: true, required: true, requireToken: true },
 | 
			
		||||
        children: [
 | 
			
		||||
          {
 | 
			
		||||
            path: 'workOrder',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/orderManage/workOrder/workOrder'),
 | 
			
		||||
            name: 'workOrder',
 | 
			
		||||
            meta: { title: routerTitle.order.workOrderManage.workOrder?.[language] || routerTitle.order.workOrderManage.workOrder.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'workOrderOperation',
 | 
			
		||||
            component: () => import('@/views/orderManage/workOrder/components/workOrderOperation'),
 | 
			
		||||
            name: 'workOrderOperation',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.order.workOrderManage.workOrderOperation?.[language] || routerTitle.order.workOrderManage.workOrderOperation.en, icon: 'form', affix: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'workOrderMonitor',
 | 
			
		||||
            component: () => import('@/views/orderManage/workOrder/components/workOrderMonitor'),
 | 
			
		||||
            name: 'workOrderMonitor',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.order.workOrderManage.workOrderMonitor?.[language] || routerTitle.order.workOrderManage.workOrderMonitor.en, icon: 'form', affix: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'workOrderVerify',
 | 
			
		||||
            component: () => import('@/views/orderManage/workOrder/components/workOrderVerify'),
 | 
			
		||||
            name: 'workOrderVerify',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.order.workOrderManage.workOrderVerify?.[language] || routerTitle.order.workOrderManage.workOrderVerify.en, icon: 'form', affix: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'packingTags',
 | 
			
		||||
            component: () => import('@/views/orderManage/packingTags'),
 | 
			
		||||
            name: 'packingTags',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.order.workOrderManage.viewpackingTags?.[language] || routerTitle.order.workOrderManage.viewpackingTags.en, icon: 'form', affix: true }
 | 
			
		||||
          }
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: '/orderManage',
 | 
			
		||||
        component: () => import('@/views/orderManage/index'),
 | 
			
		||||
        name: 'orderManage',
 | 
			
		||||
        meta: { title: routerTitle.order.orderManage?.[language] || routerTitle.order.orderManage.en, icon: 'form', affix: true, required: true, requireToken: true },
 | 
			
		||||
        children: [
 | 
			
		||||
          {
 | 
			
		||||
            path: 'order',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/orderManage/order/order'),
 | 
			
		||||
            name: 'order',
 | 
			
		||||
            meta: { title: routerTitle.order.orderManage.order?.[language] || routerTitle.order.orderManage.order.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'orderIssue',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/orderManage/order/components/orderIssue'),
 | 
			
		||||
            name: 'orderIssue',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.order.orderManage.orderIssue?.[language] || routerTitle.order.orderManage.orderIssue.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'orderDetail',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/orderManage/order/components/orderDetail'),
 | 
			
		||||
            name: 'orderDetail',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.order.orderManage.orderDetail?.[language] || routerTitle.order.orderManage.orderDetail.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          }
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: '/infoTrack',
 | 
			
		||||
        component: () => import('@/views/orderManage/index'),
 | 
			
		||||
        name: 'infoTrack',
 | 
			
		||||
        meta: { title: routerTitle.order.infoTrack?.[language] || routerTitle.order.infoTrack.en, icon: 'form', affix: true, required: true, requireToken: true },
 | 
			
		||||
        children: [
 | 
			
		||||
          {
 | 
			
		||||
            path: 'equipmentParametersTrack',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/orderManage/infoTrack/equipmentParametersTrack'),
 | 
			
		||||
            name: 'equipmentParametersTrack',
 | 
			
		||||
            meta: { title: routerTitle.order.infoTrack.equipmentParametersTrack?.[language] || routerTitle.order.infoTrack.equipmentParametersTrack.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'processSubstrateDataTrack',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/orderManage/infoTrack/processSubstrateDataTrack'),
 | 
			
		||||
            name: 'processSubstrateDataTrack',
 | 
			
		||||
            meta: { title: routerTitle.order.infoTrack.processSubstrateDataTrack?.[language] || routerTitle.order.infoTrack.processSubstrateDataTrack.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'substrateParametersTrack',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/orderManage/infoTrack/substrateParametersTrack'),
 | 
			
		||||
            name: 'substrateParametersTrack',
 | 
			
		||||
            meta: { title: routerTitle.order.infoTrack.substrateParametersTrack?.[language] || routerTitle.order.infoTrack.substrateParametersTrack.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'equipmentEventTrack',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/orderManage/infoTrack/equipmentEventTrack'),
 | 
			
		||||
            name: 'equipmentEventTrack',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.order.infoTrack.equipmentEventTrack?.[language] || routerTitle.order.infoTrack.equipmentEventTrack.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'substrateEquipment',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/orderManage/infoTrack/substrateEquipment'),
 | 
			
		||||
            name: 'substrateEquipment',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.order.infoTrack.substrateEquipment?.[language] || routerTitle.order.infoTrack.substrateEquipment.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          }
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: '/substrate',
 | 
			
		||||
        component: () => import('@/views/orderManage/index'),
 | 
			
		||||
        name: 'substrate',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.order.substrate?.[language] || routerTitle.order.substrate.en, icon: 'form', affix: true, required: true, requireToken: true },
 | 
			
		||||
        children: [
 | 
			
		||||
          {
 | 
			
		||||
            path: 'substrateBatch',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/orderManage/substrateBatch'),
 | 
			
		||||
            name: 'substrateBatch',
 | 
			
		||||
            meta: { title: routerTitle.order.substrate.substrateBatch?.[language] || routerTitle.order.substrate.substrateBatch.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            path: 'substrateBatchAttr',
 | 
			
		||||
            component: () =>
 | 
			
		||||
              import('@/views/orderManage/components/substrateBatchAttr'),
 | 
			
		||||
            name: 'substrateBatchAttr',
 | 
			
		||||
            hidden: true,
 | 
			
		||||
            meta: { title: routerTitle.order.substrate.substrateBatchAttr?.[language] || routerTitle.order.substrate.substrateBatchAttr.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          }
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: '/consumption',
 | 
			
		||||
        component: () =>
 | 
			
		||||
          import('@/views/orderManage/consumption/consumption'),
 | 
			
		||||
        name: 'consumption',
 | 
			
		||||
        meta: { title: routerTitle.order.consumption?.[language] || routerTitle.order.consumption.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        path: '/powerList',
 | 
			
		||||
        component: () =>
 | 
			
		||||
          import('@/views/orderManage/consumption/list'),
 | 
			
		||||
        name: 'powerList',
 | 
			
		||||
        hidden: true,
 | 
			
		||||
        meta: { title: routerTitle.order.details?.[language] || routerTitle.order.details.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
          import('@/views/orderManage/ExecutionInfo'),
 | 
			
		||||
        name: 'ExecutionInfo',
 | 
			
		||||
        meta: { title: routerTitle.order.ExecutionInfo?.[language] || routerTitle.order.ExecutionInfo.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
      }
 | 
			
		||||
    ]
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
  //   path: '/form',
 | 
			
		||||
  //   component: Layout,
 | 
			
		||||
  //   redirect: '/form',
 | 
			
		||||
  //   name: 'formManage',
 | 
			
		||||
  //   meta: { title: routerTitle.form?.[language] || routerTitle.form.en, icon: 'form', iconPart: 'formManage', affix: true, required: true, requireToken: true, unuse: false },
 | 
			
		||||
  //   children: [{
 | 
			
		||||
  //     path: 'report',
 | 
			
		||||
  //     component: () => import('@/views/report-manage/ReportSortChoise'),
 | 
			
		||||
  //     name: 'Report',
 | 
			
		||||
  //     meta: { title: routerTitle.form.report?.[language] || routerTitle.form.report.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
  //   },
 | 
			
		||||
  //   {
 | 
			
		||||
  //     path: 'report-sort-list',
 | 
			
		||||
  //     component: () => import('@/views/report-manage/Report'),
 | 
			
		||||
  //     name: 'ReportSortList',
 | 
			
		||||
  //     hidden: true,
 | 
			
		||||
  //     meta: { title: routerTitle.form.reportSortList?.[language] || routerTitle.form.reportSortList.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
  //   },
 | 
			
		||||
  //   {
 | 
			
		||||
  //     path: 'report-view',
 | 
			
		||||
  //     component: () => import('@/views/report-manage/ReportView'),
 | 
			
		||||
  //     name: 'ReportDesign',
 | 
			
		||||
  //     meta: { title: routerTitle.form.reportView?.[language] || routerTitle.form.reportView.en, icon: 'form', affix: true, required: true, requireToken: true },
 | 
			
		||||
  //     hidden: true
 | 
			
		||||
  //   },
 | 
			
		||||
  //   {
 | 
			
		||||
  //     path: 'report-design',
 | 
			
		||||
  //     component: () => import('@/views/report-manage/ReportDesign'),
 | 
			
		||||
  //     name: 'ReportDesign',
 | 
			
		||||
  //     meta: { title: routerTitle.form.reportDesign?.[language] || routerTitle.form.reportDesign.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
  //   },
 | 
			
		||||
  //   {
 | 
			
		||||
  //     path: 'report-sort',
 | 
			
		||||
  //     component: () => import('@/views/report-manage/ReportSort/index'),
 | 
			
		||||
  //     name: 'ReportSort',
 | 
			
		||||
  //     meta: { title: routerTitle.form.reportSort?.[language] || routerTitle.form.reportSort.en, icon: 'form', affix: true, required: true, requireToken: true }
 | 
			
		||||
  //   }]
 | 
			
		||||
  // },
 | 
			
		||||
  // {
 | 
			
		||||
    path: '/interface',
 | 
			
		||||
    component: Layout,
 | 
			
		||||
    redirect: '/interface',
 | 
			
		||||
@@ -524,6 +285,7 @@ export const constantRoutes = [
 | 
			
		||||
    component: Layout,
 | 
			
		||||
    redirect: '/quality',
 | 
			
		||||
    name: 'qualityManage',
 | 
			
		||||
    hidden: true,
 | 
			
		||||
    meta: { title: routerTitle.quality?.[language] || routerTitle.quality.en, icon: 'form', iconPart: 'qualityManage', affix: true, required: true, requireToken: true },
 | 
			
		||||
    children: [
 | 
			
		||||
      {
 | 
			
		||||
@@ -620,6 +382,7 @@ export const constantRoutes = [
 | 
			
		||||
    component: Layout,
 | 
			
		||||
    redirect: '/user/manager',
 | 
			
		||||
    name: 'ArticleManager',
 | 
			
		||||
    hidden: true,
 | 
			
		||||
    meta: { title: routerTitle.basic?.[language] || routerTitle.basic.en, icon: 'form', iconPart: 'ArticleManager', affix: true, required: true, requireToken: true },
 | 
			
		||||
    children: [
 | 
			
		||||
      {
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-03-25 16:09:59
 | 
			
		||||
 * @LastEditTime: 2022-01-11 15:48:58
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -44,6 +44,7 @@ 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'
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 TypeScript接口注释
 | 
			
		||||
 * tableConfig<ConfigItem> = []
 | 
			
		||||
@@ -82,7 +83,7 @@ const tableProps = [
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'name',
 | 
			
		||||
    prop: 'tareaName',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.CacheName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
@@ -133,7 +134,7 @@ export default {
 | 
			
		||||
  methods: {
 | 
			
		||||
    handleClick(raw) {
 | 
			
		||||
      if (raw.type === 'delete') {
 | 
			
		||||
        this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.name}]?`, this.$t('module.basicData.visual.Tips'), {
 | 
			
		||||
        this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.tareaName}]?`, this.$t('module.basicData.visual.Tips'), {
 | 
			
		||||
          confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'),
 | 
			
		||||
          cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'),
 | 
			
		||||
          type: 'warning'
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-04-28 10:07:44
 | 
			
		||||
 * @LastEditTime: 2022-01-11 16:26:29
 | 
			
		||||
 * @enName:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -16,8 +16,8 @@
 | 
			
		||||
        label-width="140px"
 | 
			
		||||
      >
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.cache.CacheName')" prop="name">
 | 
			
		||||
            <el-input v-model="dataForm.name" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.CacheName')])" clearable :style="{width: '100%'}" />
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.cache.CacheName')" prop="tareaName">
 | 
			
		||||
            <el-input v-model="dataForm.tareaName" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.CacheName')])" clearable :style="{width: '100%'}" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
@@ -36,64 +36,14 @@
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.visual.Manufacturer')" prop="manufacturer">
 | 
			
		||||
            <el-input
 | 
			
		||||
              v-model="dataForm.manufacturer"
 | 
			
		||||
              :disabled="isdetail"
 | 
			
		||||
              :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.Manufacturer')])"
 | 
			
		||||
              clearable
 | 
			
		||||
              :style="{width: '100%'}"
 | 
			
		||||
            />
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.visual.Specs')" prop="spec">
 | 
			
		||||
            <el-input v-model="dataForm.spec" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.Specs')])" clearable :style="{width: '100%'}" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.visual.Specs')" prop="description">
 | 
			
		||||
            <el-input v-model="dataForm.description" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.Specs')])" clearable :style="{width: '100%'}" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.visual.productionTime')" prop="productionTime">
 | 
			
		||||
            <el-date-picker
 | 
			
		||||
              v-model="dataForm.productionTime"
 | 
			
		||||
              :disabled="isdetail"
 | 
			
		||||
              format="yyyy-MM-dd"
 | 
			
		||||
              value-format="yyyy-MM-dd"
 | 
			
		||||
              :style="{width: '100%'}"
 | 
			
		||||
              :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.productionTime')])"
 | 
			
		||||
              clearable
 | 
			
		||||
            />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.visual.enterTime')" prop="enterTime">
 | 
			
		||||
            <el-date-picker
 | 
			
		||||
              v-model="dataForm.enterTime"
 | 
			
		||||
              :disabled="isdetail"
 | 
			
		||||
              format="yyyy-MM-dd"
 | 
			
		||||
              value-format="yyyy-MM-dd"
 | 
			
		||||
              :style="{width: '100%'}"
 | 
			
		||||
              :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.enterTime')])"
 | 
			
		||||
              clearable
 | 
			
		||||
            />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.visual.debugTime')" prop="debugTime">
 | 
			
		||||
            <el-date-picker
 | 
			
		||||
              v-model="dataForm.debugTime"
 | 
			
		||||
              :disabled="isdetail"
 | 
			
		||||
              format="yyyy-MM-dd"
 | 
			
		||||
              value-format="yyyy-MM-dd"
 | 
			
		||||
              :style="{width: '100%'}"
 | 
			
		||||
              :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.debugTime')])"
 | 
			
		||||
              clearable
 | 
			
		||||
            />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.visual.CurrentState')" prop="currentStatus">
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.visual.CurrentState')" prop="status">
 | 
			
		||||
            <el-select
 | 
			
		||||
              v-model="dataForm.currentStatus"
 | 
			
		||||
              v-model="dataForm.status"
 | 
			
		||||
              :disabled="isdetail"
 | 
			
		||||
              :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.CurrentState')])"
 | 
			
		||||
              clearable
 | 
			
		||||
@@ -110,18 +60,18 @@
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.cache.StockNumber')" prop="stockNumber">
 | 
			
		||||
            <el-input-number v-model="dataForm.stockNumber" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.StockNumber')])" :step="1" />
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.cache.StockNumber')" prop="locationNum">
 | 
			
		||||
            <el-input-number v-model="dataForm.locationNum" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.StockNumber')])" :step="1" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.cache.AreaNumber')" prop="areaNumber">
 | 
			
		||||
            <el-input-number v-model="dataForm.areaNumber" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.AreaNumber')])" :step="1" />
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.cache.AreaNumber')" prop="shelfNum">
 | 
			
		||||
            <el-input-number v-model="dataForm.shelfNum" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.AreaNumber')])" :step="1" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.visual.Remarks')" prop="remark">
 | 
			
		||||
            <el-input v-model="dataForm.remark" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.Remarks')])" clearable :style="{width: '100%'}" />
 | 
			
		||||
          <el-form-item :label="$t('module.basicData.visual.Remarks')" prop="note">
 | 
			
		||||
            <el-input v-model="dataForm.note" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.Remarks')])" clearable :style="{width: '100%'}" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-col>
 | 
			
		||||
      </el-form>
 | 
			
		||||
@@ -130,7 +80,7 @@
 | 
			
		||||
      <el-button type="success" @click="goback()">{{ 'btn.back' | i18nFilter }}</el-button>
 | 
			
		||||
      <span v-if="!isdetail">
 | 
			
		||||
        <el-button type="primary" @click="dataFormSubmit()">{{ 'btn.save' | i18nFilter }}</el-button>
 | 
			
		||||
        <el-button v-if="listQuery.cacheId" type="primary" @click="addNew()">{{ $t('module.basicData.cache.addCacheArea') }}</el-button>
 | 
			
		||||
        <el-button v-if="listQuery.id" type="primary" @click="addNew()">{{ $t('module.basicData.cache.addCacheArea') }}</el-button>
 | 
			
		||||
      </span>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div style="height:380px;overflow:auto">
 | 
			
		||||
@@ -148,7 +98,7 @@
 | 
			
		||||
        />
 | 
			
		||||
      </base-table>
 | 
			
		||||
    </div>
 | 
			
		||||
    <cacheArea-add v-if="addOrUpdateVisible" ref="addOrUpdate" :cache-id="listQuery.cacheId" @refreshDataList="getList" />
 | 
			
		||||
    <cacheArea-add v-if="addOrUpdateVisible" ref="addOrUpdate" :cache-id="listQuery.id" @refreshDataList="getList" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
@@ -159,7 +109,6 @@ import BaseTable from '@/components/BaseTable'
 | 
			
		||||
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn'
 | 
			
		||||
import cacheAreaAdd from './cacheArea-add.vue'
 | 
			
		||||
import shelfBtn from './shelfBtn.vue'
 | 
			
		||||
import { timeFormatter } from '@/filters'
 | 
			
		||||
const tableBtn = [
 | 
			
		||||
  {
 | 
			
		||||
    type: 'edit',
 | 
			
		||||
@@ -171,12 +120,6 @@ const tableBtn = [
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
const tableProps = [
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'createTime',
 | 
			
		||||
    label: i18n.t('module.basicData.factory.createTime'),
 | 
			
		||||
    filter: timeFormatter,
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'name',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.AreaName'),
 | 
			
		||||
@@ -188,13 +131,23 @@ const tableProps = [
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'areaNumber',
 | 
			
		||||
    prop: 'shelfNum',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.StorageQuantity'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'rowNum',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.rowNum'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'columnNum',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.columnNum'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'shelf',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.Shelf'),
 | 
			
		||||
    label: i18n.t('module.basicData.cache.Location'),
 | 
			
		||||
    subcomponent: shelfBtn,
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
@@ -210,27 +163,23 @@ export default {
 | 
			
		||||
      tableProps,
 | 
			
		||||
      list: [],
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        name: '',
 | 
			
		||||
        tareaName: '',
 | 
			
		||||
        code: '',
 | 
			
		||||
        enName: '',
 | 
			
		||||
        abbr: '',
 | 
			
		||||
        manufacturer: '',
 | 
			
		||||
        description: '',
 | 
			
		||||
        productionTime: '',
 | 
			
		||||
        enterTime: '',
 | 
			
		||||
        debugTime: '',
 | 
			
		||||
        currentStatus: '',
 | 
			
		||||
        stockNumber: '',
 | 
			
		||||
        areaNumber: '',
 | 
			
		||||
        remark: ''
 | 
			
		||||
        spec: '',
 | 
			
		||||
        status: '',
 | 
			
		||||
        locationNum: '',
 | 
			
		||||
        shelfNum: '',
 | 
			
		||||
        note: ''
 | 
			
		||||
      },
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 990,
 | 
			
		||||
        cacheId: ''
 | 
			
		||||
        id: ''
 | 
			
		||||
      },
 | 
			
		||||
      rules: {
 | 
			
		||||
        name: [{
 | 
			
		||||
        tareaName: [{
 | 
			
		||||
          required: true,
 | 
			
		||||
          message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.cache.CacheName')]),
 | 
			
		||||
          trigger: 'blur'
 | 
			
		||||
@@ -243,35 +192,35 @@ export default {
 | 
			
		||||
      },
 | 
			
		||||
      currentStatusOptions: [{
 | 
			
		||||
        'label': '正常',
 | 
			
		||||
        'value': '0'
 | 
			
		||||
        'value': 0
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '暂停',
 | 
			
		||||
        'value': '1'
 | 
			
		||||
        'value': 1
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '维修',
 | 
			
		||||
        'value': '2'
 | 
			
		||||
        'value': 2
 | 
			
		||||
      }],
 | 
			
		||||
      cacheId: '',
 | 
			
		||||
      id: '', // 缓存区id
 | 
			
		||||
      isdetail: false
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.cacheId = this.$route.query.id
 | 
			
		||||
    this.id = this.$route.query.id
 | 
			
		||||
    this.init()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init() {
 | 
			
		||||
      this.isdetail = false
 | 
			
		||||
      this.isdetail = Boolean(this.$route.query.isdetail)
 | 
			
		||||
      this.listQuery.cacheId = ''
 | 
			
		||||
      this.listQuery.id = ''
 | 
			
		||||
      this.list.splice(0, this.list.length)
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        if (this.cacheId) {
 | 
			
		||||
          cacheDetail(this.cacheId).then(res => {
 | 
			
		||||
        if (this.id) {
 | 
			
		||||
          cacheDetail(this.id).then(res => {
 | 
			
		||||
            this.dataForm = res.data
 | 
			
		||||
          })
 | 
			
		||||
          this.listQuery.cacheId = this.cacheId
 | 
			
		||||
          this.listQuery.id = this.id
 | 
			
		||||
          areaList(this.listQuery).then(response => {
 | 
			
		||||
            if (response.data.records) {
 | 
			
		||||
              this.list = response.data.records
 | 
			
		||||
@@ -322,20 +271,16 @@ export default {
 | 
			
		||||
          const data = {
 | 
			
		||||
            'abbr': this.dataForm.abbr,
 | 
			
		||||
            'code': this.dataForm.code,
 | 
			
		||||
            'currentStatus': this.dataForm.currentStatus,
 | 
			
		||||
            'debugTime': this.dataForm.debugTime,
 | 
			
		||||
            'status': this.dataForm.status,
 | 
			
		||||
            'enName': this.dataForm.enName,
 | 
			
		||||
            'enterTime': this.dataForm.enterTime,
 | 
			
		||||
            'manufacturer': this.dataForm.manufacturer,
 | 
			
		||||
            'name': this.dataForm.name,
 | 
			
		||||
            'productionTime': this.dataForm.productionTime,
 | 
			
		||||
            'remark': this.dataForm.remark,
 | 
			
		||||
            'description': this.dataForm.description,
 | 
			
		||||
            'stockNumber': this.dataForm.stockNumber,
 | 
			
		||||
            'areaNumber': this.dataForm.areaNumber,
 | 
			
		||||
            'id': this.cacheId
 | 
			
		||||
            'tareaName': this.dataForm.tareaName,
 | 
			
		||||
            'note': this.dataForm.note,
 | 
			
		||||
            'spec': this.dataForm.spec,
 | 
			
		||||
            'locationNum': this.dataForm.locationNum,
 | 
			
		||||
            'shelfNum': this.dataForm.shelfNum,
 | 
			
		||||
            'id': this.id
 | 
			
		||||
          }
 | 
			
		||||
          if (this.cacheId) {
 | 
			
		||||
          if (this.id) {
 | 
			
		||||
            cacheUpdate(data).then(res => {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: this.$t('module.basicData.visual.success'),
 | 
			
		||||
@@ -350,7 +295,7 @@ export default {
 | 
			
		||||
                type: 'success',
 | 
			
		||||
                duration: 1500
 | 
			
		||||
              })
 | 
			
		||||
              this.listQuery.cacheId = res.data.id
 | 
			
		||||
              this.listQuery.id = res.data.id
 | 
			
		||||
            })
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-07-21 13:59:43
 | 
			
		||||
 * @LastEditTime: 2022-01-11 16:45:30
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -11,17 +11,14 @@
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
  >
 | 
			
		||||
    <el-form ref="dataForm" :model="dataForm" :rules="dataRule" label-width="130px" @keyup.enter.native="dataFormSubmit()">
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.storageBox.name')" prop="name">
 | 
			
		||||
        <el-input v-model="dataForm.name" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.storageBox.name')])" clearable />
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.storageBox.name')" prop="storageBoxName">
 | 
			
		||||
        <el-input v-model="dataForm.storageBoxName" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.storageBox.name')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.storageBox.code')" prop="code">
 | 
			
		||||
        <el-input v-model="dataForm.code" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.storageBox.code')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.storageBox.StorageQuantity')" prop="quantity">
 | 
			
		||||
        <el-input-number v-model="dataForm.quantity" :min="0" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.storageBox.StorageQuantity')])" />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.storageBox.alias')" prop="aliasName">
 | 
			
		||||
        <el-input v-model="dataForm.aliasName" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.storageBox.alias')])" clearable />
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.visual.EnglishName')" prop="enName">
 | 
			
		||||
        <el-input v-model="dataForm.enName" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.EnglishName')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.storageBox.status')" prop="status">
 | 
			
		||||
        <el-select v-model="dataForm.status" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.storageBox.status')])" clearable>
 | 
			
		||||
@@ -33,8 +30,8 @@
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.visual.Remarks')" prop="remark">
 | 
			
		||||
        <el-input v-model="dataForm.remark" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.Remarks')])" clearable />
 | 
			
		||||
      <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>
 | 
			
		||||
    </el-form>
 | 
			
		||||
    <span slot="footer" class="dialog-footer">
 | 
			
		||||
@@ -53,12 +50,11 @@ export default {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: 0,
 | 
			
		||||
        name: '',
 | 
			
		||||
        storageBoxName: '',
 | 
			
		||||
        code: '',
 | 
			
		||||
        status: 0,
 | 
			
		||||
        aliasName: '',
 | 
			
		||||
        quantity: 0,
 | 
			
		||||
        remark: ''
 | 
			
		||||
        enName: '',
 | 
			
		||||
        note: ''
 | 
			
		||||
      },
 | 
			
		||||
      options: [
 | 
			
		||||
        {
 | 
			
		||||
@@ -75,7 +71,7 @@ export default {
 | 
			
		||||
        }
 | 
			
		||||
      ],
 | 
			
		||||
      dataRule: {
 | 
			
		||||
        name: [
 | 
			
		||||
        storageBoxName: [
 | 
			
		||||
          {
 | 
			
		||||
            required: true,
 | 
			
		||||
            message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.storageBox.name')]),
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2021-07-21 14:00:56
 | 
			
		||||
 * @LastEditTime: 2022-01-11 16:46:48
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -41,7 +41,6 @@
 | 
			
		||||
<script>import i18n from '@/lang'
 | 
			
		||||
import HeadForm from '@/components/basicData/HeadForm'
 | 
			
		||||
import BaseTable from '@/components/BaseTable'
 | 
			
		||||
import PositionDetail from './components/PositionDetail'
 | 
			
		||||
import storageBoxAdd from './components/storageBox-add'
 | 
			
		||||
import Pagination from '@/components/Pagination' // Secondary package based on el-pagination
 | 
			
		||||
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn'
 | 
			
		||||
@@ -82,7 +81,7 @@ const tableProps = [
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'name',
 | 
			
		||||
    prop: 'storageBoxName',
 | 
			
		||||
    label: i18n.t('module.basicData.storageBox.name'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
@@ -92,13 +91,8 @@ const tableProps = [
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'aliasName',
 | 
			
		||||
    label: i18n.t('module.basicData.storageBox.alias'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'quantity',
 | 
			
		||||
    label: i18n.t('module.basicData.storageBox.StorageQuantity'),
 | 
			
		||||
    prop: 'enName',
 | 
			
		||||
    label: i18n.t('module.basicData.visual.EnglishName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
@@ -108,15 +102,9 @@ const tableProps = [
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'remark',
 | 
			
		||||
    prop: 'note',
 | 
			
		||||
    label: i18n.t('module.basicData.storageBox.remark'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'location',
 | 
			
		||||
    label: i18n.t('module.basicData.cache.Location'),
 | 
			
		||||
    subcomponent: PositionDetail,
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
@@ -157,7 +145,7 @@ export default {
 | 
			
		||||
  methods: {
 | 
			
		||||
    handleClick(raw) {
 | 
			
		||||
      if (raw.type === 'delete') {
 | 
			
		||||
        this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.name}]?`, this.$t('module.basicData.visual.Tips'), {
 | 
			
		||||
        this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.storageBoxName}]?`, this.$t('module.basicData.visual.Tips'), {
 | 
			
		||||
          confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'),
 | 
			
		||||
          cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'),
 | 
			
		||||
          type: 'warning'
 | 
			
		||||
@@ -181,8 +169,7 @@ export default {
 | 
			
		||||
    },
 | 
			
		||||
    getList(key) {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      this.listQuery.name = key
 | 
			
		||||
      this.listQuery.code = key
 | 
			
		||||
      this.listQuery.storageBoxName = key
 | 
			
		||||
      storageBoxList(this.listQuery).then(response => {
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.list = response.data.records
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										254
									
								
								src/views/basicData/Warehouse/CurrentTask.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										254
									
								
								src/views/basicData/Warehouse/CurrentTask.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,254 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-14 15:54:12
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <el-form
 | 
			
		||||
      ref="formData"
 | 
			
		||||
      :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>
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in taskTypeList"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.TaskStatus')" prop="status">
 | 
			
		||||
        <el-select v-model="formData.status" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.TaskStatus')])" clearable>
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in TaskStatusList"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.VehicleName')" prop="equipmentId">
 | 
			
		||||
        <el-select v-model="formData.equipmentId" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.VehicleName')])" clearable>
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in VehicleNameList"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
          />
 | 
			
		||||
        </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="formData.current"
 | 
			
		||||
      :limit="formData.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="formData.current"
 | 
			
		||||
      :limit.sync="formData.size"
 | 
			
		||||
      @pagination="getList()"
 | 
			
		||||
    />
 | 
			
		||||
    <current-task-info v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { CurrentTaskList } from '@/api/basicData/Warehouse/HistoricalTask'
 | 
			
		||||
import CurrentTaskInfo from './components/CurrentTaskInfo.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'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 TypeScript接口注释
 | 
			
		||||
 * tableConfig<ConfigItem> = []
 | 
			
		||||
 *
 | 
			
		||||
 * Interface ConfigItem = {
 | 
			
		||||
 *  prop: string,
 | 
			
		||||
 *  label: string,
 | 
			
		||||
 *  width: string,
 | 
			
		||||
 *  align: string,
 | 
			
		||||
 *  subcomponent: function,
 | 
			
		||||
 *  filter: function
 | 
			
		||||
 * }
 | 
			
		||||
 *
 | 
			
		||||
 *
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
const tableBtn = [
 | 
			
		||||
  {
 | 
			
		||||
    type: 'view',
 | 
			
		||||
    btnName: 'btn.see'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
const tableProps = [
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'taskCode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.Code'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'createTime',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.ExecutionTime'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'taskSource',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TaskSource'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'taskType',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TaskType'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'fullCode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TaskBoxNumber'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'emptyCode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.FullBoxNumber'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'wcurrProcessCode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.PreviousOperation'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'wnextProcessCode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.NextOperation'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'anotherCurrLocation',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.StartLocation'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    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'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'ScrapInfo',
 | 
			
		||||
  components: { Pagination, BaseTable, MethodBtn, CurrentTaskInfo },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      trueWidth: 100,
 | 
			
		||||
      addOrUpdateVisible: false,
 | 
			
		||||
      tableProps,
 | 
			
		||||
      tableBtn,
 | 
			
		||||
      list: [],
 | 
			
		||||
      total: 0,
 | 
			
		||||
      listLoading: false,
 | 
			
		||||
      formData: {
 | 
			
		||||
        taskType: '',
 | 
			
		||||
        status: '',
 | 
			
		||||
        equipmentId: '',
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 10
 | 
			
		||||
      },
 | 
			
		||||
      taskTypeList: [{
 | 
			
		||||
        'label': '出库',
 | 
			
		||||
        'value': 0
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '入库',
 | 
			
		||||
        'value': 1
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '流转',
 | 
			
		||||
        'value': 2
 | 
			
		||||
      }],
 | 
			
		||||
      TaskStatusList: [{
 | 
			
		||||
        'label': '初始化',
 | 
			
		||||
        'value': 0
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '损坏',
 | 
			
		||||
        'value': 1
 | 
			
		||||
      }],
 | 
			
		||||
      VehicleNameList: [{
 | 
			
		||||
        'label': '小车1',
 | 
			
		||||
        'value': 0
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '小车2',
 | 
			
		||||
        'value': 1
 | 
			
		||||
      }]
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.getList()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    getList() {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      CurrentTaskList(this.formData).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
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    handleClick(raw) {
 | 
			
		||||
      console.log(raw)
 | 
			
		||||
      this.addNew(raw.data.id)
 | 
			
		||||
    },
 | 
			
		||||
    // 新增 / 修改
 | 
			
		||||
    addNew(id) {
 | 
			
		||||
      this.addOrUpdateVisible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs.addOrUpdate.init(id)
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.edit-input {
 | 
			
		||||
  padding-right: 100px;
 | 
			
		||||
}
 | 
			
		||||
.cancel-btn {
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  right: 15px;
 | 
			
		||||
  top: 10px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
							
								
								
									
										276
									
								
								src/views/basicData/Warehouse/HistoricalTask.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										276
									
								
								src/views/basicData/Warehouse/HistoricalTask.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,276 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-13 15:49:01
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <el-form
 | 
			
		||||
      ref="formData"
 | 
			
		||||
      :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>
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in taskTypeList"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.TaskStatus')" prop="status">
 | 
			
		||||
        <el-select v-model="formData.status" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.TaskStatus')])" clearable>
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in TaskStatusList"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.VehicleName')" prop="equipmentId">
 | 
			
		||||
        <el-select v-model="formData.equipmentId" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.VehicleName')])" clearable>
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in VehicleNameList"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.TimeSlot')" prop="time">
 | 
			
		||||
        <el-date-picker
 | 
			
		||||
          v-model="formData.timeSlot"
 | 
			
		||||
          type="daterange"
 | 
			
		||||
          format="yyyy-MM-dd"
 | 
			
		||||
          value-format="yyyy-MM-dd"
 | 
			
		||||
          :start-placeholder="$t('module.orderManage.order.StartTime')"
 | 
			
		||||
          :end-placeholder="$t('module.orderManage.order.StartTime')"
 | 
			
		||||
          :range-separator="$t('module.orderManage.order.To')"
 | 
			
		||||
          clearable
 | 
			
		||||
        />
 | 
			
		||||
      </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="formData.current"
 | 
			
		||||
      :limit="formData.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="formData.current"
 | 
			
		||||
      :limit.sync="formData.size"
 | 
			
		||||
      @pagination="getList()"
 | 
			
		||||
    />
 | 
			
		||||
    <historical-task-info v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { HistoricalTaskList } from '@/api/basicData/Warehouse/HistoricalTask'
 | 
			
		||||
import HistoricalTaskInfo from './components/HistoricalTaskInfo.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'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 TypeScript接口注释
 | 
			
		||||
 * tableConfig<ConfigItem> = []
 | 
			
		||||
 *
 | 
			
		||||
 * Interface ConfigItem = {
 | 
			
		||||
 *  prop: string,
 | 
			
		||||
 *  label: string,
 | 
			
		||||
 *  width: string,
 | 
			
		||||
 *  align: string,
 | 
			
		||||
 *  subcomponent: function,
 | 
			
		||||
 *  filter: function
 | 
			
		||||
 * }
 | 
			
		||||
 *
 | 
			
		||||
 *
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
const tableBtn = [
 | 
			
		||||
  {
 | 
			
		||||
    type: 'view',
 | 
			
		||||
    btnName: 'btn.see'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
const tableProps = [
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'taskCode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.Code'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'createTime',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.ExecutionTime'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'status',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TaskStatus'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  // {
 | 
			
		||||
  //   prop: 'taskType',
 | 
			
		||||
  //   label: i18n.t('module.basicData.Warehouse.TaskType'),
 | 
			
		||||
  //   align: 'center'
 | 
			
		||||
  // },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'name',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.VehicleName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  // {
 | 
			
		||||
  //   prop: 'substrateNo',
 | 
			
		||||
  //   label: i18n.t('module.basicData.Warehouse.BoxStatus'),
 | 
			
		||||
  //   align: 'center'
 | 
			
		||||
  // },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'wcode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.BoxNumber'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'wcurrProcessCode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.PreviousOperation'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'wnextProcessCode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.NextOperation'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'updateTime',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.CompletionTime'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'currLocation',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.StartLocation'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'targetLocation',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TargetLocation'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'ScrapInfo',
 | 
			
		||||
  components: { Pagination, BaseTable, MethodBtn, HistoricalTaskInfo },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      trueWidth: 100,
 | 
			
		||||
      addOrUpdateVisible: false,
 | 
			
		||||
      tableProps,
 | 
			
		||||
      tableBtn,
 | 
			
		||||
      list: [],
 | 
			
		||||
      total: 0,
 | 
			
		||||
      listLoading: false,
 | 
			
		||||
      formData: {
 | 
			
		||||
        taskType: '',
 | 
			
		||||
        status: '',
 | 
			
		||||
        equipmentId: '',
 | 
			
		||||
        timeSlot: [],
 | 
			
		||||
        endTime: '',
 | 
			
		||||
        startTime: '',
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 10
 | 
			
		||||
      },
 | 
			
		||||
      taskTypeList: [{
 | 
			
		||||
        'label': '出库',
 | 
			
		||||
        'value': 0
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '入库',
 | 
			
		||||
        'value': 1
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '流转',
 | 
			
		||||
        'value': 2
 | 
			
		||||
      }],
 | 
			
		||||
      TaskStatusList: [{
 | 
			
		||||
        'label': '初始化',
 | 
			
		||||
        'value': 0
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '损坏',
 | 
			
		||||
        'value': 1
 | 
			
		||||
      }],
 | 
			
		||||
      VehicleNameList: [{
 | 
			
		||||
        'label': '小车1',
 | 
			
		||||
        'value': 0
 | 
			
		||||
      }, {
 | 
			
		||||
        'label': '小车2',
 | 
			
		||||
        'value': 1
 | 
			
		||||
      }]
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.getList()
 | 
			
		||||
  },
 | 
			
		||||
  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 = ''
 | 
			
		||||
      }
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      HistoricalTaskList(this.formData).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
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    handleClick(raw) {
 | 
			
		||||
      console.log(raw)
 | 
			
		||||
      this.addNew(raw.data.id)
 | 
			
		||||
    },
 | 
			
		||||
    // 新增 / 修改
 | 
			
		||||
    addNew(id) {
 | 
			
		||||
      this.addOrUpdateVisible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs.addOrUpdate.init(id)
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.edit-input {
 | 
			
		||||
  padding-right: 100px;
 | 
			
		||||
}
 | 
			
		||||
.cancel-btn {
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  right: 15px;
 | 
			
		||||
  top: 10px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
							
								
								
									
										160
									
								
								src/views/basicData/Warehouse/StorageBoxInfo.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										160
									
								
								src/views/basicData/Warehouse/StorageBoxInfo.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,160 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-18 14:30:25
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <el-form ref="listQuery" :model="listQuery" :inline="true" label-width="120px" @keyup.enter.native="getList()">
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.StorageBoxNumber')" prop="code">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="listQuery.code"
 | 
			
		||||
          :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-form-item>
 | 
			
		||||
        <el-button type="primary" @click="getList()">{{ 'btn.search' | i18nFilter }}</el-button>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <base-table
 | 
			
		||||
        :page="listQuery.current"
 | 
			
		||||
        :limit="listQuery.size"
 | 
			
		||||
        :table-config="tableProps"
 | 
			
		||||
        :table-data="list"
 | 
			
		||||
        :is-loading="listLoading"
 | 
			
		||||
      />
 | 
			
		||||
      <pagination
 | 
			
		||||
        v-show="total > 0"
 | 
			
		||||
        :total="total"
 | 
			
		||||
        :page.sync="listQuery.current"
 | 
			
		||||
        :limit.sync="listQuery.size"
 | 
			
		||||
        @pagination="getList()"
 | 
			
		||||
      />
 | 
			
		||||
    </el-form></div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { StorageBoxInfoList, StorageBoxRackCode } from '@/api/basicData/Warehouse/StorageBoxInfo'
 | 
			
		||||
import BaseTable from '@/components/BaseTable'
 | 
			
		||||
import Pagination from '@/components/Pagination' // Secondary package based on el-pagination
 | 
			
		||||
import warehouse from '@/filters/basicData/warehouse'
 | 
			
		||||
import i18n from '@/lang'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 TypeScript接口注释
 | 
			
		||||
 * tableConfig<ConfigItem> = []
 | 
			
		||||
 *
 | 
			
		||||
 * Interface ConfigItem = {
 | 
			
		||||
 *  prop: string,
 | 
			
		||||
 *  label: string,
 | 
			
		||||
 *  width: string,
 | 
			
		||||
 *  align: string,
 | 
			
		||||
 *  subcomponent: function,
 | 
			
		||||
 *  filter: function
 | 
			
		||||
 * }
 | 
			
		||||
 *
 | 
			
		||||
 *
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'storageCode',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.StorageBoxNumber'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'status',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.BoxStatus'),
 | 
			
		||||
    filter: warehouse('enableState'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'currLocation',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.CurrentLocation'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'isEmpty',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.IsEmpty'),
 | 
			
		||||
    filter: warehouse('yesOrNo'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'StorageBoxInfo',
 | 
			
		||||
  components: { Pagination, BaseTable },
 | 
			
		||||
  filters: {
 | 
			
		||||
    statusFilter(status) {
 | 
			
		||||
      const statusMap = {
 | 
			
		||||
        published: 'success',
 | 
			
		||||
        draft: 'info',
 | 
			
		||||
        deleted: 'danger'
 | 
			
		||||
      }
 | 
			
		||||
      return statusMap[status]
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      keyName: i18n.t('module.basicData.Warehouse.StorageBoxNumber'),
 | 
			
		||||
      placeholderName: this.$t('module.basicData.Warehouse.StorageBoxNumber'),
 | 
			
		||||
      trueWidth: 200,
 | 
			
		||||
      tableProps,
 | 
			
		||||
      list: [],
 | 
			
		||||
      storageBoxList: [],
 | 
			
		||||
      total: 0,
 | 
			
		||||
      listLoading: true,
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 10,
 | 
			
		||||
        code: ''
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.getList()
 | 
			
		||||
    const listQuery1 = {
 | 
			
		||||
      current: 1,
 | 
			
		||||
      size: 100
 | 
			
		||||
    }
 | 
			
		||||
    StorageBoxRackCode(listQuery1).then(res => {
 | 
			
		||||
      this.storageBoxList = res.data.records
 | 
			
		||||
    })
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    getList() {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      StorageBoxInfoList(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
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.edit-input {
 | 
			
		||||
  padding-right: 100px;
 | 
			
		||||
}
 | 
			
		||||
.cancel-btn {
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  right: 15px;
 | 
			
		||||
  top: 10px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
							
								
								
									
										247
									
								
								src/views/basicData/Warehouse/StorageBoxRack.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										247
									
								
								src/views/basicData/Warehouse/StorageBoxRack.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,247 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 14:06:53
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <el-form ref="listQuery" :model="listQuery" :inline="true" label-width="120px" @keyup.enter.native="getList()">
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.LocationName')" prop="currLocationId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="listQuery.currLocationId"
 | 
			
		||||
          :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.LocationName')])"
 | 
			
		||||
          clearable
 | 
			
		||||
          filterable
 | 
			
		||||
          :style="{width: '100%'}"
 | 
			
		||||
        >
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="(item, index) in LocationList"
 | 
			
		||||
            :key="index"
 | 
			
		||||
            :label="item.locationName"
 | 
			
		||||
            :value="item.id"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.StorageBoxNumber')" prop="storageBoxId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="listQuery.storageBoxId"
 | 
			
		||||
          :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.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>
 | 
			
		||||
      </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()"
 | 
			
		||||
    />
 | 
			
		||||
    <Factory-add v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { StorageBoxRackList, StorageBoxRackDelete, StorageBoxRackCode, locationList } from '@/api/basicData/Warehouse/StorageBoxInfo'
 | 
			
		||||
import FactoryAdd from './components/StorageBoxRack-add.vue'
 | 
			
		||||
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 warehouse from '@/filters/basicData/warehouse'
 | 
			
		||||
import i18n from '@/lang'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 TypeScript接口注释
 | 
			
		||||
 * tableConfig<ConfigItem> = []
 | 
			
		||||
 *
 | 
			
		||||
 * Interface ConfigItem = {
 | 
			
		||||
 *  prop: string,
 | 
			
		||||
 *  label: string,
 | 
			
		||||
 *  width: string,
 | 
			
		||||
 *  align: string,
 | 
			
		||||
 *  subcomponent: function,
 | 
			
		||||
 *  filter: function
 | 
			
		||||
 * }
 | 
			
		||||
 *
 | 
			
		||||
 *
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
const tableBtn = [
 | 
			
		||||
  {
 | 
			
		||||
    type: 'edit',
 | 
			
		||||
    btnName: 'btn.edit'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    type: 'delete',
 | 
			
		||||
    btnName: 'btn.delete'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
const tableProps = [
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'createTime',
 | 
			
		||||
    label: i18n.t('module.basicData.factory.createTime'),
 | 
			
		||||
    filter: timeFormatter,
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'code',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.StorageBoxNumber'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'status',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.BoxStatus'),
 | 
			
		||||
    filter: warehouse('enableState'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'currLocation',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.LocationName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'currLocationName',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.LocationCode'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'isEmpty',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.IsEmptyBox'),
 | 
			
		||||
    filter: warehouse('yesOrNo'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'StorageBoxInfo',
 | 
			
		||||
  components: { Pagination, BaseTable, MethodBtn, FactoryAdd },
 | 
			
		||||
  filters: {
 | 
			
		||||
    statusFilter(status) {
 | 
			
		||||
      const statusMap = {
 | 
			
		||||
        published: 'success',
 | 
			
		||||
        draft: 'info',
 | 
			
		||||
        deleted: 'danger'
 | 
			
		||||
      }
 | 
			
		||||
      return statusMap[status]
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      keyName: i18n.t('module.basicData.Warehouse.StorageBoxNumber'),
 | 
			
		||||
      placeholderName: this.$t('module.basicData.Warehouse.StorageBoxNumber'),
 | 
			
		||||
      addOrUpdateVisible: false,
 | 
			
		||||
      tableBtn,
 | 
			
		||||
      trueWidth: 200,
 | 
			
		||||
      tableProps,
 | 
			
		||||
      list: [],
 | 
			
		||||
      total: 0,
 | 
			
		||||
      LocationList: [],
 | 
			
		||||
      storageBoxList: [],
 | 
			
		||||
      listLoading: true,
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 10,
 | 
			
		||||
        storageBoxId: '',
 | 
			
		||||
        currLocationId: ''
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.getList()
 | 
			
		||||
    const listQuery1 = {
 | 
			
		||||
      current: 1,
 | 
			
		||||
      size: 100
 | 
			
		||||
    }
 | 
			
		||||
    locationList(listQuery1).then(response => {
 | 
			
		||||
      this.LocationList = response.data
 | 
			
		||||
    })
 | 
			
		||||
    StorageBoxRackCode(listQuery1).then(res => {
 | 
			
		||||
      this.storageBoxList = res.data.records
 | 
			
		||||
    })
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    handleClick(raw) {
 | 
			
		||||
      console.log(raw)
 | 
			
		||||
      if (raw.type === 'delete') {
 | 
			
		||||
        this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.code}]?`, this.$t('module.basicData.visual.Tips'), {
 | 
			
		||||
          confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'),
 | 
			
		||||
          cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'),
 | 
			
		||||
          type: 'warning'
 | 
			
		||||
        }).then(() => {
 | 
			
		||||
          StorageBoxRackDelete(raw.data.id).then(response => {
 | 
			
		||||
            this.$message({
 | 
			
		||||
              message: this.$t('module.basicData.visual.success'),
 | 
			
		||||
              type: 'success',
 | 
			
		||||
              duration: 1500,
 | 
			
		||||
              onClose: () => {
 | 
			
		||||
                this.getList()
 | 
			
		||||
              }
 | 
			
		||||
            })
 | 
			
		||||
          })
 | 
			
		||||
        }).catch(() => {})
 | 
			
		||||
      } else {
 | 
			
		||||
        this.addNew(raw.data.id)
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    getList() {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      StorageBoxRackList(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.addOrUpdateVisible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs.addOrUpdate.init(id)
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.edit-input {
 | 
			
		||||
  padding-right: 100px;
 | 
			
		||||
}
 | 
			
		||||
.cancel-btn {
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  right: 15px;
 | 
			
		||||
  top: 10px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
							
								
								
									
										178
									
								
								src/views/basicData/Warehouse/components/CurrentTaskInfo.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										178
									
								
								src/views/basicData/Warehouse/components/CurrentTaskInfo.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,178 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-14 15:55:39
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="'btn.see' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
  >
 | 
			
		||||
    <el-row :gutter="10">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="dataForm"
 | 
			
		||||
        :model="dataForm"
 | 
			
		||||
        size="medium"
 | 
			
		||||
        label-width="110px"
 | 
			
		||||
        label-position="left"
 | 
			
		||||
      >
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-row>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.Code')" prop="taskCode">
 | 
			
		||||
                <el-input v-model="dataForm.taskCode" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderName')" prop="orderName">
 | 
			
		||||
                <el-input v-model="dataForm.orderName" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TaskBoxNumber')" prop="fullCode">
 | 
			
		||||
                <el-input v-model="dataForm.fullCode" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.VehicleName')" prop="name">
 | 
			
		||||
                <el-input v-model="dataForm.name" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.EmptyFork')" prop="field124">
 | 
			
		||||
                <el-input v-model="dataForm.field124" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.EmptyHandlingTime')" prop="field119">
 | 
			
		||||
                <el-input v-model="dataForm.field119" 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.ExecutionTime')" prop="createTime">
 | 
			
		||||
                <el-input v-model="dataForm.createTime" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TaskType')" prop="taskType">
 | 
			
		||||
                <el-input v-model="dataForm.taskType" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.FullBoxNumber')" prop="emptyCode">
 | 
			
		||||
                <el-input v-model="dataForm.emptyCode" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TaskLocation')" prop="anotherCurrLocation">
 | 
			
		||||
                <el-input
 | 
			
		||||
                  v-model="dataForm.anotherCurrLocation"
 | 
			
		||||
                  readonly
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TaskBoxFork')" prop="field121">
 | 
			
		||||
                <el-input v-model="dataForm.field121" 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.TaskSource')" prop="taskSource">
 | 
			
		||||
                <el-input v-model="dataForm.taskSource" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.PreviousOperation')" prop="anotherCurrProcessCode">
 | 
			
		||||
                <el-input
 | 
			
		||||
                  v-model="dataForm.anotherCurrProcessCode"
 | 
			
		||||
                  readonly
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.NextOperation')" prop="anotherNextProcessCode">
 | 
			
		||||
                <el-input
 | 
			
		||||
                  v-model="dataForm.anotherNextProcessCode"
 | 
			
		||||
                  readonly
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TargetLocation')" prop="anotherTargetLocation">
 | 
			
		||||
                <el-input
 | 
			
		||||
                  v-model="dataForm.anotherTargetLocation"
 | 
			
		||||
                  readonly
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.BoxStatus')" prop="field126">
 | 
			
		||||
                <el-input v-model="dataForm.field126" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </el-row>
 | 
			
		||||
        </el-col>
 | 
			
		||||
      </el-form>
 | 
			
		||||
    </el-row>
 | 
			
		||||
    <span slot="footer" class="dialog-footer">
 | 
			
		||||
      <el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
 | 
			
		||||
    </span>
 | 
			
		||||
  </el-dialog>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { CurrentTaskDetail } from '@/api/basicData/Warehouse/HistoricalTask'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: '',
 | 
			
		||||
        taskCode: undefined,
 | 
			
		||||
        orderName: undefined,
 | 
			
		||||
        fullCode: undefined,
 | 
			
		||||
        name: undefined,
 | 
			
		||||
        field124: undefined,
 | 
			
		||||
        field119: undefined,
 | 
			
		||||
        createTime: undefined,
 | 
			
		||||
        taskType: undefined,
 | 
			
		||||
        emptyCode: undefined,
 | 
			
		||||
        anotherCurrLocation: undefined,
 | 
			
		||||
        field121: undefined,
 | 
			
		||||
        taskSource: undefined,
 | 
			
		||||
        anotherCurrProcessCode: undefined,
 | 
			
		||||
        anotherNextProcessCode: undefined,
 | 
			
		||||
        anotherTargetLocation: undefined,
 | 
			
		||||
        field126: undefined
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init(id) {
 | 
			
		||||
      this.dataForm.id = id
 | 
			
		||||
      this.visible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        CurrentTaskDetail(this.dataForm.id).then(res => {
 | 
			
		||||
          this.dataForm = res.data
 | 
			
		||||
        })
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
							
								
								
									
										194
									
								
								src/views/basicData/Warehouse/components/HistoricalTaskInfo.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										194
									
								
								src/views/basicData/Warehouse/components/HistoricalTaskInfo.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,194 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-13 16:22:39
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="'btn.see' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
  >
 | 
			
		||||
    <el-row :gutter="10">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="dataForm"
 | 
			
		||||
        :model="dataForm"
 | 
			
		||||
        size="medium"
 | 
			
		||||
        label-width="110px"
 | 
			
		||||
        label-position="left"
 | 
			
		||||
      >
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-row>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.Code')" prop="taskCode">
 | 
			
		||||
                <el-input v-model="dataForm.taskCode" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderName')" prop="orderName">
 | 
			
		||||
                <el-input v-model="dataForm.orderName" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TaskBoxNumber')" prop="fullCode">
 | 
			
		||||
                <el-input v-model="dataForm.fullCode" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.VehicleName')" prop="name">
 | 
			
		||||
                <el-input v-model="dataForm.name" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.EmptyFork')" prop="field124">
 | 
			
		||||
                <el-input v-model="dataForm.field124" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.EmptyHandlingTime')" prop="field119">
 | 
			
		||||
                <el-input v-model="dataForm.field119" 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.ExecutionTime')" prop="createTime">
 | 
			
		||||
                <el-input v-model="dataForm.createTime" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TaskType')" prop="taskType">
 | 
			
		||||
                <el-input v-model="dataForm.taskType" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.FullBoxNumber')" prop="emptyCode">
 | 
			
		||||
                <el-input v-model="dataForm.emptyCode" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TaskLocation')" prop="anotherCurrLocation">
 | 
			
		||||
                <el-input
 | 
			
		||||
                  v-model="dataForm.anotherCurrLocation"
 | 
			
		||||
                  readonly
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TaskBoxFork')" prop="field121">
 | 
			
		||||
                <el-input v-model="dataForm.field121" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TaskBoxHandlingTime')" prop="field122">
 | 
			
		||||
                <el-input
 | 
			
		||||
                  v-model="dataForm.field122"
 | 
			
		||||
                  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.TaskSource')" prop="taskSource">
 | 
			
		||||
                <el-input v-model="dataForm.taskSource" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.PreviousOperation')" prop="anotherCurrProcessCode">
 | 
			
		||||
                <el-input
 | 
			
		||||
                  v-model="dataForm.anotherCurrProcessCode"
 | 
			
		||||
                  readonly
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.NextOperation')" prop="anotherNextProcessCode">
 | 
			
		||||
                <el-input
 | 
			
		||||
                  v-model="dataForm.anotherNextProcessCode"
 | 
			
		||||
                  readonly
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TargetLocation')" prop="anotherTargetLocation">
 | 
			
		||||
                <el-input
 | 
			
		||||
                  v-model="dataForm.anotherTargetLocation"
 | 
			
		||||
                  readonly
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.CompletionTime')" prop="field125">
 | 
			
		||||
                <el-input v-model="dataForm.field125" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.BoxStatus')" prop="field126">
 | 
			
		||||
                <el-input v-model="dataForm.field126" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </el-row>
 | 
			
		||||
        </el-col>
 | 
			
		||||
      </el-form>
 | 
			
		||||
    </el-row>
 | 
			
		||||
    <span slot="footer" class="dialog-footer">
 | 
			
		||||
      <el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
 | 
			
		||||
    </span>
 | 
			
		||||
  </el-dialog>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { HistoricalTaskDetail } from '@/api/basicData/Warehouse/HistoricalTask'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: '',
 | 
			
		||||
        taskCode: undefined,
 | 
			
		||||
        orderName: undefined,
 | 
			
		||||
        fullCode: undefined,
 | 
			
		||||
        name: undefined,
 | 
			
		||||
        field124: undefined,
 | 
			
		||||
        field119: undefined,
 | 
			
		||||
        createTime: undefined,
 | 
			
		||||
        taskType: undefined,
 | 
			
		||||
        emptyCode: undefined,
 | 
			
		||||
        anotherCurrLocation: undefined,
 | 
			
		||||
        field121: undefined,
 | 
			
		||||
        field122: undefined,
 | 
			
		||||
        taskSource: undefined,
 | 
			
		||||
        anotherCurrProcessCode: undefined,
 | 
			
		||||
        anotherNextProcessCode: undefined,
 | 
			
		||||
        anotherTargetLocation: undefined,
 | 
			
		||||
        field125: undefined,
 | 
			
		||||
        field126: undefined
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init(id) {
 | 
			
		||||
      this.dataForm.id = id
 | 
			
		||||
      this.visible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        HistoricalTaskDetail(this.dataForm.id).then(res => {
 | 
			
		||||
          this.dataForm = res.data
 | 
			
		||||
        })
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
@@ -0,0 +1,65 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 10:19:45
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="!dataForm.id ? 'btn.add' : 'btn.edit' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
  >
 | 
			
		||||
    <el-form ref="dataForm" :model="dataForm" label-width="120px">
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.factory.FactoryName')" prop="name">
 | 
			
		||||
        <el-input v-model="dataForm.name" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.factory.FactoryName')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.factory.FactoryCode')" prop="code">
 | 
			
		||||
        <el-input v-model="dataForm.code" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.factory.FactoryCode')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.factory.Address')" prop="address">
 | 
			
		||||
        <el-input v-model="dataForm.address" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.factory.Address')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.visual.Remarks')" prop="description">
 | 
			
		||||
        <el-input v-model="dataForm.description" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.Remarks')])" clearable />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
    </el-form>
 | 
			
		||||
    <span slot="footer" class="dialog-footer">
 | 
			
		||||
      <el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
 | 
			
		||||
    </span>
 | 
			
		||||
  </el-dialog>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { StorageBoxInfoDetail } from '@/api/basicData/Warehouse/StorageBoxInfo'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: 0,
 | 
			
		||||
        name: '',
 | 
			
		||||
        code: '',
 | 
			
		||||
        address: '',
 | 
			
		||||
        description: ''
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init(id) {
 | 
			
		||||
      this.dataForm.id = id || ''
 | 
			
		||||
      this.visible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        StorageBoxInfoDetail(this.dataForm.id).then(res => {
 | 
			
		||||
          this.dataForm.name = res.data.name
 | 
			
		||||
          this.dataForm.code = res.data.code
 | 
			
		||||
          this.dataForm.address = res.data.address
 | 
			
		||||
          this.dataForm.description = res.data.description
 | 
			
		||||
        })
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
							
								
								
									
										180
									
								
								src/views/basicData/Warehouse/components/StorageBoxRack-add.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										180
									
								
								src/views/basicData/Warehouse/components/StorageBoxRack-add.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,180 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 11:21:26
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :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-item :label="$t('module.basicData.Warehouse.LocationName')" prop="currLocationId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="dataForm.currLocationId"
 | 
			
		||||
          :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.LocationName')])"
 | 
			
		||||
          clearable
 | 
			
		||||
          filterable
 | 
			
		||||
          :style="{width: '100%'}"
 | 
			
		||||
          @change="selectGetLabel1"
 | 
			
		||||
        >
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="(item, index) in LocationList"
 | 
			
		||||
            :key="index"
 | 
			
		||||
            :label="item.locationName"
 | 
			
		||||
            :value="item.id"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.StorageBoxNumber')" prop="storageBoxId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="dataForm.storageBoxId"
 | 
			
		||||
          :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.StorageBoxNumber')])"
 | 
			
		||||
          clearable
 | 
			
		||||
          filterable
 | 
			
		||||
          :style="{width: '100%'}"
 | 
			
		||||
          @change="selectGetLabel2"
 | 
			
		||||
        >
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="(item, index) in storageBoxList"
 | 
			
		||||
            :key="index"
 | 
			
		||||
            :label="item.code"
 | 
			
		||||
            :value="item.id"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.BoxStatus')" prop="status">
 | 
			
		||||
        <el-switch
 | 
			
		||||
          v-model="dataForm.status"
 | 
			
		||||
          :active-value="1"
 | 
			
		||||
          :inactive-value="0"
 | 
			
		||||
          active-color="#13ce66"
 | 
			
		||||
          inactive-color="#AAAAAA"
 | 
			
		||||
        />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item :label="$t('module.basicData.Warehouse.IsEmptyBox')" prop="isEmpty">
 | 
			
		||||
        <el-switch
 | 
			
		||||
          v-model="dataForm.isEmpty"
 | 
			
		||||
          :active-value="1"
 | 
			
		||||
          :inactive-value="0"
 | 
			
		||||
          active-color="#13ce66"
 | 
			
		||||
          inactive-color="#AAAAAA"
 | 
			
		||||
        />
 | 
			
		||||
      </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 { StorageBoxRackDetail, StorageBoxRackUpdate, StorageBoxRackAdd, StorageBoxRackCode, locationList } from '@/api/basicData/Warehouse/StorageBoxInfo'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: 0,
 | 
			
		||||
        code: '',
 | 
			
		||||
        locationName: '',
 | 
			
		||||
        currLocationId: '',
 | 
			
		||||
        storageBoxId: '',
 | 
			
		||||
        status: '',
 | 
			
		||||
        isEmpty: ''
 | 
			
		||||
      },
 | 
			
		||||
      LocationList: [],
 | 
			
		||||
      storageBoxList: [],
 | 
			
		||||
      dataRule: {
 | 
			
		||||
        currLocationId: [
 | 
			
		||||
          {
 | 
			
		||||
            required: true,
 | 
			
		||||
            message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.Warehouse.LocationName')]),
 | 
			
		||||
            trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        storageBoxId: [
 | 
			
		||||
          {
 | 
			
		||||
            required: true,
 | 
			
		||||
            message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.Warehouse.StorageBoxNumber')]),
 | 
			
		||||
            trigger: 'blur' }
 | 
			
		||||
        ]
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init(id) {
 | 
			
		||||
      this.dataForm.id = id || ''
 | 
			
		||||
      this.visible = true
 | 
			
		||||
      const listQuery = {
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 100
 | 
			
		||||
      }
 | 
			
		||||
      locationList(listQuery).then(response => {
 | 
			
		||||
        this.LocationList = response.data
 | 
			
		||||
      })
 | 
			
		||||
      StorageBoxRackCode(listQuery).then(res => {
 | 
			
		||||
        this.storageBoxList = res.data.records
 | 
			
		||||
      })
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        if (this.dataForm.id) {
 | 
			
		||||
          StorageBoxRackDetail(this.dataForm.id).then(res => {
 | 
			
		||||
            this.dataForm = res.data
 | 
			
		||||
          })
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    selectGetLabel1(vId) {
 | 
			
		||||
      let obj = {}
 | 
			
		||||
      obj = this.LocationList.find((item) => {
 | 
			
		||||
        return item.id === vId
 | 
			
		||||
      })
 | 
			
		||||
      this.dataForm.locationName = obj.locationName
 | 
			
		||||
    },
 | 
			
		||||
    selectGetLabel2(vId) {
 | 
			
		||||
      let obj = {}
 | 
			
		||||
      obj = this.storageBoxList.find((item) => {
 | 
			
		||||
        return item.id === vId
 | 
			
		||||
      })
 | 
			
		||||
      this.dataForm.code = obj.code
 | 
			
		||||
    },
 | 
			
		||||
    // 表单提交
 | 
			
		||||
    dataFormSubmit() {
 | 
			
		||||
      this.$refs['dataForm'].validate((valid) => {
 | 
			
		||||
        if (valid) {
 | 
			
		||||
          const data = this.dataForm
 | 
			
		||||
          if (this.dataForm.id) {
 | 
			
		||||
            StorageBoxRackUpdate(data).then(res => {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: this.$t('module.basicData.visual.success'),
 | 
			
		||||
                type: 'success',
 | 
			
		||||
                duration: 1500,
 | 
			
		||||
                onClose: () => {
 | 
			
		||||
                  this.visible = false
 | 
			
		||||
                  this.$emit('refreshDataList')
 | 
			
		||||
                }
 | 
			
		||||
              })
 | 
			
		||||
            })
 | 
			
		||||
          } else {
 | 
			
		||||
            StorageBoxRackAdd(data).then(res => {
 | 
			
		||||
              this.$message({
 | 
			
		||||
                message: this.$t('module.basicData.visual.success'),
 | 
			
		||||
                type: 'success',
 | 
			
		||||
                duration: 1500,
 | 
			
		||||
                onClose: () => {
 | 
			
		||||
                  this.visible = false
 | 
			
		||||
                  this.$emit('refreshDataList')
 | 
			
		||||
                }
 | 
			
		||||
              })
 | 
			
		||||
            })
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
							
								
								
									
										177
									
								
								src/views/orderManage/ExecutionInfo.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										177
									
								
								src/views/orderManage/ExecutionInfo.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,177 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:26:35
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <head-form
 | 
			
		||||
      :placeholder-name="placeholderName"
 | 
			
		||||
      :key-name="keyName"
 | 
			
		||||
      :show-add="false"
 | 
			
		||||
      @getDataList="getList"
 | 
			
		||||
      @add="addNew"
 | 
			
		||||
    />
 | 
			
		||||
    <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()"
 | 
			
		||||
    />
 | 
			
		||||
    <Factory-add v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { ExecutionInfoList } from '@/api/orderManage/00A'
 | 
			
		||||
import FactoryAdd from './components/ExecutionInfoDetail.vue'
 | 
			
		||||
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'
 | 
			
		||||
import { timeFormatter } from '@/filters'
 | 
			
		||||
import basicData from '@/filters/basicData'
 | 
			
		||||
import i18n from '@/lang'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 TypeScript接口注释
 | 
			
		||||
 * tableConfig<ConfigItem> = []
 | 
			
		||||
 *
 | 
			
		||||
 * Interface ConfigItem = {
 | 
			
		||||
 *  prop: string,
 | 
			
		||||
 *  label: string,
 | 
			
		||||
 *  width: string,
 | 
			
		||||
 *  align: string,
 | 
			
		||||
 *  subcomponent: function,
 | 
			
		||||
 *  filter: function
 | 
			
		||||
 * }
 | 
			
		||||
 *
 | 
			
		||||
 *
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
const tableBtn = [
 | 
			
		||||
  {
 | 
			
		||||
    type: 'see',
 | 
			
		||||
    btnName: 'btn.see'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
const tableProps = [
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'name',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.OrderName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'createTime',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.IssueOrderTime'),
 | 
			
		||||
    filter: timeFormatter,
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'craftName',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TotalProcessName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'priority',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.Priority'),
 | 
			
		||||
    filter: basicData('priority'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'status',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.OrderStatus'),
 | 
			
		||||
    filter: basicData('workOrderStatus'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'ExecutionInfo',
 | 
			
		||||
  components: { Pagination, BaseTable, MethodBtn, HeadForm, FactoryAdd },
 | 
			
		||||
  filters: {
 | 
			
		||||
    statusFilter(status) {
 | 
			
		||||
      const statusMap = {
 | 
			
		||||
        published: 'success',
 | 
			
		||||
        draft: 'info',
 | 
			
		||||
        deleted: 'danger'
 | 
			
		||||
      }
 | 
			
		||||
      return statusMap[status]
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      keyName: i18n.t('module.basicData.Warehouse.OrderName'),
 | 
			
		||||
      placeholderName: this.$t('module.basicData.Warehouse.OrderName'),
 | 
			
		||||
      addOrUpdateVisible: false,
 | 
			
		||||
      tableBtn,
 | 
			
		||||
      trueWidth: 200,
 | 
			
		||||
      tableProps,
 | 
			
		||||
      list: [],
 | 
			
		||||
      total: 0,
 | 
			
		||||
      listLoading: true,
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 10,
 | 
			
		||||
        name: '',
 | 
			
		||||
        code: ''
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.getList()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    handleClick(raw) {
 | 
			
		||||
      this.addNew(raw.data.id)
 | 
			
		||||
    },
 | 
			
		||||
    getList(key) {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      this.listQuery.code = key
 | 
			
		||||
      ExecutionInfoList(this.listQuery).then(response => {
 | 
			
		||||
        if (response.data.records) {
 | 
			
		||||
          this.list = response.data.records
 | 
			
		||||
        } else {
 | 
			
		||||
          this.list.splice(0, this.list.length)
 | 
			
		||||
        }
 | 
			
		||||
        this.total = response.data.total
 | 
			
		||||
        this.listLoading = false
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    // 新增 / 修改
 | 
			
		||||
    addNew(id) {
 | 
			
		||||
      this.addOrUpdateVisible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs.addOrUpdate.init(id)
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.edit-input {
 | 
			
		||||
  padding-right: 100px;
 | 
			
		||||
}
 | 
			
		||||
.cancel-btn {
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  right: 15px;
 | 
			
		||||
  top: 10px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
							
								
								
									
										184
									
								
								src/views/orderManage/ProcessInfo.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										184
									
								
								src/views/orderManage/ProcessInfo.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,184 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 15:41:11
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:32:00
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <head-form
 | 
			
		||||
      :placeholder-name="placeholderName"
 | 
			
		||||
      :key-name="keyName"
 | 
			
		||||
      :show-add="false"
 | 
			
		||||
      @getDataList="getList"
 | 
			
		||||
      @add="addNew"
 | 
			
		||||
    />
 | 
			
		||||
    <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()"
 | 
			
		||||
    />
 | 
			
		||||
    <Factory-add v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { ProcessInfoList } from '@/api/orderManage/00A'
 | 
			
		||||
import FactoryAdd from './components/ProcessInfoDetail.vue'
 | 
			
		||||
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'
 | 
			
		||||
import { timeFormatter } from '@/filters'
 | 
			
		||||
import basicData from '@/filters/basicData'
 | 
			
		||||
import processLinkBtn from './components/processLinkBtn'
 | 
			
		||||
import i18n from '@/lang'
 | 
			
		||||
/**
 | 
			
		||||
 * 表格表头配置项 TypeScript接口注释
 | 
			
		||||
 * tableConfig<ConfigItem> = []
 | 
			
		||||
 *
 | 
			
		||||
 * Interface ConfigItem = {
 | 
			
		||||
 *  prop: string,
 | 
			
		||||
 *  label: string,
 | 
			
		||||
 *  width: string,
 | 
			
		||||
 *  align: string,
 | 
			
		||||
 *  subcomponent: function,
 | 
			
		||||
 *  filter: function
 | 
			
		||||
 * }
 | 
			
		||||
 *
 | 
			
		||||
 *
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
const tableBtn = [
 | 
			
		||||
  {
 | 
			
		||||
    type: 'see',
 | 
			
		||||
    btnName: 'btn.see'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
const tableProps = [
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'name',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.OrderName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'createTime',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.IssueOrderTime'),
 | 
			
		||||
    filter: timeFormatter,
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'craftName',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.TotalProcessName'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'priority',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.Priority'),
 | 
			
		||||
    filter: basicData('priority'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'status',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.OrderStatus'),
 | 
			
		||||
    filter: basicData('workOrderStatus'),
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'attribute',
 | 
			
		||||
    label: i18n.t('module.basicData.Warehouse.RelateProcess'),
 | 
			
		||||
    subcomponent: processLinkBtn,
 | 
			
		||||
    align: 'center'
 | 
			
		||||
  }
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'ProcessInfo',
 | 
			
		||||
  components: { Pagination, BaseTable, MethodBtn, HeadForm, FactoryAdd },
 | 
			
		||||
  filters: {
 | 
			
		||||
    statusFilter(status) {
 | 
			
		||||
      const statusMap = {
 | 
			
		||||
        published: 'success',
 | 
			
		||||
        draft: 'info',
 | 
			
		||||
        deleted: 'danger'
 | 
			
		||||
      }
 | 
			
		||||
      return statusMap[status]
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      keyName: i18n.t('module.basicData.Warehouse.OrderName'),
 | 
			
		||||
      placeholderName: this.$t('module.basicData.Warehouse.OrderName'),
 | 
			
		||||
      addOrUpdateVisible: false,
 | 
			
		||||
      tableBtn,
 | 
			
		||||
      trueWidth: 200,
 | 
			
		||||
      tableProps,
 | 
			
		||||
      list: [],
 | 
			
		||||
      total: 0,
 | 
			
		||||
      listLoading: true,
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        current: 1,
 | 
			
		||||
        size: 10,
 | 
			
		||||
        name: '',
 | 
			
		||||
        code: ''
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  created() {
 | 
			
		||||
    this.getList()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    handleClick(raw) {
 | 
			
		||||
      this.addNew(raw.data.id)
 | 
			
		||||
    },
 | 
			
		||||
    getList(key) {
 | 
			
		||||
      this.listLoading = true
 | 
			
		||||
      this.listQuery.code = key
 | 
			
		||||
      ProcessInfoList(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.addOrUpdateVisible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs.addOrUpdate.init(id)
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.edit-input {
 | 
			
		||||
  padding-right: 100px;
 | 
			
		||||
}
 | 
			
		||||
.cancel-btn {
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  right: 15px;
 | 
			
		||||
  top: 10px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
							
								
								
									
										115
									
								
								src/views/orderManage/components/ExecutionInfoDetail.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										115
									
								
								src/views/orderManage/components/ExecutionInfoDetail.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,115 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:21:50
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="'btn.see' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
  >
 | 
			
		||||
    <el-row :gutter="10">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="dataForm"
 | 
			
		||||
        :model="dataForm"
 | 
			
		||||
        size="medium"
 | 
			
		||||
        label-width="110px"
 | 
			
		||||
        label-position="left"
 | 
			
		||||
      >
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-row>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderName')" prop="name">
 | 
			
		||||
                <el-input v-model="dataForm.name" :placeholder="$t('module.basicData.Warehouse.OrderName')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </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>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.PlanProcessQuantity')" prop="planQuantity">
 | 
			
		||||
                <el-input v-model="dataForm.planQuantity" :placeholder="$t('module.basicData.Warehouse.PlanProcessQuantity')" 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>
 | 
			
		||||
            </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>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </el-row>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-row>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TotalProcessName')" prop="craftName">
 | 
			
		||||
                <el-input v-model="dataForm.craftName" :placeholder="$t('module.basicData.Warehouse.TotalProcessName')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.SubProcessName')" prop="subProccessName">
 | 
			
		||||
                <el-input
 | 
			
		||||
                  v-model="dataForm.subProccessName"
 | 
			
		||||
                  :placeholder="$t('module.basicData.Warehouse.SubProcessName')"
 | 
			
		||||
                  readonly
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </el-row>
 | 
			
		||||
        </el-col>
 | 
			
		||||
      </el-form>
 | 
			
		||||
    </el-row>
 | 
			
		||||
    <span slot="footer" class="dialog-footer">
 | 
			
		||||
      <el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
 | 
			
		||||
    </span>
 | 
			
		||||
  </el-dialog>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { ExecutionInfoDetail } from '@/api/orderManage/00A'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: 0,
 | 
			
		||||
        name: undefined,
 | 
			
		||||
        createTime: undefined,
 | 
			
		||||
        taskCode: undefined,
 | 
			
		||||
        taskType: undefined,
 | 
			
		||||
        craftName: undefined,
 | 
			
		||||
        planQuantity: undefined,
 | 
			
		||||
        subProccessName: undefined
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init(id) {
 | 
			
		||||
      this.dataForm.id = id || ''
 | 
			
		||||
      this.visible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        if (this.dataForm.id) {
 | 
			
		||||
          ExecutionInfoDetail(this.dataForm.id).then(res => {
 | 
			
		||||
            this.dataForm = res.data
 | 
			
		||||
          })
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
							
								
								
									
										115
									
								
								src/views/orderManage/components/ProcessInfoDetail.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										115
									
								
								src/views/orderManage/components/ProcessInfoDetail.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,115 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2020-12-29 16:37:56
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:22:08
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <el-dialog
 | 
			
		||||
    :title="'btn.see' | i18nFilter"
 | 
			
		||||
    :visible.sync="visible"
 | 
			
		||||
  >
 | 
			
		||||
    <el-row :gutter="10">
 | 
			
		||||
      <el-form
 | 
			
		||||
        ref="dataForm"
 | 
			
		||||
        :model="dataForm"
 | 
			
		||||
        size="medium"
 | 
			
		||||
        label-width="110px"
 | 
			
		||||
        label-position="left"
 | 
			
		||||
      >
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-row>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.OrderName')" prop="name">
 | 
			
		||||
                <el-input v-model="dataForm.name" :placeholder="$t('module.basicData.Warehouse.OrderName')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </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>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.PlanProcessQuantity')" prop="planQuantity">
 | 
			
		||||
                <el-input v-model="dataForm.planQuantity" :placeholder="$t('module.basicData.Warehouse.PlanProcessQuantity')" 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>
 | 
			
		||||
            </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>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </el-row>
 | 
			
		||||
        </el-col>
 | 
			
		||||
        <el-col :span="8">
 | 
			
		||||
          <el-row>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.TotalProcessName')" prop="craftName">
 | 
			
		||||
                <el-input v-model="dataForm.craftName" :placeholder="$t('module.basicData.Warehouse.TotalProcessName')" readonly :style="{width: '100%'}" />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
            <el-col :span="24">
 | 
			
		||||
              <el-form-item :label="$t('module.basicData.Warehouse.SubProcessName')" prop="subProccessName">
 | 
			
		||||
                <el-input
 | 
			
		||||
                  v-model="dataForm.subProccessName"
 | 
			
		||||
                  :placeholder="$t('module.basicData.Warehouse.SubProcessName')"
 | 
			
		||||
                  readonly
 | 
			
		||||
                  :style="{width: '100%'}"
 | 
			
		||||
                />
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
            </el-col>
 | 
			
		||||
          </el-row>
 | 
			
		||||
        </el-col>
 | 
			
		||||
      </el-form>
 | 
			
		||||
    </el-row>
 | 
			
		||||
    <span slot="footer" class="dialog-footer">
 | 
			
		||||
      <el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
 | 
			
		||||
    </span>
 | 
			
		||||
  </el-dialog>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import { ProcessInfoDetail } from '@/api/orderManage/00A'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      dataForm: {
 | 
			
		||||
        id: 0,
 | 
			
		||||
        name: undefined,
 | 
			
		||||
        createTime: undefined,
 | 
			
		||||
        taskCode: undefined,
 | 
			
		||||
        taskType: undefined,
 | 
			
		||||
        craftName: undefined,
 | 
			
		||||
        planQuantity: undefined,
 | 
			
		||||
        subProccessName: undefined
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    init(id) {
 | 
			
		||||
      this.dataForm.id = id || ''
 | 
			
		||||
      this.visible = true
 | 
			
		||||
      this.$nextTick(() => {
 | 
			
		||||
        this.$refs['dataForm'].resetFields()
 | 
			
		||||
        if (this.dataForm.id) {
 | 
			
		||||
          ProcessInfoDetail(this.dataForm.id).then(res => {
 | 
			
		||||
            this.dataForm = res.data
 | 
			
		||||
          })
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
							
								
								
									
										64
									
								
								src/views/orderManage/components/processLinkBtn.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								src/views/orderManage/components/processLinkBtn.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,64 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Date: 2021-01-07 20:09:37
 | 
			
		||||
 * @LastEditors: zwq
 | 
			
		||||
 * @LastEditTime: 2022-01-17 15:16:29
 | 
			
		||||
 * @FilePath: \basic-admin\src\components\BaseTable\subcomponents\CheckDetail.vue
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <span>
 | 
			
		||||
    <el-popover
 | 
			
		||||
      v-model="visible"
 | 
			
		||||
      placement="top"
 | 
			
		||||
      width="160"
 | 
			
		||||
    >
 | 
			
		||||
      <div>
 | 
			
		||||
        <el-select v-model="value" placeholder="请选择">
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in options"
 | 
			
		||||
            :key="item.value"
 | 
			
		||||
            :label="item.label"
 | 
			
		||||
            :value="item.value"
 | 
			
		||||
          />
 | 
			
		||||
        </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>
 | 
			
		||||
      </div>
 | 
			
		||||
      <el-button slot="reference" type="text">{{ $t('module.basicData.Warehouse.RelateProcess') }}</el-button>
 | 
			
		||||
    </el-popover>
 | 
			
		||||
  </span>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
export default {
 | 
			
		||||
  props: {
 | 
			
		||||
    injectData: {
 | 
			
		||||
      type: Object,
 | 
			
		||||
      default: () => ({})
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      visible: false,
 | 
			
		||||
      options: [{
 | 
			
		||||
        value: '选项1',
 | 
			
		||||
        label: '黄金糕'
 | 
			
		||||
      }, {
 | 
			
		||||
        value: '选项2',
 | 
			
		||||
        label: '双皮奶'
 | 
			
		||||
      }
 | 
			
		||||
      ],
 | 
			
		||||
      value: ''
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    emitClick() {
 | 
			
		||||
      console.log(this.injectData)
 | 
			
		||||
      console.log(this.value)
 | 
			
		||||
      this.visible = false
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
@@ -46,8 +46,8 @@ module.exports = {
 | 
			
		||||
    // 这里写入需要代理的api和对应的目标地址
 | 
			
		||||
    proxy: {
 | 
			
		||||
      '/api': {
 | 
			
		||||
        target: 'http://localhost:8080',
 | 
			
		||||
        // target: 'http://192.168.0.198:8080',
 | 
			
		||||
        // target: 'http://localhost:8080',
 | 
			
		||||
        target: 'http://192.168.0.148:8080',
 | 
			
		||||
        // 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