From 8a60710f9520be636453bb14ccc02dc18aecd891 Mon Sep 17 00:00:00 2001 From: xuhaihui <2098865055@qq.com> Date: Thu, 21 Aug 2025 14:11:23 +0800 Subject: [PATCH] =?UTF-8?q?=E5=87=BA=E5=BA=93=E5=8D=95=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=A0=B8=E7=AE=97=E7=BB=84=E7=BB=87=E4=BF=AE=E6=94=B9=E5=90=8E?= =?UTF-8?q?=E6=B8=85=E7=A9=BA=E5=88=86=E5=BD=95=E9=80=BB=E8=BE=91=EF=BC=9B?= =?UTF-8?q?=E8=AE=BE=E5=A4=87=E7=BB=B4=E4=BF=AE=E7=A1=AE=E8=AE=A4=E5=8D=95?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=A1=A8=E5=8D=95=E6=8F=92=E4=BB=B6=EF=BC=8C?= =?UTF-8?q?=E8=BF=87=E6=BB=A4=E5=90=88=E5=90=8C=E5=90=8D=E7=A7=B0=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E5=92=8C=E8=B4=A2=E5=8A=A1=E8=AE=B0=E8=B4=A6=E7=BB=84?= =?UTF-8?q?=E7=BB=87=E4=BF=AE=E6=94=B9=E5=90=8E=E6=B8=85=E7=A9=BA=E5=90=88?= =?UTF-8?q?=E5=90=8C=E5=90=8D=E7=A7=B0=E9=80=BB=E8=BE=91=EF=BC=9B=E5=85=A5?= =?UTF-8?q?=E5=BA=93=E5=8D=95=E6=B7=BB=E5=8A=A0=E8=B4=A2=E5=8A=A1=E8=AE=B0?= =?UTF-8?q?=E8=B4=A6=E7=BB=84=E7=BB=87=E4=BF=AE=E6=94=B9=E5=90=8E=E6=B8=85?= =?UTF-8?q?=E7=A9=BA=E9=87=87=E8=B4=AD=E7=94=B3=E8=AF=B7=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/MaintenanceConfirmBillPlugin.java | 60 +++++++++++++++++++ .../form/MaterialInbPurchaseApplyPlugin.java | 13 ++++ .../pr/plugin/form/MaterialOutBillPlugin.java | 13 ++++ 3 files changed, 86 insertions(+) create mode 100644 code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaintenanceConfirmBillPlugin.java diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaintenanceConfirmBillPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaintenanceConfirmBillPlugin.java new file mode 100644 index 0000000..1a8f589 --- /dev/null +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaintenanceConfirmBillPlugin.java @@ -0,0 +1,60 @@ +package zcgj.zcdev.zcdev.pr.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.bos.form.field.BasedataEdit; +import kd.bos.form.field.events.BeforeF7SelectEvent; +import kd.bos.form.field.events.BeforeF7SelectListener; +import kd.bos.list.ListShowParameter; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; + +import java.util.EventObject; + +/** + * 设备维修确认单表单插件 + * 说明 1:过滤合同名称字段 + */ +public class MaintenanceConfirmBillPlugin extends AbstractBillPlugIn implements BeforeF7SelectListener { + @Override + public void registerListener(EventObject e) { + super.registerListener(e); + BasedataEdit zcgj_contract = this.getControl("zcgj_contract"); //合同名称 + if (zcgj_contract != null) { + zcgj_contract.addBeforeF7SelectListener(this); + } + } + + @Override + public void propertyChanged(PropertyChangedArgs e) { + super.propertyChanged(e); + String key = e.getProperty().getName(); + if ("zcgj_accountorg".equals(key)) { + //财务记账组织 + ChangeData[] changeSet = e.getChangeSet(); + ChangeData changeData = changeSet[0]; + Object newValue = changeData.getNewValue();//新值 + Object oldValue = changeData.getOldValue();//旧值 + if (newValue == null || !newValue.equals(oldValue)) { + this.getModel().setValue("zcgj_contract", null);//清空合同名称 + } + } + } + + @Override + public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) { + String name = beforeF7SelectEvent.getProperty().getName(); + ListShowParameter formShowParameter = (ListShowParameter) beforeF7SelectEvent.getFormShowParameter(); + Object zcgj_accountorg = this.getModel().getValue("zcgj_accountorg");//核算组织 + if (zcgj_accountorg != null) { + DynamicObject zcgj_accountorg1 = (DynamicObject) zcgj_accountorg; + QFilter qFilter = new QFilter("project.projectorg", QCP.equals, zcgj_accountorg1.getPkValue()); + formShowParameter.getListFilterParameter().getQFilters().add(qFilter); + } else { + this.getView().showErrorNotification("请先填写财务记账组织!!"); + beforeF7SelectEvent.setCancel(true); + } + } +} diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialInbPurchaseApplyPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialInbPurchaseApplyPlugin.java index 2f5d22e..423392f 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialInbPurchaseApplyPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialInbPurchaseApplyPlugin.java @@ -80,6 +80,15 @@ public class MaterialInbPurchaseApplyPlugin extends AbstractBillPlugIn implement } else if ("warehouse".equals(key)) { //仓库 this.getModel().setValue("zcgj_purchaseapply", null);//清空采购申请单字段 + } else if ("fiaccountorg".equals(key)) { + //财务记账组织 + ChangeData[] changeSet = e.getChangeSet(); + ChangeData changeData = changeSet[0]; + Object newValue = changeData.getNewValue();//新值 + Object oldValue = changeData.getOldValue();//旧值 + if (newValue == null || !newValue.equals(oldValue)) { + this.getModel().setValue("zcgj_purchaseapply", null);//清空采购申请 + } } } @@ -88,6 +97,10 @@ public class MaterialInbPurchaseApplyPlugin extends AbstractBillPlugIn implement String propertyName = beforeF7SelectEvent.getProperty().getName(); Object project = this.getModel().getValue("project");//项目 Object fiaccountorg = this.getModel().getValue("fiaccountorg");//财务记账组织 + if (fiaccountorg == null) { + this.getView().showErrorNotification("请先填写财务记账组织!!"); + beforeF7SelectEvent.setCancel(true); + } if (project != null && fiaccountorg != null) { DynamicObject project1 = (DynamicObject) project; DynamicObject fiaccountorg1 = (DynamicObject) fiaccountorg; diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialOutBillPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialOutBillPlugin.java index fcbeab5..87d326d 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialOutBillPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialOutBillPlugin.java @@ -2,6 +2,8 @@ package zcgj.zcdev.zcdev.pr.plugin.form; import kd.bos.bill.AbstractBillPlugIn; import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.entity.datamodel.events.ChangeData; import kd.bos.entity.datamodel.events.PropertyChangedArgs; import kd.bos.form.field.BasedataEdit; import kd.bos.form.field.events.BeforeF7SelectEvent; @@ -41,6 +43,17 @@ public class MaterialOutBillPlugin extends AbstractBillPlugIn implements BeforeF } else { this.getModel().setValue("zcgj_fiorg", null); } + } else if ("zcgj_fiorg".equals(key)) { + //核算组织 + ChangeData[] changeSet = e.getChangeSet(); + ChangeData changeData = changeSet[0]; + Object newValue = changeData.getNewValue();//新值 + Object oldValue = changeData.getOldValue();//旧值 + if (newValue == null || !newValue.equals(oldValue)) { + DynamicObjectCollection entryCollection = this.getModel().getDataEntity(true).getDynamicObjectCollection("entryentity");//出库单分录 + entryCollection.clear(); + this.getView().updateView("entryentity");//刷新分录 + } } }