From 1cef5ede55e26888cd0ad7aee9e463be671e663c Mon Sep 17 00:00:00 2001 From: liang <594755172@qq.com> Date: Tue, 3 Jun 2025 17:00:09 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E4=BF=AE=E5=A4=8D=E8=AF=B7=E6=B1=82?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E5=8A=9F=E8=83=BD=E4=B8=AD=E7=9A=84bug=202.?= =?UTF-8?q?=20=E5=A2=9E=E5=8A=A0=E7=B4=A7=E6=80=A5=E5=87=BA=E5=BA=93?= =?UTF-8?q?=E7=BC=BA=E6=96=99=E8=BE=93=E5=85=A5=E6=96=99=E5=8F=B7=E5=B7=A5?= =?UTF-8?q?=E5=8D=95=E5=90=8E=E8=87=AA=E5=8A=A8=E8=A1=A5=E5=85=A8=E9=9C=80?= =?UTF-8?q?=E6=B1=82=E6=95=B0=E9=87=8F=E7=9A=84=E5=8A=9F=E8=83=BD=203.=20?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=BC=BA=E6=96=99=E8=87=AA=E5=8A=A8=E5=85=B3?= =?UTF-8?q?=E9=97=AD=E7=9A=84=E5=8A=9F=E8=83=BD=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dev_wms_client/src/api/task.js | 11 +++ dev_wms_client/src/layout/goodsOut.vue | 42 +++++++- .../enums/others/EmergencyOutReasonEnums.java | 14 +++ .../controller/wms/TaskController.java | 15 ++- .../wms_main/dao/impl/TSysApiServiceImpl.java | 8 +- .../dto/request/wms/StockOutRequest.java | 5 + .../java/com/wms_main/model/po/TAppOuts.java | 5 + .../com/wms_main/model/po/TAppOutsRecord.java | 5 + .../wms_main/repository/http/HttpClient.java | 2 - .../controller/ITaskControllerService.java | 9 ++ .../TaskControllerServiceImpl.java | 97 ++++++++++++++++++- .../TaskOperationControllerServiceImpl.java | 3 +- .../serviceImpl/OutsExecutorServiceImpl.java | 3 +- 13 files changed, 201 insertions(+), 18 deletions(-) create mode 100644 dev_wms_serve/src/main/java/com/wms_main/constant/enums/others/EmergencyOutReasonEnums.java diff --git a/dev_wms_client/src/api/task.js b/dev_wms_client/src/api/task.js index e519c09..40d6ddc 100644 --- a/dev_wms_client/src/api/task.js +++ b/dev_wms_client/src/api/task.js @@ -62,4 +62,15 @@ export const confirmInventory = (params) => { method: 'post', data: params }) +} +// 获取缺料数量 +export const getGoodsLackQty = (params) => { + return request({ + url: '/task/getGoodsLackQty', + method: 'get', + params: { + goodsId: params.goodsId, + workOrder: params.workOrder + } + }) } \ No newline at end of file diff --git a/dev_wms_client/src/layout/goodsOut.vue b/dev_wms_client/src/layout/goodsOut.vue index 9a81e2f..1a2c964 100644 --- a/dev_wms_client/src/layout/goodsOut.vue +++ b/dev_wms_client/src/layout/goodsOut.vue @@ -12,7 +12,7 @@ :options="outTypeOptions"> - + @@ -25,9 +25,9 @@ - - - + + + import store from '@/store' -import {requireStockOut, getCurrentTask, confirmCurrentTask} from '@/api/task.js' +import {requireStockOut, getCurrentTask, confirmCurrentTask, getGoodsLackQty} from '@/api/task.js' import {errorBox, warningBox} from '@/utils/myMessageBox.js' import {ElMessage} from 'element-plus' import {nextTick, onBeforeUnmount, onMounted, reactive, ref, watch} from 'vue' @@ -116,6 +116,7 @@ let outTaskEntity = reactive({ goodsId: '', vehicleId: '', reason: '', + workOrder: '', needNum: null }) const requestRules = reactive({ @@ -269,6 +270,10 @@ const confirmOut = () => { errorBox('紧急出库请选择原因。') return } + if (outTaskEntity.reason === '缺料' && outTaskEntity.workOrder === '') { + errorBox('缺料时必须输入工单号。') + return + } } const request = { outType: outTaskEntity.outType, @@ -276,6 +281,7 @@ const confirmOut = () => { vehicleId: outTaskEntity.vehicleId.toUpperCase().trim(), needNum: outTaskEntity.needNum, reason: outTaskEntity.reason, + workOrder: outTaskEntity.workOrder.trim(), destination: STAND_ID, userName: USER_NAME, standId: STAND_ID @@ -365,6 +371,32 @@ const clearConfirmEntity = () => { confirmEntity.putArea = '' confirmEntity.warningQty = null } +// 获取对应工单对应物料号的缺料数量 +const getLackQty = () => { + if (outTaskEntity.outType !== 9 || outTaskEntity.reason !== '缺料') { + // 非紧急出库且非缺料,则不处理 + return; + } + if (outTaskEntity.workOrder === '' || outTaskEntity.goodsId === '') { + // 缺少工单号或者料号 + return + } + // 设置请求参数 + const request = { + workOrder: outTaskEntity.workOrder.trim(), + goodsId: outTaskEntity.goodsId.toUpperCase().trim() + } + loading.open('查询缺料缺料数量中...') + getGoodsLackQty(request).then(res => { + outTaskEntity.needNum = res.data + }).catch(err => { + // 异常,清空数量 + outTaskEntity.needNum = null + console.log('获取缺料数量异常:' + err) + }).finally(() => { + loading.close() + }) +}