盘点管理下5个页面国际化

This commit is contained in:
猫猫guowen
2025-06-05 16:02:04 +08:00
parent f3c2f3a1ac
commit 02d3734e9f
7 changed files with 1021 additions and 530 deletions

View File

@@ -22,7 +22,7 @@ export default {
sidebarLogo: 'Sidebar Logo' sidebarLogo: 'Sidebar Logo'
}, },
// ***************收货单据新增************* // ***************收货单据新增*************
receiveStockinAdd:{ receiveStockinAdd: {
title: 'Add Receive Stockin', title: 'Add Receive Stockin',
warehouse: 'Warehouse', warehouse: 'Warehouse',
supplier: 'Supplier', supplier: 'Supplier',
@@ -79,7 +79,7 @@ export default {
grossWeight: 'Gross Weight (KG)' grossWeight: 'Gross Weight (KG)'
}, },
// ***************收货单据管理************* // ***************收货单据管理*************
inReceiveStockin:{ inReceiveStockin: {
stockinId: 'Stockin Order ID', stockinId: 'Stockin Order ID',
inputstockinId: 'Please input stockin order ID', inputstockinId: 'Please input stockin order ID',
supplierNo: 'Supplier Code', supplierNo: 'Supplier Code',
@@ -114,7 +114,7 @@ export default {
selecInType: 'Please select stockin type', selecInType: 'Please select stockin type',
}, },
// ***************入库单据管理************* // ***************入库单据管理*************
inStockin:{ inStockin: {
selecInType: 'Please select stockin type', selecInType: 'Please select stockin type',
cancel: 'Cancel Document', cancel: 'Cancel Document',
examine: 'Document Review', examine: 'Document Review',
@@ -166,7 +166,7 @@ export default {
selectStatus: 'Please select Task Status', selectStatus: 'Please select Task Status',
inputTaskNo: 'Please input Task No.', inputTaskNo: 'Please input Task No.',
inputTrayCode: 'Please input Tray Code', inputTrayCode: 'Please input Tray Code',
targetCargoSpaceId:'TargetCargoSpaceID', targetCargoSpaceId: 'TargetCargoSpaceID',
inputTargetCargoSpaceId: 'Please input Target Cargo Space ID', inputTargetCargoSpaceId: 'Please input Target Cargo Space ID',
selectExecutionPhase: 'Please select Execution Phase', selectExecutionPhase: 'Please select Execution Phase',
selectInOrOut: 'Please select Task Type', selectInOrOut: 'Please select Task Type',
@@ -175,8 +175,8 @@ export default {
inputEntranceId: 'Please input Entrance ID', inputEntranceId: 'Please input Entrance ID',
inputExitId: 'Please input Exit ID' inputExitId: 'Please input Exit ID'
}, },
// ***************出库单据管理**************
outStockoutManage:{ outStockoutManage: {
stockoutId: 'Outbound Order ID', stockoutId: 'Outbound Order ID',
outType: 'Outbound Type', outType: 'Outbound Type',
status: 'Document Status', status: 'Document Status',
@@ -210,7 +210,8 @@ export default {
selectStatus: 'Please select document status', selectStatus: 'Please select document status',
inputCustomerNo: 'Please input customer code' inputCustomerNo: 'Please input customer code'
}, },
addOutStockout:{ // ***************新建出库单据**************
addOutStockout: {
warehouse: 'Warehouse', warehouse: 'Warehouse',
selectWarehouse: 'Please select warehouse', selectWarehouse: 'Please select warehouse',
customer: 'Customer', customer: 'Customer',
@@ -235,7 +236,7 @@ export default {
confirm: 'Confirm', confirm: 'Confirm',
cancel: 'Cancel' cancel: 'Cancel'
}, },
productAndStock:{ productAndStock: {
serialNumber: 'Serial Number1111111111', serialNumber: 'Serial Number1111111111',
productId: 'Material Code', productId: 'Material Code',
lotNo: 'Batch Number', lotNo: 'Batch Number',
@@ -252,6 +253,7 @@ export default {
inputProductName: 'Please input material name', inputProductName: 'Please input material name',
inputWarehouse: 'Please input warehouse' inputWarehouse: 'Please input warehouse'
}, },
// ***************出库作业管理**************
outJobManagement: { outJobManagement: {
// Status and Job Type // Status and Job Type
status: 'Status', status: 'Status',
@@ -300,14 +302,248 @@ export default {
manualComplete: 'Manual Complete', manualComplete: 'Manual Complete',
manualInvalidate: 'Manual Invalidate' manualInvalidate: 'Manual Invalidate'
}, },
// *****************新建盘点单据***************
checkCreate: {
warehouse: 'Warehouse',
selectWarehouse: 'Please select warehouse',
customer: 'Customer',
inputCustomerNo: 'Please input customer number',
documentType: 'Document Type',
selectDocumentType: 'Please select document type',
reset: 'Reset',
saveDocument: 'Save Document',
selectMaterial: 'Select Material',
recreateDocument: 'Recreate Document',
materialCode: 'Material Code',
materialName: 'Material Name',
batchNo: 'Batch No.',
inputBatchNo: 'Please input batch number',
quantity: 'Quantity',
operation: 'Operation',
delete: 'Delete',
inputMaterialCode: 'Please input material code',
inputMaterialName: 'Please input material name',
search: 'Search',
confirm: 'Confirm',
cancel: 'Cancel',
warehouseRequired: 'Please select warehouse',
customerRequired: 'Please input customer number',
documentTypeRequired: 'Please select document type',
selectMaterialRequired: 'Please select material',
materialExistWarning: 'Selected material already exists, please reselect',
quantityExceedError: 'Quantity cannot exceed stock quantity',
saveSuccess: 'Document {msg} saved successfully'
},
//***************盘点单据管理***************
checkStockCheck: {
stockCheckId: 'Stock Check ID',
inputStockCheckId: 'Please input stock check ID',
checkType: 'Check Type',
selectCheckType: 'Please select check type',
status: 'Status',
selectStatus: 'Please select status',
warehouse: 'Warehouse',
selectWarehouse: 'Please select warehouse',
search: 'Search',
reset: 'Reset',
invalidate: 'Invalidate',
review: 'Review',
confirm: 'Confirm',
warehouseId: 'Warehouse ID',
stockSource: 'Stock Source',
departmentNo: 'Department No',
createManId: 'Creator',
createDate: 'Create Date',
finishDate: 'Finish Date',
detailId: 'Detail ID',
mainId: 'Main ID',
lotNo: 'Lot No',
productId: 'Product ID',
materialDesc: 'Material Description',
englishDesc: 'English Description',
cartonNo: 'Carton No',
packingMethod: 'Packing Method',
quantity: 'Planned Quantity',
scanNum: 'Scanned Quantity',
assignNum: 'Actual Quantity',
stockCheckIdRequired: 'Stock check ID is required',
checkTypeRequired: 'Check type is required',
createDateRequired: 'Create date is required',
statusRequired: 'Status is required',
editSuccess: 'Edit successful',
addSuccess: 'Add successful',
invalidateSuccess: 'Invalidate successful',
onlyUnreviewedCanInvalidate: 'Only unreviewed documents can be invalidated',
alreadyReviewed: 'Document has been reviewed, please do not review again',
reviewSuccess: 'Review successful',
onlyUnreviewedCanReview: 'Only unreviewed documents can be reviewed',
confirmSuccess: 'Confirm successful',
onlyReviewedCanConfirm: 'Only reviewed documents can be confirmed'
},
// ***************盘点入库作业*************
checkJobIn: {
jobId: 'Task ID',
status: 'Task Status',
onLineType: 'Online Type',
jobType: 'Task Type',
taskNo: 'Task No.',
supplier: 'Supplier',
department: 'Department',
trayCode: 'Tray Code',
roadwayId: 'Roadway ID',
cargoSpace: 'Cargo Space',
targetRoadway: 'Target Roadway',
targetCargoSpace: 'Target Cargo Space',
lineId: 'Production Line ID',
workshopId: 'Workshop ID',
priority: 'Priority',
executionPhase: 'Execution Phase',
startTime: 'Start Time',
finishTime: 'Finish Time',
entrance: 'Entrance',
entranceId: 'Entrance ID',
exit: 'Exit',
exitId: 'Exit ID',
classId: 'Class ID',
warehouseId: 'Warehouse ID',
warehouse: 'Warehouse',
faultFlag: 'Fault Flag',
jobDetailId: 'Sub-task ID',
stockId: 'Stock ID',
lotNo: 'Lot No.',
inDate: 'Storage Time',
inOrOutId: 'Document ID',
inOrOutDId: 'Sub-document ID',
productGuid: 'Material GUID',
productId: 'Material Code',
stockStatus: 'Stock Status',
inQuantity: 'Storage Quantity',
printDate: 'Production Date',
supplierId: 'Supplier ID',
// 按钮和操作文本
search: 'Search',
reset: 'Reset',
manualVoid: 'Manual Void',
manualFinish: 'Manual Complete',
// 输入框提示文本
inputJobId: 'Please input Task ID',
selectStatus: 'Please select Task Status',
inputTaskNo: 'Please input Task No.',
inputTrayCode: 'Please input Tray Code',
inputTargetCargoSpace: 'Please input Target Cargo Space',
selectExecutionPhase: 'Please select Execution Phase',
selectJobType: 'Please select Task Type',
selectStartTime: 'Please select Start Time',
selectFinishTime: 'Please select Finish Time',
inputEntranceId: 'Please input Entrance ID',
inputExitId: 'Please input Exit ID',
inputWarehouseId: 'Please input Warehouse ID',
// 校验提示信息
jobIdRequired: 'Task ID cannot be empty',
statusRequired: 'Task Status cannot be empty',
taskNoRequired: 'Task No. cannot be empty',
selectData: 'Please select data to operate'
},
// **************盘点出库作业****************
checkJobOut: {
jobId: 'Task ID',
status: 'Task Status',
onLineType: 'Online Type',
jobType: 'Task Type',
taskNo: 'Task No.',
supplierId: 'Supplier ID',
departmentId: 'Department ID',
trayCode: 'Tray Code',
roadwayId: 'Roadway ID',
cargoSpaceId: 'Cargo Space ID',
targetRoadwayId: 'Target Roadway ID',
targetCargoSpace: 'Target Cargo Space',
lineId: 'Production Line ID',
workshopId: 'Workshop ID',
priority: 'Priority',
executionPhase: 'Execution Phase',
startTime: 'Start Time',
finishTime: 'Finish Time',
entranceId: 'Entrance ID',
exitId: 'Exit ID',
classId: 'Class ID',
warehouse: 'Warehouse',
faultFlag: 'Fault Flag',
operation: 'Operation',
subJobId: 'Sub Task ID',
stockId: 'Stock ID',
batchNo: 'Batch No.',
inTime: 'In Time',
billId: 'Bill ID',
subBillId: 'Sub Bill ID',
materialGuid: 'Material GUID',
materialCode: 'Material Code',
stockStatus: 'Stock Status',
inQty: 'In Quantity',
productDate: 'Production Date',
search: 'Search',
reset: 'Reset',
manualFinish: 'Manual Finish',
manualInvalid: 'Manual Invalid',
inputJobId: 'Please input task ID',
selectStatus: 'Please select task status',
inputTaskNo: 'Please input task No.',
inputTrayCode: 'Please input tray code',
inputTargetCargoSpace: 'Please input target cargo space ID',
selectExecutionPhase: 'Please select execution phase',
selectJobType: 'Please select task type',
selectStartTime: 'Please select start time',
selectFinishTime: 'Please select finish time',
inputEntranceId: 'Please input entrance ID',
inputExitId: 'Please input exit ID',
inputWarehouseId: 'Please input warehouse ID',
selectData: 'Please select data to operate',
confirmFinish: 'Are you sure to manually finish the data with ID "{jobIds}"?',
finishSuccess: 'Manual finish successful',
confirmInvalid: 'Are you sure to manually invalid the data with ID "{jobIds}"?',
invalidSuccess: 'Manual invalid successful'
},
// ****************盘点差异管理*****************
checkDifference: {
checkGuid: 'Check ID',
checkStockDetailId: 'Check Document ID',
stockId: 'Stock ID',
trayCode: 'Tray',
cargoSpaceId: 'Cargo Space ID',
productId: 'Product ID',
lotNo: 'Lot No.',
supplier: 'Supplier',
customer: 'Customer',
oldQuantity: 'Original Value',
newQuantity: 'New Value',
recordType: 'Operation Type',
productGuid: 'Product GUID',
operation: 'Operation',
edit: 'Edit',
delete: 'Delete',
search: 'Search',
reset: 'Reset',
confirm: 'Confirm',
cancel: 'Cancel',
inputCheckStockDetailId: 'Please enter check document ID',
inputStockId: 'Please enter stock ID',
inputTrayCode: 'Please enter tray',
inputCargoSpaceId: 'Please enter cargo space ID',
inputProductId: 'Please enter product ID',
inputLotNo: 'Please enter lot No.',
inputSupplier: 'Please enter supplier',
inputCustomer: 'Please enter customer',
inputOldQuantity: 'Please enter original value',
inputNewQuantity: 'Please enter new value',
inputProductGuid: 'Please enter product GUID'
},
menu: { menu: {
//收货单据新增 //收货单据新增
InboundManagement: 'InboundManagement', InboundManagement: 'InboundManagement',
ReceivingDocumentsAdd:"ReceivingDocumentsAdd", ReceivingDocumentsAdd: "ReceivingDocumentsAdd",
ReceiptDocumentManagement:"ReceiptDocumentManagement", ReceiptDocumentManagement: "ReceiptDocumentManagement",
ManagementOfInboundDocuments:"ManagementOfInboundDocuments", ManagementOfInboundDocuments: "ManagementOfInboundDocuments",
InboundTaskManagement:"InboundTaskManagement", InboundTaskManagement: "InboundTaskManagement",
//********************仓库管理******************** //********************仓库管理********************
@@ -317,10 +553,10 @@ export default {
//货位管理 //货位管理
CargoSpaceManagement: 'CargoSpaceManagement', CargoSpaceManagement: 'CargoSpaceManagement',
//********************出库管理******************** //********************出库管理********************
outboundManagement:'outboundManagement', outboundManagement: 'outboundManagement',
createNewOutboundDocument:'createNewOutboundDocument', createNewOutboundDocument: 'createNewOutboundDocument',
outboundDocumentManagement:'outboundDocumentManagement', outboundDocumentManagement: 'outboundDocumentManagement',
outboundTaskManagement:'outboundTaskManagement', outboundTaskManagement: 'outboundTaskManagement',
//********************系统管理******************** //********************系统管理********************
@@ -343,7 +579,13 @@ export default {
NoticeManagement: 'NoticeManagement', NoticeManagement: 'NoticeManagement',
//日志管理 //日志管理
LogManagement: 'LogManagement', LogManagement: 'LogManagement',
// ****************盘点管理******************
inventoryManagement: 'inventoryManagement',
createNewInventoryDocument: 'createNewInventoryDocument',
inventoryDocumentManagement: 'inventoryDocumentManagement',
inventoryStorageTask: 'inventoryStorageTask',
inventoryOutboundTask: 'inventoryOutboundTask',
inventoryDiscrepancyManagement: 'inventoryDiscrepancyManagement'
}, },
//=====================仓库(库区)管理===================== //=====================仓库(库区)管理=====================
@@ -406,7 +648,7 @@ export default {
}, },
//=====================货位管理===================== //=====================货位管理=====================
cargoSpace:{ cargoSpace: {
//--------------数据表标题-------------- //--------------数据表标题--------------
title: 'CargoSpace Management', title: 'CargoSpace Management',
cargoSpaceId: 'CargoSpaceId', cargoSpaceId: 'CargoSpaceId',
@@ -489,9 +731,6 @@ export default {
}, },
//=====================系统管理===================== //=====================系统管理=====================
systemManagement_RoleManagement: { systemManagement_RoleManagement: {
//--------------数据表标题-------------- //--------------数据表标题--------------
@@ -556,8 +795,8 @@ export default {
//---函数:handleStatusChange--- //---函数:handleStatusChange---
textEnable: 'enable', textEnable: 'enable',
textDisable: 'disable', textDisable: 'disable',
textUserConfirm1:"Are you sure you want to \"", textUserConfirm1: "Are you sure you want to \"",
textUserConfirm2:"\" user?", textUserConfirm2: "\" user?",
textSuccess: 'success', textSuccess: 'success',
//---函数:handleResetPwd--- //---函数:handleResetPwd---

View File

@@ -26,7 +26,7 @@ export default {
sidebarLogo: '侧边栏 Logo' sidebarLogo: '侧边栏 Logo'
}, },
// ***************收货单据新增************* // ***************收货单据新增*************
receiveStockinAdd:{ receiveStockinAdd: {
title: '新增收货单据', title: '新增收货单据',
warehouse: '仓库', warehouse: '仓库',
supplier: '供应商', supplier: '供应商',
@@ -69,64 +69,64 @@ export default {
totalAmount: '总金额', totalAmount: '总金额',
submit: '提交', submit: '提交',
selectProduct: '选择物料', selectProduct: '选择物料',
productId:'物料编码', productId: '物料编码',
spare1:'英文描述', spare1: '英文描述',
spare2:'单件净重KG', spare2: '单件净重KG',
totalNetWeight:'总净重', totalNetWeight: '总净重',
spare3:'箱号', spare3: '箱号',
spare4:'包装方式', spare4: '包装方式',
spare5:'长MM', spare5: '长MM',
spare6:'宽MM', spare6: '宽MM',
spare7:'高MM', spare7: '高MM',
spare8:'体积m³', spare8: '体积m³',
netWeight:'净重KG', netWeight: '净重KG',
grossWeight:'毛重KG' grossWeight: '毛重KG'
}, },
// ***************收货单据管理************* // ***************收货单据管理*************
inReceiveStockin:{ inReceiveStockin: {
stockinId:'入库订单ID', stockinId: '入库订单ID',
inputstockinId:'请输入入库订单ID', inputstockinId: '请输入入库订单ID',
supplierNo:'供应商编码', supplierNo: '供应商编码',
selecInType:"请选择入库类型", selecInType: "请选择入库类型",
inputSupplierNo:'请输入供应商编码', inputSupplierNo: '请输入供应商编码',
stockSource:'单据来源', stockSource: '单据来源',
inputStockSource:'请输入单据来源', inputStockSource: '请输入单据来源',
warehouseId:'仓库', warehouseId: '仓库',
selectWarehouseId:'请选择仓库', selectWarehouseId: '请选择仓库',
status:'单据状态', status: '单据状态',
selectStatus:'请选择单据状态', selectStatus: '请选择单据状态',
search:'搜索', search: '搜索',
reset:'重置', reset: '重置',
generateStockin:'生成入库单据', generateStockin: '生成入库单据',
delet:'删除', delet: '删除',
inType:'入库类型', inType: '入库类型',
createDate:'建立时间', createDate: '建立时间',
createManName:'创建人', createManName: '创建人',
warehouseName:'仓库', warehouseName: '仓库',
departmentName:'部门', departmentName: '部门',
supplierName:'供应商', supplierName: '供应商',
testing:'质检', testing: '质检',
stockinDetailId:'子单ID', stockinDetailId: '子单ID',
lotNo:'批次号', lotNo: '批次号',
productId:'物料编码', productId: '物料编码',
materialDesc:'物料描述', materialDesc: '物料描述',
englishDesc:'英文描述', englishDesc: '英文描述',
cartonNo:'箱号', cartonNo: '箱号',
packingMethod:'包装方式', packingMethod: '包装方式',
quantity:'计划数量', quantity: '计划数量',
stockStatus:'单据状态', stockStatus: '单据状态',
operate:'操作' operate: '操作'
}, },
// ***************入库单据管理************* // ***************入库单据管理*************
inStockin:{ inStockin: {
selecInType:"请选择入库类型", selecInType: "请选择入库类型",
cancel:'单据作废', cancel: '单据作废',
examine:'单据审核', examine: '单据审核',
confirm:'单据确认', confirm: '单据确认',
printBarcode:'打印条码', printBarcode: '打印条码',
finishDate:'完成日期', finishDate: '完成日期',
scanNum:'扫码数量', scanNum: '扫码数量',
assignNum:'实际数量' assignNum: '实际数量'
}, },
// ***************入库作业管理************* // ***************入库作业管理*************
inJob: { inJob: {
@@ -170,7 +170,7 @@ export default {
selectStatus: '请选择任务状态', selectStatus: '请选择任务状态',
inputTaskNo: '请输入任务号', inputTaskNo: '请输入任务号',
inputTrayCode: '请输入托盘码', inputTrayCode: '请输入托盘码',
targetCargoSpaceId:'目标货位ID', targetCargoSpaceId: '目标货位ID',
inputTargetCargoSpaceId: '请输入目标货位ID', inputTargetCargoSpaceId: '请输入目标货位ID',
selectExecutionPhase: '请选择执行阶段', selectExecutionPhase: '请选择执行阶段',
selectInOrOut: '请选择任务类型', selectInOrOut: '请选择任务类型',
@@ -179,7 +179,8 @@ export default {
inputEntranceId: '请输入入口ID', inputEntranceId: '请输入入口ID',
inputExitId: '请输入出口ID' inputExitId: '请输入出口ID'
}, },
addOutStockout:{ // ***************新建出库单据**************
addOutStockout: {
warehouse: '仓库', warehouse: '仓库',
selectWarehouse: '请选择仓库', selectWarehouse: '请选择仓库',
customer: '客户', customer: '客户',
@@ -204,7 +205,8 @@ export default {
confirm: '确 定', confirm: '确 定',
cancel: '取 消' cancel: '取 消'
}, },
outStockoutManage:{ // ***************出库单据管理**************
outStockoutManage: {
stockoutId: '出库单编号', stockoutId: '出库单编号',
outType: '出库类型', outType: '出库类型',
status: '单据状态', status: '单据状态',
@@ -238,7 +240,7 @@ export default {
selectStatus: '请选择单据状态', selectStatus: '请选择单据状态',
inputCustomerNo: '请输入客户编码' inputCustomerNo: '请输入客户编码'
}, },
productAndStock:{ productAndStock: {
serialNumber: '序号', serialNumber: '序号',
productId: '物资编码', productId: '物资编码',
lotNo: '批号', lotNo: '批号',
@@ -255,6 +257,7 @@ export default {
inputProductName: '请输入物资名称', inputProductName: '请输入物资名称',
inputWarehouse: '请输入仓库' inputWarehouse: '请输入仓库'
}, },
// ***************出库作业管理**************
outJobManagement: { outJobManagement: {
// 状态和作业类型 // 状态和作业类型
status: '状态', status: '状态',
@@ -303,14 +306,248 @@ export default {
manualComplete: '手动完成', manualComplete: '手动完成',
manualInvalidate: '手动作废' manualInvalidate: '手动作废'
}, },
menu:{ // *****************新建盘点单据***************
InboundManagement:"入库管理", checkCreate: {
warehouse: '仓库',
selectWarehouse: '请选择仓库',
customer: '客户',
inputCustomerNo: '请输入客户编号',
documentType: '单据类型',
selectDocumentType: '请选择单据类型',
reset: '重置',
saveDocument: '保存单据',
selectMaterial: '选择物资',
recreateDocument: '重新建单',
materialCode: '物资编号',
materialName: '物资名称',
batchNo: '批号',
inputBatchNo: '请输入批号',
quantity: '数量',
operation: '操作',
delete: '删除',
inputMaterialCode: '请输入物资编码',
inputMaterialName: '请输入物资名称',
search: '搜索',
confirm: '确定',
cancel: '取消',
warehouseRequired: '请选择仓库',
customerRequired: '请输入客户编号',
documentTypeRequired: '请选择单据类型',
selectMaterialRequired: '请选择物资',
materialExistWarning: '所选物资已存在,请重新选择',
quantityExceedError: '数量不能大于库存数量',
saveSuccess: '单据{msg}保存成功'
},
//***************盘点单据管理***************
checkStockCheck: {
stockCheckId: '盘点单据ID',
inputStockCheckId: '请输入盘点单据ID',
checkType: '盘库类型',
selectCheckType: '请选择盘库类型',
status: '状态',
selectStatus: '请选择状态',
warehouse: '仓库',
selectWarehouse: '请选择仓库',
search: '搜索',
reset: '重置',
invalidate: '单据作废',
review: '单据审核',
confirm: '单据确认',
warehouseId: '仓库ID',
stockSource: '单据来源',
departmentNo: '部门编码',
createManId: '创建人',
createDate: '建立时间',
finishDate: '完成日期',
detailId: '子单ID',
mainId: '主单ID',
lotNo: '批次号',
productId: '物料编码',
materialDesc: '物料描述',
englishDesc: '英文描述',
cartonNo: '箱号',
packingMethod: '包装方式',
quantity: '计划数量',
scanNum: '扫码数量',
assignNum: '实际数量',
stockCheckIdRequired: '盘点单据ID不能为空',
checkTypeRequired: '盘库类型不能为空',
createDateRequired: '建立时间不能为空',
statusRequired: '单据状态不能为空',
editSuccess: '修改成功',
addSuccess: '新增成功',
invalidateSuccess: '作废成功',
onlyUnreviewedCanInvalidate: '只有未审核的单据可以作废',
alreadyReviewed: '单据已审核,请勿重复审核',
reviewSuccess: '审核成功',
onlyUnreviewedCanReview: '只有未审核的单据可以审核',
confirmSuccess: '确认成功',
onlyReviewedCanConfirm: '只有已审核的单据可以确认'
},
// ***************盘点入库作业*************
checkJobIn: {
jobId: '任务ID',
status: '任务状态',
onLineType: '上线类型',
jobType: '任务类型',
taskNo: '任务号',
supplier: '供应商',
department: '部门',
trayCode: '托盘码',
roadwayId: '巷道ID',
cargoSpace: '货位',
targetRoadway: '目标巷道',
targetCargoSpace: '目标货位',
lineId: '产线ID',
workshopId: '车间ID',
priority: '优先级',
executionPhase: '执行阶段',
startTime: '开始时间',
finishTime: '结束时间',
entrance: '入口',
entranceId: '入口ID',
exit: '出口',
exitId: '出口ID',
classId: '班组ID',
warehouseId: '仓库ID',
warehouse: '仓库',
faultFlag: '重分标记',
jobDetailId: '子任务ID',
stockId: '库存ID',
lotNo: '批次号',
inDate: '入库时间',
inOrOutId: '单据ID',
inOrOutDId: '子单据ID',
productGuid: '物料GUID',
productId: '物料编码',
stockStatus: '库存状态',
inQuantity: '入库数量',
printDate: '生产日期',
supplierId: '供应商ID',
// 按钮和操作文本
search: '搜索',
reset: '重置',
manualVoid: '手动作废',
manualFinish: '手动完成',
// 输入框提示文本
inputJobId: '请输入任务ID',
selectStatus: '请选择任务状态',
inputTaskNo: '请输入任务号',
inputTrayCode: '请输入托盘码',
inputTargetCargoSpace: '请输入目标货位',
selectExecutionPhase: '请选择执行阶段',
selectJobType: '请选择任务类型',
selectStartTime: '请选择开始时间',
selectFinishTime: '请选择结束时间',
inputEntranceId: '请输入入口ID',
inputExitId: '请输入出口ID',
inputWarehouseId: '请输入仓库ID',
// 校验提示信息
jobIdRequired: '任务ID不能为空',
statusRequired: '任务状态不能为空',
taskNoRequired: '任务号不能为空',
selectData: '请选择要操作的数据'
},
// **************盘点出库作业****************
checkJobOut: {
jobId: '任务ID',
status: '任务状态',
onLineType: '上线类型',
jobType: '任务类型',
taskNo: '任务号',
supplierId: '供应商ID',
departmentId: '部门ID',
trayCode: '托盘码',
roadwayId: '巷道ID',
cargoSpaceId: '货位ID',
targetRoadwayId: '目标巷道ID',
targetCargoSpace: '目标货位',
lineId: '产线ID',
workshopId: '车间ID',
priority: '优先级',
executionPhase: '执行阶段',
startTime: '开始时间',
finishTime: '结束时间',
entranceId: '入口ID',
exitId: '出口ID',
classId: '班组ID',
warehouse: '仓库',
faultFlag: '重分标记',
operation: '操作',
subJobId: '子任务ID',
stockId: '库存ID',
batchNo: '批次号',
inTime: '入库时间',
billId: '单据ID',
subBillId: '子单据ID',
materialGuid: '物料GUID',
materialCode: '物料编码',
stockStatus: '库存状态',
inQty: '入库数量',
productDate: '生产日期',
search: '搜索',
reset: '重置',
manualFinish: '手动完成',
manualInvalid: '手动作废',
inputJobId: '请输入任务ID',
selectStatus: '请选择任务状态',
inputTaskNo: '请输入任务号',
inputTrayCode: '请输入托盘码',
inputTargetCargoSpace: '请输入目标货位ID',
selectExecutionPhase: '请选择执行阶段',
selectJobType: '请选择任务类型',
selectStartTime: '请选择开始时间',
selectFinishTime: '请选择结束时间',
inputEntranceId: '请输入入口ID',
inputExitId: '请输入出口ID',
inputWarehouseId: '请输入仓库ID',
selectData: '请选择要操作的数据',
confirmFinish: '是否确认手动完成编号为"{jobIds}"的数据项?',
finishSuccess: '手动完成成功',
confirmInvalid: '是否确认手动作废编号为"{jobIds}"的数据项?',
invalidSuccess: '手动作废成功'
},
// ****************盘点差异管理*****************
checkDifference: {
checkGuid: '盘点id',
checkStockDetailId: '盘点单据id',
stockId: '库存id',
trayCode: '托盘',
cargoSpaceId: '货位id',
productId: '物料id',
lotNo: '批次号',
supplier: '供应商',
customer: '客户',
oldQuantity: '原值',
newQuantity: '新值',
recordType: '操作方式',
productGuid: '物料guid',
operation: '操作',
edit: '修改',
delete: '删除',
search: '搜索',
reset: '重置',
confirm: '确定',
cancel: '取消',
inputCheckStockDetailId: '请输入盘点单据id',
inputStockId: '请输入库存id',
inputTrayCode: '请输入托盘',
inputCargoSpaceId: '请输入货位id',
inputProductId: '请输入物料id',
inputLotNo: '请输入批次号',
inputSupplier: '请输入供应商',
inputCustomer: '请输入客户',
inputOldQuantity: '请输入原值',
inputNewQuantity: '请输入新值',
inputProductGuid: '请输入物料guid'
},
menu: {
InboundManagement: "入库管理",
//收货单据新增 //收货单据新增
ReceivingDocumentsAdd: '收货单据新增', ReceivingDocumentsAdd: '收货单据新增',
ReceiptDocumentManagement:"收货单据管理", ReceiptDocumentManagement: "收货单据管理",
ManagementOfInboundDocuments:"入库单据管理", ManagementOfInboundDocuments: "入库单据管理",
InboundTaskManagement:"入库作业管理", InboundTaskManagement: "入库作业管理",
//********************仓库管理******************** //********************仓库管理********************
@@ -320,10 +557,10 @@ export default {
//货位管理 //货位管理
CargoSpaceManagement: '货位管理', CargoSpaceManagement: '货位管理',
//********************出库管理******************** //********************出库管理********************
outboundManagement:'出库管理', outboundManagement: '出库管理',
createNewOutboundDocument:'新建出库单据', createNewOutboundDocument: '新建出库单据',
outboundDocumentManagement:'出库单据管理', outboundDocumentManagement: '出库单据管理',
outboundTaskManagement:'出库作业管理', outboundTaskManagement: '出库作业管理',
//********************系统管理******************** //********************系统管理********************
SystemManagement: '系统管理', SystemManagement: '系统管理',
@@ -345,7 +582,13 @@ export default {
NoticeManagement: '通知公告', NoticeManagement: '通知公告',
//日志管理 //日志管理
LogManagement: '日志管理', LogManagement: '日志管理',
// ****************盘点管理******************
inventoryManagement: '盘点管理',
createNewInventoryDocument: '新建盘点单据',
inventoryDocumentManagement: '盘点单据管理',
inventoryStorageTask: '盘点入库作业',
inventoryOutboundTask: '盘点出库作业',
inventoryDiscrepancyManagement: '盘点差异管理'
}, },
@@ -490,11 +733,6 @@ export default {
}, },
//=====================系统管理:用户管理===================== //=====================系统管理:用户管理=====================
systemManagement_RoleManagement: { systemManagement_RoleManagement: {
//--------------数据表标题-------------- //--------------数据表标题--------------
@@ -559,8 +797,8 @@ export default {
//---函数:handleStatusChange--- //---函数:handleStatusChange---
textEnable: '启用', textEnable: '启用',
textDisable: '禁用', textDisable: '禁用',
textUserConfirm1:"确认要\"", textUserConfirm1: "确认要\"",
textUserConfirm2:"\"用户吗?", textUserConfirm2: "\"用户吗?",
textSuccess: '成功', textSuccess: '成功',
//---函数:handleResetPwd--- //---函数:handleResetPwd---
@@ -606,5 +844,4 @@ export default {
}, },
} }

View File

@@ -2,8 +2,8 @@
<div class="app-container"> <div class="app-container">
<!-- 主表信息录入 --> <!-- 主表信息录入 -->
<el-form :model="formData" ref="formRef" size="small" :inline="true" label-width="68px" :rules="rules"> <el-form :model="formData" ref="formRef" size="small" :inline="true" label-width="68px" :rules="rules">
<el-form-item label="仓库" prop="warehouseId" required> <el-form-item :label="$t('checkCreate.warehouse')" prop="warehouseId" required> <!-- 仓库 -->
<el-select v-model="formData.warehouseId" placeholder="请选择仓库" clearable> <el-select v-model="formData.warehouseId" :placeholder="$t('checkCreate.selectWarehouse')" clearable>
<el-option <el-option
v-for="dict in warehouseOptions" v-for="dict in warehouseOptions"
:key="dict.warehouseId" :key="dict.warehouseId"
@@ -12,15 +12,15 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="客户" prop="customerNo" required> <el-form-item :label="$t('checkCreate.customer')" prop="customerNo" required> <!-- 客户 -->
<el-input <el-input
v-model="formData.customerNo" v-model="formData.customerNo"
placeholder="请输入客户编号" :placeholder="$t('checkCreate.inputCustomerNo')"
clearable clearable
/> />
</el-form-item> </el-form-item>
<el-form-item label="单据类型" prop="checkType" required> <el-form-item :label="$t('checkCreate.documentType')" prop="checkType" required> <!-- 单据类型 -->
<el-select v-model="formData.checkType" placeholder="请选择单据类型" clearable> <el-select v-model="formData.checkType" :placeholder="$t('checkCreate.selectDocumentType')" clearable>
<el-option <el-option
v-for="dict in dict.type.check_stock_type" v-for="dict in dict.type.check_stock_type"
:key="dict.value" :key="dict.value"
@@ -30,60 +30,60 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="warning" icon="el-icon-refresh" size="mini" @click="reset">重置</el-button> <el-button type="warning" icon="el-icon-refresh" size="mini" @click="reset">{{ $t('checkCreate.reset') }}</el-button> <!-- 重置 -->
<el-button type="success" icon="el-icon-check" size="mini" @click="handleSave">保存单据</el-button> <el-button type="success" icon="el-icon-check" size="mini" @click="handleSave">{{ $t('checkCreate.saveDocument') }}</el-button> <!-- 保存单据 -->
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="mb8"> <div class="mb8">
<el-button type="primary" icon="el-icon-plus" size="mini" @click="handleSelectMaterials">选择物资</el-button> <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleSelectMaterials">{{ $t('checkCreate.selectMaterial') }}</el-button> <!-- 选择物资 -->
<el-button type="info" icon="el-icon-refresh-right" size="mini" @click="handleReload">重新建单</el-button> <el-button type="info" icon="el-icon-refresh-right" size="mini" @click="handleReload">{{ $t('checkCreate.recreateDocument') }}</el-button> <!-- 重新建单 -->
</div> </div>
<!-- 物资明细表格 --> <!-- 物资明细表格 -->
<el-table v-loading="loading" :data="materialList"> <el-table v-loading="loading" :data="materialList">
<el-table-column label="物资编号" align="center" prop="productId" /> <el-table-column :label="$t('checkCreate.materialCode')" align="center" prop="productId" /> <!-- 物资编号 -->
<el-table-column label="物资名称" align="center" prop="productName" /> <el-table-column :label="$t('checkCreate.materialName')" align="center" prop="productName" /> <!-- 物资名称 -->
<el-table-column label="批号" align="center" prop="lotNo"> <el-table-column :label="$t('checkCreate.batchNo')" align="center" prop="lotNo"> <!-- 批号 -->
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.lotNo" size="mini" placeholder="请输入批号" /> <el-input v-model="scope.row.lotNo" size="mini" :placeholder="$t('checkCreate.inputBatchNo')" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="数量" align="center" prop="quantity"> <el-table-column :label="$t('checkCreate.quantity')" align="center" prop="quantity"> <!-- 数量 -->
<template slot-scope="scope"> <template slot-scope="scope">
<el-input-number v-model="scope.row.quantity" :min="1" size="mini" @change="handleQuantityChange(scope.row)" /> <el-input-number v-model="scope.row.quantity" :min="1" size="mini" @change="handleQuantityChange(scope.row)" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column :label="$t('checkCreate.operation')" align="center" class-name="small-padding fixed-width"> <!-- 操作 -->
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.$index)">删除</el-button> <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.$index)">{{ $t('checkCreate.delete') }}</el-button> <!-- 删除 -->
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<!-- 选择物资弹窗 --> <!-- 选择物资弹窗 -->
<el-dialog title="选择物资" :visible.sync="materialDialog" width="800px" append-to-body> <el-dialog :title="$t('checkCreate.selectMaterial')" :visible.sync="materialDialog" width="800px" append-to-body> <!-- 选择物资 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="物资编码" prop="productId"> <el-form-item :label="$t('checkCreate.materialCode')" prop="productId"> <!-- 物资编码 -->
<el-input <el-input
v-model="queryParams.productId" v-model="queryParams.productId"
placeholder="请输入物资编码" :placeholder="$t('checkCreate.inputMaterialCode')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="物资名称" prop="productName"> <el-form-item :label="$t('checkCreate.materialName')" prop="productName"> <!-- 物资名称 -->
<el-input <el-input
v-model="queryParams.productName" v-model="queryParams.productName"
placeholder="请输入物资名称" :placeholder="$t('checkCreate.inputMaterialName')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="批号" prop="lotNo"> <el-form-item :label="$t('checkCreate.batchNo')" prop="lotNo"> <!-- 批号 -->
<el-input <el-input
v-model="queryParams.lotNo" v-model="queryParams.lotNo"
placeholder="请输入批号" :placeholder="$t('checkCreate.inputBatchNo')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -97,27 +97,21 @@
/> />
</el-form-item> --> </el-form-item> -->
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{ $t('checkCreate.search') }}</el-button> <!-- 搜索 -->
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('checkCreate.reset') }}</el-button> <!-- 重置 -->
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table v-loading="materialLoading" :data="materialOptions" @selection-change="handleSelectionChange"> <el-table v-loading="materialLoading" :data="materialOptions" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
<el-table-column label="物资编码" align="center" prop="productId" /> <el-table-column :label="$t('checkCreate.materialCode')" align="center" prop="productId" /> <!-- 物资编码 -->
<el-table-column label="物资名称" align="center" prop="productName" /> <el-table-column :label="$t('checkCreate.materialName')" align="center" prop="productName" /> <!-- 物资名称 -->
<!-- <el-table-column label="批号" align="center" prop="lotNo"> <el-table-column :label="$t('checkCreate.quantity')" align="center" prop="quantity" /> <!-- 数量 -->
<template slot-scope="scope">
<el-input v-model="scope.row.lotNo" size="mini" placeholder="请输入批号" />
</template>
</el-table-column> -->
<el-table-column label="数量" align="center" prop="quantity" />
<!-- <el-table-column label="仓库" align="center" prop="warehouseId" /> -->
</el-table> </el-table>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="primary" @click="confirmSelectMaterials">确 定</el-button> <el-button type="primary" @click="confirmSelectMaterials">{{ $t('checkCreate.confirm') }}</el-button> <!-- 确定 -->
<el-button @click="cancelSelectMaterials">取 消</el-button> <el-button @click="cancelSelectMaterials">{{ $t('checkCreate.cancel') }}</el-button> <!-- 取消 -->
</div> </div>
</el-dialog> </el-dialog>
</div> </div>
@@ -139,13 +133,13 @@
// 表单验证规则 // 表单验证规则
rules: { rules: {
warehouseId: [ warehouseId: [
{ required: true, message: "请选择仓库", trigger: "change" } { required: true, message: this.$t('checkCreate.warehouseRequired'), trigger: "change" }
], ],
customerNo: [ customerNo: [
{ required: true, message: "请输入客户编号", trigger: "blur" } { required: true, message: this.$t('checkCreate.customerRequired'), trigger: "blur" }
], ],
billType: [ billType: [
{ required: true, message: "请选择单据类型", trigger: "change" } { required: true, message: this.$t('checkCreate.documentTypeRequired'), trigger: "change" }
] ]
}, },
// 主表数据 // 主表数据
@@ -208,7 +202,7 @@
/** 确认选择物资 */ /** 确认选择物资 */
confirmSelectMaterials() { confirmSelectMaterials() {
if (this.selectedMaterials.length === 0) { if (this.selectedMaterials.length === 0) {
this.$modal.msgError("请选择物资"); this.$modal.msgError(this.$t('checkCreate.selectMaterialRequired'));
return; return;
} }
// 过滤掉已经存在的物资 // 过滤掉已经存在的物资
@@ -217,7 +211,7 @@
}); });
if (newMaterials.length === 0) { if (newMaterials.length === 0) {
this.$modal.msgWarning("所选物资已存在,请重新选择"); this.$modal.msgWarning(this.$t('checkCreate.materialExistWarning'));
return; return;
} }
@@ -260,7 +254,7 @@
// 如果修改后的数量大于初始数量,给出提示并重置为当前值 // 如果修改后的数量大于初始数量,给出提示并重置为当前值
if (row.quantity > row.quantityOrignal) { if (row.quantity > row.quantityOrignal) {
this.$modal.msgError("数量不能大于库存数量"); this.$modal.msgError(this.$t('checkCreate.quantityExceedError'));
row.quantity = row.quantityOrignal; row.quantity = row.quantityOrignal;
} }
}, },
@@ -269,7 +263,7 @@
this.$refs.formRef.validate(valid => { this.$refs.formRef.validate(valid => {
if (valid) { if (valid) {
if (this.materialList.length === 0) { if (this.materialList.length === 0) {
this.$modal.msgError("请选择物资"); this.$modal.msgError(this.$t('checkCreate.selectMaterialRequired'));
return; return;
} }
const data = { const data = {
@@ -279,7 +273,7 @@
// 这里需要调用保存接口 // 这里需要调用保存接口
saveCheckStock(data).then(response => { saveCheckStock(data).then(response => {
console.log(response) console.log(response)
this.$modal.msgSuccess("单据"+response.msg+"保存成功"); this.$modal.msgSuccess(this.$t('checkCreate.saveSuccess', { msg: response.msg }));
this.$tab.refreshPage(this.$route); this.$tab.refreshPage(this.$route);
// this.reset(); // this.reset();
}); });

View File

@@ -1,50 +1,50 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="盘点单据id" prop="checkStockDetailId"> <el-form-item :label="$t('checkDifference.checkStockDetailId')" prop="checkStockDetailId"> <!-- 盘点单据id -->
<el-input <el-input
v-model="queryParams.checkStockDetailId" v-model="queryParams.checkStockDetailId"
placeholder="请输入盘点单据id" :placeholder="$t('checkDifference.inputCheckStockDetailId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="库存id" prop="stockId"> <el-form-item :label="$t('checkDifference.stockId')" prop="stockId"> <!-- 库存id -->
<el-input <el-input
v-model="queryParams.stockId" v-model="queryParams.stockId"
placeholder="请输入库存id" :placeholder="$t('checkDifference.inputStockId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="托盘" prop="trayCode"> <el-form-item :label="$t('checkDifference.trayCode')" prop="trayCode"> <!-- 托盘 -->
<el-input <el-input
v-model="queryParams.trayCode" v-model="queryParams.trayCode"
placeholder="请输入托盘" :placeholder="$t('checkDifference.inputTrayCode')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="货位id" prop="cargoSpaceId"> <el-form-item :label="$t('checkDifference.cargoSpaceId')" prop="cargoSpaceId"> <!-- 货位id -->
<el-input <el-input
v-model="queryParams.cargoSpaceId" v-model="queryParams.cargoSpaceId"
placeholder="请输入货位id" :placeholder="$t('checkDifference.inputCargoSpaceId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="物料id" prop="productId"> <el-form-item :label="$t('checkDifference.productId')" prop="productId"> <!-- 物料id -->
<el-input <el-input
v-model="queryParams.productId" v-model="queryParams.productId"
placeholder="请输入物料id" :placeholder="$t('checkDifference.inputProductId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="批次号" prop="lotNo"> <el-form-item :label="$t('checkDifference.lotNo')" prop="lotNo"> <!-- 批次号 -->
<el-input <el-input
v-model="queryParams.lotNo" v-model="queryParams.lotNo"
placeholder="请输入批次号" :placeholder="$t('checkDifference.inputLotNo')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -90,8 +90,8 @@
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{$t('checkDifference.search')}}</el-button> <!-- 搜索 -->
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{$t('checkDifference.reset')}}</el-button> <!-- 重置 -->
</el-form-item> </el-form-item>
</el-form> </el-form>
@@ -143,20 +143,20 @@
<el-table v-loading="loading" :data="differenceList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="differenceList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="盘点id" align="center" prop="checkGuid" /> <el-table-column :label="$t('checkDifference.checkGuid')" align="center" prop="checkGuid" /> <!-- 盘点id -->
<el-table-column label="盘点单据id" align="center" prop="checkStockDetailId" /> <el-table-column :label="$t('checkDifference.checkStockDetailId')" align="center" prop="checkStockDetailId" /> <!-- 盘点单据id -->
<el-table-column label="库存id" align="center" prop="stockId" /> <el-table-column :label="$t('checkDifference.stockId')" align="center" prop="stockId" /> <!-- 库存id -->
<el-table-column label="托盘" align="center" prop="trayCode" /> <el-table-column :label="$t('checkDifference.trayCode')" align="center" prop="trayCode" /> <!-- 托盘 -->
<el-table-column label="货位id" align="center" prop="cargoSpaceId" /> <el-table-column :label="$t('checkDifference.cargoSpaceId')" align="center" prop="cargoSpaceId" /> <!-- 货位id -->
<el-table-column label="物料id" align="center" prop="productId" /> <el-table-column :label="$t('checkDifference.productId')" align="center" prop="productId" /> <!-- 物料id -->
<el-table-column label="批次号" align="center" prop="lotNo" /> <el-table-column :label="$t('checkDifference.lotNo')" align="center" prop="lotNo" /> <!-- 批次号 -->
<el-table-column label="供应商" align="center" prop="supplier" /> <el-table-column :label="$t('checkDifference.supplier')" align="center" prop="supplier" /> <!-- 供应商 -->
<el-table-column label="客户" align="center" prop="customer" /> <el-table-column :label="$t('checkDifference.customer')" align="center" prop="customer" /> <!-- 客户 -->
<el-table-column label="原值" align="center" prop="oldQuantity" /> <el-table-column :label="$t('checkDifference.oldQuantity')" align="center" prop="oldQuantity" /> <!-- 原值 -->
<el-table-column label="新值" align="center" prop="newQuantity" /> <el-table-column :label="$t('checkDifference.newQuantity')" align="center" prop="newQuantity" /> <!-- 新值 -->
<el-table-column label="操作方式" align="center" prop="recordType" /> <el-table-column :label="$t('checkDifference.recordType')" align="center" prop="recordType" /> <!-- 操作方式 -->
<el-table-column label="物料guid" align="center" prop="productGuid" /> <el-table-column :label="$t('checkDifference.productGuid')" align="center" prop="productGuid" /> <!-- 物料guid -->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column :label="$t('checkDifference.operation')" align="center" class-name="small-padding fixed-width"> <!-- 操作 -->
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
size="mini" size="mini"
@@ -164,14 +164,14 @@
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
v-hasPermi="['check:difference:edit']" v-hasPermi="['check:difference:edit']"
>修改</el-button> >{{$t('checkDifference.edit')}}</el-button> <!-- 修改 -->
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-delete" icon="el-icon-delete"
@click="handleDelete(scope.row)" @click="handleDelete(scope.row)"
v-hasPermi="['check:difference:remove']" v-hasPermi="['check:difference:remove']"
>删除</el-button> >{{$t('checkDifference.delete')}}</el-button> <!-- 删除 -->
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@@ -187,43 +187,43 @@
<!-- 添加或修改盘点差异对话框 --> <!-- 添加或修改盘点差异对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="盘点单据id" prop="checkStockDetailId"> <el-form-item :label="$t('checkDifference.checkStockDetailId')" prop="checkStockDetailId"> <!-- 盘点单据id -->
<el-input v-model="form.checkStockDetailId" placeholder="请输入盘点单据id" /> <el-input v-model="form.checkStockDetailId" :placeholder="$t('checkDifference.inputCheckStockDetailId')" />
</el-form-item> </el-form-item>
<el-form-item label="库存id" prop="stockId"> <el-form-item :label="$t('checkDifference.stockId')" prop="stockId"> <!-- 库存id -->
<el-input v-model="form.stockId" placeholder="请输入库存id" /> <el-input v-model="form.stockId" :placeholder="$t('checkDifference.inputStockId')" />
</el-form-item> </el-form-item>
<el-form-item label="托盘" prop="trayCode"> <el-form-item :label="$t('checkDifference.trayCode')" prop="trayCode"> <!-- 托盘 -->
<el-input v-model="form.trayCode" placeholder="请输入托盘" /> <el-input v-model="form.trayCode" :placeholder="$t('checkDifference.inputTrayCode')" />
</el-form-item> </el-form-item>
<el-form-item label="货位id" prop="cargoSpaceId"> <el-form-item :label="$t('checkDifference.cargoSpaceId')" prop="cargoSpaceId"> <!-- 货位id -->
<el-input v-model="form.cargoSpaceId" placeholder="请输入货位id" /> <el-input v-model="form.cargoSpaceId" :placeholder="$t('checkDifference.inputCargoSpaceId')" />
</el-form-item> </el-form-item>
<el-form-item label="物料id" prop="productId"> <el-form-item :label="$t('checkDifference.productId')" prop="productId"> <!-- 物料id -->
<el-input v-model="form.productId" placeholder="请输入物料id" /> <el-input v-model="form.productId" :placeholder="$t('checkDifference.inputProductId')" />
</el-form-item> </el-form-item>
<el-form-item label="批次号" prop="lotNo"> <el-form-item :label="$t('checkDifference.lotNo')" prop="lotNo"> <!-- 批次号 -->
<el-input v-model="form.lotNo" placeholder="请输入批次号" /> <el-input v-model="form.lotNo" :placeholder="$t('checkDifference.inputLotNo')" />
</el-form-item> </el-form-item>
<el-form-item label="供应商" prop="supplier"> <el-form-item :label="$t('checkDifference.supplier')" prop="supplier"> <!-- 供应商 -->
<el-input v-model="form.supplier" placeholder="请输入供应商" /> <el-input v-model="form.supplier" :placeholder="$t('checkDifference.inputSupplier')" />
</el-form-item> </el-form-item>
<el-form-item label="客户" prop="customer"> <el-form-item :label="$t('checkDifference.customer')" prop="customer"> <!-- 客户 -->
<el-input v-model="form.customer" placeholder="请输入客户" /> <el-input v-model="form.customer" :placeholder="$t('checkDifference.inputCustomer')" />
</el-form-item> </el-form-item>
<el-form-item label="原值" prop="oldQuantity"> <el-form-item :label="$t('checkDifference.oldQuantity')" prop="oldQuantity"> <!-- 原值 -->
<el-input v-model="form.oldQuantity" placeholder="请输入原值" /> <el-input v-model="form.oldQuantity" :placeholder="$t('checkDifference.inputOldQuantity')" />
</el-form-item> </el-form-item>
<el-form-item label="新值" prop="newQuantity"> <el-form-item :label="$t('checkDifference.newQuantity')" prop="newQuantity"> <!-- 新值 -->
<el-input v-model="form.newQuantity" placeholder="请输入新值" /> <el-input v-model="form.newQuantity" :placeholder="$t('checkDifference.inputNewQuantity')" />
</el-form-item> </el-form-item>
<el-form-item label="物料guid" prop="productGuid"> <el-form-item :label="$t('checkDifference.productGuid')" prop="productGuid"> <!-- 物料guid -->
<el-input v-model="form.productGuid" placeholder="请输入物料guid" /> <el-input v-model="form.productGuid" :placeholder="$t('checkDifference.inputProductGuid')" />
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button> <el-button type="primary" @click="submitForm">{{$t('checkDifference.confirm')}}</el-button> <!-- 确定 -->
<el-button @click="cancel">取 消</el-button> <el-button @click="cancel">{{$t('checkDifference.cancel')}}</el-button> <!-- 取消 -->
</div> </div>
</el-dialog> </el-dialog>
</div> </div>

View File

@@ -1,16 +1,16 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="任务ID" prop="jobId"> <el-form-item :label="$t('checkJobIn.jobId')" prop="jobId"> <!--任务ID-->
<el-input <el-input
v-model="queryParams.jobId" v-model="queryParams.jobId"
placeholder="请输入任务ID" :placeholder="$t('checkJobIn.inputJobId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="任务状态" prop="status"> <el-form-item :label="$t('checkJobIn.status')" prop="status"> <!--任务状态-->
<el-select v-model="queryParams.status" placeholder="请选择任务状态" clearable> <el-select v-model="queryParams.status" :placeholder="$t('checkJobIn.selectStatus')" clearable>
<el-option <el-option
v-for="dict in dict.type.mydo_job_status" v-for="dict in dict.type.mydo_job_status"
:key="dict.value" :key="dict.value"
@@ -29,10 +29,10 @@
/> />
</el-select> </el-select>
</el-form-item>--> </el-form-item>-->
<el-form-item label="任务号" prop="taskNo"> <el-form-item :label="$t('checkJobIn.taskNo')" prop="taskNo"> <!--任务号-->
<el-input <el-input
v-model="queryParams.taskNo" v-model="queryParams.taskNo"
placeholder="请输入任务号" :placeholder="$t('checkJobIn.inputTaskNo')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -61,10 +61,10 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item label="托盘码" prop="trayCode"> <el-form-item :label="$t('checkJobIn.trayCode')" prop="trayCode"> <!--托盘码-->
<el-input <el-input
v-model="queryParams.trayCode" v-model="queryParams.trayCode"
placeholder="请输入托盘码" :placeholder="$t('checkJobIn.inputTrayCode')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -93,10 +93,10 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item label="目标货位" prop="targetCargoSpaceId"> <el-form-item :label="$t('checkJobIn.targetCargoSpace')" prop="targetCargoSpaceId"> <!--目标货位-->
<el-input <el-input
v-model="queryParams.targetCargoSpaceId" v-model="queryParams.targetCargoSpaceId"
placeholder="请输入目标货位ID" :placeholder="$t('checkJobIn.inputTargetCargoSpace')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -125,8 +125,8 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item label="执行阶段" prop="executionPhase"> <el-form-item :label="$t('checkJobIn.executionPhase')" prop="executionPhase"> <!--执行阶段-->
<el-select v-model="queryParams.executionPhase" placeholder="请选择执行阶段" clearable> <el-select v-model="queryParams.executionPhase" :placeholder="$t('checkJobIn.selectExecutionPhase')" clearable>
<el-option <el-option
v-for="dict in dict.type.execution_phase_type" v-for="dict in dict.type.execution_phase_type"
:key="dict.value" :key="dict.value"
@@ -135,8 +135,8 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="任务类型" prop="inOrOut"> <el-form-item :label="$t('checkJobIn.jobType')" prop="inOrOut"> <!--任务类型-->
<el-select v-model="queryParams.inOrOut" placeholder="请选择任务类型" clearable> <el-select v-model="queryParams.inOrOut" :placeholder="$t('checkJobIn.selectJobType')" clearable>
<el-option <el-option
v-for="dict in dict.type.check_in_job_type" v-for="dict in dict.type.check_in_job_type"
:key="dict.value" :key="dict.value"
@@ -145,34 +145,34 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="开始时间" prop="startTime"> <el-form-item :label="$t('checkJobIn.startTime')" prop="startTime"> <!--开始时间-->
<el-date-picker clearable <el-date-picker clearable
v-model="queryParams.startTime" v-model="queryParams.startTime"
type="date" type="date"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
placeholder="请选择开始时间"> :placeholder="$t('checkJobIn.selectStartTime')">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="结束时间" prop="finishTime"> <el-form-item :label="$t('checkJobIn.finishTime')" prop="finishTime"> <!--结束时间-->
<el-date-picker clearable <el-date-picker clearable
v-model="queryParams.finishTime" v-model="queryParams.finishTime"
type="date" type="date"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
placeholder="请选择结束时间"> :placeholder="$t('checkJobIn.selectFinishTime')">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="入口" prop="entranceId"> <el-form-item :label="$t('checkJobIn.entrance')" prop="entranceId"> <!--入口-->
<el-input <el-input
v-model="queryParams.entranceId" v-model="queryParams.entranceId"
placeholder="请输入入口ID" :placeholder="$t('checkJobIn.inputEntranceId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="出口" prop="exitId"> <el-form-item :label="$t('checkJobIn.exit')" prop="exitId"> <!--出口-->
<el-input <el-input
v-model="queryParams.exitId" v-model="queryParams.exitId"
placeholder="请输入出口ID" :placeholder="$t('checkJobIn.inputExitId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -185,10 +185,10 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item label="仓库" prop="warehouseId"> <el-form-item :label="$t('checkJobIn.warehouse')" prop="warehouseId"> <!--仓库-->
<el-input <el-input
v-model="queryParams.warehouseId" v-model="queryParams.warehouseId"
placeholder="请输入仓库ID" :placeholder="$t('checkJobIn.inputWarehouseId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -202,8 +202,8 @@
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{$t('checkJobIn.search')}}</el-button> <!--搜索-->
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{$t('checkJobIn.reset')}}</el-button> <!--重置-->
</el-form-item> </el-form-item>
</el-form> </el-form>
@@ -212,11 +212,12 @@
<el-button <el-button
type="danger" type="danger"
plain plain
icon="el-icon-edit" icon="el-icon-delete"
size="mini" size="mini"
@click="handleCompletedManually({type: 'invalid'})" :disabled="multiple"
v-hasPermi="['job:mydoJob:CompletedManually']" @click="handleManualVoid"
>手动作废</el-button> v-hasPermi="['check:job:in:void']"
>{{$t('checkJobIn.manualVoid')}}</el-button> <!--手动作废-->
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@@ -224,75 +225,64 @@
plain plain
icon="el-icon-edit" icon="el-icon-edit"
size="mini" size="mini"
@click="handleCompletedManually({type: 'completed'})" :disabled="multiple"
v-hasPermi="['job:mydoJob:CompletedManually']" @click="handleManualFinish"
>手动完成</el-button> v-hasPermi="['check:job:in:finish']"
>{{$t('checkJobIn.manualFinish')}}</el-button> <!--手动完成-->
</el-col> </el-col>
<!-- <el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['job:mydoJob:export']"
>导出</el-button>
</el-col>-->
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table v-loading="loading" :data="mydoJobList" @selection-change="handleSelectionChange" @row-click="handleRowClick" highlight-current-row :current-row="currentRow" <el-table v-loading="loading" :data="mydoJobList" @selection-change="handleSelectionChange" @row-click="handleRowClick" highlight-current-row :current-row="currentRow"
max-height="300"> max-height="300">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="任务ID" align="center" prop="jobId" fixed /> <el-table-column :label="$t('checkJobIn.jobId')" align="center" prop="jobId" /> <!--任务ID-->
<el-table-column label="任务状态" align="center" prop="status"> <el-table-column :label="$t('checkJobIn.status')" align="center" prop="status"> <!--任务状态-->
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.mydo_job_status" :value="scope.row.status"/> <dict-tag :options="dict.type.mydo_job_status" :value="scope.row.status"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="上线类型" align="center" prop="onLineType"> <el-table-column :label="$t('checkJobIn.onLineType')" align="center" prop="onLineType"> <!--上线类型-->
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.on_line_type" :value="scope.row.onLineType"/> <dict-tag :options="dict.type.on_line_type" :value="scope.row.onLineType"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="任务类型" align="center" prop="inOrOut"> <el-table-column :label="$t('checkJobIn.jobType')" align="center" prop="inOrOut"> <!--任务类型-->
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.check_in_job_type" :value="scope.row.inOrOut"/> <dict-tag :options="dict.type.check_in_job_type" :value="scope.row.inOrOut"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="任务号" align="center" prop="taskNo" /> <el-table-column :label="$t('checkJobIn.taskNo')" align="center" prop="taskNo" /> <!--任务号-->
<el-table-column label="供应商" align="center" prop="supplierName" key="supplierId" value="supplierName" /> <el-table-column :label="$t('checkJobIn.supplier')" align="center" prop="supplierName" key="supplierId" value="supplierName" /> <!--供应商-->
<!-- <el-table-column label="客户ID" align="center" prop="customerId" />--> <el-table-column :label="$t('checkJobIn.department')" align="center" prop="departmentName" /> <!--部门-->
<el-table-column label="部门" align="center" prop="departmentName" /> <el-table-column :label="$t('checkJobIn.trayCode')" align="center" prop="trayCode" /> <!--托盘码-->
<el-table-column label="托盘码" align="center" prop="trayCode" /> <el-table-column :label="$t('checkJobIn.roadwayId')" align="center" prop="roadwayId" /> <!--巷道ID-->
<el-table-column label="巷道ID" align="center" prop="roadwayId" /> <el-table-column :label="$t('checkJobIn.cargoSpace')" align="center" prop="cargoSpaceName" /> <!--货位-->
<el-table-column label="货位" align="center" prop="cargoSpaceName" /> <el-table-column :label="$t('checkJobIn.targetRoadway')" align="center" prop="targetRoadwayId" /> <!--目标巷道-->
<el-table-column label="目标巷道" align="center" prop="targetRoadwayId" /> <el-table-column :label="$t('checkJobIn.targetCargoSpace')" align="center" prop="targetCargoSpaceName" /> <!--目标货位-->
<el-table-column label="目标货位" align="center" prop="targetCargoSpaceName" /> <el-table-column :label="$t('checkJobIn.lineId')" align="center" prop="lineId" /> <!--产线ID-->
<el-table-column label="产线ID" align="center" prop="lineId" /> <el-table-column :label="$t('checkJobIn.workshopId')" align="center" prop="workshopId" /> <!--车间ID-->
<el-table-column label="车间ID" align="center" prop="workshopId" /> <el-table-column :label="$t('checkJobIn.priority')" align="center" prop="priority" /> <!--优先级-->
<el-table-column label="优先级" align="center" prop="priority" /> <el-table-column :label="$t('checkJobIn.executionPhase')" align="center" prop="executionPhase"> <!--执行阶段-->
<el-table-column label="执行阶段" align="center" prop="executionPhase">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.execution_phase_type" :value="scope.row.executionPhase"/> <dict-tag :options="dict.type.execution_phase_type" :value="scope.row.executionPhase"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="开始时间" align="center" prop="startTime" width="180"> <el-table-column :label="$t('checkJobIn.startTime')" align="center" prop="startTime" width="180"> <!--开始时间-->
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="结束时间" align="center" prop="finishTime" width="180"> <el-table-column :label="$t('checkJobIn.finishTime')" align="center" prop="finishTime" width="180"> <!--结束时间-->
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.finishTime, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.finishTime, '{y}-{m}-{d}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="入口ID" align="center" prop="entranceId" /> <el-table-column :label="$t('checkJobIn.entranceId')" align="center" prop="entranceId" /> <!--入口ID-->
<!-- <el-table-column label="出口ID" align="center" prop="exitId" />--> <el-table-column :label="$t('checkJobIn.classId')" align="center" prop="classId" /> <!--班组ID-->
<el-table-column label="班组ID" align="center" prop="classId" /> <el-table-column :label="$t('checkJobIn.warehouseId')" align="center" prop="warehouseId" /> <!--仓库ID-->
<el-table-column label="仓库ID" align="center" prop="warehouseId" /> <el-table-column :label="$t('checkJobIn.faultFlag')" align="center" prop="faultFlag" /> <!--重分标记-->
<el-table-column label="重分标记" align="center" prop="faultFlag" />
</el-table> </el-table>
<pagination <pagination
@@ -307,36 +297,23 @@
max-height="300" max-height="300"
> >
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="子任务ID" align="center" prop="jobDetailId" /> <el-table-column :label="$t('checkJobIn.jobDetailId')" align="center" prop="jobDetailId" /> <!--子任务ID-->
<el-table-column label="任务ID" align="center" prop="jobId" /> <el-table-column :label="$t('checkJobIn.jobId')" align="center" prop="jobId" /> <!--任务ID-->
<el-table-column label="库存ID" align="center" prop="stockId" /> <el-table-column :label="$t('checkJobIn.stockId')" align="center" prop="stockId" /> <!--库存ID-->
<el-table-column label="批次号" align="center" prop="lotNo" /> <el-table-column :label="$t('checkJobIn.lotNo')" align="center" prop="lotNo" /> <!--批次号-->
<el-table-column label="入库时间" align="center" prop="inDate" width="180"> <el-table-column :label="$t('checkJobIn.inDate')" align="center" prop="inDate" width="180"> <!--入库时间-->
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.inDate, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.inDate, '{y}-{m}-{d}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="单据ID" align="center" prop="inOrOutId" /> <el-table-column :label="$t('checkJobIn.inOrOutId')" align="center" prop="inOrOutId" /> <!--单据ID-->
<el-table-column label="子单据ID" align="center" prop="inOrOutDId" /> <el-table-column :label="$t('checkJobIn.inOrOutDId')" align="center" prop="inOrOutDId" /> <!--子单据ID-->
<el-table-column label="物料GUID" align="center" prop="productGuid" /> <el-table-column :label="$t('checkJobIn.productGuid')" align="center" prop="productGuid" /> <!--物料GUID-->
<el-table-column label="物料编码" align="center" prop="productId" /> <el-table-column :label="$t('checkJobIn.productId')" align="center" prop="productId" /> <!--物料编码-->
<el-table-column label="库存状态" align="center" prop="stockStatus" /> <el-table-column :label="$t('checkJobIn.stockStatus')" align="center" prop="stockStatus" /> <!--库存状态-->
<el-table-column label="入库数量" align="center" prop="inQuantity" /> <el-table-column :label="$t('checkJobIn.inQuantity')" align="center" prop="inQuantity" /> <!--入库数量-->
<!-- <el-table-column label="库存数量" align="center" prop="stockQuantity" />--> <el-table-column :label="$t('checkJobIn.printDate')" align="center" prop="printDate" /> <!--生产日期-->
<!-- <el-table-column label="出库数量" align="center" prop="outQuantity" />--> <el-table-column :label="$t('checkJobIn.supplierId')" align="center" prop="supplierId" /> <!--供应商ID-->
<!-- <el-table-column label="整层数量" align="center" prop="layerQuantity" />-->
<!-- <el-table-column label="出库层数量" align="center" prop="outLayerQuantity" />-->
<!-- <el-table-column label="回流数量" align="center" prop="giveNum" />-->
<!-- <el-table-column label="追溯入库单ID" align="center" prop="stockinId" />-->
<!-- <el-table-column label="垛型ID" align="center" prop="stackingId" />-->
<!-- <el-table-column label="出库口ID" align="center" prop="exitId" />-->
<el-table-column label="生产日期" align="center" prop="printDate" />
<!-- <el-table-column label="客户ID" align="center" prop="customerId" />-->
<el-table-column label="供应商ID" align="center" prop="supplierId" />
<!-- <el-table-column label="备用字段1" align="center" prop="spare1" />
<el-table-column label="备用字段2" align="center" prop="spare2" />
<el-table-column label="备用字段3" align="center" prop="spare3" />
<el-table-column label="备用字段4" align="center" prop="spare4" />-->
</el-table> </el-table>
<pagination <pagination
@@ -423,15 +400,16 @@ export default {
// 表单参数 // 表单参数
form: {}, form: {},
// 表单校验 // 表单校验
// 表单校验
rules: { rules: {
jobId: [ jobId: [
{ required: true, message: "任务ID不能为空", trigger: "blur" } { required: true, message: this.$t('checkJobIn.jobIdRequired'), trigger: "blur" }
], ],
status: [ status: [
{ required: true, message: "任务状态不能为空", trigger: "change" } { required: true, message: this.$t('checkJobIn.statusRequired'), trigger: "change" }
], ],
taskNo: [ taskNo: [
{ required: true, message: "任务号不能为空", trigger: "blur" } { required: true, message: this.$t('checkJobIn.taskNoRequired'), trigger: "blur" }
], ],
} }
} }
@@ -522,7 +500,7 @@ export default {
handleCompletedManually(row) { handleCompletedManually(row) {
const jobIds = this.ids; const jobIds = this.ids;
if (jobIds.length === 0) { if (jobIds.length === 0) {
this.$modal.msgError("请选择要操作的数据"); this.$modal.msgError(this.$t('checkJobIn.selectData'));
return; return;
} }
if (row.type === 'invalid'){ if (row.type === 'invalid'){

View File

@@ -1,16 +1,16 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="任务ID" prop="jobId"> <el-form-item :label="$t('checkJobOut.jobId')" prop="jobId"> <!-- 任务ID -->
<el-input <el-input
v-model="queryParams.jobId" v-model="queryParams.jobId"
placeholder="请输入任务ID" :placeholder="$t('checkJobOut.inputJobId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="任务状态" prop="status"> <el-form-item :label="$t('checkJobOut.status')" prop="status"> <!-- 任务状态 -->
<el-select v-model="queryParams.status" placeholder="请选择任务状态" clearable> <el-select v-model="queryParams.status" :placeholder="$t('checkJobOut.selectStatus')" clearable>
<el-option <el-option
v-for="dict in dict.type.mydo_job_status" v-for="dict in dict.type.mydo_job_status"
:key="dict.value" :key="dict.value"
@@ -29,10 +29,10 @@
/> />
</el-select> </el-select>
</el-form-item>--> </el-form-item>-->
<el-form-item label="任务号" prop="taskNo"> <el-form-item :label="$t('checkJobOut.taskNo')" prop="taskNo"> <!-- 任务号 -->
<el-input <el-input
v-model="queryParams.taskNo" v-model="queryParams.taskNo"
placeholder="请输入任务号" :placeholder="$t('checkJobOut.inputTaskNo')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -61,10 +61,10 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item label="托盘码" prop="trayCode"> <el-form-item :label="$t('checkJobOut.trayCode')" prop="trayCode"> <!-- 托盘码 -->
<el-input <el-input
v-model="queryParams.trayCode" v-model="queryParams.trayCode"
placeholder="请输入托盘码" :placeholder="$t('checkJobOut.inputTrayCode')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -93,10 +93,10 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item label="目标货位" prop="targetCargoSpaceId"> <el-form-item :label="$t('checkJobOut.targetCargoSpace')" prop="targetCargoSpaceId"> <!-- 目标货位 -->
<el-input <el-input
v-model="queryParams.targetCargoSpaceId" v-model="queryParams.targetCargoSpaceId"
placeholder="请输入目标货位ID" :placeholder="$t('checkJobOut.inputTargetCargoSpace')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -125,8 +125,8 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item label="执行阶段" prop="executionPhase"> <el-form-item :label="$t('checkJobOut.executionPhase')" prop="executionPhase"> <!-- 执行阶段 -->
<el-select v-model="queryParams.executionPhase" placeholder="请选择执行阶段" clearable> <el-select v-model="queryParams.executionPhase" :placeholder="$t('checkJobOut.selectExecutionPhase')" clearable>
<el-option <el-option
v-for="dict in dict.type.execution_phase_type" v-for="dict in dict.type.execution_phase_type"
:key="dict.value" :key="dict.value"
@@ -135,8 +135,8 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="任务类型" prop="inOrOut"> <el-form-item :label="$t('checkJobOut.jobType')" prop="inOrOut"> <!-- 任务类型 -->
<el-select v-model="queryParams.inOrOut" placeholder="请选择任务类型" clearable> <el-select v-model="queryParams.inOrOut" :placeholder="$t('checkJobOut.selectJobType')" clearable>
<el-option <el-option
v-for="dict in dict.type.check_out_job_type" v-for="dict in dict.type.check_out_job_type"
:key="dict.value" :key="dict.value"
@@ -145,34 +145,34 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="开始时间" prop="startTime"> <el-form-item :label="$t('checkJobOut.startTime')" prop="startTime"> <!-- 开始时间 -->
<el-date-picker clearable <el-date-picker clearable
v-model="queryParams.startTime" v-model="queryParams.startTime"
type="date" type="date"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
placeholder="请选择开始时间"> :placeholder="$t('checkJobOut.selectStartTime')">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="结束时间" prop="finishTime"> <el-form-item :label="$t('checkJobOut.finishTime')" prop="finishTime"> <!-- 结束时间 -->
<el-date-picker clearable <el-date-picker clearable
v-model="queryParams.finishTime" v-model="queryParams.finishTime"
type="date" type="date"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
placeholder="请选择结束时间"> :placeholder="$t('checkJobOut.selectFinishTime')">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="入口" prop="entranceId"> <el-form-item :label="$t('checkJobOut.entranceId')" prop="entranceId"> <!-- 入口ID -->
<el-input <el-input
v-model="queryParams.entranceId" v-model="queryParams.entranceId"
placeholder="请输入入口ID" :placeholder="$t('checkJobOut.inputEntranceId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="出口" prop="exitId"> <el-form-item :label="$t('checkJobOut.exitId')" prop="exitId"> <!-- 出口ID -->
<el-input <el-input
v-model="queryParams.exitId" v-model="queryParams.exitId"
placeholder="请输入出口ID" :placeholder="$t('checkJobOut.inputExitId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -185,10 +185,10 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item label="仓库" prop="warehouseId"> <el-form-item :label="$t('checkJobOut.warehouse')" prop="warehouseId"> <!-- 仓库 -->
<el-input <el-input
v-model="queryParams.warehouseId" v-model="queryParams.warehouseId"
placeholder="请输入仓库ID" :placeholder="$t('checkJobOut.inputWarehouseId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@@ -202,12 +202,13 @@
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{$t('checkJobOut.search')}}</el-button> <!-- 搜索 -->
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{$t('checkJobOut.reset')}}</el-button> <!-- 重置 -->
</el-form-item> </el-form-item>
</el-form> </el-form>
<!-- <el-row :gutter="10" class="mb8">
<el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="danger" type="danger"
@@ -216,7 +217,7 @@
size="mini" size="mini"
@click="handleCompletedManually({type: 'invalid'})" @click="handleCompletedManually({type: 'invalid'})"
v-hasPermi="['job:mydoJob:CompletedManually']" v-hasPermi="['job:mydoJob:CompletedManually']"
>手动作废</el-button> >{{$t('checkJobOut.manualInvalid')}}</el-button> <!-- 手动作废 -->
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@@ -226,9 +227,9 @@
size="mini" size="mini"
@click="handleCompletedManually({type: 'completed'})" @click="handleCompletedManually({type: 'completed'})"
v-hasPermi="['job:mydoJob:CompletedManually']" v-hasPermi="['job:mydoJob:CompletedManually']"
>手动完成</el-button> >{{$t('checkJobOut.manualFinish')}}</el-button> <!-- 手动完成 -->
</el-col> </el-col>
&lt;!&ndash; <el-col :span="1.5"> <!-- <el-col :span="1.5">
<el-button <el-button
type="warning" type="warning"
plain plain
@@ -237,62 +238,73 @@
@click="handleExport" @click="handleExport"
v-hasPermi="['job:mydoJob:export']" v-hasPermi="['job:mydoJob:export']"
>导出</el-button> >导出</el-button>
</el-col>&ndash;&gt; </el-col> -->
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>--> </el-row>
<el-table v-loading="loading" :data="mydoJobList" @selection-change="handleSelectionChange" @row-click="handleRowClick" highlight-current-row :current-row="currentRow" <el-table v-loading="loading" :data="jobList" @selection-change="handleSelectionChange" @row-click="handleRowClick">
max-height="300">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="任务ID" align="center" prop="jobId" fixed /> <el-table-column :label="$t('checkJobOut.jobId')" align="center" prop="jobId" /> <!-- 任务ID -->
<el-table-column label="任务状态" align="center" prop="status"> <el-table-column :label="$t('checkJobOut.status')" align="center" prop="status"> <!-- 任务状态 -->
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.mydo_job_status" :value="scope.row.status"/> <dict-tag :options="dict.type.mydo_job_status" :value="scope.row.status"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="上线类型" align="center" prop="onLineType"> <el-table-column :label="$t('checkJobOut.onLineType')" align="center" prop="onLineType"> <!-- 上线类型 -->
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.on_line_type" :value="scope.row.onLineType"/> <dict-tag :options="dict.type.on_line_type" :value="scope.row.onLineType"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="任务类型" align="center" prop="inOrOut"> <el-table-column :label="$t('checkJobOut.jobType')" align="center" prop="inOrOut"> <!-- 任务类型 -->
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.check_out_job_type" :value="scope.row.inOrOut"/> <dict-tag :options="dict.type.check_out_job_type" :value="scope.row.inOrOut"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="任务号" align="center" prop="taskNo" /> <el-table-column :label="$t('checkJobOut.taskNo')" align="center" prop="taskNo" /> <!-- 任务号 -->
<el-table-column label="供应商" align="center" prop="supplierName" key="supplierId" value="supplierName" /> <el-table-column :label="$t('checkJobOut.supplierId')" align="center" prop="supplierId" /> <!-- 供应商ID -->
<!-- <el-table-column label="客户ID" align="center" prop="customerId" />--> <el-table-column :label="$t('checkJobOut.departmentId')" align="center" prop="departmentId" /> <!-- 部门ID -->
<el-table-column label="部门" align="center" prop="departmentName" /> <el-table-column :label="$t('checkJobOut.trayCode')" align="center" prop="trayCode" /> <!-- 托盘码 -->
<el-table-column label="托盘码" align="center" prop="trayCode" /> <el-table-column :label="$t('checkJobOut.roadwayId')" align="center" prop="roadwayId" /> <!-- 巷道ID -->
<el-table-column label="巷道ID" align="center" prop="roadwayId" /> <el-table-column :label="$t('checkJobOut.cargoSpaceId')" align="center" prop="cargoSpaceId" /> <!-- 货位ID -->
<el-table-column label="货位" align="center" prop="cargoSpaceName" /> <el-table-column :label="$t('checkJobOut.targetRoadwayId')" align="center" prop="targetRoadwayId" /> <!-- 目标巷道ID -->
<el-table-column label="目标巷道" align="center" prop="targetRoadwayId" /> <el-table-column :label="$t('checkJobOut.targetCargoSpace')" align="center" prop="targetCargoSpaceId" /> <!-- 目标货位 -->
<el-table-column label="目标货位" align="center" prop="targetCargoSpaceName" /> <el-table-column :label="$t('checkJobOut.lineId')" align="center" prop="lineId" /> <!-- 产线ID -->
<el-table-column label="产线ID" align="center" prop="lineId" /> <el-table-column :label="$t('checkJobOut.workshopId')" align="center" prop="workshopId" /> <!-- 车间ID -->
<el-table-column label="车间ID" align="center" prop="workshopId" /> <el-table-column :label="$t('checkJobOut.priority')" align="center" prop="priority" /> <!-- 优先级 -->
<el-table-column label="优先级" align="center" prop="priority" /> <el-table-column :label="$t('checkJobOut.executionPhase')" align="center" prop="executionPhase"> <!-- 执行阶段 -->
<el-table-column label="执行阶段" align="center" prop="executionPhase">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.execution_phase_type" :value="scope.row.executionPhase"/> <dict-tag :options="dict.type.execution_phase_type" :value="scope.row.executionPhase"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('checkJobOut.startTime')" align="center" prop="startTime" width="180"> <!-- 开始时间 -->
<el-table-column label="开始时间" align="center" prop="startTime" width="180">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="结束时间" align="center" prop="finishTime" width="180"> <el-table-column :label="$t('checkJobOut.finishTime')" align="center" prop="finishTime" width="180"> <!-- 结束时间 -->
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.finishTime, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.finishTime, '{y}-{m}-{d}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="入口ID" align="center" prop="entranceId" /> <el-table-column :label="$t('checkJobOut.entranceId')" align="center" prop="entranceId" /> <!-- 入口ID -->
<!-- <el-table-column label="出口ID" align="center" prop="exitId" />--> <el-table-column :label="$t('checkJobOut.exitId')" align="center" prop="exitId" /> <!-- 出口ID -->
<el-table-column label="班组ID" align="center" prop="classId" /> <el-table-column :label="$t('checkJobOut.classId')" align="center" prop="classId" /> <!-- 班组ID -->
<el-table-column label="仓库ID" align="center" prop="warehouseId" /> <el-table-column :label="$t('checkJobOut.warehouse')" align="center" prop="warehouseId" /> <!-- 仓库 -->
<el-table-column label="重分标记" align="center" prop="faultFlag" /> <el-table-column :label="$t('checkJobOut.faultFlag')" align="center" prop="faultFlag" /> <!-- 重分标记 -->
<el-table-column :label="$t('checkJobOut.operation')" align="center" class-name="small-padding fixed-width"> <!-- 操作 -->
<template slot-scope="scope">
<el-button
size="mini"
type="text"
@click="handleManualFinish(scope.row)"
>{{$t('checkJobOut.manualFinish')}}</el-button> <!-- 手动完成 -->
<el-button
size="mini"
type="text"
@click="handleManualInvalid(scope.row)"
>{{$t('checkJobOut.manualInvalid')}}</el-button> <!-- 手动作废 -->
</template>
</el-table-column>
</el-table> </el-table>
<pagination <pagination
@@ -303,32 +315,36 @@
@pagination="getList" @pagination="getList"
/> />
<el-table v-loading="detailLoading" :data="mydoJobDetailList" @selection-change="handleSelectionChange" <el-table v-loading="loading" :data="subJobList" @selection-change="handleSelectionChange">
max-height="300"
>
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="子任务ID" align="center" prop="jobDetailId" /> <el-table-column :label="$t('checkJobOut.subJobId')" align="center" prop="subJobId" /> <!-- 子任务ID -->
<el-table-column label="任务ID" align="center" prop="jobId" /> <el-table-column :label="$t('checkJobOut.jobId')" align="center" prop="jobId" /> <!-- 任务ID -->
<el-table-column label="库存ID" align="center" prop="stockId" /> <el-table-column :label="$t('checkJobOut.stockId')" align="center" prop="stockId" /> <!-- 库存ID -->
<el-table-column label="批次号" align="center" prop="lotNo" /> <el-table-column :label="$t('checkJobOut.batchNo')" align="center" prop="batchNo" /> <!-- 批次号 -->
<el-table-column label="入库时间" align="center" prop="inDate" width="180"> <el-table-column :label="$t('checkJobOut.inTime')" align="center" prop="inTime" width="180"> <!-- 入库时间 -->
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.inDate, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.inTime, '{y}-{m}-{d}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="单据ID" align="center" prop="inOrOutId" /> <el-table-column :label="$t('checkJobOut.billId')" align="center" prop="billId" /> <!-- 单据ID -->
<el-table-column label="子单据ID" align="center" prop="inOrOutDId" /> <el-table-column :label="$t('checkJobOut.subBillId')" align="center" prop="subBillId" /> <!-- 子单据ID -->
<el-table-column label="物料GUID" align="center" prop="productGuid" /> <el-table-column :label="$t('checkJobOut.materialGuid')" align="center" prop="materialGuid" /> <!-- 物料GUID -->
<el-table-column label="物料编码" align="center" prop="productId" /> <el-table-column :label="$t('checkJobOut.materialCode')" align="center" prop="materialCode" /> <!-- 物料编码 -->
<el-table-column label="库存状态" align="center" prop="stockStatus" /> <el-table-column :label="$t('checkJobOut.stockStatus')" align="center" prop="stockStatus" /> <!-- 库存状态 -->
<el-table-column label="入库数量" align="center" prop="inQuantity" /> <el-table-column :label="$t('checkJobOut.inQty')" align="center" prop="inQty" /> <!-- 入库数量 -->
<!-- <el-table-column label="库存数量" align="center" prop="stockQuantity" />--> <el-table-column :label="$t('checkJobOut.productDate')" align="center" prop="productDate" width="180"> <!-- 生产日期 -->
<!-- <el-table-column label="出库数量" align="center" prop="outQuantity" />--> <template slot-scope="scope">
<!-- <el-table-column label="整层数量" align="center" prop="layerQuantity" />--> <span>{{ parseTime(scope.row.productDate, '{y}-{m}-{d}') }}</span>
<!-- <el-table-column label="出库层数量" align="center" prop="outLayerQuantity" />--> </template>
<!-- <el-table-column label="回流数量" align="center" prop="giveNum" />--> </el-table-column>
<!-- <el-table-column label="追溯入库单ID" align="center" prop="stockinId" />--> <el-table-column :label="$t('checkJobOut.supplierId')" align="center" prop="supplierId" /> <!-- 供应商ID -->
<!-- <el-table-column label="垛型ID" align="center" prop="stackingId" />--> <!-- <el-table-column label="库存数量" align="center" prop="stockQuantity" />
<!-- <el-table-column label="出库数量" align="center" prop="outQuantity" />
<!-- <el-table-column label="整层数量" align="center" prop="layerQuantity" />
<!-- <el-table-column label="出库层数量" align="center" prop="outLayerQuantity" />
<!-- <el-table-column label="回流数量" align="center" prop="giveNum" />
<!-- <el-table-column label="追溯入库单ID" align="center" prop="stockinId" />
<!-- <el-table-column label="垛型ID" align="center" prop="stackingId" />
<!-- <el-table-column label="出库口ID" align="center" prop="exitId" />--> <!-- <el-table-column label="出库口ID" align="center" prop="exitId" />-->
<el-table-column label="生产日期" align="center" prop="printDate" /> <el-table-column label="生产日期" align="center" prop="printDate" />
<!-- <el-table-column label="客户ID" align="center" prop="customerId" />--> <!-- <el-table-column label="客户ID" align="center" prop="customerId" />-->
@@ -425,13 +441,13 @@ export default {
// 表单校验 // 表单校验
rules: { rules: {
jobId: [ jobId: [
{ required: true, message: "任务ID不能为空", trigger: "blur" } { required: true, message: this.$t('checkJobOut.inputJobId'), trigger: 'blur' }
], ],
status: [ status: [
{ required: true, message: "任务状态不能为空", trigger: "change" } { required: true, message: this.$t('checkJobOut.selectStatus'), trigger: 'change' }
], ],
taskNo: [ taskNo: [
{ required: true, message: "任务号不能为空", trigger: "blur" } { required: true, message: this.$t('checkJobOut.inputTaskNo'), trigger: 'blur' }
], ],
} }
} }
@@ -522,7 +538,7 @@ export default {
handleCompletedManually(row) { handleCompletedManually(row) {
const jobIds = this.ids; const jobIds = this.ids;
if (jobIds.length === 0) { if (jobIds.length === 0) {
this.$modal.msgError("请选择要操作的数据"); this.$modal.msgError(this.$t('checkJobOut.selectData')); // 请选择要操作的数据
return; return;
} }
if (row.type === 'invalid'){ if (row.type === 'invalid'){
@@ -563,6 +579,34 @@ export default {
this.detailLoading = false; this.detailLoading = false;
}); });
}, },
/** 手动完成按钮操作 */
handleManualFinish(row) {
const jobIds = row.jobId || this.ids;
if (jobIds.length === 0) {
this.$modal.msgError(this.$t('checkJobOut.selectData'));
return;
}
this.$modal.confirm(this.$t('checkJobOut.confirmFinish', { jobIds: jobIds })).then(function() {
return manualFinish(jobIds);
}).then(() => {
this.getList();
this.$modal.msgSuccess(this.$t('checkJobOut.finishSuccess'));
}).catch(() => {});
},
/** 手动作废按钮操作 */
handleManualInvalid(row) {
const jobIds = row.jobId || this.ids;
if (jobIds.length === 0) {
this.$modal.msgError(this.$t('checkJobOut.selectData'));
return;
}
this.$modal.confirm(this.$t('checkJobOut.confirmInvalid', { jobIds: jobIds })).then(function() {
return manualInvalid(jobIds);
}).then(() => {
this.getList();
this.$modal.msgSuccess(this.$t('checkJobOut.invalidSuccess'));
}).catch(() => {});
},
} }
} }
</script> </script>

View File

@@ -1,16 +1,16 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="盘点单据ID" prop="stockCheckId"> <el-form-item :label="$t('checkStockCheck.stockCheckId')" prop="stockCheckId"> <!-- 盘点单据ID -->
<el-input <el-input
v-model="queryParams.stockCheckId" v-model="queryParams.stockCheckId"
placeholder="请输入盘点单据ID" :placeholder="$t('checkStockCheck.inputStockCheckId')"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="盘库类型" prop="checkType"> <el-form-item :label="$t('checkStockCheck.checkType')" prop="checkType"> <!-- 盘库类型 -->
<el-select v-model="queryParams.checkType" placeholder="请选择盘库类型" clearable> <el-select v-model="queryParams.checkType" :placeholder="$t('checkStockCheck.selectCheckType')" clearable>
<el-option <el-option
v-for="dict in dict.type.check_stock_type" v-for="dict in dict.type.check_stock_type"
:key="dict.value" :key="dict.value"
@@ -19,8 +19,8 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="状态" prop="status"> <el-form-item :label="$t('checkStockCheck.status')" prop="status"> <!-- 状态 -->
<el-select v-model="queryParams.status" placeholder="请选择盘库类型" clearable> <el-select v-model="queryParams.status" :placeholder="$t('checkStockCheck.selectStatus')" clearable>
<el-option <el-option
v-for="dict in dict.type.check_bill_status" v-for="dict in dict.type.check_bill_status"
:key="dict.value" :key="dict.value"
@@ -45,8 +45,8 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item label="仓库" prop="warehouseId"> <el-form-item :label="$t('checkStockCheck.warehouse')" prop="warehouseId"> <!-- 仓库 -->
<el-select v-model="queryParams.warehouseId" placeholder="请选择仓库" clearable> <el-select v-model="queryParams.warehouseId" :placeholder="$t('checkStockCheck.selectWarehouse')" clearable>
<el-option <el-option
v-for="item in warehouseOptions" v-for="item in warehouseOptions"
:key="item.warehouseId" :key="item.warehouseId"
@@ -144,8 +144,8 @@
/> />
</el-form-item>--> </el-form-item>-->
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{$t('checkStockCheck.search')}}</el-button> <!-- 搜索 -->
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{$t('checkStockCheck.reset')}}</el-button> <!-- 重置 -->
</el-form-item> </el-form-item>
</el-form> </el-form>
@@ -159,7 +159,7 @@
:disabled="multiple" :disabled="multiple"
@click="handleInvalidated" @click="handleInvalidated"
v-hasPermi="['check:stockCheck:edit']" v-hasPermi="['check:stockCheck:edit']"
>单据作废</el-button> >{{$t('checkStockCheck.invalidate')}}</el-button> <!-- 单据作废 -->
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@@ -169,7 +169,7 @@
size="mini" size="mini"
@click="handleReview" @click="handleReview"
v-hasPermi="['check:stockCheck:edit']" v-hasPermi="['check:stockCheck:edit']"
>单据审核</el-button> >{{$t('checkStockCheck.review')}}</el-button> <!-- 单据审核 -->
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@@ -180,7 +180,7 @@
:disabled="single" :disabled="single"
@click="handleConfirmation" @click="handleConfirmation"
v-hasPermi="['check:stockCheck:edit']" v-hasPermi="['check:stockCheck:edit']"
>单据确认</el-button> >{{$t('checkStockCheck.confirm')}}</el-button> <!-- 单据确认 -->
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
@@ -189,25 +189,24 @@
<el-table v-loading="loading" :data="stockCheckList" @selection-change="handleSelectionChange" @row-click="handleRowClick"> <el-table v-loading="loading" :data="stockCheckList" @selection-change="handleSelectionChange" @row-click="handleRowClick">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<!-- <el-table-column label="GUID" align="center" prop="stockGuid" /> --> <!-- <el-table-column label="GUID" align="center" prop="stockGuid" /> -->
<el-table-column label="盘点单据ID" align="center" prop="stockCheckId" /> <el-table-column :label="$t('checkStockCheck.stockCheckId')" align="center" prop="stockCheckId" /> <!-- 盘点单据ID -->
<el-table-column label="盘库类型" align="center" prop="checkType"> <el-table-column :label="$t('checkStockCheck.checkType')" align="center" prop="checkType"> <!-- 盘库类型 -->
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.check_stock_type" :value="scope.row.checkType"/> <dict-tag :options="dict.type.check_stock_type" :value="scope.row.checkType"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('checkStockCheck.status')" align="center" prop="status" > <!-- 单据状态 -->
<el-table-column label="单据状态" align="center" prop="status" >
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.check_bill_status" :value="scope.row.status"/> <dict-tag :options="dict.type.check_bill_status" :value="scope.row.status"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="仓库ID" align="center" prop="warehouseId" /> <el-table-column :label="$t('checkStockCheck.warehouseId')" align="center" prop="warehouseId" /> <!-- 仓库ID -->
<el-table-column label="单据来源" align="center" prop="stockSource" /> <el-table-column :label="$t('checkStockCheck.stockSource')" align="center" prop="stockSource" /> <!-- 单据来源 -->
<el-table-column label="部门编码" align="center" prop="departmentNo" /> <el-table-column :label="$t('checkStockCheck.departmentNo')" align="center" prop="departmentNo" /> <!-- 部门编码 -->
<el-table-column label="创建人" align="center" prop="createManId" /> <el-table-column :label="$t('checkStockCheck.createManId')" align="center" prop="createManId" /> <!-- 创建人 -->
<el-table-column label="建立时间" align="center" prop="createDate" /> <el-table-column :label="$t('checkStockCheck.createDate')" align="center" prop="createDate" /> <!-- 建立时间 -->
<el-table-column label=" 完成日期" align="center" prop="finishDate" /> <el-table-column :label="$t('checkStockCheck.finishDate')" align="center" prop="finishDate" /> <!-- 完成日期 -->
</el-table> </el-table>
<pagination <pagination
@@ -220,19 +219,19 @@
<el-table v-loading="detailLoading" :data="stockCheckDetailList" @selection-change="handleDetailSelectionChange"> <el-table v-loading="detailLoading" :data="stockCheckDetailList" @selection-change="handleDetailSelectionChange">
<!-- <el-table-column type="selection" width="55" align="center" /> --> <!-- <el-table-column type="selection" width="55" align="center" /> -->
<el-table-column label="子单ID" align="center" prop="stockCheckDetailId" /> <el-table-column :label="$t('checkStockCheck.detailId')" align="center" prop="stockCheckDetailId" /> <!-- 子单ID -->
<!-- <el-table-column label="主单GUID" align="center" prop="stockCheckGuid" /> --> <!-- <el-table-column label="主单GUID" align="center" prop="stockCheckGuid" /> -->
<el-table-column label="主单ID" align="center" prop="stockCheckId" /> <el-table-column :label="$t('checkStockCheck.mainId')" align="center" prop="stockCheckId" /> <!-- 主单ID -->
<el-table-column label="批次号" align="center" prop="lotNo"/> <el-table-column :label="$t('checkStockCheck.lotNo')" align="center" prop="lotNo"/> <!-- 批次号 -->
<!-- <el-table-column label="物料ID" align="center" prop="productGuid"/>--> <!-- <el-table-column label="物料ID" align="center" prop="productGuid"/>-->
<el-table-column label="物料编码" align="center" prop="productId"/> <el-table-column :label="$t('checkStockCheck.productId')" align="center" prop="productId"/> <!-- 物料编码 -->
<el-table-column label="物料描述" align="center" prop="extraField.materialDesc"/> <el-table-column :label="$t('checkStockCheck.materialDesc')" align="center" prop="extraField.materialDesc"/> <!-- 物料描述 -->
<el-table-column label="英文描述" align="center" prop="extraField.englishDesc"/> <el-table-column :label="$t('checkStockCheck.englishDesc')" align="center" prop="extraField.englishDesc"/> <!-- 英文描述 -->
<el-table-column label="箱号" align="center" prop="extraField.cartonNo"/> <el-table-column :label="$t('checkStockCheck.cartonNo')" align="center" prop="extraField.cartonNo"/> <!-- 箱号 -->
<el-table-column label="包装方式" align="center" prop="extraField.packingMethod"/> <el-table-column :label="$t('checkStockCheck.packingMethod')" align="center" prop="extraField.packingMethod"/> <!-- 包装方式 -->
<el-table-column label="计划数量" align="center" prop="quantity"/> <el-table-column :label="$t('checkStockCheck.quantity')" align="center" prop="quantity"/> <!-- 计划数量 -->
<el-table-column label="扫码数量" align="center" prop="scanNum"/> <el-table-column :label="$t('checkStockCheck.scanNum')" align="center" prop="scanNum"/> <!-- 扫码数量 -->
<el-table-column label="实际数量" align="center" prop="assignNum"/> <el-table-column :label="$t('checkStockCheck.assignNum')" align="center" prop="assignNum"/> <!-- 实际数量 -->
</el-table> </el-table>
<pagination <pagination
@@ -318,16 +317,16 @@ export default {
// 表单校验 // 表单校验
rules: { rules: {
stockCheckId: [ stockCheckId: [
{ required: true, message: "盘点单据ID不能为空", trigger: "blur" } { required: true, message: this.$t('checkStockCheck.stockCheckIdRequired'), trigger: "blur" }
], ],
checkType: [ checkType: [
{ required: true, message: "盘库类型不能为空", trigger: "change" } { required: true, message: this.$t('checkStockCheck.checkTypeRequired'), trigger: "change" }
], ],
createDate: [ createDate: [
{ required: true, message: "建立时间不能为空", trigger: "blur" } { required: true, message: this.$t('checkStockCheck.createDateRequired'), trigger: "blur" }
], ],
status: [ status: [
{ required: true, message: "单据状态不能为空", trigger: "change" } { required: true, message: this.$t('checkStockCheck.statusRequired'), trigger: "change" }
], ],
} }
} }
@@ -438,13 +437,13 @@ export default {
if (valid) { if (valid) {
if (this.form.stockGuid != null) { if (this.form.stockGuid != null) {
updateStockCheck(this.form).then(response => { updateStockCheck(this.form).then(response => {
this.$modal.msgSuccess("修改成功") this.$modal.msgSuccess(this.$t('checkStockCheck.editSuccess'))
this.open = false this.open = false
this.getList() this.getList()
}) })
} else { } else {
addStockCheck(this.form).then(response => { addStockCheck(this.form).then(response => {
this.$modal.msgSuccess("新增成功") this.$modal.msgSuccess(this.$t('checkStockCheck.addSuccess'))
this.open = false this.open = false
this.getList() this.getList()
}) })
@@ -461,18 +460,18 @@ export default {
"status": "5" "status": "5"
} }
updateStockCheck(data).then(response => { updateStockCheck(data).then(response => {
this.$modal.msgSuccess("作废成功") this.$modal.msgSuccess(this.$t('checkStockCheck.invalidateSuccess'))
this.getList() this.getList()
}) })
} else { } else {
this.$modal.msgError("只有未审核的单据可以作废") this.$modal.msgError(this.$t('checkStockCheck.onlyUnreviewedCanInvalidate'))
} }
}, },
/** 审核按钮操作 */ /** 审核按钮操作 */
handleReview(row) { handleReview(row) {
let stockCheck = this.stockCheckList.find(item => item.stockGuid === (row?.stockGuid || this.ids[0])); let stockCheck = this.stockCheckList.find(item => item.stockGuid === (row?.stockGuid || this.ids[0]));
if (stockCheck.status === "2") { if (stockCheck.status === "2") {
this.$modal.msgError("单据已审核,请勿重复审核") this.$modal.msgError(this.$t('checkStockCheck.alreadyReviewed'))
return return
} }
if (stockCheck.status === "1") { if (stockCheck.status === "1") {
@@ -481,11 +480,11 @@ export default {
"status": "2" "status": "2"
} }
updateStockCheck(data).then(response => { updateStockCheck(data).then(response => {
this.$modal.msgSuccess("审核成功") this.$modal.msgSuccess(this.$t('checkStockCheck.reviewSuccess'))
this.getList() this.getList()
}) })
} else { } else {
this.$modal.msgError("只有未审核的单据可以审核") this.$modal.msgError(this.$t('checkStockCheck.onlyUnreviewedCanReview'))
} }
}, },
/** 确认按钮操作 */ /** 确认按钮操作 */
@@ -497,11 +496,11 @@ export default {
"status": "4" "status": "4"
} }
updateStockCheck(data).then(response => { updateStockCheck(data).then(response => {
this.$modal.msgSuccess("确认成功") this.$modal.msgSuccess(this.$t('checkStockCheck.confirmSuccess'))
this.getList() this.getList()
}) })
} else { } else {
this.$modal.msgError("只有已审核的单据可以确认") this.$modal.msgError(this.$t('checkStockCheck.onlyReviewedCanConfirm'))
} }
}, },
} }