Commit 311c49a259691b22825d0e9e6e0109e7160ad170
1 parent
283a15a301
Exists in
master
and in
1 other branch
permission2
Showing 1 changed file with 65 additions and 6 deletions
platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/OrganizationServiceImpl.java
View file @
311c49a
| ... | ... | @@ -9,11 +9,14 @@ |
| 9 | 9 | import com.lyms.platform.common.exception.BusinessException; |
| 10 | 10 | import com.lyms.platform.common.utils.JsonUtil; |
| 11 | 11 | import com.lyms.platform.permission.DataAccessLayerService; |
| 12 | +import com.lyms.platform.permission.dao.master.MasterDepartmentsMapper; | |
| 12 | 13 | import com.lyms.platform.permission.dao.master.MasterOrganizationMapper; |
| 13 | 14 | import com.lyms.platform.permission.dao.slave.OrganizationMapper; |
| 14 | -import com.lyms.platform.permission.model.Organization; | |
| 15 | -import com.lyms.platform.permission.model.OrganizationQuery; | |
| 15 | +import com.lyms.platform.permission.model.*; | |
| 16 | +import com.lyms.platform.permission.service.DepartmentsService; | |
| 16 | 17 | import com.lyms.platform.permission.service.OrganizationService; |
| 18 | +import com.lyms.platform.permission.service.RolePermissionMapsService; | |
| 19 | +import com.lyms.platform.permission.service.RolesService; | |
| 17 | 20 | import com.lyms.platform.pojo.DataPermissionsModel; |
| 18 | 21 | import com.lyms.platform.query.DataPermissionsModelQuery; |
| 19 | 22 | import org.apache.commons.collections.CollectionUtils; |
| ... | ... | @@ -21,10 +24,7 @@ |
| 21 | 24 | import org.springframework.beans.factory.annotation.Autowired; |
| 22 | 25 | import org.springframework.stereotype.Service; |
| 23 | 26 | |
| 24 | -import java.util.ArrayList; | |
| 25 | -import java.util.HashSet; | |
| 26 | -import java.util.List; | |
| 27 | -import java.util.Set; | |
| 27 | +import java.util.*; | |
| 28 | 28 | |
| 29 | 29 | @Service("organizationServiceImpl1") |
| 30 | 30 | public class OrganizationServiceImpl extends DataAccessLayerService implements OrganizationService { |
| ... | ... | @@ -33,6 +33,15 @@ |
| 33 | 33 | private MasterOrganizationMapper masterOrganizationMapper; |
| 34 | 34 | |
| 35 | 35 | @Autowired |
| 36 | + private DepartmentsService departmentsService; | |
| 37 | + | |
| 38 | + @Autowired | |
| 39 | + private RolesService rolesService; | |
| 40 | + | |
| 41 | + @Autowired | |
| 42 | + private RolePermissionMapsService rolePermissionMapsService; | |
| 43 | + | |
| 44 | + @Autowired | |
| 36 | 45 | private ISyncDataDao iSyncDataDao; |
| 37 | 46 | |
| 38 | 47 | @Autowired |
| 39 | 48 | |
| ... | ... | @@ -43,7 +52,57 @@ |
| 43 | 52 | masterOrganizationMapper.addOrganization(obj); |
| 44 | 53 | iSyncDataDao.addSyncData("MysqlAdd", obj, obj.getId().toString()); |
| 45 | 54 | rebuildDataPermissions(null); |
| 55 | + // 新建机构时,除卫生局外都新建三个科室:信息科、儿科、妇产科 | |
| 56 | + addDept("信息科", obj); | |
| 57 | + addDept("儿科", obj); | |
| 58 | + addDept("妇产科", obj); | |
| 59 | + // 新建机构时,新建6个角色:院内统计87、产科产房4、儿科医生46、院办管理63、孕产妇医生48、主任-产科66 | |
| 60 | + addDefaultRoles(obj); | |
| 46 | 61 | return obj.getId(); |
| 62 | + } | |
| 63 | + | |
| 64 | + private void addDefaultRoles(Organization obj) { | |
| 65 | + List<Roles> rolesList = new ArrayList<>(); | |
| 66 | + rolesList.add(rolesService.getRoles(87)); | |
| 67 | + rolesList.add(rolesService.getRoles(4)); | |
| 68 | + rolesList.add(rolesService.getRoles(46)); | |
| 69 | + rolesList.add(rolesService.getRoles(63)); | |
| 70 | + rolesList.add(rolesService.getRoles(48)); | |
| 71 | + rolesList.add(rolesService.getRoles(66)); | |
| 72 | + for (Roles roles:rolesList) { | |
| 73 | + RolePermissionMapsQuery mapsQuery = new RolePermissionMapsQuery(); | |
| 74 | + mapsQuery.setYn(YnEnums.YES.getId()); | |
| 75 | + mapsQuery.setRoleId(roles.getId()); | |
| 76 | + List<RolePermissionMaps> mapsList = rolePermissionMapsService.queryRolePermissionMaps(mapsQuery); | |
| 77 | + roles.setId(null); | |
| 78 | + roles.setPublishName(obj.getPublishName()); | |
| 79 | + roles.setPublishId(obj.getPublishId()); | |
| 80 | + roles.setOrgId(obj.getId()); | |
| 81 | + roles.setModified(new Date()); | |
| 82 | + roles.setCreated(roles.getModified()); | |
| 83 | + roles.setRemarks(obj.getName()); | |
| 84 | + rolesService.addRoles(roles); | |
| 85 | + for (RolePermissionMaps maps:mapsList) { | |
| 86 | + maps.setId(null); | |
| 87 | + maps.setRoleId(roles.getId()); | |
| 88 | + rolePermissionMapsService.addRolePermissionMaps(maps); | |
| 89 | + } | |
| 90 | + } | |
| 91 | + } | |
| 92 | + | |
| 93 | + private void addDept(String name, Organization obj) { | |
| 94 | + Departments departments = new Departments(); | |
| 95 | + departments.setType(2); | |
| 96 | + departments.setYn(YnEnums.YES.getId()); | |
| 97 | + departments.setCreated(new Date()); | |
| 98 | + departments.setModified(departments.getCreated()); | |
| 99 | + departments.setName(name); | |
| 100 | + departments.setOrgId(obj.getId()); | |
| 101 | + departments.setParentId(1); | |
| 102 | + departments.setPublishId(obj.getPublishId()); | |
| 103 | + departments.setPublishName(obj.getPublishName()); | |
| 104 | + departments.setDescription(obj.getName()); | |
| 105 | + departmentsService.addDepartments(departments); | |
| 47 | 106 | } |
| 48 | 107 | |
| 49 | 108 | @Override |