diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/OrganizationController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/OrganizationController.java index 2a64b73..53fbb95 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/OrganizationController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/OrganizationController.java @@ -233,7 +233,7 @@ public class OrganizationController extends BaseController { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); Users users = usersService.getUsers(loginState.getId()); - List areaId = autoMatchFacade.matchOrgId(loginState.getId()); + List areaId = autoMatchFacade.matchAreaOrgId(loginState.getId()); List data = new ArrayList<>(); List organizations = new ArrayList<>(); PageInfo pageInfo = new PageInfo(0,0,0,1); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AutoMatchFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AutoMatchFacade.java index d21024b..263bc5c 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AutoMatchFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AutoMatchFacade.java @@ -76,8 +76,37 @@ public class AutoMatchFacade { } return null; } + + public List matchAreaOrgId(int userId){ + UsersQuery usersQuery = new UsersQuery(); + usersQuery.setId(userId); + + usersQuery.setYn(1); + List list = usersService.queryUsers(usersQuery); + List data = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(list)) { + + /**/ //用户角色 + if (UserTypeEnum.NORMAL_USER.getId().equals(list.get(0).getType())||UserTypeEnum.PLATFORM_ADMIN.getId().equals(list.get(0).getType())) { + List list2 = accessPermissionFacade.getOrganization(accessPermissionFacade.findAccessPerminssionByUserId(list.get(0).getId())); + if(CollectionUtils.isNotEmpty(list2)){ + for(Organization organization:list2){ + data.add(organization.getId()); + } + } + if (!data.contains(list.get(0).getOrgId())) { + data.add(list.get(0).getOrgId()); + } + } else if(UserTypeEnum.SUPPER_ADMIN.getId().equals(list.get(0).getType())) { + return null; + } + return data; + } + return null; + } + public String getHospitalId(Integer userId){ - List list = matchOrgId(userId); + List list = matchAreaOrgId(userId); if(null==list||CollectionUtils.isEmpty(list)){ return null; }