Browse Source

角色保存与部门列表获取修改

hotfix/yujt_opt
yujt 6 years ago
parent
commit
a2ced4bada
  1. 20
      epdc-cloud-admin/pom.xml
  2. 51
      epdc-cloud-admin/src/main/java/com/elink/esua/epdc/controller/SysUserController.java
  3. 15
      epdc-cloud-admin/src/main/java/com/elink/esua/epdc/service/SysDeptService.java
  4. 64
      epdc-cloud-admin/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java
  5. 51
      epdc-cloud-admin/src/main/java/com/elink/esua/epdc/service/impl/SysRoleServiceImpl.java

20
epdc-cloud-admin/pom.xml

@ -183,23 +183,25 @@
<spring.profiles.active>test</spring.profiles.active> <spring.profiles.active>test</spring.profiles.active>
<docker.tag>test</docker.tag> <docker.tag>test</docker.tag>
<spring.redis.index>2</spring.redis.index>
<spring.redis.host>114.215.125.123</spring.redis.host>
<spring.redis.port>9603</spring.redis.port>
<spring.redis.password>epdc!redis@master1405</spring.redis.password>
<!-- nacos --> <!-- nacos -->
<nacos.register-enabled>true</nacos.register-enabled> <nacos.register-enabled>true</nacos.register-enabled>
<nacos.server-addr>47.104.224.45:8848</nacos.server-addr> <nacos.server-addr>47.104.224.45:8848</nacos.server-addr>
<nacos.ip>47.104.85.99</nacos.ip> <nacos.ip>47.104.85.99</nacos.ip>
<nacos.namespace>6a3577b4-7b79-43f6-aebb-9c3f31263f6a</nacos.namespace> <nacos.namespace>de000340-5fc4-45aa-bdbc-dd96852012ad</nacos.namespace>
<spring.zipkin.base-url>http://localhost:9411</spring.zipkin.base-url> <spring.zipkin.base-url>http://localhost:9411</spring.zipkin.base-url>
<!--亿联小程序配置-->
<!-- <wx.ma.appId>wxdd8530c5f4926766</wx.ma.appId>-->
<!-- <wx.ma.secret>5bf4fb813145431b3493a10aa7e041e9</wx.ma.secret>-->
<!--先锋市北小程序配置--> <!--党群e家小程序配置-->
<wx.ma.appId>wx5d3e97461d248397</wx.ma.appId> <wx.ma.appId>wx50ebeb95943868cd</wx.ma.appId>
<wx.ma.secret>bfed51b731e53db9affb9e6131e7ae12</wx.ma.secret> <wx.ma.secret>c2719c261fe87b3e2d572552d2c8275d</wx.ma.secret>
<!--工作端小程序--> <!--工作端小程序-->
<work.wx.ma.appId>wx9f20a46906ab2c3e</work.wx.ma.appId> <work.wx.ma.appId>wx6d45fd2f4dfe7ce4</work.wx.ma.appId>
<work.wx.ma.secret>dc13065f79429979d9f687d249eb5c4e</work.wx.ma.secret> <work.wx.ma.secret>54a30a48b100bbad20d7823cd9e1fb17</work.wx.ma.secret>
<!--数据分析端小程序--> <!--数据分析端小程序-->
<analysis.wx.ma.appId>wxfa4afaa2b5f9c876</analysis.wx.ma.appId> <analysis.wx.ma.appId>wxfa4afaa2b5f9c876</analysis.wx.ma.appId>
<analysis.wx.ma.secret>7db9f049c78c9a6cafa673deebe8330d</analysis.wx.ma.secret> <analysis.wx.ma.secret>7db9f049c78c9a6cafa673deebe8330d</analysis.wx.ma.secret>

51
epdc-cloud-admin/src/main/java/com/elink/esua/epdc/controller/SysUserController.java

