diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeign.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeign.java index c344a87f12..465c6e9d41 100644 --- a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeign.java +++ b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeign.java @@ -193,6 +193,10 @@ public interface SysUserFeign { @GetMapping(value = "getUserByRole") ResultBean> getUserByRole(@SpringQueryMap UserQuery query); + @ApiOperation(value = "获取本部门直属上级角色的用户") + @GetMapping(value = "getUserByOrgRole") + ResultBean> getUserByOrgRole(@SpringQueryMap UserQuery query); + @ApiOperation(value = "获取当前分公司下所有员工的userSid和员工姓名") @GetMapping(value = "getUserByOrgSid") ResultBean>> getUserByOrgSid(@RequestParam("orgSid") String orgSid, @RequestParam("userSid") String userSid); diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeignFallback.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeignFallback.java index de4fd4ee46..6b846ab08f 100644 --- a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeignFallback.java +++ b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeignFallback.java @@ -180,6 +180,11 @@ public class SysUserFeignFallback implements SysUserFeign { return null; } + @Override + public ResultBean> getUserByOrgRole(UserQuery query) { + return null; + } + @Override public ResultBean>> getUserByOrgSid(String orgSid, String userSid) { return null; diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/UserQuery.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/UserQuery.java index c7dc6f8558..db390610a4 100644 --- a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/UserQuery.java +++ b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/UserQuery.java @@ -17,4 +17,7 @@ public class UserQuery implements Query { private String roleSid; @ApiModelProperty(value = "用户部门sid路径是必传项") private String orgSidPath; + + @ApiModelProperty("用户sid") + private String userSid; } diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserRest.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserRest.java index 3b76c560d7..0e6ccbe2ff 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserRest.java +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserRest.java @@ -585,6 +585,11 @@ public class SysUserRest implements SysUserFeign { return sysUserService.getUserByRole(query); } + @Override + public ResultBean> getUserByOrgRole(UserQuery query) { + return sysUserService.getUserByOrgRole(query); + } + @Override public ResultBean>> getUserByOrgSid(String orgSid, String userSid) { return sysUserService.getUserByOrgSid(orgSid, userSid); diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java index d4afa75bc1..2b7113b834 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java @@ -956,4 +956,22 @@ public class SysUserService extends MybatisBaseService { String ids = baseMapper.selectIdBySid(stringList); return rb.success().setData(ids); } + + public ResultBean> getUserByOrgRole(UserQuery query) { + ResultBean> rb = ResultBean.fireFail(); + //根据用户sid获取staffSid + SysUser sysUser = fetchBySid(query.getUserSid()); + String s = sysStaffPostService.selecctPost(sysUser.getStaffSid()); + String roleSid = s; + //根据组织架构、角色两个参数取相关符合条件的用户信息 + UserQuery userQuery = new UserQuery(); + userQuery.setRoleSid(roleSid); + userQuery.setOrgSidPath(query.getOrgSidPath()); + ResultBean> resultBean = getUserByRole(query); + if(!resultBean.getSuccess()){ + return rb.setMsg(resultBean.getMsg()); + } + List sysUserVoList = resultBean.getData(); + return rb.success().setData(sysUserVoList); + } } \ No newline at end of file