diff --git a/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/paymentApplicationListPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/paymentApplicationListPlugin.java index 4ea6ac0..fd730d2 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/paymentApplicationListPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/paymentApplicationListPlugin.java @@ -9,7 +9,9 @@ import kd.bos.list.ListShowParameter; import kd.bos.list.plugin.AbstractListPlugin; import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; +import kd.bos.permission.api.HasPermOrgResult; import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.permission.PermissionServiceHelper; import kd.bos.servicehelper.user.UserServiceHelper; import java.util.ArrayList; @@ -80,9 +82,16 @@ public class paymentApplicationListPlugin extends AbstractListPlugin { return; } if ("zcgj_org.id".equals(key)) { - String userid = RequestContext.get().getUserId();//获取当前用户id - List ids = UserServiceHelper.getOrgsUserJoin(Long.parseLong(userid));//获取用户所有部门id + String userId = RequestContext.get().getUserId();//获取当前用户id + boolean superUser = PermissionServiceHelper.isSuperUser(Long.parseLong(userId)); //判断是否为全功能用户 + boolean adminUser = PermissionServiceHelper.isAdminUser(Long.parseLong(userId)); //判断是否管理员用户 + List ids = UserServiceHelper.getOrgsUserJoin(Long.parseLong(userId));//获取用户所有部门id List ids2 = new ArrayList<>(); + if(!superUser && !adminUser){ + HasPermOrgResult userHasPermOrgs = PermissionServiceHelper.getUserHasPermOrgs(Long.parseLong(userId),true); + List hasPermOrgs = userHasPermOrgs.getHasPermOrgs(); + ids2.addAll(hasPermOrgs); + } for (Long userMainOrgId : ids) { QFilter[] qFilter = new QFilter[]{new QFilter("id", QCP.equals, userMainOrgId)}; DynamicObject org = BusinessDataServiceHelper.loadSingle("bos_adminorg", qFilter);//行政组织