@ -231,6 +231,7 @@ public class SysUserController {
return new Result<List<DataScopeDeptList>>().ok(data); return new Result<List<DataScopeDeptList>>().ok(data);
} }
@GetMapping("getWorkRecordRoleUser/{menuCode}") @GetMapping("getWorkRecordRoleUser/{menuCode}")
public Result<List<Long>> getWorkRecordRoleUser(@PathVariable("menuCode") String menuCode) { public Result<List<Long>> getWorkRecordRoleUser(@PathVariable("menuCode") String menuCode) {
List<Long> data = sysRoleUserService.getWorkRecordRoleUser(menuCode); List<Long> data = sysRoleUserService.getWorkRecordRoleUser(menuCode);
@ -333,6 +334,7 @@ public class SysUserController {
DeptOption deptOption = sysDeptService.getUserDeptOption(); DeptOption deptOption = sysDeptService.getUserDeptOption();
return new Result().ok(deptOption); return new Result().ok(deptOption);
} }
/** /**
* 获取用户部门多层结构用户前端显示请求需携带token * 获取用户部门多层结构用户前端显示请求需携带token
* <p>调接口从redis获取{@link SysUserController#packageUserDeptOption(Long)}接口生成的数据</p> * <p>调接口从redis获取{@link SysUserController#packageUserDeptOption(Long)}接口生成的数据</p>
@ -347,11 +349,6 @@ public class SysUserController {
DeptOption deptOption = sysDeptService.getDeptAuthByUser(); DeptOption deptOption = sysDeptService.getDeptAuthByUser();
return new Result().ok(deptOption); return new Result().ok(deptOption);
} }
@GetMapping("deptOptions/getGridAuthByUser")
public Result<List<DeptGridDTO>> getGridAuthByUser() {
List<DeptGridDTO> deptOption = sysDeptService.getGridAuthByUser();
return new Result().ok(deptOption);
}
/** /**
* 获取用户部门多层结构完整层级结构包括顶级部门用户前端显示请求需携带token * 获取用户部门多层结构完整层级结构包括顶级部门用户前端显示请求需携带token
@ -368,6 +365,21 @@ public class SysUserController {
return new Result().ok(option); return new Result().ok(option);
} }
/**
* 获取用户业务部门多层结构用户前端显示请求需携带token
* <p>调接口从redis获取{@link SysUserController#packageUserDeptOption(Long)}接口生成的数据</p>
* <p>此接口展示三级机构层级街道-社区-网格不包括区级不包括科室科室和没有下属网格的社区</p>
*
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.DeptOption>
* @author work@yujt.net.cn
* @date 2020/5/14 10:05
*/
@GetMapping("deptOptions/getBusinessDeptByUser")
public Result<DeptOption> getBusinessDeptByUser() {
DeptOption deptOption = sysDeptService.getBusinessDeptByUser();
return new Result().ok(deptOption);
}
/** /**
* pc端页面获取用户街道-社区层级关系前端显示请求需携带token * pc端页面获取用户街道-社区层级关系前端显示请求需携带token
* <p>只组装 街道-社区 两级 * <p>只组装 街道-社区 两级
@ -401,6 +413,12 @@ public class SysUserController {
return new Result().ok(option); return new Result().ok(option);
} }
@GetMapping("deptOptions/getGridAuthByUser")
public Result<List<DeptGridDTO>> getGridAuthByUser() {
List<DeptGridDTO> deptOption = sysDeptService.getGridAuthByUser();
return new Result().ok(deptOption);
}
/** /**
* 退出登录 * 退出登录
* *
@ -440,24 +458,23 @@ public class SysUserController {
} }
/** /**
* @describe: 判断是否更新头像 * @return com.elink.esua.epdc.commons.tools.utils.Result
* @author wangtong * @describe: 判断是否更新头像
* @date 2020/3/30 13:49 * @author wangtong
* @param [] * @date 2020/3/30 13:49
* @return com.elink.esua.epdc.commons.tools.utils.Result */
*/
@GetMapping("checkUpdateAvatar") @GetMapping("checkUpdateAvatar")
public Result checkUpdateAvatar() { public Result checkUpdateAvatar() {
return sysUserService.checkUpdateAvatar(); return sysUserService.checkUpdateAvatar();
} }
/** /**
* @describe: 更新头像 * @param avatar
* @author wangtong * @return com.elink.esua.epdc.commons.tools.utils.Result
* @date 2020/3/30 16:11 * @describe: 更新头像
* @param [avatar] * @author wangtong
* @return com.elink.esua.epdc.commons.tools.utils.Result * @date 2020/3/30 16:11
*/ */
@GetMapping("updateAvatar") @GetMapping("updateAvatar")
public Result updateAvatar(String avatar) { public Result updateAvatar(String avatar) {
return sysUserService.updateAvatar(avatar); return sysUserService.updateAvatar(avatar);

15
epdc-cloud-admin/src/main/java/com/elink/esua/epdc/service/SysDeptService.java

@ -242,10 +242,8 @@ public interface SysDeptService extends BaseService<SysDeptEntity> {
Result<List<Long>> pageDeptIdByTypeKey(String typeKey, Integer pageSize, Integer pageIndex); Result<List<Long>> pageDeptIdByTypeKey(String typeKey, Integer pageSize, Integer pageIndex);
/** /**
* 根据部门id获取部门层级关系获取部门领导姓名 * pc端页面获取用户街道-社区层级关系前端显示请求需携带token
* *
* @param deptId 部门id
* @param leaderFlag 是否需要查询网格长姓名 0 1
* @return com.elink.esua.epdc.dto.DeptLevelAndLeaderDTO * @return com.elink.esua.epdc.dto.DeptLevelAndLeaderDTO
* @author work@yujt.net.cn * @author work@yujt.net.cn
* @date 2019/12/18 11:05 * @date 2019/12/18 11:05
@ -266,9 +264,18 @@ public interface SysDeptService extends BaseService<SysDeptEntity> {
/** /**
* @Description: 获取全部的部门基本信息 * @Description: 获取全部的部门基本信息
* @Param: [userSysDeptInfoFormDTO] * @Param: [userSysDeptInfoFormDTO]
* @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.epdc.result.UserSysDeptInfoResultDTO>> * @return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.UserSysDeptInfoResultDTO>>
* @Author: zy * @Author: zy
* @Date: 2020-04-14 * @Date: 2020-04-14
*/ */
List<UserSysDeptInfoResultDTO> listAllDeptInfo(UserSysDeptInfoFormDTO formDTO); List<UserSysDeptInfoResultDTO> listAllDeptInfo(UserSysDeptInfoFormDTO formDTO);
/**
* 展示三级机构层级街道-社区-网格不包括区级不包括科室科室和没有下属网格的社区
*
* @return com.elink.esua.epdc.dto.DeptOption
* @author work@yujt.net.cn
* @date 2020/5/14 10:11
*/
DeptOption getBusinessDeptByUser();
} }

64
epdc-cloud-admin/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java

@ -350,10 +350,12 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
public DeptOption getUserDeptOption() { public DeptOption getUserDeptOption() {
return getUserDeptOption(SecurityUser.getUserId()); return getUserDeptOption(SecurityUser.getUserId());
} }
@Override @Override
public DeptOption getDeptAuthByUser() { public DeptOption getDeptAuthByUser() {
return getDeptAuthByUser(SecurityUser.getUserId()); return getDeptAuthByUser(SecurityUser.getUserId());
} }
@Override @Override
public List<DeptGridDTO> getGridAuthByUser() { public List<DeptGridDTO> getGridAuthByUser() {
// 用户拥有的所有部门权限 // 用户拥有的所有部门权限
@ -385,6 +387,7 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
} }
return (DeptOption) obj; return (DeptOption) obj;
} }
/** /**
* 根据userId从redis取出用户部门层级关系街道-社区-网格 * 根据userId从redis取出用户部门层级关系街道-社区-网格
* *
@ -415,6 +418,51 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
return (DeptOption) obj; return (DeptOption) obj;
} }
@Override
public DeptOption getBusinessDeptByUser() {
DeptOption result = getUserDeptOption(SecurityUser.getUserId());
List<JSONObject> options = result.getOptions();
if (options.isEmpty()) {
return result;
}
// 代表存在子级机构的json key
String childJsonOptionKey = "children";
// 一个街道机构
JSONObject streetOption;
// 一个街道下所有社区机构
JSONArray communityOptionArray;
// 一个社区机构
JSONObject communityOption;
// 循环所有街道
for (int i = options.size() - NumConstant.ONE; i >= NumConstant.ZERO; i--) {
// 取出一个街道
streetOption = options.get(i);
// 街道没有children,代表没有下级社区(没有children的,其实是区直)
if (null == streetOption.get(childJsonOptionKey)) {
// 移除区直机构
options.remove(i);
continue;
}
// 获取该街道的所有社区
communityOptionArray = streetOption.getJSONArray(childJsonOptionKey);
if (communityOptionArray.isEmpty()) {
// 移除区直机构
options.remove(i);
continue;
}
// 社区不为空,循环所有社区
for (int j = communityOptionArray.size() - 1; j >= 0; j--) {
// 取出一个社区
communityOption = communityOptionArray.getJSONObject(j);
if (null == communityOption.get(childJsonOptionKey) || communityOption.getJSONArray(childJsonOptionKey).isEmpty()) {
// 若街道有下级机构(社区),移除社区
communityOptionArray.remove(j);
}
}
}
return result;
}
@Override @Override
public DeptOption getMiddleByLoginUser() { public DeptOption getMiddleByLoginUser() {
DeptOption result = getUserDeptOption(SecurityUser.getUserId()); DeptOption result = getUserDeptOption(SecurityUser.getUserId());
@ -614,10 +662,11 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
} }
} }
/** /**
* 组装部门层级结构 * 组装部门层级结构
* *
* @param userId 用户id * @param userId 用户id
* @return void * @return void
* @author work@yujt.net.cn * @author work@yujt.net.cn
* @date 2020/1/28 10:49 * @date 2020/1/28 10:49
@ -717,6 +766,7 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
result.put("pids", parentDeptIdList); result.put("pids", parentDeptIdList);
return result; return result;
} }
/** /**
* 组装下级结构节点 * 组装下级结构节点
* *
@ -766,9 +816,9 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
nodeParent.put("children", childrenNodeList); nodeParent.put("children", childrenNodeList);
} }
} }
if(allParentNode.size() == 0){ if (allParentNode.size() == 0) {
for (int index = 0; index < childDepts.size(); index++) { for (int index = 0; index < childDepts.size(); index++) {
JSONObject node = new JSONObject(); JSONObject node = new JSONObject();
node.put("label", childDepts.get(index).getName()); node.put("label", childDepts.get(index).getName());
node.put("value", String.valueOf(childDepts.get(index).getId())); node.put("value", String.valueOf(childDepts.get(index).getId()));
allParentNode.add(node); allParentNode.add(node);
@ -790,6 +840,7 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
result.put("scope", dataScopeDeptList); result.put("scope", dataScopeDeptList);
return result; return result;
} }
@Override @Override
public void packgeAllDeptOption() { public void packgeAllDeptOption() {
List<DeptTreeDTO> deptList = baseDao.selectListDeptTree(); List<DeptTreeDTO> deptList = baseDao.selectListDeptTree();
@ -1046,10 +1097,10 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
@Override @Override
public List<UserSysDeptInfoResultDTO> listAllDeptInfo(UserSysDeptInfoFormDTO formDTO) { public List<UserSysDeptInfoResultDTO> listAllDeptInfo(UserSysDeptInfoFormDTO formDTO) {
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
if (formDTO.getTypeKeyList() != null && formDTO.getTypeKeyList().size() >0) { if (formDTO.getTypeKeyList() != null && formDTO.getTypeKeyList().size() > 0) {
map.put("typeKey", formDTO.getTypeKeyList().get(0)); map.put("typeKey", formDTO.getTypeKeyList().get(0));
} }
if (formDTO.getDeptIdList() != null && formDTO.getDeptIdList().size() >0) { if (formDTO.getDeptIdList() != null && formDTO.getDeptIdList().size() > 0) {
map.put("deptId", formDTO.getDeptIdList().get(0)); map.put("deptId", formDTO.getDeptIdList().get(0));
} }
if (formDTO.getDeptName() != null && formDTO.getDeptName() != "") { if (formDTO.getDeptName() != null && formDTO.getDeptName() != "") {
@ -1060,11 +1111,10 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
} }
/** /**
*
* 组织机构名称修改发送MQ消息 * 组织机构名称修改发送MQ消息
* *
* @params [dto]
* @return void * @return void
* @params [dto]
* @author liuchuang * @author liuchuang
* @since 2020/3/6 21:34 * @since 2020/3/6 21:34
*/ */

