From bef247de72485381d57f9b38cf8996442f863db3 Mon Sep 17 00:00:00 2001 From: zengweihai Date: Wed, 7 Aug 2024 12:03:45 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=B9=E5=85=AC=E6=8A=A5=E9=94=80=E5=8D=95?= =?UTF-8?q?=E5=86=B2=E9=94=80=E5=90=8E=E9=87=91=E9=A2=9D=E8=AE=A1=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../formplugin/GenerateSKClickPlugln.java | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/shkd-cosmic-debug/src/main/java/shkd/fi/er/plugin/formplugin/GenerateSKClickPlugln.java b/shkd-cosmic-debug/src/main/java/shkd/fi/er/plugin/formplugin/GenerateSKClickPlugln.java index 8e2efae..21593cd 100644 --- a/shkd-cosmic-debug/src/main/java/shkd/fi/er/plugin/formplugin/GenerateSKClickPlugln.java +++ b/shkd-cosmic-debug/src/main/java/shkd/fi/er/plugin/formplugin/GenerateSKClickPlugln.java @@ -9,6 +9,7 @@ import kd.bos.form.control.EntryGrid; import kd.bos.form.control.events.ItemClickEvent; import kd.bos.form.events.AfterDoOperationEventArgs; import kd.bos.form.events.BeforeDoOperationEventArgs; +import kd.bos.form.operate.FormOperate; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.QueryServiceHelper; @@ -91,6 +92,42 @@ public class GenerateSKClickPlugln extends AbstractBillPlugIn implements Plugin @Override public void beforeDoOperation(BeforeDoOperationEventArgs args) { super.beforeDoOperation(args); + FormOperate formOperate = (FormOperate)args.getSource(); + String operateKey = formOperate.getOperateKey(); + if ("save".equals(operateKey) || "submit".equals(operateKey)){ + DynamicObject shkd_billtypefield = this.getModel().getDataEntity().getDynamicObject("shkd_billtypefield"); + if (!"er_publicreimbursebill_BT_03".equals(shkd_billtypefield.getString("number"))){ + DynamicObjectCollection writeoffmoney = this.getModel().getEntryEntity("writeoffmoney"); + if (writeoffmoney.size() > 0){ + DynamicObject dynamicObject = writeoffmoney.get(0); + BigDecimal accloanamount = dynamicObject.getBigDecimal("accloanamount");//获取冲销金额 + if (accloanamount != null){ + DynamicObjectCollection expenseentryentity = this.getModel().getEntryEntity("expenseentryentity"); + if (expenseentryentity.size() > 0){ + DynamicObject dynamicObject1 = expenseentryentity.get(0); + BigDecimal expenseamount = dynamicObject1.getBigDecimal("expenseamount");//获取报销金额 + if (expenseamount != null){ + dynamicObject1.set("shkd_verification",expenseamount.subtract(accloanamount)); + this.getView().updateView("expenseentryentity"); + } + } + } + }else { + DynamicObjectCollection expenseentryentity = this.getModel().getEntryEntity("expenseentryentity"); + if (expenseentryentity.size() > 0){ + DynamicObject dynamicObject1 = expenseentryentity.get(0); + BigDecimal expenseamount = dynamicObject1.getBigDecimal("expenseamount");//获取报销金额 + if (expenseamount != null){ + dynamicObject1.set("shkd_verification",expenseamount); + this.getView().updateView("expenseentryentity"); + } + } + } + } + + } + + } @Override