From 6fab72963a2022f2e894b7063b1c09ce0b411cc7 Mon Sep 17 00:00:00 2001 From: zhangzhiguo <421587375@qq.com> Date: Thu, 14 Aug 2025 11:00:41 +0800 Subject: [PATCH] =?UTF-8?q?=E9=94=81=E5=AE=9A=E8=B4=B9=E7=94=A8=E6=89=BF?= =?UTF-8?q?=E6=8B=85=E9=83=A8=E9=97=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fs/plugin/form/LockCostdeptPlugin.java | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/LockCostdeptPlugin.java diff --git a/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/LockCostdeptPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/LockCostdeptPlugin.java new file mode 100644 index 0000000..6bee557 --- /dev/null +++ b/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/LockCostdeptPlugin.java @@ -0,0 +1,54 @@ +package zcgj.zcdev.zcdev.fs.plugin.form; + +import kd.bos.bill.AbstractBillPlugIn; +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.entity.datamodel.events.ChangeData; +import kd.bos.entity.datamodel.events.PropertyChangedArgs; +import kd.sdk.plugin.Plugin; +import zcgj.zcdev.zcdev.fs.utils.OrgCheckUtils; + +import java.util.EventObject; + +/** + * 锁定费用承担部门 + */ +public class LockCostdeptPlugin extends AbstractBillPlugIn implements Plugin { + + @Override + public void afterBindData(EventObject e) { + super.afterBindData(e); + DynamicObject company = (DynamicObject)this.getModel().getValue("company"); + setDeptEnable(company); + } + + @Override + public void propertyChanged(PropertyChangedArgs e) { + super.propertyChanged(e); + String name = e.getProperty().getName(); + if(name.equals("company")){ + ChangeData[] changeSet = e.getChangeSet(); + ChangeData changeData = changeSet[0]; + DynamicObject company = (DynamicObject) changeData.getNewValue();//新值 + setDeptEnable(company); + } + } + + private void setDeptEnable(DynamicObject company) { + if(company!=null){ + String number = company.getString("number"); + if(OrgCheckUtils.isKS(company.getLong("id")) + && !"10008491".equals(number) + && !"10009939".equals(number) + && !"cw002000".equals(number) + && !"10006996".equals(number) + && !"10006989".equals(number) + && !"10006982".equals(number) + && !"cw000155".equals(number) + ){ + this.getView().setEnable(false,"costdept"); + }else{ + this.getView().setEnable(true,"costdept"); + } + } + } +}