Commit 283a15a301d412dce4cd58cb6cd87266da8c1262

Authored by hanshaofeng
1 parent 6b63423275

permission2

Showing 3 changed files with 29 additions and 4 deletions

platform-biz-patient-service/src/main/java/com/lyms/platform/biz/BasicConfigServiceTest.java View file @ 283a15a
... ... @@ -45,7 +45,7 @@
45 45 try {
46 46 List<DataPermissionsModel> list = mongoTemplate.find(new Query(),DataPermissionsModel.class);
47 47 for (DataPermissionsModel model:list) {
48   - System.out.println(JsonUtil.obj2Str(model));
  48 + System.out.println(JsonUtil.obj2Str(model.getData().keySet()));
49 49 }
50 50 } catch (Exception e) {
51 51 e.printStackTrace();
platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/OrganizationServiceImpl.java View file @ 283a15a
... ... @@ -4,6 +4,7 @@
4 4 import com.lyms.platform.biz.dal.ISyncDataDao;
5 5 import com.lyms.platform.biz.service.DataPermissionService;
6 6 import com.lyms.platform.common.enums.OrganizationTypeEnum;
  7 +import com.lyms.platform.common.enums.PermissionTypeEnums;
7 8 import com.lyms.platform.common.enums.YnEnums;
8 9 import com.lyms.platform.common.exception.BusinessException;
9 10 import com.lyms.platform.common.utils.JsonUtil;
10 11  
... ... @@ -21,7 +22,9 @@
21 22 import org.springframework.stereotype.Service;
22 23  
23 24 import java.util.ArrayList;
  25 +import java.util.HashSet;
24 26 import java.util.List;
  27 +import java.util.Set;
25 28  
26 29 @Service("organizationServiceImpl1")
27 30 public class OrganizationServiceImpl extends DataAccessLayerService implements OrganizationService {
28 31  
... ... @@ -36,8 +39,10 @@
36 39 private DataPermissionService dataPermissionService;
37 40  
38 41 @Override
39   - public Integer addOrganization(Organization obj) { masterOrganizationMapper.addOrganization(obj);
  42 + public Integer addOrganization(Organization obj) {
  43 + masterOrganizationMapper.addOrganization(obj);
40 44 iSyncDataDao.addSyncData("MysqlAdd", obj, obj.getId().toString());
  45 + rebuildDataPermissions(null);
41 46 return obj.getId();
42 47 }
43 48  
44 49  
... ... @@ -45,12 +50,14 @@
45 50 public void updateOrganization(Organization obj) {
46 51 masterOrganizationMapper.updateOrganization(obj);
47 52 iSyncDataDao.addSyncData("MysqlUpdate", obj, obj.getId().toString());
  53 + rebuildDataPermissions(null);
48 54 }
49 55  
50 56 @Override
51 57 public void deleteOrganization(Integer id) {
52 58 masterOrganizationMapper.deleteOrganization(id);
53 59 iSyncDataDao.addSyncData("MysqlDel", new Organization(), id.toString());
  60 + rebuildDataPermissions(null);
54 61 }
55 62  
56 63 @Override
... ... @@ -152,7 +159,12 @@
152 159 for (DataPermissionsModel model : list) {
153 160 if (StringUtils.isNotBlank(model.getAreaPermission())) {
154 161 List<AddressBean> addressBeanList = JsonUtil.toList(model.getAreaPermission(), AddressBean.class);
155   - List<Integer> organizationIds = new ArrayList<>();
  162 + Set<String> organizationIds = null;
  163 + if (model.getData() != null) {
  164 + organizationIds = model.getData().keySet();
  165 + } else {
  166 + organizationIds = new HashSet<>();
  167 + }
156 168 for (AddressBean addressBean:addressBeanList) {
157 169 OrganizationQuery query = new OrganizationQuery();
158 170 query.setProvinceId(addressBean.getP());
159 171  
... ... @@ -160,8 +172,20 @@
160 172 query.setAreaId(addressBean.getA());
161 173 query.setStreetId(addressBean.getS());
162 174 query.setYn(YnEnums.YES.getId());
163   -// query.set
  175 + List<Organization> organizationList = masterOrganizationMapper.queryOrganization(query);
  176 + for (Organization o:organizationList) {
  177 + if (!organizationIds.contains(o.getId().toString())) {
  178 + organizationIds.add(o.getId().toString());
  179 + }
  180 + }
164 181 }
  182 + model.getData().clear();
  183 + DataPermissionsModel.SimplePermission permission = new DataPermissionsModel.SimplePermission();
  184 + permission.setType(PermissionTypeEnums.ALL_HOSPITAL.getId());
  185 + for (String id:organizationIds) {
  186 + model.addOnePer(id, permission);
  187 + }
  188 + dataPermissionService.updatePermission(model);
165 189 }
166 190 }
167 191 } catch (Exception e) {
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AccessPermissionFacade.java View file @ 283a15a
... ... @@ -78,6 +78,7 @@
78 78 dataPermissionsModel.setAreaPermission(accessPermissionAddRequest.getAreaPermission());
79 79 dataPermissionsModel.setUserId(Integer.valueOf(accessPermissionAddRequest.getUserId()));
80 80 dataPermissionService.addOrUpdatePermission(dataPermissionsModel);
  81 + organizationService.rebuildDataPermissions(dataPermissionsModel.getUserId());
81 82 return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功.");
82 83 }
83 84