From 3db198fda9c623afc2388b8d180126c22f3522d8 Mon Sep 17 00:00:00 2001 From: liuxy Date: Tue, 10 Jan 2023 11:14:19 +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 --- .../java/org/nl/wms/sch/tasks/InTask.java | 9 +++++++ .../java/org/nl/wms/sch/tasks/OutTask.java | 24 +++++++++++++++---- .../impl/RawAssistIStorServiceImpl.java | 1 + .../st/outbill/wql/QST_IVT_CHECKOUTBILL.wql | 4 ++-- 4 files changed, 31 insertions(+), 7 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InTask.java index f4e98cfe6..80fae4a71 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InTask.java @@ -71,6 +71,8 @@ public class InTask extends AbstractAcsTask { @Override @Transactional(rollbackFor = Exception.class) public void updateTaskStatus(JSONObject taskObj, String status) { + WQLObject disTab = WQLObject.getWQLObject("st_ivt_iostorinvdis"); // 出入库分配表 + String currentUserId = SecurityUtils.getCurrentUserId(); String nickName = SecurityUtils.getCurrentNickName(); String now = DateUtil.now(); @@ -95,6 +97,13 @@ public class InTask extends AbstractAcsTask { if (StrUtil.equals(status, "0")) { // 更新删除字段 map.put("is_delete","1"); + + // 更新分配明细为:未生成 + JSONObject mapParam = new JSONObject(); + mapParam.put("work_status", "00"); + mapParam.put("point_id", ""); + + disTab.update(map,"task_id = '"+taskObj.getString("task_id")+"'"); } map.put("update_optid", currentUserId); map.put("update_optname", nickName); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/OutTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/OutTask.java index b9e432aa3..9a4a0889b 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/OutTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/OutTask.java @@ -112,15 +112,29 @@ public class OutTask extends AbstractAcsTask { @Transactional(rollbackFor = Exception.class) public void updateTaskStatus(JSONObject taskObj, String status) { WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); // 任务表 + WQLObject disTab = WQLObject.getWQLObject("st_ivt_iostorinvdis"); // 出入库分配表 String task_id = taskObj.getString("task_id"); JSONObject jsonTask = taskTab.query("task_id = '" + task_id + "'").uniqueResult(0); if (StrUtil.equals(status, "0")) { + // 任务为执行中之后就不允许取消 + if (StrUtil.equals(TaskStatusEnum.EXECUTING.getCode(), jsonTask.getString("task_status"))) { + throw new BadRequestException("任务:"+jsonTask.getString("task_code")+"正在执行中,不可取消"); + } + // 更新删除字段 jsonTask.put("is_delete","1"); jsonTask.put("update_time", DateUtil.now()); taskTab.update(jsonTask); + + // 更新分配明细为:未生成 + JSONObject map = new JSONObject(); + map.put("work_status", "00"); + map.put("point_id", ""); + + disTab.update(map,"task_id = '"+task_id+"'"); + } if (TaskStatusEnum.EXECUTING.getCode().equals(status)) { @@ -145,16 +159,16 @@ public class OutTask extends AbstractAcsTask { if (ObjectUtil.isNotEmpty(jsonTaskLast)) throw new BadRequestException("请先完成"+jsonTaskLast.getString("task_code")+"的任务!"); } + // 调用标识完成 + CheckOutBillService checkOutBillService = SpringContextHolder.getBean(CheckOutBillService.class); + checkOutBillService.finishTask(jsonTask); + // 更改任务状态为完成 -// jsonTask.put("task_status", TaskStatusEnum.FINISHED.getCode()); + jsonTask.put("task_status", TaskStatusEnum.FINISHED.getCode()); jsonTask.put("update_optid", currentUserId); jsonTask.put("update_optname", currentUsername); jsonTask.put("update_time", DateUtil.now()); taskTab.update(jsonTask); - - // 调用标识完成 - CheckOutBillService checkOutBillService = SpringContextHolder.getBean(CheckOutBillService.class); - checkOutBillService.finishTask(jsonTask); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java index 26e3dfc9c..889b35653 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java @@ -691,6 +691,7 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService { map.put("struct_id", ""); map.put("struct_code", ""); map.put("struct_name", ""); + map.put("work_status", "00"); WQLObject.getWQLObject("ST_IVT_IOStorInvDis").update(map, "iostorinv_id = '" + mst_jo.get("iostorinv_id") + "' AND box_no = '" + whereJson.get("box_no") + "'"); //修改明细状态 diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql b/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql index cd23a2dbb..2a51c3eea 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/wql/QST_IVT_CHECKOUTBILL.wql @@ -371,12 +371,12 @@ ST_IVT_IOStorInvDis dis LEFT JOIN ST_IVT_IOStorInv ios ON ios.iostorinv_id = dis.iostorinv_id LEFT JOIN md_me_materialbase mb ON mb.material_id = dis.material_id - LEFT JOIN SCH_BASE_Task task ON task.task_id = dis.task_id + LEFT JOIN SCH_BASE_Task task ON task.task_id = dis.task_id AND task.is_delete = '0' LEFT JOIN SCH_BASE_Point point2 ON point2.point_id = dis.point_id LEFT JOIN st_ivt_structattr attr ON attr.struct_id = dis.struct_id LEFT JOIN pdm_bi_subpackagerelation sub ON sub.container_name = dis.pcsn AND dis.box_no = sub.package_box_sn WHERE - 1 = 1 + 1=1 OPTION 输入.iostorinvdtl_id <> "" dis.iostorinvdtl_id = 输入.iostorinvdtl_id ENDOPTION