From 92a166b316b9be468d8577a8f8f8b8ec927976e8 Mon Sep 17 00:00:00 2001 From: zhangzhiguo <421587375@qq.com> Date: Thu, 10 Jul 2025 13:49:12 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=98=E6=AC=BE=E7=94=B3=E8=AF=B7=E5=8D=95?= =?UTF-8?q?=E7=A7=BB=E9=99=A4=E6=89=80=E5=B1=9E=E9=83=A8=E9=97=A8=E8=BF=87?= =?UTF-8?q?=E6=BB=A4=E5=92=8C=E9=BB=98=E8=AE=A4=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/PaymentapplyGeneralPlugin.java | 80 +++++++++++++++++-- 1 file changed, 72 insertions(+), 8 deletions(-) diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/PaymentapplyGeneralPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/PaymentapplyGeneralPlugin.java index d849eab..6eecda6 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/PaymentapplyGeneralPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/PaymentapplyGeneralPlugin.java @@ -6,10 +6,17 @@ import kd.bos.bill.OperationStatus; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.entity.datamodel.events.ChangeData; import kd.bos.entity.datamodel.events.PropertyChangedArgs; +import kd.bos.permission.api.HasPermOrgResult; +import kd.bos.servicehelper.org.OrgUnitServiceHelper; +import kd.bos.servicehelper.permission.PermissionServiceHelper; import kd.bos.servicehelper.user.UserServiceHelper; import kd.sdk.plugin.Plugin; import java.util.EventObject; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; /** * 1:付款申请单通用插件 @@ -23,11 +30,24 @@ public class PaymentapplyGeneralPlugin extends AbstractBillPlugIn implements Plu BillShowParameter bsp=(BillShowParameter)this.getView().getFormShowParameter(); if(bsp.getStatus()== OperationStatus.ADDNEW ){ DynamicObject person = this.getModel().getDataEntity().getDynamicObject("person"); - if(person!=null){ + /*if(person!=null){ long mainOrgId = UserServiceHelper.getUserMainOrgId(person.getLong("id")); - this.getModel().setValue("zcgj_persondepart", mainOrgId); - this.getView().updateView("zcgj_persondepart"); - } + List orgsUserJoin = UserServiceHelper.getOrgsUserJoin(person.getLong("id")); + DynamicObject org = (DynamicObject) this.getModel().getValue("fiaccountorg"); + if(org!=null && orgsUserJoin!=null && !orgsUserJoin.isEmpty()){ + Set collect = new HashSet<>(orgsUserJoin); + if(collect.contains(org.getLong("id"))){ + this.getModel().setValue("zcgj_persondepart", org.getLong("id")); + this.getView().updateView("zcgj_persondepart"); + }else{ + this.getModel().setValue("zcgj_persondepart", mainOrgId); + this.getView().updateView("zcgj_persondepart"); + } + }else{ + this.getModel().setValue("zcgj_persondepart", mainOrgId); + this.getView().updateView("zcgj_persondepart"); + } + }*/ } } @@ -35,19 +55,63 @@ public class PaymentapplyGeneralPlugin extends AbstractBillPlugIn implements Plu public void propertyChanged(PropertyChangedArgs e) { super.propertyChanged(e); String name = e.getProperty().getName(); - if("person".equals(name)){ + /*if("person".equals(name)){ ChangeData changeData = e.getChangeSet()[0];//获取改变的数据 DynamicObject oldValue = (DynamicObject) changeData.getOldValue(); DynamicObject newValue = (DynamicObject) changeData.getNewValue(); if(newValue !=null){ long userid = newValue.getLong("id"); long mainOrgId = UserServiceHelper.getUserMainOrgId(userid); - this.getModel().setValue("zcgj_persondepart", mainOrgId); - this.getView().updateView("zcgj_persondepart"); + List orgsUserJoin = UserServiceHelper.getOrgsUserJoin(userid); + DynamicObject org = (DynamicObject) this.getModel().getValue("fiaccountorg"); + if(org!=null && orgsUserJoin!=null && !orgsUserJoin.isEmpty()){ + Set collect = new HashSet<>(orgsUserJoin); + if(collect.contains(org.getLong("id"))){ + this.getModel().setValue("zcgj_persondepart", org.getLong("id")); + this.getView().updateView("zcgj_persondepart"); + }else{ + this.getModel().setValue("zcgj_persondepart", mainOrgId); + this.getView().updateView("zcgj_persondepart"); + } + }else{ + this.getModel().setValue("zcgj_persondepart", mainOrgId); + this.getView().updateView("zcgj_persondepart"); + } }else{ this.getView().showErrorNotification("申请人不能为空"); } - } + }*/ + /*else if("fiaccountorg".equals(name)){ + ChangeData changeData = e.getChangeSet()[0];//获取改变的数据 + DynamicObject oldValue = (DynamicObject) changeData.getOldValue(); + DynamicObject newValue = (DynamicObject) changeData.getNewValue(); + if(newValue !=null){ + DynamicObject person = this.getModel().getDataEntity().getDynamicObject("person"); + long userid = person.getLong("id"); + long mainOrgId = UserServiceHelper.getUserMainOrgId(userid); + List orgsUserJoin = UserServiceHelper.getOrgsUserJoin(userid); + List allDepartment = UserServiceHelper.getAllDepartmentByUserId(userid); + HasPermOrgResult userHasPermOrgs = PermissionServiceHelper.getUserHasPermOrgs(userid,false); + List hasPermOrgs = userHasPermOrgs.getHasPermOrgs(); + List userDepartment = UserServiceHelper.getUserDepartment(userid, false); + if(hasPermOrgs!=null && !hasPermOrgs.isEmpty()){ + Set collect = new HashSet<>(hasPermOrgs); + if(collect.contains(newValue.getLong("id"))){ + this.getModel().setValue("zcgj_persondepart", newValue.getLong("id")); + this.getView().updateView("zcgj_persondepart"); + }else{ + this.getModel().setValue("zcgj_persondepart", mainOrgId); + this.getView().updateView("zcgj_persondepart"); + } + }else{ + this.getModel().setValue("zcgj_persondepart", mainOrgId); + this.getView().updateView("zcgj_persondepart"); + } + }else{ + this.getView().showErrorNotification("所属组织不能为空!"); + } + + }*/ } }