From b34e4efde88efbcc0777c18451085d8ce2266338 Mon Sep 17 00:00:00 2001 From: "tanfengling@x-ri.com" <123456> Date: Thu, 30 Oct 2025 11:40:03 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=87=E8=B4=AD=E5=85=A5=E5=BA=93=E5=AE=A1?= =?UTF-8?q?=E6=A0=B8=E5=B0=81=E8=A3=85=E5=95=86=E5=93=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/operate/im/PurInIotManagePlugin.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/lc123/cloud/app/plugin/operate/im/PurInIotManagePlugin.java b/lc123/cloud/app/plugin/operate/im/PurInIotManagePlugin.java index 2bba33b..366d99f 100644 --- a/lc123/cloud/app/plugin/operate/im/PurInIotManagePlugin.java +++ b/lc123/cloud/app/plugin/operate/im/PurInIotManagePlugin.java @@ -36,7 +36,7 @@ public class PurInIotManagePlugin extends AbstractOperationServicePlugIn impleme String billno = dataEntity.getString("billno"); QFilter qFilter = new QFilter("billno", QCP.equals, billno); DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle("im_purinbill", - "billentry.producedate,billentry.expirydate,billentry.lotnumber,billentry.tqq9_registration,billentry.material,billentry.warehouse", + "billentry.producedate,billentry.expirydate,billentry.lotnumber,billentry.tqq9_registration,billentry.material,billentry.warehouse,billentry.lot,billentry.qty", qFilter.toArray()); DynamicObjectCollection billentry = dynamicObject.getDynamicObjectCollection("billentry"); // DynamicObject[] tqq9_goodlotmanages=new DynamicObject[billentry.size()]; @@ -81,9 +81,11 @@ public class PurInIotManagePlugin extends AbstractOperationServicePlugIn impleme } //同时将批次信息写到商城商品信息上 - QFilter f1 = new QFilter("tqq9_mater.id", "=", "material.id"); + QFilter f1 = new QFilter("tqq9_mater.id", "=", material.getPkValue()); QFilter f2 = new QFilter("tqq9_isauto", "=", true); - DynamicObject[] goodsArr = BusinessDataServiceHelper.load("tqq9_goodspackage", "id,name.number", new QFilter[]{f1, f2}); + DynamicObject[] goodsArr = BusinessDataServiceHelper.load("tqq9_goodspackage", + "id,name,number,tqq9_entry.tqq9_lot,tqq9_entry.tqq9_basedatafield,tqq9_entry.tqq9_availablestock,tqq9_entry.tqq9_upstock,tqq9_entry.tqq9_productdate,tqq9_entry.tqq9_todate", + new QFilter[]{f1, f2}); if(goodsArr != null && goodsArr.length > 0){ // 物料已经被封装成了商品 boolean isExistEntry = false;//在明细中是否能找到对应的商品信息 @@ -101,8 +103,8 @@ public class PurInIotManagePlugin extends AbstractOperationServicePlugIn impleme } Date tqq9_productdate = entry1.getDate("tqq9_productdate"); Date tqq9_todate = entry1.getDate("tqq9_todate"); - - if(lotNumber.equals(lotnumber) && whNumber.equals(warehouseNumber) + if(((StringUtils.isBlank(lotNumber) && StringUtils.isBlank(lotnumber)) || lotNumber.equals(lotnumber)) + && ((StringUtils.isBlank(whNumber) && StringUtils.isBlank(warehouseNumber)) || whNumber.equals(warehouseNumber)) && ((tqq9_productdate == null && producedate == null) || (tqq9_productdate.equals(producedate))) && ((tqq9_todate == null && expirydate == null) || (tqq9_todate.equals(expirydate)))){ // 如果现有的商品数据存在 @@ -110,6 +112,10 @@ public class PurInIotManagePlugin extends AbstractOperationServicePlugIn impleme entry1.set("tqq9_availablestock", tqq9_availablestock.add(entry.getBigDecimal("qty"))); BigDecimal tqq9_upstock = entry1.getBigDecimal("tqq9_upstock"); entry1.set("tqq9_upstock", tqq9_upstock.add(entry.getBigDecimal("qty"))); + isExistEntry = true; + } + if(isExistEntry){ + break; } } if(!isExistEntry){