From 4f68ed9dfed16509a1ec5df0b17a1a2ecc8b2b56 Mon Sep 17 00:00:00 2001 From: liuxy Date: Mon, 9 Jan 2023 09:57:55 +0800 Subject: [PATCH 1/5] =?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 --- .../wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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 7d36263f5..ce4bcf8dd 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 @@ -25,6 +25,7 @@ import org.nl.wms.basedata.st.service.dto.StorattrDto; import org.nl.wms.basedata.st.service.dto.StructattrDto; import org.nl.wms.basedata.st.service.impl.UserStorServiceImpl; import org.nl.wms.sch.manage.AbstractAcsTask; +import org.nl.wms.sch.manage.TaskStatusEnum; import org.nl.wms.sch.service.PointService; import org.nl.wms.sch.service.TaskService; import org.nl.wms.sch.service.dto.PointDto; @@ -1119,7 +1120,7 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService { }*/ AbstractAcsTask task = new InTask(); - task.updateTaskStatus(task_jo, "2"); + task.updateTaskStatus(task_jo, TaskStatusEnum.FINISHED.getCode()); } @Override From 0686beac3dd09ca44d56bf22a7bdfecc7427a62d Mon Sep 17 00:00:00 2001 From: "ZHOUZ\\Noble'lift" <1014987728@qq.com> Date: Mon, 9 Jan 2023 09:58:06 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ext/acs/service/impl/AcsToWmsServiceImpl.java | 15 +++++++++------ .../service/impl/RawAssistIStorServiceImpl.java | 6 +++++- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java index d5a3732ac..700383863 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -57,7 +57,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { * @param string 条件 * @returnzss */ - @LokiLog(type = LokiLogType.ACS_TO_LMS) @Override public Map receiveTaskStatusAcs(String string) { JSONArray array = JSONArray.parseArray(string); @@ -129,7 +128,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { return result; } - @LokiLog(type = LokiLogType.ACS_TO_LMS) @Override public String againApply(String task_id) { log.info("输入参数:" + task_id); @@ -153,13 +151,11 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { return point_code; } - @LokiLog(type = LokiLogType.ACS_TO_LMS) @Override public Map receivePointStatusFromAcs(Map jsonObject) { return null; } - @LokiLog(type = LokiLogType.ACS_TO_LMS) @Override public Map orderFinish(String string) { JSONObject orderJson = JSONObject.parseObject(string); @@ -182,8 +178,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { return result; } - @LokiLog(type = LokiLogType.ACS_TO_LMS) @Override + @LokiLog(type = LokiLogType.ACS_TO_LMS) @Transactional(rollbackFor = Exception.class) public JSONObject apply(JSONObject whereJson) { String type = whereJson.getString("type"); @@ -204,6 +200,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { * 4.出库口申请入发货区任务 */ if (type.equals("1")) { + boolean checked = true; + boolean auto_div = false; if (ObjectUtil.isEmpty(vehicle_code)) throw new BadRequestException("ACS申请任务失败!载具不能为空"); //通过该木箱码查询对应的分配明细 JSONArray dis_rows = WQLObject.getWQLObject("st_ivt_iostorinvdis").query("work_status = '00' AND box_no = '" + vehicle_code + "'").getResultJSONArray(0); @@ -221,6 +219,10 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { dis_map.put("sect_name",dis_row.getString("sect_name")); dis_map.put("struct_id",dis_row.getString("struct_id")); dis_map.put("struct_code",dis_row.getString("struct_code")); + if (StrUtil.isNotEmpty(dis_row.getString("struct_code"))){ + auto_div = true; + checked = false; + } dis_map.put("struct_name",dis_row.getString("struct_name")); dis_map.put("iostorinv_id",dis_row.getString("iostorinv_id")); dis_list.add(dis_map); @@ -231,7 +233,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { map.put("tableMater", dis_list); map.put("point_code", device_code); map.put("sect_id", sect_jo.getString("sect_id")); - map.put("checked", true); + map.put("checked", checked); + map.put("auto_div", auto_div); map.put("auto_issue", "1"); //自动分配货位并下发任务 rawAssistIStorService.divStruct(map); 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 7d36263f5..15e18f3c3 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 @@ -469,9 +469,13 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService { JSONObject whereJson2 = JSONObject.parseObject(JSON.toJSONString(whereJson)); HashMap map = rows.get(0); + Boolean auto_div = false; + if (whereJson2.containsKey("auto_div")){ + auto_div = whereJson2.getBoolean("auto_div"); + } //判断该载具是否已经分配货位或者起点 JSONArray now_dis_rows = WQL.getWO("QST_IVT_RAWASSISTISTOR").addParam("flag", "17").addParam("box_no", map.get("box_no")).process().getResultJSONArray(0); - if (now_dis_rows.size() > 0) { + if (now_dis_rows.size() > 0 && !auto_div) { throw new BadRequestException("该木箱已经分配过货位,无法继续分配!"); } From 1018503567c87bd970f6136cfbe1c2003b85adc5 Mon Sep 17 00:00:00 2001 From: liuxy Date: Mon, 9 Jan 2023 12:32:10 +0800 Subject: [PATCH 3/5] =?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/OutTask.java | 6 +- .../java/org/nl/wms/sch/tasks/wql/TASK01.wql | 60 +++++++++++++++++++ .../service/impl/CheckOutBillServiceImpl.java | 1 - 3 files changed, 65 insertions(+), 2 deletions(-) create mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/wql/TASK01.wql 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 a24390f03..b9e432aa3 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 @@ -12,6 +12,7 @@ import lombok.RequiredArgsConstructor; import org.nl.modules.common.exception.BadRequestException; import org.nl.common.utils.SecurityUtils; import org.nl.modules.system.util.CodeUtil; +import org.nl.modules.wql.WQL; import org.nl.modules.wql.core.bean.WQLObject; import org.nl.modules.wql.util.SpringContextHolder; import org.nl.wms.ext.mes.service.impl.LmsToMesServiceImpl; @@ -46,7 +47,10 @@ public class OutTask extends AbstractAcsTask { WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); WQLObject dis_tab = WQLObject.getWQLObject("ST_IVT_IOStorInvDis"); - JSONArray arr = WQLObject.getWQLObject("SCH_BASE_Task").query("handle_class = '" + THIS_CLASS + "' and task_status = '" + TaskStatusEnum.START_AND_POINT.getCode() + "' and is_delete ='0'").getResultJSONArray(0); + JSONObject map = new JSONObject(); + map.put("flag", "1"); + map.put("handle_class", THIS_CLASS); + JSONArray arr = WQL.getWO("TASK01").addParamMap(map).process().getResultJSONArray(0); ArrayList resultList = new ArrayList<>(); for (int i = 0; i < arr.size(); i++) { diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/wql/TASK01.wql b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/wql/TASK01.wql new file mode 100644 index 000000000..7813286f2 --- /dev/null +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/wql/TASK01.wql @@ -0,0 +1,60 @@ +[交易说明] + 交易名: 出库任务 + 所属模块: + 功能简述: + 版权所有: + 表引用: + 版本经历: + +[数据库] + --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 + +[IO定义] + ################################################# + ## 表字段对应输入参数 + ################################################# + 输入.flag TYPEAS s_string + 输入.handle_class TYPEAS s_string + +[临时表] + --这边列出来的临时表就会在运行期动态创建 + +[临时变量] + --所有中间过程变量均可在此处定义 + +[业务过程] + + ########################################## + # 1、输入输出检查 # + ########################################## + + + ########################################## + # 2、主过程前处理 # + ########################################## + + + ########################################## + # 3、业务主过程 # + ########################################## + + IF 输入.flag = "1" + QUERY + SELECT + max(task_group_id) AS task_group_id, + max(task_type) AS task_type + FROM + sch_base_task + WHERE + task_status = '04' + AND is_delete = '0' + + OPTION 输入.handle_class <> "" + handle_class = 输入.handle_class + ENDOPTION + + group by task_group_id + + ENDSELECT + ENDQUERY + ENDIF diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/service/impl/CheckOutBillServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/service/impl/CheckOutBillServiceImpl.java index 1c9880db9..0cadccf54 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/service/impl/CheckOutBillServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/service/impl/CheckOutBillServiceImpl.java @@ -2499,7 +2499,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { jsonRow.put("point_id", jsonPoint2.getString("point_id")); this.rowDispose(jsonRow); } - outTask.immediateNotifyAcs(null); } @Transactional(rollbackFor = Exception.class) From 9a343ca146b3c1da6c061380228c8db0fbdbb8f2 Mon Sep 17 00:00:00 2001 From: liuxy Date: Mon, 9 Jan 2023 17:06:04 +0800 Subject: [PATCH 4/5] =?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 --- .../acs/service/impl/AcsToWmsServiceImpl.java | 60 +++++- .../org/nl/wms/sch/tasks/SendOutTask.java | 2 +- .../wms/st/inbill/wql/QST_ACSTOLMSTYPE4.wql | 182 ++++++++++++++++++ .../st/inbill/wql/QST_IVT_RAWASSISTISTOR.wql | 103 +++++++++- 4 files changed, 339 insertions(+), 8 deletions(-) create mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_ACSTOLMSTYPE4.wql diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java index 700383863..29385a761 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -331,21 +331,71 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { String sale_order_name = sub_jo.getString("sale_order_name"); //查询是否存在可用的空位 - JSONObject jo = WQL.getWO("QST_IVT_RAWASSISTISTOR").addParam("flag", "19").addParam("sale_order_name", sale_order_name).process().uniqueResult(0); - if (ObjectUtil.isEmpty(jo)) { + String point_code = ""; + JSONArray joArr = new JSONArray(); + + // 查找此订单号所在的所有排 + JSONArray joRow = WQL.getWO("QST_ACSTOLMSTYPE4").addParam("flag", "1").addParam("sale_order_name", sale_order_name).process().getResultJSONArray(0); + for (int j = 0; j < joRow.size(); j++) { + JSONObject json = joRow.getJSONObject(j); + String row_num = json.getString("row_num"); + + // 查找此排下的所有空位 + JSONArray joEmpPoint = WQL.getWO("QST_ACSTOLMSTYPE4").addParam("flag", "2").addParam("row_num", row_num).process().getResultJSONArray(0); + + if (ObjectUtil.isNotEmpty(joEmpPoint)) { + for (int n = 0; n < joEmpPoint.size(); n++) { + joArr.add(joEmpPoint.getJSONObject(n)); + } + } + } + + if (ObjectUtil.isEmpty(joArr)) { //查询新的一排 - JSONObject point_jo = WQL.getWO("QST_IVT_RAWASSISTISTOR").addParam("flag", "20").process().uniqueResult(0); + JSONObject point_jo = WQL.getWO("QST_ACSTOLMSTYPE4").addParam("flag", "3").process().uniqueResult(0); if (ObjectUtil.isEmpty(point_jo)) { throw new BadRequestException("未查询到相同销售订单的放货区点位或空的一排!"); } else { - jo = WQLObject.getWQLObject("sch_base_point").query("row_num = '" + point_jo.getString("row_num") + "' AND point_type ='9' AND is_delete = '0'").uniqueResult(0); + JSONObject jsonNewRow = WQLObject.getWQLObject("sch_base_point").query("row_num = '" + point_jo.getString("row_num") + "' AND point_type ='9' AND is_delete = '0' order by out_order_seq ASC").uniqueResult(0); + point_code = jsonNewRow.getString("point_code"); + } + } else { + // 校验此货位是否被堵住:1.如果被堵住则判断下一个是否被堵住 2.如果全部被堵住则新开一排 + for (int i = 0; i < joArr.size(); i++) { + JSONObject json = joArr.getJSONObject(i); + // 判断是否被挡住 + JSONArray jsonArray = WQL.getWO("QST_ACSTOLMSTYPE4") + .addParam("flag", "4") + .addParam("point_code", json.getString("point_code")) + .process().getResultJSONArray(0); + + if (ObjectUtil.isNotEmpty(jsonArray)) { + // 堵住则判断下一个 + continue; + } else { + // 未堵住: 跳出循环 + point_code = json.getString("point_code"); + break; + } + + } + } + + if (ObjectUtil.isEmpty(point_code)) { + // 为空则新开一排 + JSONObject point_jo = WQL.getWO("QST_ACSTOLMSTYPE4").addParam("flag", "3").process().uniqueResult(0); + if (ObjectUtil.isEmpty(point_jo)) { + throw new BadRequestException("未查询到相同销售订单的放货区点位或空的一排!"); + } else { + JSONObject jsonNewRow = WQLObject.getWQLObject("sch_base_point").query("row_num = '" + point_jo.getString("row_num") + "' AND point_type ='9' AND is_delete = '0' order by out_order_seq ASC").uniqueResult(0); + point_code = jsonNewRow.getString("point_code"); } } //创建任务 JSONObject task_jo = new JSONObject(); task_jo.put("point_code1", device_code); - task_jo.put("point_code2", jo.getString("point_cde")); + task_jo.put("point_code2", point_code); task_jo.put("vehicle_code", vehicle_code); task_jo.put("task_type", "010506"); SendOutTask sendOutTask = new SendOutTask(); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendOutTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendOutTask.java index 0e8f66600..c9b2f8a9c 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendOutTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/SendOutTask.java @@ -92,7 +92,7 @@ public class SendOutTask extends AbstractAcsTask { // 更新暂存区点位状态 JSONObject jsonPoint2 = WQLObject.getWQLObject("sch_base_point").query("point_code = '" + jsonTask.getString("point_code2") + "'").uniqueResult(0); - jsonPoint2.put("point_status", "02"); + jsonPoint2.put("point_status", "2"); jsonPoint2.put("vehicle_code", jsonTask.getString("vehicle_code")); pointTab.update(jsonPoint2); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_ACSTOLMSTYPE4.wql b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_ACSTOLMSTYPE4.wql new file mode 100644 index 000000000..e02ae64a6 --- /dev/null +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_ACSTOLMSTYPE4.wql @@ -0,0 +1,182 @@ +[交易说明] + 交易名: ACS请求WMS + 所属模块: + 功能简述: + 版权所有: + 表引用: + 版本经历: + +[数据库] + --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 + +[IO定义] + ################################################# + ## 表字段对应输入参数 + ################################################# + 输入.flag TYPEAS s_string + 输入.sale_order_name TYPEAS s_string + 输入.point_code TYPEAS s_string + 输入.row_num TYPEAS s_string + + +[临时表] + --这边列出来的临时表就会在运行期动态创建 + +[临时变量] + --所有中间过程变量均可在此处定义 + +[业务过程] + + ########################################## + # 1、输入输出检查 # + ########################################## + + + ########################################## + # 2、主过程前处理 # + ########################################## + + + ########################################## + # 3、业务主过程 # + ########################################## + + IF 输入.flag = "1" + QUERY + SELECT + max(po.row_num) AS row_num + FROM + sch_base_point po + LEFT JOIN pdm_bi_subpackagerelation sub ON sub.package_box_sn = po.vehicle_code + WHERE + po.point_type = '9' + AND sub.sale_order_name = 输入.sale_order_name + + GROUP BY po.row_num + + ORDER BY po.row_num ASC + + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "2" + QUERY + SELECT + po.point_code + FROM + sch_base_point po + WHERE + IFNULL( po.vehicle_code, '' ) = '' + AND + po.point_type = '9' + OPTION 输入.row_num <> "" + po.row_num = 输入.row_num + ENDOPTION + + AND NOT EXISTS ( + SELECT + * + FROM + sch_base_task + WHERE + ( point_code1 = po.point_code OR point_code2 = po.point_code ) + AND task_status < '07' + AND is_delete = '0' + ) + + ORDER BY po.out_order_seq + + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "3" + QUERY + SELECT + * + FROM + ( + SELECT + po.row_num + FROM + sch_base_point po + WHERE + po.is_delete = '0' + AND is_used = '1' + AND po.point_type = '9' + GROUP BY + po.row_num + ) a + WHERE + NOT EXISTS ( + SELECT + * + FROM + ( + SELECT + row_num + FROM + sch_base_point po2 + WHERE + IFNULL( po2.vehicle_code, '' ) <> '' + AND po2.point_type = '9' + GROUP BY + po2.row_num + ) b + WHERE + b.row_num = a.row_num + ) + + ORDER BY row_num ASC + + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "4" + QUERY + SELECT + point2.* + FROM + sch_base_point point1 + LEFT JOIN sch_base_point point2 ON point1.row_num = point2.row_num + WHERE + IFNULL( point2.vehicle_code, '' ) <> '' + AND point1.out_order_seq < point2.out_order_seq + AND point2.point_type = '9' + + OPTION 输入.point_code <> "" + point1.point_code = 输入.point_code + ENDOPTION + + UNION + + SELECT + point2.* + FROM + sch_base_point point1 + LEFT JOIN sch_base_point point2 ON point1.row_num = point2.row_num + WHERE + IFNULL( point2.vehicle_code, '' ) = '' + AND point1.out_order_seq < point2.out_order_seq + AND point2.point_type = '9' + + OPTION 输入.point_code <> "" + point1.point_code = 输入.point_code + ENDOPTION + + AND EXISTS ( + SELECT + * + FROM + sch_base_task + WHERE + ( point_code1 = point2.point_code OR point_code2 = point2.point_code ) + AND task_status < '07' + AND is_delete = '0' + ) + + ENDSELECT + ENDQUERY + ENDIF \ No newline at end of file diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_IVT_RAWASSISTISTOR.wql b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_IVT_RAWASSISTISTOR.wql index cb43279ea..a5288db7d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_IVT_RAWASSISTISTOR.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/wql/QST_IVT_RAWASSISTISTOR.wql @@ -32,6 +32,8 @@ 输入.sale_order_name TYPEAS s_string 输入.material_code TYPEAS s_string 输入.sect_id TYPEAS s_string + 输入.point_code TYPEAS s_string + 输入.row_num TYPEAS s_string 输入.sql_str TYPEAS f_string 输入.in_stor_id TYPEAS f_string @@ -722,7 +724,7 @@ AND is_delete = '0' ) ORDER BY po2.out_order_seq - LIMIT 1 + ENDSELECT ENDIF @@ -762,6 +764,9 @@ WHERE b.row_num = a.row_num ) + + ORDER BY row_num ASC + ENDSELECT ENDQUERY ENDIF @@ -812,7 +817,101 @@ ENDQUERY ENDIF - + IF 输入.flag = "23" + QUERY + SELECT + point2.* + FROM + sch_base_point point1 + LEFT JOIN sch_base_point point2 ON point1.row_num = point2.row_num + WHERE + IFNULL( point2.vehicle_code, '' ) <> '' + AND point1.out_order_seq < point2.out_order_seq + AND point2.point_type = '9' + + OPTION 输入.point_code <> "" + point1.point_code = 输入.point_code + ENDOPTION + + UNION + + SELECT + point2.* + FROM + sch_base_point point1 + LEFT JOIN sch_base_point point2 ON point1.row_num = point2.row_num + WHERE + IFNULL( point2.vehicle_code, '' ) = '' + AND point1.out_order_seq < point2.out_order_seq + AND point2.point_type = '9' + + OPTION 输入.point_code <> "" + point1.point_code = 输入.point_code + ENDOPTION + + AND EXISTS ( + SELECT + * + FROM + sch_base_task + WHERE + ( point_code1 = point2.point_code OR point_code2 = point2.point_code ) + AND task_status < '07' + AND is_delete = '0' + ) + + ENDSELECT + ENDQUERY + ENDIF + + IF 输入.flag = "24" + SELECT + max(po.row_num) AS row_num + FROM + sch_base_point po + LEFT JOIN pdm_bi_subpackagerelation sub ON sub.package_box_sn = po.vehicle_code + WHERE + po.point_type = '9' + + OPTION 输入.sale_order_name <> "" + sub.sale_order_name = 输入.sale_order_name + ENDOPTION + + GROUP BY po.row_num + + ORDER BY po.row_num ASC + + ENDSELECT + ENDIF + + IF 输入.flag = "25" + SELECT + po.point_code + FROM + sch_base_point po + WHERE + IFNULL( po.vehicle_code, '' ) = '' + AND + po.point_type = '9' + OPTION 输入.row_num <> "" + po.row_num = 输入.row_num + ENDOPTION + + AND NOT EXISTS ( + SELECT + * + FROM + sch_base_task + WHERE + ( point_code1 = po.point_code OR point_code2 = po.point_code ) + AND task_status < '07' + AND is_delete = '0' + ) + + ORDER BY po.out_order_seq + + ENDSELECT + ENDIF From cdaf98f8cdc3d0b4c71d67dcb371474dadb1afb8 Mon Sep 17 00:00:00 2001 From: liuxy Date: Mon, 9 Jan 2023 19:24:11 +0800 Subject: [PATCH 5/5] =?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 --- .../src/main/java/org/nl/wms/sch/tasks/InTask.java | 4 ++-- 1 file changed, 2 insertions(+), 2 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 298578bb3..f4e98cfe6 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 @@ -158,10 +158,10 @@ public class InTask extends AbstractAcsTask { @Override @Transactional(rollbackFor = Exception.class) - public void forceFinish(String taskdtl_id) { + public void forceFinish(String task_id) { //任务表 WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); - JSONObject task = wo_Task.query("task_status<>'99' and taskdtl_id='" + taskdtl_id + "'").uniqueResult(0); + JSONObject task = wo_Task.query("task_status<>'07' and task_id='" + task_id + "'").uniqueResult(0); if (task == null) { throw new BadRequestException("查询不到操作的任务记录!"); }