From 1f6131e5bcf34a4008f034d0cd03436c86d3542b Mon Sep 17 00:00:00 2001 From: xuhaihui <2098865055@qq.com> Date: Sun, 4 Jan 2026 15:11:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B6=E5=85=A5=E5=90=88=E5=90=8C=E5=B1=A5?= =?UTF-8?q?=E7=BA=A6=E8=AE=B0=E5=BD=95=E8=A1=A8=E5=8D=95=E6=8F=92=E4=BB=B6?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BB=B7=E7=A8=8E=E5=90=88=E8=AE=A1=E3=80=81?= =?UTF-8?q?=E9=87=91=E9=A2=9D=E5=92=8C=E7=A8=8E=E9=A2=9D=E7=9A=84=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/form/PerFormRecordsBillPlugin.java | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/PerFormRecordsBillPlugin.java diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/PerFormRecordsBillPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/PerFormRecordsBillPlugin.java new file mode 100644 index 0000000..dc6e8e0 --- /dev/null +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/PerFormRecordsBillPlugin.java @@ -0,0 +1,52 @@ +package zcgj.zcdev.zcdev.pr.plugin.form; + +import kd.bos.bill.AbstractBillPlugIn; +import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.entity.datamodel.events.PropertyChangedArgs; +import kd.bos.form.control.EntryGrid; +import kd.bos.form.control.events.ItemClickEvent; + +import java.math.BigDecimal; +import java.util.EventObject; + +/** + * 收入合同履约记录表单插件 + */ +public class PerFormRecordsBillPlugin extends AbstractBillPlugIn { + @Override + public void registerListener(EventObject e) { + super.registerListener(e); + this.addItemClickListeners("advcontoolbarap"); + } + + @Override + public void itemClick(ItemClickEvent evt) { + super.itemClick(evt); + String itemKey = evt.getItemKey(); + if (itemKey.equals("deleteline")) { + //事务记录明细删行 + EntryGrid entryGrid = (EntryGrid) this.getControl("entryentity"); + BigDecimal amount = entryGrid.getSum("amount").abs();//价税合计 + this.getModel().setValue("zcgj_taxperformeamou", amount);//含税履约金额 + BigDecimal notaxamount = entryGrid.getSum("notaxamount").abs();//金额 + this.getModel().setValue("zcgj_performamount", notaxamount);//履约金额(不含税) + BigDecimal tax = entryGrid.getSum("tax").abs();//税额 + this.getModel().setValue("zcgj_taxamount", tax);//履约税额 + } + } + + @Override + public void propertyChanged(PropertyChangedArgs e) { + String propName = e.getProperty().getName(); + if ("amount".equals(propName) || "notaxamount".equals(propName) || "tax".equals(propName)) { + //价税合计,金额,税额 + EntryGrid entryGrid = (EntryGrid) this.getControl("entryentity"); + BigDecimal amount = entryGrid.getSum("amount").abs();//价税合计 + this.getModel().setValue("zcgj_taxperformeamou", amount);//含税履约金额 + BigDecimal notaxamount = entryGrid.getSum("notaxamount").abs();//金额 + this.getModel().setValue("zcgj_performamount", notaxamount);//履约金额(不含税) + BigDecimal tax = entryGrid.getSum("tax").abs();//税额 + this.getModel().setValue("zcgj_taxamount", tax);//履约税额 + } + } +}