From 5662240c1652911ae718096666ed291b546a1057 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BE=9A=E8=B1=86=E8=B1=86?= <13356128+sunandmoon60@user.noreply.gitee.com> Date: Tue, 11 Nov 2025 12:28:43 +0800 Subject: [PATCH] =?UTF-8?q?1.=E9=80=80=E8=B4=A7=E8=A1=A5=E8=B4=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/controller/CasPaybillController.java | 5 ++- .../api/controller/WMSPurInController.java | 4 ++ .../api/controller/WMSSaleOutController.java | 4 ++ lc123/cloud/app/api/utils/Constants.java | 1 + .../im/PurOrderPushPurRefundConverPlugin.java | 40 +++++++++++-------- .../operate/pm/OtherInWareSaveOpPlugin.java | 2 +- .../operate/pm/ReceiptNoticeSavePlugin.java | 2 +- 7 files changed, 39 insertions(+), 19 deletions(-) diff --git a/lc123/cloud/app/api/controller/CasPaybillController.java b/lc123/cloud/app/api/controller/CasPaybillController.java index d669b39..a9042f6 100644 --- a/lc123/cloud/app/api/controller/CasPaybillController.java +++ b/lc123/cloud/app/api/controller/CasPaybillController.java @@ -132,17 +132,20 @@ public class CasPaybillController { cas_paybill.set("tqq9_dzhdbh", tqq9_dzhdbh); cas_paybill.set("tqq9_cwztfkzt", "D"); SaveServiceHelper.save(new DynamicObject[]{cas_paybill}); - + OperationResult payResult_fw = OperationServiceHelper.executeOperate(Constants.PUSHPAYMENT_FW, Constants.CAS_PAYBILL, new DynamicObject[]{cas_paybill}, option); } } else if (StringUtils.equals("F", billstatus) ) { cas_paybill.set("tqq9_cwztfkzt", "F"); SaveServiceHelper.save(new DynamicObject[]{cas_paybill}); + OperationResult payResult_fw = OperationServiceHelper.executeOperate(Constants.PUSHPAYMENT_FW, Constants.CAS_PAYBILL, new DynamicObject[]{cas_paybill}, option); } else if (StringUtils.equals("E", billstatus)) { cas_paybill.set("tqq9_cwztfkzt", "E"); SaveServiceHelper.save(new DynamicObject[]{cas_paybill}); + OperationResult payResult_fw = OperationServiceHelper.executeOperate(Constants.PUSHPAYMENT_FW, Constants.CAS_PAYBILL, new DynamicObject[]{cas_paybill}, option); } else if (StringUtils.equals("G", billstatus)) { cas_paybill.set("tqq9_cwztfkzt", "G"); SaveServiceHelper.save(new DynamicObject[]{cas_paybill}); + OperationResult payResult_fw = OperationServiceHelper.executeOperate(Constants.PUSHPAYMENT_FW, Constants.CAS_PAYBILL, new DynamicObject[]{cas_paybill}, option); } } int failCount = index;//失败数量 diff --git a/lc123/cloud/app/api/controller/WMSPurInController.java b/lc123/cloud/app/api/controller/WMSPurInController.java index 250d7e5..d02fcdd 100644 --- a/lc123/cloud/app/api/controller/WMSPurInController.java +++ b/lc123/cloud/app/api/controller/WMSPurInController.java @@ -99,6 +99,10 @@ public class WMSPurInController { //判断回传类型 VoucherType=billTypeMap.get(VoucherType); String entityType = ""; + if(VoucherType==null){ + errormsg = "传入参数 VoucherType 为无效值"; + resultExt = ApiResultExt.errorRetrun(entityType, errormsg, error, resultExt); + } switch (VoucherType) { case "pm_receiptnotice": entityType = "im_purinbill"; diff --git a/lc123/cloud/app/api/controller/WMSSaleOutController.java b/lc123/cloud/app/api/controller/WMSSaleOutController.java index c06d6e8..63bc24d 100644 --- a/lc123/cloud/app/api/controller/WMSSaleOutController.java +++ b/lc123/cloud/app/api/controller/WMSSaleOutController.java @@ -99,6 +99,10 @@ public class WMSSaleOutController { //判断回传类型 VoucherType=billTypeMap.get(VoucherType); String entityType = ""; + if(VoucherType==null){ + errormsg = "传入参数 VoucherType 为无效值"; + resultExt = ApiResultExt.errorRetrun(entityType, errormsg, error, resultExt); + } switch (VoucherType) { case "sm_delivernotice": entityType = "im_saloutbill"; diff --git a/lc123/cloud/app/api/utils/Constants.java b/lc123/cloud/app/api/utils/Constants.java index 99e1a06..4275373 100644 --- a/lc123/cloud/app/api/utils/Constants.java +++ b/lc123/cloud/app/api/utils/Constants.java @@ -24,6 +24,7 @@ public class Constants { public static final String TYPE_ADD = "add"; //新增类型 public static final String TYPE_UNSETTLE = "unsettle"; //反结算类型 public static final String TYPE_PAY = "pay"; //付款类型 + public static final String PUSHPAYMENT_FW = "pushpayment_fw"; //付款状态推送泛微 public static final String GET = "get"; //付款类型 public static final String POST = "post"; //付款类型 } diff --git a/lc123/cloud/app/plugin/operate/im/PurOrderPushPurRefundConverPlugin.java b/lc123/cloud/app/plugin/operate/im/PurOrderPushPurRefundConverPlugin.java index 3a30e63..fcf325d 100644 --- a/lc123/cloud/app/plugin/operate/im/PurOrderPushPurRefundConverPlugin.java +++ b/lc123/cloud/app/plugin/operate/im/PurOrderPushPurRefundConverPlugin.java @@ -1,8 +1,8 @@ package tqq9.lc123.cloud.app.plugin.operate.im; +import com.alibaba.nacos.common.utils.StringUtils; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObjectCollection; -import kd.bos.dataentity.utils.StringUtils; import kd.bos.entity.ExtendedDataEntity; import kd.bos.entity.ExtendedDataEntitySet; import kd.bos.entity.botp.plugin.AbstractConvertPlugIn; @@ -16,6 +16,8 @@ import kd.sdk.plugin.Plugin; import java.math.BigDecimal; import java.util.Date; +import java.util.HashMap; +import java.util.Map; /** * 单据转换插件 @@ -58,6 +60,7 @@ public class PurOrderPushPurRefundConverPlugin extends AbstractConvertPlugIn imp BigDecimal zero = BigDecimal.ZERO; dynamicObjectCollection.clear(); if (im_purinblil != null) { + HashMap map = new HashMap<>(); for (DynamicObject dynamicObject : im_purinblil) { DynamicObjectCollection billentry = dynamicObject.getDynamicObjectCollection("billentry"); String billid = dynamicObject.getString("id"); @@ -192,23 +195,28 @@ public class PurOrderPushPurRefundConverPlugin extends AbstractConvertPlugIn imp dynamicObject1.set("tqq9_productdate", producedate); dynamicObject1.set("tqq9_expiredate", expirydate); dynamicObject1.set("tqq9_shbillno", srcbillnumber); - dynamicObject1.set("tqq9_inwarebillentryid", tqq9_inwarebillentryid); - }else{ - for (DynamicObject dynamicObject1 : dynamicObjectCollection) { - String inwarebillentryid = dynamicObject1.getString("tqq9_inwarebillentryid"); - if (StringUtils.equals(inwarebillentryid,tqq9_inwarebillentryid)){ - BigDecimal qty1 = dynamicObject1.getBigDecimal("qty"); - BigDecimal add = qty1.add(qty); - dynamicObject1.set("tqq9_inwarebillentryqty", add); - dynamicObject1.set("tqq9_maxqty", add); - dynamicObject1.set("qty", add); - dynamicObject1.set("baseqty", add); - - } - + } else { + map.put(tqq9_inwarebillentryid, qty); + } + } + } + for (Map.Entry entrySet : map.entrySet()) { + String id = entrySet.getKey(); + BigDecimal qty1 = entrySet.getValue(); + for (DynamicObject dynamicObject1 : dynamicObjectCollection) { + String inwarebillentryid = dynamicObject1.getString("tqq9_inwarebillentryid"); + if (StringUtils.equals(inwarebillentryid, id)) { + BigDecimal qty2 = dynamicObject1.getBigDecimal("qty"); + BigDecimal add = qty2.add(qty1); + if (add.compareTo(BigDecimal.ZERO) > 0) { + dynamicObject1.set("tqq9_inwarebillentryqty", add); + dynamicObject1.set("tqq9_maxqty", add); + dynamicObject1.set("qty", add); + dynamicObject1.set("baseqty", add); + } else if (add.compareTo(BigDecimal.ZERO) == 0) { + dynamicObjectCollection.remove(dynamicObject1); } } - } } } diff --git a/lc123/cloud/app/plugin/operate/pm/OtherInWareSaveOpPlugin.java b/lc123/cloud/app/plugin/operate/pm/OtherInWareSaveOpPlugin.java index 79a837c..6e2dd52 100644 --- a/lc123/cloud/app/plugin/operate/pm/OtherInWareSaveOpPlugin.java +++ b/lc123/cloud/app/plugin/operate/pm/OtherInWareSaveOpPlugin.java @@ -35,7 +35,7 @@ public class OtherInWareSaveOpPlugin extends AbstractOperationServicePlugIn impl DynamicObject dynamicObject = dataEntities1[0]; Map> id = BFTrackerServiceHelper.findDirtSourceBills(TQQ9_OTHERINAPPLY, new Long[]{dynamicObject.getLong("id")}); - if (id.size()>0) { + if (dynamicObject.getBoolean("tqq9_isrebulidlink")) { DynamicObjectCollection billentry1 = dynamicObject.getDynamicObjectCollection("billentry"); if (billentry1.size() > 0) { DynamicObject dynamicObject1 = billentry1.get(0); diff --git a/lc123/cloud/app/plugin/operate/pm/ReceiptNoticeSavePlugin.java b/lc123/cloud/app/plugin/operate/pm/ReceiptNoticeSavePlugin.java index 33131e4..d159c36 100644 --- a/lc123/cloud/app/plugin/operate/pm/ReceiptNoticeSavePlugin.java +++ b/lc123/cloud/app/plugin/operate/pm/ReceiptNoticeSavePlugin.java @@ -35,7 +35,7 @@ public class ReceiptNoticeSavePlugin extends AbstractOperationServicePlugIn impl DynamicObject dynamicObject = dataEntities1[0]; Map> id = BFTrackerServiceHelper.findDirtSourceBills(PM_PURORDERBILL, new Long[]{dynamicObject.getLong("id")}); - if (id.size()>0) { + if (id.size()==0) { DynamicObjectCollection billentry1 = dynamicObject.getDynamicObjectCollection("billentry"); if (billentry1.size() > 0) { DynamicObject dynamicObject1 = billentry1.get(0);