diff --git a/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/DeptTreeDTO.java b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/DeptTreeDTO.java index f5c9977b..b217423f 100644 --- a/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/DeptTreeDTO.java +++ b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/DeptTreeDTO.java @@ -18,6 +18,7 @@ public class DeptTreeDTO implements Serializable { private Long pid; private String name; + private String typeKey; } diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java index 78d50af6..19152cfb 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java @@ -8,11 +8,9 @@ package com.elink.esua.epdc.controller; -import com.alibaba.fastjson.JSONObject; import com.elink.esua.epdc.commons.tools.annotation.LogOperation; import com.elink.esua.epdc.commons.tools.constant.Constant; import com.elink.esua.epdc.commons.tools.exception.ErrorCode; -import com.elink.esua.epdc.commons.tools.exception.RenException; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.security.bo.ResourceBO; import com.elink.esua.epdc.commons.tools.security.password.PasswordUtils; @@ -426,13 +424,8 @@ public class SysUserController { * @date 2020/1/27 14:31 */ @PostMapping("deptOptions/getUserDeptOptionByUserId") - public Result getUserDeptOptionByUserId(@RequestBody String userId) { - JSONObject paramsJSONObject = JSONObject.parseObject(userId); - String realUserId = paramsJSONObject.getString("userId"); - if (realUserId == null) { - throw new RenException("参数错误"); - } - return sysDeptService.getUserDeptOptionByUserId(realUserId); + public Result getUserDeptOptionByUserId() { + return sysDeptService.getUserDeptOptionByUserId(String.valueOf(SecurityUser.getUserId())); } } diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java index 0fc9ec3e..3de1aa0f 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java @@ -604,6 +604,7 @@ public class SysDeptServiceImpl extends BaseServiceImpl **/ - @GetMapping("getUserInfo") + @PostMapping("getUserInfo") public Result getUserInfo(){ return adminService.getUserInfo(); } @@ -38,8 +38,8 @@ public class ApiWorkLogController { * @return com.elink.esua.epdc.commons.tools.utils.Result **/ @PostMapping("getUserDeptOptionByUserId") - public Result getUserDeptOptionByUserId(@RequestBody String userId){ - return adminService.getUserDeptOptionByUserId(userId); + public Result getUserDeptOptionByUserId(){ + return adminService.getUserDeptOptionByUserId(); } /** diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java index c5def4b9..c060e1c2 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java @@ -188,5 +188,14 @@ public interface AdminFeignClient { * @date 2019/11/27 14:31 */ @PostMapping(value = "sys/user/deptOptions/getUserDeptOptionByUserId", consumes = MediaType.APPLICATION_JSON_VALUE) - Result getUserDeptOptionByUserId(String userId); + Result getUserDeptOptionByUserId(); + /** + * @param + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @Author yinzuomei + * @Description 获取所有组织机构信息 + * @Date 2020/1/28 12:15 + **/ + @GetMapping("sys/dept/party/getDeptTree") + Result getAllDeptTree(); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AdminFeignClientFallback.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AdminFeignClientFallback.java index 8f10b0e0..8a996cd6 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AdminFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AdminFeignClientFallback.java @@ -92,7 +92,12 @@ public class AdminFeignClientFallback implements AdminFeignClient { } @Override - public Result getUserDeptOptionByUserId(String userId) { - return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getUserDeptOptionByUserId",userId); + public Result getUserDeptOptionByUserId() { + return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getUserDeptOptionByUserId"); + } + + @Override + public Result getAllDeptTree() { + return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getDeptTree"); } } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AdminService.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AdminService.java index 3346e0a9..9cfe1356 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AdminService.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AdminService.java @@ -76,7 +76,7 @@ public interface AdminService { * @Param [userId] * @return com.elink.esua.epdc.commons.tools.utils.Result **/ - Result getUserDeptOptionByUserId(String userId); + Result getUserDeptOptionByUserId(); /** * @Description 获取customId * @Author songyunpeng diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AdminServiceImpl.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AdminServiceImpl.java index 958e7cb8..e2ff209e 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AdminServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AdminServiceImpl.java @@ -1,6 +1,7 @@ package com.elink.esua.epdc.service.impl; import com.elink.esua.epdc.common.token.dto.TokenDto; +import com.elink.esua.epdc.commons.tools.enums.SuperAdminEnum; import com.elink.esua.epdc.commons.tools.exception.RenException; import com.elink.esua.epdc.commons.tools.security.user.SecurityUser; import com.elink.esua.epdc.commons.tools.security.user.UserDetail; @@ -89,10 +90,6 @@ public class AdminServiceImpl implements AdminService { if(user == null){ throw new RenException("用户未登录"); } - //查询用户部门等信息 - //获取所有上级机构名称和ID拼接 - Result dtoResult = adminFeignClient.getParentAndAllDept(user.getDeptId()); - ParentAndAllDeptDTO deptDTO = dtoResult.getData(); Result customIdResult = analysisFeignClient.getCustomId(); if(customIdResult == null || StringUtils.isBlank(customIdResult.getData())){ throw new RenException("无法获取到CustomID"); @@ -104,17 +101,30 @@ public class AdminServiceImpl implements AdminService { epdcWorkLogUserDetailDTO.setRealName(user.getRealName()); epdcWorkLogUserDetailDTO.setCustomerId(customIdResult.getData()); epdcWorkLogUserDetailDTO.setAgencyId(String.valueOf(user.getDeptId())); - epdcWorkLogUserDetailDTO.setAgencyIdPath(deptDTO.getAllDeptIds()); - epdcWorkLogUserDetailDTO.setAgencyName(deptDTO.getGrid()); - epdcWorkLogUserDetailDTO.setAgencyNamePath(deptDTO.getAllDeptNames()); - epdcWorkLogUserDetailDTO.setAgencyNamePath(String.valueOf(user.getSuperAdmin())); + epdcWorkLogUserDetailDTO.setAdminFlag(String.valueOf(user.getSuperAdmin())); epdcWorkLogUserDetailDTO.setMobile(user.getMobile()); + if(user.getSuperAdmin() == SuperAdminEnum.NO.value()){ + //查询用户部门等信息 + Result dtoResult = adminFeignClient.getParentAndAllDept(user.getDeptId()); + ParentAndAllDeptDTO deptDTO = dtoResult.getData(); + epdcWorkLogUserDetailDTO.setAgencyIdPath(deptDTO.getAllDeptIds()); + epdcWorkLogUserDetailDTO.setAgencyName(deptDTO.getGrid()); + epdcWorkLogUserDetailDTO.setAgencyNamePath(deptDTO.getAllDeptNames()); + } return new Result().ok(epdcWorkLogUserDetailDTO); } @Override - public Result getUserDeptOptionByUserId(String userId) { - return adminFeignClient.getUserDeptOptionByUserId(userId); + public Result getUserDeptOptionByUserId() { + //缓存中用户信息 + UserDetail user = SecurityUser.getUser(); + if(user == null){ + throw new RenException("用户未登录"); + } + if(user.getSuperAdmin() == SuperAdminEnum.YES.value()){ + return adminFeignClient.getAllDeptTree(); + } + return adminFeignClient.getUserDeptOptionByUserId(); } @Override