From d90d9c64a279ebe39fd74c83e7c0b2614caa88ea Mon Sep 17 00:00:00 2001 From: zengweihai Date: Wed, 26 Jun 2024 21:56:32 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=9A=E7=94=A8=E6=88=90=E6=9C=AC=E4=B8=AD?= =?UTF-8?q?=E5=BF=83=E6=8F=92=E4=BB=B6=E6=9B=B4=E6=96=B0=E5=88=86=E5=BD=95?= =?UTF-8?q?=E6=90=BA=E5=B8=A6=E5=88=86=E5=BD=95=E6=88=90=E6=9C=AC=E4=B8=AD?= =?UTF-8?q?=E5=BF=83=E5=AD=97=E6=AE=B5=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CommonCostCenterBillFormPlugin.java | 41 ++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/shkd-cosmic-debug/src/main/java/shkd/fi/er/plugin/formplugin/CommonCostCenterBillFormPlugin.java b/shkd-cosmic-debug/src/main/java/shkd/fi/er/plugin/formplugin/CommonCostCenterBillFormPlugin.java index 417e1ef..5826935 100644 --- a/shkd-cosmic-debug/src/main/java/shkd/fi/er/plugin/formplugin/CommonCostCenterBillFormPlugin.java +++ b/shkd-cosmic-debug/src/main/java/shkd/fi/er/plugin/formplugin/CommonCostCenterBillFormPlugin.java @@ -3,8 +3,11 @@ package shkd.fi.er.plugin.formplugin; import kd.bos.bill.AbstractBillPlugIn; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.entity.datamodel.RowDataEntity; +import kd.bos.entity.datamodel.events.AfterAddRowEventArgs; import kd.bos.entity.datamodel.events.ChangeData; import kd.bos.entity.datamodel.events.PropertyChangedArgs; +import kd.bos.form.events.AfterDoOperationEventArgs; import kd.bos.form.field.BasedataEdit; import kd.bos.form.field.events.BeforeF7SelectEvent; import kd.bos.form.field.events.BeforeF7SelectListener; @@ -122,10 +125,46 @@ public class CommonCostCenterBillFormPlugin extends AbstractBillPlugIn implement } } } - } + @Override + public void afterAddRow(AfterAddRowEventArgs e) { + super.afterAddRow(e); + String name = e.getEntryProp().getName(); + if ("expenseentryentity".equals(name)){ + if (entryCostList.contains(entityId)){ + RowDataEntity[] rowDataEntities = e.getRowDataEntities(); + for (RowDataEntity rowDataEntity : rowDataEntities) { + DynamicObject std_entrycostcenter = rowDataEntity.getDataEntity().getDynamicObject("std_entrycostcenter"); + if (std_entrycostcenter == null){ + DynamicObject dataEntity = this.getModel().getDataEntity(); + DynamicObject applier = dataEntity.getDynamicObject("applier");//申请人 + if (applier != null){ + DynamicObject bos_user = BusinessDataServiceHelper.loadSingle(applier.getPkValue(), "bos_user"); + DynamicObjectCollection costEntity = bos_user.getDynamicObjectCollection("shkd_costentity"); + if (costEntity.size() > 0){ + DynamicObject shkd_e_cost = costEntity.get(0).getDynamicObject("shkd_e_cost"); + int rowIndex = rowDataEntity.getRowIndex(); + this.getModel().setValue("std_entrycostcenter",shkd_e_cost,rowIndex); + } + } + } + } + } + }else if ("entryentity".equals(name)){ + RowDataEntity[] rowDataEntities = e.getRowDataEntities(); + Object std_costcenter = this.getModel().getValue("std_costcenter"); + for (RowDataEntity rowDataEntity : rowDataEntities) { + DynamicObject travelcostcenter = rowDataEntity.getDataEntity().getDynamicObject("travelcostcenter"); + if (travelcostcenter == null){ + int rowIndex = rowDataEntity.getRowIndex(); + this.getModel().setValue("travelcostcenter",std_costcenter,rowIndex); + } + } + } + } + @Override public void propertyChanged(PropertyChangedArgs e) { super.propertyChanged(e);