From 349b5af144799962d1d68bc70872dd32d8f52cfe Mon Sep 17 00:00:00 2001 From: xuhaihui <2098865055@qq.com> Date: Sun, 21 Sep 2025 14:43:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E5=90=8C=E7=BB=93=E7=AE=97=E5=85=AC?= =?UTF-8?q?=E7=94=A8=E6=8F=92=E4=BB=B6=E4=BC=98=E5=8C=96=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/form/ContractSettleBillPlugin.java | 6 +++--- .../ContractSettleCommonEditPluginExt.java | 21 +++++++++++-------- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ContractSettleBillPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ContractSettleBillPlugin.java index 7f41b2a..f07ff26 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ContractSettleBillPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ContractSettleBillPlugin.java @@ -22,7 +22,7 @@ import java.util.Date; * 单据界面插件 * 合同结算公共插件插件 */ -public class ContractSettleBillPlugin extends ContractSettleCommonEditPluginExt{ +public class ContractSettleBillPlugin extends ContractSettleCommonEditPlugin{ @Override protected void setDateEditMinAndMaxDate() { @@ -81,9 +81,9 @@ public class ContractSettleBillPlugin extends ContractSettleCommonEditPluginExt{ }else if (StringUtils.equals(name, "zcgj_adjustmounttax")) { //this.adjustAmountTax(changeData); } - } else { + }/* else { this.setDateEditMinAndMaxDate(); - } + }*/ } diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ContractSettleCommonEditPluginExt.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ContractSettleCommonEditPluginExt.java index 73a0474..711ea5a 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ContractSettleCommonEditPluginExt.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ContractSettleCommonEditPluginExt.java @@ -289,13 +289,12 @@ public class ContractSettleCommonEditPluginExt extends AbstractContBillPlugin im for(int var7 = 0; var7 < var6; ++var7) { int rowIndex = var5[var7]; itemPayItem = this.getModel().getEntryRowEntity("payitemdetailentry", rowIndex); - detailunitproject = itemPayItem.getDynamicObject("detailpayitem"); - if (detailunitproject != null) { - DynamicObject detailunitproject1 = (DynamicObject)itemPayItem.get("detailunitproject");//二开修改 - String mapKey = (detailunitproject1 != null ? detailunitproject1.getString("id") : "") - + "," + (detailunitproject1 != null ? detailunitproject1.getString("id") : "");//二开修改 -// DynamicObject detailunitproject = (DynamicObject)itemPayItem.get("detailunitproject");//系统标准 -// String mapKey = detailunitproject.getString("id") + "," + (detailunitproject != null ? detailunitproject.getString("id") : "");//系统标准 + DynamicObject detailpayitem = itemPayItem.getDynamicObject("detailpayitem"); + if (detailpayitem != null) { + // 修复:正确获取detailunitproject并生成mapKey + DynamicObject detailunitproject1 = (DynamicObject)itemPayItem.get("detailunitproject"); + String mapKey = detailpayitem.getString("id") + "," + (detailunitproject1 != null ? detailunitproject1.getString("id") : ""); + itemOfTaxAmt = (BigDecimal)ofTaxMap.getOrDefault(mapKey, BigDecimal.ZERO); itemOfTaxAmt = itemOfTaxAmt.add(itemPayItem.getBigDecimal("detailoftaxamt") == null ? BigDecimal.ZERO : itemPayItem.getBigDecimal("detailoftaxamt")); ofTaxMap.put(mapKey, itemOfTaxAmt); @@ -324,9 +323,13 @@ public class ContractSettleCommonEditPluginExt extends AbstractContBillPlugin im } itemEntry = (DynamicObject)iterator.next(); - itemPayItem = itemEntry.getDynamicObject("payitem"); +/* itemPayItem = itemEntry.getDynamicObject("payitem"); detailunitproject = (DynamicObject)itemEntry.get("itemunitproject"); - uniquekey = itemPayItem.getString("id") + "," + (detailunitproject != null ? detailunitproject.getString("id") : ""); + uniquekey = itemPayItem.getString("id") + "," + (detailunitproject != null ? detailunitproject.getString("id") : "");*///系统源码 + itemPayItem = itemEntry.getDynamicObject("payitem");//合同支付项-名称 + DynamicObject itemunitproject = (DynamicObject)itemEntry.get("itemunitproject");//合同支付项-单位工程 + // 修复:正确生成uniquekey以匹配mapKey + uniquekey = itemPayItem.getString("id") + "," + (itemunitproject != null ? itemunitproject.getString("id") : "");//二开修改 } while(!ofTaxMap.containsKey(uniquekey)); BigDecimal itemDetailOfTaxAmt = (BigDecimal)ofTaxMap.getOrDefault(uniquekey, BigDecimal.ZERO);