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){