From a6982398e4a953947327df4d1b3f5f6a991ca030 Mon Sep 17 00:00:00 2001 From: weiyunlong Date: Sat, 15 Mar 2025 13:32:48 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BA=A7=E5=80=BC=E7=A1=AE=E8=AE=A4=E6=A0=B9?= =?UTF-8?q?=E6=8D=AE=E7=BB=84=E7=BB=87=E6=90=BA=E5=B8=A6=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit S --- .../formplugin/WorkloadProjectFormPlugin.java | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 main/java/shkd/repc/recon/formplugin/WorkloadProjectFormPlugin.java diff --git a/main/java/shkd/repc/recon/formplugin/WorkloadProjectFormPlugin.java b/main/java/shkd/repc/recon/formplugin/WorkloadProjectFormPlugin.java new file mode 100644 index 0000000..cb29956 --- /dev/null +++ b/main/java/shkd/repc/recon/formplugin/WorkloadProjectFormPlugin.java @@ -0,0 +1,65 @@ +package shkd.repc.recon.formplugin; + +import kd.bos.bill.AbstractBillPlugIn; +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; +import kd.bos.servicehelper.BusinessDataServiceHelper; + +import java.util.EventObject; + +/** + * 产值确认根据组织携带项目信息 + */ +public class WorkloadProjectFormPlugin extends AbstractBillPlugIn { + + @Override + public void afterBindData(EventObject e) { + super.afterBindData(e); + //根据组织携带项目 + updateRenovationProject(); + } + + private void updateRenovationProject() { + DynamicObject org = (DynamicObject) this.getModel().getValue("org"); + + // 只有在需求组织不为空的情况下才进行查询 + if (org != null) { + setRenovationProjectByOrg(org); + } else { + // 组织为空,清空项目 + this.getModel().setValue("project", null); + this.getView().updateView("project"); + } + } + + private void setRenovationProjectByOrg(DynamicObject org) { + // 采购项目 + DynamicObject[] projectbills = BusinessDataServiceHelper.load("rebm_purproject", "id", + new QFilter[]{new QFilter("org.id", QCP.equals, org.getPkValue())}); + + DynamicObject projectbill = null; + + if (projectbills.length > 0) { + DynamicObject projectbill1 = projectbills[0]; + if (projectbill1 != null) { + //项目建立F7 + DynamicObject add = BusinessDataServiceHelper.loadSingle("repmd_project_f7", + new QFilter[]{new QFilter("number", QCP.equals, projectbill1.getString("number"))}); + if (add != null) { + projectbill = add; + } + } + } else { + DynamicObject add = BusinessDataServiceHelper.loadSingle("repmd_project_f7", + new QFilter[]{new QFilter("number", QCP.equals, "XM-202412-008")}); + if (add != null) { + projectbill = add; + } + } + + // 设置项目并更新视图 + this.getModel().setValue("project", projectbill); + this.getView().updateView("project"); + } +}