From 11e6def68ac189a6861e2148e414cd14fcb17df0 Mon Sep 17 00:00:00 2001 From: zhangzhiguo <421587375@qq.com> Date: Wed, 6 Aug 2025 14:11:32 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B4=A2=E5=8A=A1=E9=83=A8=E6=A0=B8=E5=AE=9A?= =?UTF-8?q?=E9=87=91=E9=A2=9D=E4=BB=98=E6=AC=BE=E6=96=B9=E5=BC=8F=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/form/FundingplanapplyPlugin.java | 55 ++++++++++++++++++- 1 file changed, 52 insertions(+), 3 deletions(-) diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/FundingplanapplyPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/FundingplanapplyPlugin.java index bdb332d..382b739 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/FundingplanapplyPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/FundingplanapplyPlugin.java @@ -7,12 +7,16 @@ import kd.bos.context.RequestContext; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.entity.datamodel.events.BizDataEventArgs; +import kd.bos.entity.datamodel.events.ChangeData; +import kd.bos.entity.datamodel.events.PropertyChangedArgs; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; +import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.sdk.plugin.Plugin; +import java.math.BigDecimal; import java.time.LocalDate; -import java.util.EventObject; -import java.util.HashSet; -import java.util.Set; +import java.util.*; /** * 资金计划申请插件 @@ -32,6 +36,51 @@ public class FundingplanapplyPlugin extends AbstractBillPlugIn implements Plugin item.set("zcgj_setttype",type); } getView().updateView("zcgj_fin_approved_amount"); + + //设置期间 + DynamicObject org = (DynamicObject) this.getModel().getValue("zcgj_org"); + if(org!=null){ + //查询组织下对应的当前期间数据 + DynamicObject[] orgByCurperiod = BusinessDataServiceHelper.load("gl_accountbook", + "org,curperiod", + new QFilter[]{new QFilter("enable", QCP.equals, Boolean.TRUE). + and("status", QCP.equals, "C").and("org.id", QCP.equals, org.getLong("id"))}); + if(orgByCurperiod!=null && orgByCurperiod.length>0){ + this.getModel().setValue("zcgj_period",orgByCurperiod[0].getDynamicObject("curperiod")); + } + + } + + + + } + } + + @Override + public void propertyChanged(PropertyChangedArgs e) { + super.propertyChanged(e); + String name = e.getProperty().getName(); + ChangeData changeData = e.getChangeSet()[0]; + if(name.equals("zcgj_setttype")){ + String setttype = (String) changeData.getNewValue(); + int rowIndex = changeData.getRowIndex(); + DynamicObjectCollection zcgjFinApprovedAmount = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_fin_approved_amount"); + if(zcgjFinApprovedAmount!=null){ + boolean isOk = true; + for (int i = 0; i < zcgjFinApprovedAmount.size(); i++) { + if(rowIndex != i){ + String zcgjSetttype = zcgjFinApprovedAmount.get(i).getString("zcgj_setttype"); + if(zcgjSetttype!=null && zcgjSetttype.equals(setttype)){ + isOk = false; + } + } + } + if(!isOk){ + this.getView().showErrorNotification("财务部核定金额的结算方式不允许重复,请重新选择"); + zcgjFinApprovedAmount.get(rowIndex).set("zcgj_setttype",null); + this.getView().updateView("zcgj_setttype",rowIndex); + } + } } } }