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"); + } + } + } +}