From 1b4014a8f5088a07a15ccfdc4dd6abaa17bd4442 Mon Sep 17 00:00:00 2001 From: xuhaihui <2098865055@qq.com> Date: Tue, 12 Aug 2025 10:01:07 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E5=A4=87=E8=B0=83=E4=BB=A4=E5=8D=95?= =?UTF-8?q?=E8=A1=A8=E5=8D=95=E6=8F=92=E4=BB=B6=E9=80=BB=E8=BE=91=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/EquipmentCommandBillPlugin.java | 46 +++++++++++++++++-- 1 file changed, 41 insertions(+), 5 deletions(-) diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/EquipmentCommandBillPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/EquipmentCommandBillPlugin.java index 245288c..3004774 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/EquipmentCommandBillPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/EquipmentCommandBillPlugin.java @@ -13,6 +13,7 @@ import kd.bos.list.ListShowParameter; import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.user.UserServiceHelper; import java.util.ArrayList; import java.util.EventObject; @@ -20,7 +21,7 @@ import java.util.List; /* * 设备调令单表单插件 - * 说明:1:设备编码带出资产编码;2:过滤设备编码字段;3:调出调入项目带出调出调入负责人 + * 说明:1:设备编码带出资产编码;2:过滤设备编码字段;3:调出调入项目带出调出调入负责人;4:自动带出所属组织 */ public class EquipmentCommandBillPlugin extends AbstractBillPlugIn implements BeforeF7SelectListener { @Override @@ -34,6 +35,14 @@ public class EquipmentCommandBillPlugin extends AbstractBillPlugIn implements Be inProject.addBeforeF7SelectListener(this); } + @Override + public void afterCreateNewData(EventObject e) { + super.afterCreateNewData(e); + long currentUserId = UserServiceHelper.getCurrentUserId(); + Long mainOrgId = UserServiceHelper.getUserMainOrgId(currentUserId); + this.getModel().setValue("zcgj_org", mainOrgId);//所属组织 + } + @Override public void propertyChanged(PropertyChangedArgs e) { super.propertyChanged(e); @@ -105,13 +114,31 @@ public class EquipmentCommandBillPlugin extends AbstractBillPlugIn implements Be beforeF7SelectEvent.setCancel(true); return; } - DynamicObject outOrgDy = (DynamicObject) outOrg; + DynamicObject outOrgDy = (DynamicObject) outOrg;//调出组织 if (StringUtil.equals(propertyName, "zcgj_realcard")) { //设备编码 - qFilter.add(new QFilter("org.id", "=", outOrgDy.get("id"))); + QFilter Filter = new QFilter("org.id", "=", outOrgDy.get("id")); + DynamicObject[] equipment_infos = BusinessDataServiceHelper.load("eceq_equipment_info", "id", new QFilter[]{Filter});//设备台账F7 + List equipment_infoIds = new ArrayList<>(); + if (equipment_infos != null && equipment_infos.length > 0) { + for (DynamicObject equipment_info : equipment_infos) { + Long equipment_infoId = (Long) equipment_info.get("id"); + equipment_infoIds.add(equipment_infoId); + } + } + qFilter.add(new QFilter("id", QCP.in, equipment_infoIds)); } else { //调出项目 - qFilter.add(new QFilter("fiaccountorg.id", "=", outOrgDy.get("id"))); + QFilter Filter = new QFilter("fiaccountorg.id", "=", outOrgDy.get("id")); + DynamicObject[] projectF7s = BusinessDataServiceHelper.load("ec_ecbd_projectf7", "id", new QFilter[]{Filter});//工程项目 + List projectF7Ids = new ArrayList<>(); + if (projectF7s != null && projectF7s.length > 0) { + for (DynamicObject projectF7 : projectF7s) { + Long projectF7Id = (Long) projectF7.get("id"); + projectF7Ids.add(projectF7Id); + } + } + qFilter.add(new QFilter("id", QCP.in, projectF7Ids)); } } else if (StringUtil.equals(propertyName, "zcgj_inproject")) { //调入项目 @@ -122,7 +149,16 @@ public class EquipmentCommandBillPlugin extends AbstractBillPlugIn implements Be return; } DynamicObject inOrgDy = (DynamicObject) inOrg; - qFilter.add(new QFilter("fiaccountorg.id", "=", inOrgDy.get("id"))); + QFilter Filter = new QFilter("fiaccountorg.id", "=", inOrgDy.get("id")); + DynamicObject[] projectF7s = BusinessDataServiceHelper.load("ec_ecbd_projectf7", "id", new QFilter[]{Filter});//工程项目 + List projectF7Ids = new ArrayList<>(); + if (projectF7s != null && projectF7s.length > 0) { + for (DynamicObject projectF7 : projectF7s) { + Long projectF7Id = (Long) projectF7.get("id"); + projectF7Ids.add(projectF7Id); + } + } + qFilter.add(new QFilter("id", QCP.in, projectF7Ids)); } formShowParameter.getListFilterParameter().setQFilters(qFilter); }