From 1091e3cdc5388c4e04ddb60b09c5120f6fd5c99f Mon Sep 17 00:00:00 2001 From: ludj Date: Tue, 15 Nov 2022 10:18:38 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dp/service/imp/BigScreenServiceImpl.java | 1 + .../org/nl/wms/ext/dp/wql/QST_BIG_SCREEN.wql | 1 + .../org/nl/wms/sch/tasks/DumpInvTask.java | 56 ++++++++++--------- .../nl/wms/sch/tasks/InEmptyVehicleTask.java | 17 +++--- 4 files changed, 43 insertions(+), 32 deletions(-) diff --git a/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/dp/service/imp/BigScreenServiceImpl.java b/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/dp/service/imp/BigScreenServiceImpl.java index f440a34..d4c099a 100644 --- a/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/dp/service/imp/BigScreenServiceImpl.java +++ b/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/dp/service/imp/BigScreenServiceImpl.java @@ -185,6 +185,7 @@ public class BigScreenServiceImpl implements BigScreenService { //配方-批次-重量(YC-B8-1000) String material_ivt_info = labelObj.getString("formula") + "-" + labelObj.getString("pcsn") + "-" + labelObj.getString("weight"); json.put("material_ivt_info", material_ivt_info); + json.put("color", labelObj.getString("color")); } } diff --git a/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/dp/wql/QST_BIG_SCREEN.wql b/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/dp/wql/QST_BIG_SCREEN.wql index c293d6f..f056c97 100644 --- a/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/dp/wql/QST_BIG_SCREEN.wql +++ b/wms/hd/nladmin-system/src/main/java/org/nl/wms/ext/dp/wql/QST_BIG_SCREEN.wql @@ -405,6 +405,7 @@ IF 输入.flag = "8" FROM md_base_materialLabelDtl dtl LEFT JOIN md_base_materialLabelMst mst ON dtl.label_uuid = mst.label_uuid + where 1=1 OPTION 输入.labeldtl_uuid <> "" dtl.labeldtl_uuid = 输入.labeldtl_uuid ENDOPTION diff --git a/wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/DumpInvTask.java b/wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/DumpInvTask.java index e6aeb33..eb43911 100644 --- a/wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/DumpInvTask.java +++ b/wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/DumpInvTask.java @@ -57,44 +57,53 @@ public class DumpInvTask extends AbstractAcsTask { //更新转储单状态相关信息 JSONObject dumpObj = dumpInvTab.query("task_uuid = '" + taskObj.optString("task_uuid") + "'").uniqueResult(0); - dumpObj.put("update_time", DateUtil.now()); - dumpObj.put("bill_status", DumpInvBillStatusEnum.FINISHED.getCode()); - dumpObj.put("update_by", SecurityUtils.getCurrentUsername()); - dumpInvTab.update(dumpObj); + if (ObjectUtil.isNotEmpty(dumpObj)){ + dumpObj.put("update_time", DateUtil.now()); + dumpObj.put("bill_status", DumpInvBillStatusEnum.FINISHED.getCode()); + dumpObj.put("update_by", SecurityUtils.getCurrentUsername()); + dumpInvTab.update(dumpObj); + } //解锁相关货位 // 点位基础表【sch_base_point】 WQLObject pointTab = WQLObject.getWQLObject("sch_base_point"); - JSONObject startPoint = pointTab.query("point_uuid = '" + dumpObj.optString("turnout_struct_uuid") + "'").uniqueResult(0); + JSONObject startPoint = pointTab.query("point_code='" + taskObj.optString("start_point_code") + "'").uniqueResult(0); startPoint.put("lock_type", "00"); startPoint.put("point_status", "00"); startPoint.put("vehicle_code", ""); pointTab.update(startPoint); - JSONObject nextPoint = pointTab.query("point_uuid = '" + dumpObj.optString("turnin_struct_uuid") + "'").uniqueResult(0); + JSONObject nextPoint = pointTab.query("point_code='" + taskObj.optString("next_point_code") + "'").uniqueResult(0); nextPoint.put("lock_type", "00"); nextPoint.put("point_status", "02"); - nextPoint.put("vehicle_code", dumpObj.optString("vehicle_code")); + nextPoint.put("vehicle_code", taskObj.optString("vehicle_code")); pointTab.update(nextPoint); //更新库存,因为是转储,直接更新货位即可 //仓位库存表【st_ivt_structIvt】 WQLObject ivtTab = WQLObject.getWQLObject("st_ivt_structIvt"); - JSONObject turnOutIvtObj = ivtTab.query("struct_uuid = '" + dumpObj.optString("turnout_struct_uuid") + "'").uniqueResult(0); - if (ObjectUtil.isEmpty(turnOutIvtObj)) throw new BadRequestException("库存已不存在,操作失败!"); + if (ObjectUtil.isNotEmpty(dumpObj)){ + JSONObject turnOutIvtObj = ivtTab.query("struct_uuid = '" + dumpObj.optString("turnout_struct_uuid") + "'").uniqueResult(0); - StoreIvtServiceImpl ivtService = new StoreIvtServiceImpl(); - JSONObject ivtObj = new JSONObject(); - ivtObj.put("struct_uuid", dumpObj.optString("turnout_struct_uuid")); - ivtObj.put("label_uuid", turnOutIvtObj.optString("label_uuid")); - ivtObj.put("label_code", turnOutIvtObj.optString("label_code")); - ivtObj.put("labeldtl_uuid", turnOutIvtObj.optString("labeldtl_uuid")); - ivtObj.put("change_weight", turnOutIvtObj.optString("canuse_weight")); - ivtObj.put("change_qty", turnOutIvtObj.optString("canuse_qty")); - ivtObj.put("material_uuid", turnOutIvtObj.optString("material_uuid")); - ivtObj.put("vehicle_code", turnOutIvtObj.optString("vehicle_code")); - ivtObj.put("qty_unit_uuid", turnOutIvtObj.optString("qty_unit_uuid")); - ivtObj.put("weight_unit_uuid", turnOutIvtObj.optString("weight_unit_uuid")); + + if (!ObjectUtil.isEmpty(turnOutIvtObj)){ + StoreIvtServiceImpl ivtService = new StoreIvtServiceImpl(); + JSONObject ivtObj = new JSONObject(); + ivtObj.put("struct_uuid", dumpObj.optString("turnout_struct_uuid")); + ivtObj.put("label_uuid", turnOutIvtObj.optString("label_uuid")); + ivtObj.put("label_code", turnOutIvtObj.optString("label_code")); + ivtObj.put("labeldtl_uuid", turnOutIvtObj.optString("labeldtl_uuid")); + ivtObj.put("change_weight", turnOutIvtObj.optString("canuse_weight")); + ivtObj.put("change_qty", turnOutIvtObj.optString("canuse_qty")); + ivtObj.put("material_uuid", turnOutIvtObj.optString("material_uuid")); + ivtObj.put("vehicle_code", turnOutIvtObj.optString("vehicle_code")); + ivtObj.put("qty_unit_uuid", turnOutIvtObj.optString("qty_unit_uuid")); + ivtObj.put("weight_unit_uuid", turnOutIvtObj.optString("weight_unit_uuid")); + //转入仓位加库存 + ivtService.addIvtFlow(ivtObj, IvtChangeTypeEnum.ADD_IVT_AND_CAN_USE); + } + + } //转出仓位扣减库存 /*ivtService.addIvtFlow(ivtObj, IvtChangeTypeEnum.SUB_IVT_AND_CAN_USE); @@ -102,8 +111,7 @@ public class DumpInvTask extends AbstractAcsTask { WQLObject.getWQLObject("st_ivt_structIvt").delete("struct_uuid = '"+startPoint.getString("point_uuid")+"'"); - //转入仓位加库存 - ivtService.addIvtFlow(ivtObj, IvtChangeTypeEnum.ADD_IVT_AND_CAN_USE); + } } @@ -135,7 +143,6 @@ public class DumpInvTask extends AbstractAcsTask { taskObj.put("next_point_code", param.optString("next_point_code")); taskObj.put("vehicle_code", param.optString("vehicle_code")); taskObj.put("handle_class", THIS_CLASS); - taskObj.put("task_uuid", IdUtil.simpleUUID()); taskObj.put("create_time", DateUtil.now()); taskObj.put("update_by", SecurityUtils.getCurrentUsername()); taskObj.put("create_by", SecurityUtils.getCurrentUsername()); @@ -191,7 +198,6 @@ public class DumpInvTask extends AbstractAcsTask { taskObj.put("next_point_code", nextPoint.optString("point_code")); taskObj.put("vehicle_code", startPoint.optString("vehicle_code")); taskObj.put("handle_class", THIS_CLASS); - taskObj.put("task_uuid", IdUtil.simpleUUID()); taskObj.put("create_time", DateUtil.now()); taskObj.put("update_by", SecurityUtils.getCurrentUsername()); taskObj.put("create_by", SecurityUtils.getCurrentUsername()); diff --git a/wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InEmptyVehicleTask.java b/wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InEmptyVehicleTask.java index a9ff3e0..1dd91b9 100644 --- a/wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InEmptyVehicleTask.java +++ b/wms/hd/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InEmptyVehicleTask.java @@ -51,25 +51,28 @@ public class InEmptyVehicleTask extends AbstractAcsTask { //更新空载具表状态 JSONObject jsonEtv = etvTab.query("task_uuid='" + taskObj.optString("task_uuid") + "'").uniqueResult(0); - jsonEtv.put("update_by", SecurityUtils.getCurrentUsername()); - jsonEtv.put("update_time", DateUtil.now()); - jsonEtv.put("bill_status", EmptyVehicleBillStatusEnum.FINISHED.getCode()); - etvTab.update(jsonEtv); + if (ObjectUtil.isNotEmpty(jsonEtv)){ + jsonEtv.put("update_by", SecurityUtils.getCurrentUsername()); + jsonEtv.put("update_time", DateUtil.now()); + jsonEtv.put("bill_status", EmptyVehicleBillStatusEnum.FINISHED.getCode()); + etvTab.update(jsonEtv); + } + //解锁货位 WQLObject pointTab = WQLObject.getWQLObject("sch_base_point"); //解锁起始点位 - JSONObject startPoint = pointTab.query("point_code='" + jsonEtv.optString("start_point_code") + "'").uniqueResult(0); + JSONObject startPoint = pointTab.query("point_code='" + taskObj.optString("start_point_code") + "'").uniqueResult(0); startPoint.put("lock_type", "00"); startPoint.put("point_status", "00"); startPoint.put("vehicle_code", ""); pointTab.update(startPoint); //解锁下一点位 - JSONObject nextPoint = pointTab.query("point_code='" + jsonEtv.optString("next_point_code") + "'").uniqueResult(0); + JSONObject nextPoint = pointTab.query("point_code='" + taskObj.optString("next_point_code") + "'").uniqueResult(0); nextPoint.put("lock_type", "00"); nextPoint.put("point_status", "01"); - nextPoint.put("vehicle_code", jsonEtv.optString("vehicle_code")); + nextPoint.put("vehicle_code", taskObj.optString("vehicle_code")); pointTab.update(nextPoint); }