From 1434be898753b3ac4df549b5ed48bd5f4dd82036 Mon Sep 17 00:00:00 2001 From: xuhaihui <2098865055@qq.com> Date: Wed, 9 Jul 2025 14:09:13 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=AC=BE=E7=94=B3=E8=AF=B7=E5=8D=95?= =?UTF-8?q?=E9=83=A8=E9=97=A8=E5=AD=97=E6=AE=B5=E8=BF=87=E6=BB=A4=E4=B8=8E?= =?UTF-8?q?=E5=88=9D=E5=A7=8B=E8=B5=8B=E5=80=BC=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/form/ApplicationFundsPlugin.java | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ApplicationFundsPlugin.java diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ApplicationFundsPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ApplicationFundsPlugin.java new file mode 100644 index 0000000..475b4d7 --- /dev/null +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/ApplicationFundsPlugin.java @@ -0,0 +1,61 @@ +package zcgj.zcdev.zcdev.pr.plugin.form; + +import kd.bos.algo.DataSet; +import kd.bos.algo.Row; +import kd.bos.bill.AbstractBillPlugIn; +import kd.bos.bill.BillShowParameter; +import kd.bos.bill.OperationStatus; +import kd.bos.dataentity.entity.DynamicObject; +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.ORM; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; +import kd.bos.servicehelper.user.UserServiceHelper; +import kd.sdk.plugin.Plugin; + +import java.util.*; + +/** + * 用款申请单部门字段过滤与初始赋值逻辑 + */ +public class ApplicationFundsPlugin extends AbstractBillPlugIn implements Plugin, BeforeF7SelectListener { + + @Override + public void registerListener(EventObject e) { + super.registerListener(e); + BasedataEdit Value = this.getView().getControl("zcgj_department");//部门 + Value.addBeforeF7SelectListener(this); + } + + @Override + public void afterBindData(EventObject e) { + super.afterBindData(e); + BillShowParameter bsp = (BillShowParameter) this.getView().getFormShowParameter(); + if (bsp.getStatus() == OperationStatus.ADDNEW) { + //如果是新增时 + DynamicObject creator = this.getModel().getDataEntity().getDynamicObject("creator");//创建人 + if (creator != null) { + long mainOrgId = UserServiceHelper.getUserMainOrgId(creator.getLong("id")); + this.getModel().setValue("zcgj_department", mainOrgId);//部门 + this.getView().updateView("zcgj_department"); + } + } + } + + @Override + public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) { + ListShowParameter formShowParameter = (ListShowParameter) beforeF7SelectEvent.getFormShowParameter(); + DynamicObject creator = this.getModel().getDataEntity().getDynamicObject("creator");//创建人 + if (creator == null) { + return; + } + List id = UserServiceHelper.getOrgsUserJoin(creator.getLong("id")); + List qFilter = new ArrayList<>(); + qFilter.add(new QFilter("id", QCP.in, id)); + formShowParameter.getListFilterParameter().setQFilters(qFilter); + formShowParameter.setCustomParam("isIncludeAllSub", "true"); + } +}