From 057e09e545541ba82775250943e03a79beb041d7 Mon Sep 17 00:00:00 2001 From: "ZHOUZ\\Noble'lift" <1014987728@qq.com> Date: Mon, 27 May 2024 11:05:39 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E6=96=B0=E5=A2=9E=E5=8C=85=E8=A3=85?= =?UTF-8?q?=E5=85=B3=E7=B3=BB=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mes/service/impl/MesToLmsServiceImpl.java | 7 ++++- .../service/impl/CheckOutBillServiceImpl.java | 30 +++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java index ad8d2dd60..59d557da8 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java @@ -1076,7 +1076,9 @@ public class MesToLmsServiceImpl implements MesToLmsService { String demand_limit = detail.getString("Attribute4");//客户需求抗拉下限 String standard_limit = detail.getString("Attribute5");//内控标准抗拉下限 String actual_value = detail.getString("Attribute6");//生产实际抗拉值 - String Attribute7 = detail.getString("7");//生产实际抗拉值 + String Attribute7 = detail.getString("Attribute7");//包装关系类型 + String Attribute8 = detail.getString("Attribute8");//产品类型 + String Attribute9 = detail.getString("Attribute9");//接头数 if (ObjectUtil.isNotEmpty(Attribute7) && "1".equals(Attribute7)) { sub_type = "2"; } @@ -1131,6 +1133,9 @@ public class MesToLmsServiceImpl implements MesToLmsService { jo.put("un_plan_product_property3", UnPlanProductProperty3); jo.put("width_standard", width_standard); jo.put("thickness_request", thickness_request); + jo.put("material_type", Attribute8); + jo.put("joint_num", Attribute9); + jo.put("thickness_request", thickness_request); jo.put("status", "0"); jo.put("create_id", "1"); jo.put("create_name", "管理员"); 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 ba71db257..6ea477248 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 @@ -5595,6 +5595,36 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { subTab.update(jsonSub); + + if ("1003".equals(jo_mst.getString("bill_type")) || "1006".equals(jo_mst.getString("bill_type"))) { + //如果为返检出库或者改切出库删除对应的包装关系 + JSONArray dis_rows = new JSONArray(); + if (jo_mst.getString("is_overdue").equals("1")) { + dis_rows = WQLObject.getWQLObject("ST_IVT_IOStorInvDis").query("iostorinv_id = '" + iostorinv_id + "' and is_overdue = '0'").getResultJSONArray(0); + } else { + dis_rows = WQLObject.getWQLObject("ST_IVT_IOStorInvDis").query("iostorinv_id = '" + iostorinv_id + "'").getResultJSONArray(0); + } + + for (int j = 0; j < dis_rows.size(); j++) { + JSONObject dis_row = dis_rows.getJSONObject(j); + String sect_code = dis_row.getString("sect_code"); + JSONObject sect_jo = WQLObject.getWQLObject("st_ivt_sectattr").query("sect_code = '" + sect_code + "'").uniqueResult(0); + if (ObjectUtil.isEmpty(sect_jo)) { + throw new BadRequestException("未查询到对应的库区!"); + } + //如果是虚拟区的出库,直接把包装关系删除;如果为立库的包装关系,将解绑删除标识置为1。当发货区解绑时,删除包装关系 + String pcsn = dis_row.getString("pcsn"); + if ("09".equals(sect_jo.getString("sect_type_attr"))) { + WQLObject.getWQLObject("pdm_bi_subpackagerelation").delete("container_name = '" + pcsn + "'"); + } else { + HashMap map = new HashMap<>(); + map.put("need_delete", "1"); + WQLObject.getWQLObject("pdm_bi_subpackagerelation").update(map, "container_name = '" + pcsn + "'"); + } + + } + } + // 解锁起点 JSONObject from_start = new JSONObject(); from_start.put("struct_id", dis.getString("struct_id"));