Browse Source

获取下一环节用户

master
dimengzhe 2 years ago
parent
commit
2238a2cbcf
  1. 2
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserMapper.java
  2. 35
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserMapper.xml
  3. 8
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java

2
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserMapper.java

@ -182,4 +182,6 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
int updateAppIdAll(); int updateAppIdAll();
String selectIdBySid(@Param("list") List<String> stringList); String selectIdBySid(@Param("list") List<String> stringList);
List<SysUserVo> getUserMessageByRole(@Param("roleSid") String roleSid,@Param("levelOrgSid") String levelOrgSid, @Param("list") List<String> stringList);
} }

35
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserMapper.xml

@ -113,15 +113,16 @@
<select id="selectByUserName" resultType="com.yxt.anrui.portal.api.sysuser.SysUser"> <select id="selectByUserName" resultType="com.yxt.anrui.portal.api.sysuser.SysUser">
SELECT su.* SELECT su.*
FROM sys_user su FROM sys_user su
left join sys_staffinfo si on si.sid = su.staffSid left join sys_staffinfo si on si.sid = su.staffSid
where su.userName = #{param1} where su.userName = #{param1}
and su.isDelete = 0 and su.isDelete = 0
and su.userType = 1 and si.personTypeKey != '01' and su.userType = 1
and si.personTypeKey != '01'
</select> </select>
<select id="selectByUserNameApp" resultType="com.yxt.anrui.portal.api.sysuser.SysUser"> <select id="selectByUserNameApp" resultType="com.yxt.anrui.portal.api.sysuser.SysUser">
SELECT su.* SELECT su.*
FROM sys_user su FROM sys_user su
left join sys_staffinfo si on si.sid = su.staffSid left join sys_staffinfo si on si.sid = su.staffSid
where su.userName = #{param1} where su.userName = #{param1}
and su.isDelete = 0 and su.isDelete = 0
and su.userType = 1 and su.userType = 1
@ -244,10 +245,11 @@
<select id="selectByMobile" resultType="com.yxt.anrui.portal.api.sysuser.SysUser"> <select id="selectByMobile" resultType="com.yxt.anrui.portal.api.sysuser.SysUser">
select su.* select su.*
from sys_user su from sys_user su
left join sys_staffinfo si on si.sid = su.staffSid left join sys_staffinfo si on si.sid = su.staffSid
where su.mobile = #{mobile} where su.mobile = #{mobile}
and su.isDelete = 0 and su.isDelete = 0
and su.userType = 1 and si.personTypeKey != '01' and su.userType = 1
and si.personTypeKey != '01'
</select> </select>
<update id="updateIsEnable"> <update id="updateIsEnable">
@ -267,7 +269,7 @@
</select> </select>
<select id="getUserByRole" resultType="com.yxt.anrui.portal.api.sysuser.SysUserVo"> <select id="getUserByRole" resultType="com.yxt.anrui.portal.api.sysuser.SysUserVo">
select distinct si.name, su.sid, su.staffSid<!--, so.orgSidPath--> select distinct si.name, su.sid, su.staffSid<!--, so.orgSidPath-->
from sys_user_role sr from sys_user_role sr
left join sys_user su on sr.userSid = su.sid left join sys_user su on sr.userSid = su.sid
left join sys_staffinfo si on si.sid = su.staffSid left join sys_staffinfo si on si.sid = su.staffSid
@ -310,9 +312,10 @@
<select id="getUserByRoleSid" resultType="com.yxt.anrui.portal.api.sysuser.SysUserVo"> <select id="getUserByRoleSid" resultType="com.yxt.anrui.portal.api.sysuser.SysUserVo">
select si.name, su.sid, su.staffSid select si.name, su.sid, su.staffSid
from sys_user_role sr from sys_user_role sr
left join sys_user su on sr.userSid = su.sid left join sys_user su on sr.userSid = su.sid
left join sys_staffinfo si on si.sid = su.staffSid left join sys_staffinfo si on si.sid = su.staffSid
where sr.roleSid = #{roleSid} and si.personTypeKey != '01' where sr.roleSid = #{roleSid}
and si.personTypeKey != '01'
</select> </select>
<update id="updateAppIdByMobile"> <update id="updateAppIdByMobile">
@ -333,4 +336,18 @@
#{item} #{item}
</foreach> </foreach>
</select> </select>
<select id="getUserMessageByRole" resultType="com.yxt.anrui.portal.api.sysuser.SysUserVo">
select distinct si.name, su.sid, su.staffSid,so.orgSidPath
from sys_user_role sr
left join sys_user su on sr.userSid = su.sid
left join sys_staffinfo si on si.sid = su.staffSid
left join sys_staff_org so on so.staffSid = si.sid
where sr.roleSid = #{roleSid}
and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ','))
and si.personTypeKey != '01' AND so.`manageType`=3 and su.sid in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</select>
</mapper> </mapper>

8
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java

@ -995,6 +995,14 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
if (query.getOrgSidPath().split("/").length >= Integer.parseInt(levelTypeKey) - 1) { if (query.getOrgSidPath().split("/").length >= Integer.parseInt(levelTypeKey) - 1) {
String levelOrgSid = query.getOrgSidPath().split("/")[Integer.parseInt(levelTypeKey) - 1]; String levelOrgSid = query.getOrgSidPath().split("/")[Integer.parseInt(levelTypeKey) - 1];
sysUserVoList = baseMapper.getUserByRole(query.getRoleSid(), levelOrgSid); sysUserVoList = baseMapper.getUserByRole(query.getRoleSid(), levelOrgSid);
if(sysUserVoList.size()>1){
List<String> stringList = sysUserVoList.stream().map(v->v.getSid()).collect(Collectors.toList());
List<SysUserVo> sysUserVoList1 = baseMapper.getUserMessageByRole(query.getRoleSid(), levelOrgSid,stringList);
sysUserVoList1.removeAll(Collections.singleton(null));
if(sysUserVoList1.size()>0){
sysUserVoList = sysUserVoList1;
}
}
} }
sysUserVoList.removeAll(Collections.singleton(null)); sysUserVoList.removeAll(Collections.singleton(null));
sysUserVoList.forEach(t -> { sysUserVoList.forEach(t -> {

Loading…
Cancel
Save