51
epdc-cloud-admin/src/main/java/com/elink/esua/epdc/service/impl/SysRoleServiceImpl.java

@ -133,21 +133,40 @@ public class SysRoleServiceImpl extends BaseServiceImpl<SysRoleDao, SysRoleEntit
//保存角色数据权限关系 //保存角色数据权限关系
sysRoleDataScopeService.saveOrUpdate(entity.getId(), dto.getDeptIdList()); sysRoleDataScopeService.saveOrUpdate(entity.getId(), dto.getDeptIdList());
//保存角色与app菜单关系 handleEpdcUserRole(dto, entity);
}
/**
* 党群相关权限集中处理 包括工作端数据端吹哨权限
*
* @param dto 管理员设置的用户权限
* @param entity dto转化而来的实体对象
* @return void
* @author work@yujt.net.cn
* @date 2020/5/13 19:42
*/
private void handleEpdcUserRole(SysRoleDTO dto, SysRoleEntity entity) {
//保存角色与工作端菜单关系
appRoleMenuService.saveOrUpdate(entity.getId(), dto.getAppMenuIdList()); appRoleMenuService.saveOrUpdate(entity.getId(), dto.getAppMenuIdList());
// //更新角色与数据端菜单关系 //更新角色与数据端菜单关系
sysAnalysisRoleMenuService.saveOrUpdate(entity.getId(), dto.getAnalysisMenuIdList()); sysAnalysisRoleMenuService.saveOrUpdate(entity.getId(), dto.getAnalysisMenuIdList());
//保存角色与项目处理类型关系 //保存角色与项目处理类型关系
HandleRoleCategoryFormDTO categoryFormDTO = new HandleRoleCategoryFormDTO(); List<String> categoryIdList = dto.getCategoryIdList();
categoryFormDTO.setRoleId(entity.getId()); if (CollUtil.isNotEmpty(categoryIdList)) {
categoryFormDTO.setCategoryIdList(dto.getCategoryIdList()); HandleRoleCategoryFormDTO categoryFormDTO = new HandleRoleCategoryFormDTO();
eventFeignClient.saveOrUpdateHandleCategory(categoryFormDTO); categoryFormDTO.setRoleId(entity.getId());
categoryFormDTO.setCategoryIdList(categoryIdList);
//保存角色对应的可吹哨部门权限 eventFeignClient.saveOrUpdateHandleCategory(categoryFormDTO);
this.saveOrUpdateWhistleDeptId(entity.getId(), dto.getWhistleDeptIdList()); }
List<Long> whistleDeptIdList = dto.getWhistleDeptIdList();
if (CollUtil.isNotEmpty(whistleDeptIdList)) {
//保存角色对应的可吹哨部门权限
this.saveOrUpdateWhistleDeptId(entity.getId(), whistleDeptIdList);
}
} }
/** /**
@ -200,19 +219,7 @@ public class SysRoleServiceImpl extends BaseServiceImpl<SysRoleDao, SysRoleEntit
//更新角色数据权限关系 //更新角色数据权限关系
sysRoleDataScopeService.saveOrUpdate(entity.getId(), dto.getDeptIdList()); sysRoleDataScopeService.saveOrUpdate(entity.getId(), dto.getDeptIdList());
//更新角色与app菜单关系 handleEpdcUserRole(dto, entity);
appRoleMenuService.saveOrUpdate(entity.getId(), dto.getAppMenuIdList());
//更新角色与数据端菜单关系
sysAnalysisRoleMenuService.saveOrUpdate(entity.getId(), dto.getAnalysisMenuIdList());
//保存角色与项目处理类型关系
HandleRoleCategoryFormDTO categoryFormDTO = new HandleRoleCategoryFormDTO();
categoryFormDTO.setRoleId(entity.getId());
categoryFormDTO.setCategoryIdList(dto.getCategoryIdList());
eventFeignClient.saveOrUpdateHandleCategory(categoryFormDTO);
//保存角色对应的可吹哨部门权限
this.saveOrUpdateWhistleDeptId(entity.getId(), dto.getWhistleDeptIdList());
} }

Loading…
Cancel
Save