Commit a0de11cfb22386135fce4147f0a7ea097a5c1149

Authored by liquanyu
1 parent 973903530b

update

Showing 1 changed file with 39 additions and 0 deletions

platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AccessPermissionFacade.java View file @ a0de11c
... ... @@ -5,6 +5,8 @@
5 5 import java.util.List;
6 6 import java.util.Set;
7 7  
  8 +import com.lyms.platform.common.enums.YnEnums;
  9 +import com.lyms.platform.permission.model.OrganizationQuery;
8 10 import org.apache.commons.collections.CollectionUtils;
9 11 import org.apache.commons.lang.StringUtils;
10 12 import org.apache.commons.lang.math.NumberUtils;
... ... @@ -47,6 +49,10 @@
47 49 @Autowired
48 50 private OrganizationService organizationService;
49 51  
  52 +
  53 + @Autowired
  54 + private AutoMatchFacade autoMatchFacade;
  55 +
50 56 /**
51 57 * 增加访问权限
52 58 *
... ... @@ -109,6 +115,39 @@
109 115 DataPermissionsModelQuery dataPermissionsModelQuery = new DataPermissionsModelQuery();
110 116 dataPermissionsModelQuery.setUserId(userId);
111 117 return dataPermissionService.queryPermission(dataPermissionsModelQuery);
  118 + }
  119 +
  120 +
  121 + /**
  122 + * 获取当前用户拥有的医院权限列表
  123 + * @param userId
  124 + * @return
  125 + */
  126 + private List<String> getCurrentUserHospPermissions(Integer userId)
  127 + {
  128 + List<String> hospitalList = new ArrayList<>();
  129 + String hospital = autoMatchFacade.getHospitalId(userId);
  130 + if (null != hospital) {
  131 + hospitalList.add(hospital);
  132 + }
  133 +
  134 + //权限所有的医院
  135 + List<String> allHospitalList = new ArrayList<>();
  136 + DataPermissionsModelQuery dataPermissionsModelQuery = new DataPermissionsModelQuery();
  137 + dataPermissionsModelQuery.setUserId(userId);
  138 + List<DataPermissionsModel> permissionsModels = dataPermissionService.queryPermission(dataPermissionsModelQuery);
  139 + if (CollectionUtils.isNotEmpty(permissionsModels)) {
  140 + Set<String> set = permissionsModels.get(0).getData().keySet();
  141 + Iterator<String> it = set.iterator();
  142 + while (it.hasNext()) {
  143 + String id = it.next();
  144 + if (com.lyms.platform.common.utils.StringUtils.isNotEmpty(id) && !hospitalList.contains(id)) {
  145 + allHospitalList.add(id);
  146 + }
  147 + }
  148 + }
  149 +
  150 + return allHospitalList;
112 151 }
113 152  
114 153 }