Browse Source

用户

master
wangpengfei 10 months ago
parent
commit
0cc0168ad6
  1. 12
      src/main/java/com/yxt/portal/apiadmin/SysOrganizationRest.java
  2. 2
      src/main/java/com/yxt/portal/biz/sysorganization/SysOrganization.java
  3. 12
      src/main/java/com/yxt/portal/biz/sysorganization/SysOrganizationMapper.xml
  4. 20
      src/main/java/com/yxt/portal/biz/sysorganization/SysOrganizationService.java
  5. 2
      src/main/java/com/yxt/portal/biz/sysstaffinfo/SysStaffinfoMapper.xml
  6. 54
      src/main/java/com/yxt/portal/biz/sysstaffinfo/SysStaffinfoService.java
  7. 2
      src/main/java/com/yxt/portal/biz/sysstafforg/SysStaffOrg.java
  8. 2
      src/main/java/com/yxt/portal/biz/sysuser/SysUserMapper.java
  9. 163
      src/main/java/com/yxt/portal/biz/sysuser/SysUserMapper.xml
  10. 2
      src/main/java/com/yxt/portal/biz/sysuser/SysUserService.java

12
src/main/java/com/yxt/portal/apiadmin/SysOrganizationRest.java

@ -1,6 +1,7 @@
package com.yxt.portal.apiadmin; package com.yxt.portal.apiadmin;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yxt.common.base.config.RedisUtil; import com.yxt.common.base.config.RedisUtil;
import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.utils.QRCodeUtil; import com.yxt.common.base.utils.QRCodeUtil;
@ -140,10 +141,15 @@ public class SysOrganizationRest{
//删除关联关系中的所有主管与分管的人员关系 //删除关联关系中的所有主管与分管的人员关系
sysStaffOrgService.delZGAndFGByOrgSid(sid); sysStaffOrgService.delZGAndFGByOrgSid(sid);
if (StringUtils.isNotBlank(zgStaffSid)) { if (StringUtils.isNotBlank(zgStaffSid)) {
ResultBean resultBean = sysOrganizationService.addSysStaffOrg(zgStaffSid, "1", sysOrganization); ResultBean resultBean = sysOrganizationService.addSysZg(zgStaffSid, sysOrganization);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }
}else{
SysOrganization sysOrg =sysOrganizationService.getOne(new QueryWrapper<SysOrganization>().eq("sid",sid));
sysOrg.setManagerSid("");
sysOrg.setManagerName("");
sysOrganizationService.updateById(sysOrg);
} }
if (StringUtils.isNotBlank(fgStaffSid)) { if (StringUtils.isNotBlank(fgStaffSid)) {
ResultBean resultBean = sysOrganizationService.addSysStaffOrg(fgStaffSid, "2", sysOrganization); ResultBean resultBean = sysOrganizationService.addSysStaffOrg(fgStaffSid, "2", sysOrganization);
@ -258,8 +264,8 @@ public class SysOrganizationRest{
BeanUtil.copyProperties(entity, vo); BeanUtil.copyProperties(entity, vo);
vo.setFgNames(fgNames); vo.setFgNames(fgNames);
vo.setFgStaffSid(fgSids); vo.setFgStaffSid(fgSids);
vo.setZgNames(zgNames); vo.setZgNames(entity.getManagerName());
vo.setZgStaffSid(zgSids); vo.setZgStaffSid(entity.getManagerSid());
return rb.success().setData(vo); return rb.success().setData(vo);
} }

2
src/main/java/com/yxt/portal/biz/sysorganization/SysOrganization.java

@ -84,4 +84,6 @@ public class SysOrganization extends BaseEntity {
@ApiModelProperty("其他编码") @ApiModelProperty("其他编码")
private String otherCode; private String otherCode;
private String managerSid;//主管sid
private String managerName;//主管人员姓名
} }

12
src/main/java/com/yxt/portal/biz/sysorganization/SysOrganizationMapper.xml

@ -5,16 +5,8 @@
<!-- ${ew.customSqlSegment} --> <!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.portal.biz.sysorganization.SysOrganizationVo"> <select id="selectPageVo" resultType="com.yxt.portal.biz.sysorganization.SysOrganizationVo">
SELECT so.*, SELECT so.*,
(SELECT GROUP_CONCAT(ss.name) so.managerName as zgNames,
FROM `sys_staff_org` sso so.managerSid as zgSids,
LEFT JOIN `sys_staffinfo` ss ON sso.`staffSid` = ss.`sid`
WHERE so.`sid` = sso.`orgSid`
AND sso.manageType = '1') zgNames,
(SELECT GROUP_CONCAT(ss.sid)
FROM `sys_staff_org` sso
LEFT JOIN `sys_staffinfo` ss ON sso.`staffSid` = ss.`sid`
WHERE so.`sid` = sso.`orgSid`
AND sso.manageType = '1') zgSids,
(SELECT GROUP_CONCAT(ss.name) (SELECT GROUP_CONCAT(ss.name)
FROM `sys_staff_org` sso FROM `sys_staff_org` sso
LEFT JOIN `sys_staffinfo` ss ON sso.`staffSid` = ss.`sid` LEFT JOIN `sys_staffinfo` ss ON sso.`staffSid` = ss.`sid`

20
src/main/java/com/yxt/portal/biz/sysorganization/SysOrganizationService.java

@ -170,7 +170,27 @@ public class SysOrganizationService extends MybatisBaseService<SysOrganizationMa
public List<SysOrganizationVo> selectChildrenListBySid(String sid) { public List<SysOrganizationVo> selectChildrenListBySid(String sid) {
return baseMapper.selectChildrenListByPsid(sid); return baseMapper.selectChildrenListByPsid(sid);
} }
@Transactional(rollbackFor = Exception.class)
public ResultBean addSysZg(String sids , SysOrganization entity) {
ResultBean rb = ResultBean.fireFail();
String[] sidArr = sids.split(",");
String name = "";
for (String sid : sidArr) {
SysOrganization sysOrg=baseMapper.selectOne(new QueryWrapper<SysOrganization>().eq("sid",entity.getSid()));
SysStaffinfo sysStaffinfo=sysStaffInfoService.getOne(new QueryWrapper<SysStaffinfo>().eq("sid",sid));
sysOrg.setManagerSid(sid);
sysOrg.setManagerName(sysStaffinfo.getName());
baseMapper.updateById(sysOrg);
//根据staffSid查询token
String token = sysUserService.selectByStaffsid(sid).getToken();
if (StringUtils.isNotBlank(token)) {
//清空该token
redisUtil.remove(token);
}
}
return rb.success();
}
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public ResultBean addSysStaffOrg(String sids, String manageType, SysOrganization entity) { public ResultBean addSysStaffOrg(String sids, String manageType, SysOrganization entity) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();

2
src/main/java/com/yxt/portal/biz/sysstaffinfo/SysStaffinfoMapper.xml

@ -206,6 +206,7 @@
<select id="getStaffName" resultType="java.util.Map"> <select id="getStaffName" resultType="java.util.Map">
SELECT DISTINCT ss.sid, ss.name SELECT DISTINCT ss.sid, ss.name
FROM sys_staffinfo ss FROM sys_staffinfo ss
left join sys_user s on s.staffSid =ss.sid
LEFT JOIN sys_staff_org sso LEFT JOIN sys_staff_org sso
left join sys_organization o on o.sid =sso.orgSid left join sys_organization o on o.sid =sso.orgSid
ON ss.`sid` = sso.`staffSid` ON ss.`sid` = sso.`staffSid`
@ -216,6 +217,7 @@
SELECT DISTINCT ss.sid, SELECT DISTINCT ss.sid,
ss.name ss.name
FROM sys_staffinfo ss FROM sys_staffinfo ss
left join sys_user s on s.staffSid =ss.sid
LEFT JOIN sys_staff_org sso LEFT JOIN sys_staff_org sso
ON ss.`sid` = sso.`staffSid` ON ss.`sid` = sso.`staffSid`
${ew.customSqlSegment} ${ew.customSqlSegment}

54
src/main/java/com/yxt/portal/biz/sysstaffinfo/SysStaffinfoService.java

@ -730,9 +730,36 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
* @param sid 员工信息sid * @param sid 员工信息sid
* @return * @return
*/ */
public ResultBean updateStaffInfo(SysStaffinfoDto dto, String sid) { public ResultBean updateStaffInfo(SysStaffinfoDto dto, String sid) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
//查询该人员的组织机构list SysUser sysUser=sysUserService.getOne(new QueryWrapper<SysUser>().eq("staffSid",sid));
List<SysUserRole> d =sysUserRoleService.list(new QueryWrapper<SysUserRole>().eq("userSid",sysUser.getSid()).eq("orgSid",dto.getOrgSid()));
for (SysUserRole sysUserRole : d) {
if(sysUserRole.getRoleSid().equals("002")){
return rb.setMsg("单位管理员不能被修改");
}
}
SysOrganization sysOrgan=sysOrganizationService.getOne(new QueryWrapper<SysOrganization>().eq("sid",dto.getSysStaffOrg().getOrgSid()).eq("managerSid",sid));
if(null!=sysOrgan){
sysOrgan.setManagerName("");
sysOrgan.setManagerSid("");
sysOrganizationService.updateById(sysOrgan);
}
SysStaffOrg sysStaffOrgs=sysStaffOrgService.getOne(new QueryWrapper<SysStaffOrg>().eq("staffSid",sid).eq("manageType","2").eq("orgSid",dto.getSysStaffOrg().getOrgSid()));//查询该人员的组织机构list
if(null!=sysStaffOrgs){
sysStaffOrgs.setManageType("3");
sysStaffOrgService.updateById(sysStaffOrgs);
}
SysOrganization sysOrg=sysOrganizationService.getOne(new QueryWrapper<SysOrganization>().eq("sid",dto.getSysStaffOrg().getOrgSid()));
if(dto.getSysStaffOrg().getManageType().equals("1")){
sysOrg.setManagerSid(sid);
sysOrg.setManagerName(dto.getName());
sysOrganizationService.updateById(sysOrg);
}else if (dto.getSysStaffOrg().getManageType().equals("3")){
sysOrg.setManagerSid("");
sysOrg.setManagerName("");
sysOrganizationService.updateById(sysOrg);
}
List<SysStaffOrgVo> sysStaffOrgVos = sysStaffOrgService.selectByStaffS(sid); List<SysStaffOrgVo> sysStaffOrgVos = sysStaffOrgService.selectByStaffS(sid);
List<String> orgList = new ArrayList<>(); List<String> orgList = new ArrayList<>();
if (sysStaffOrgVos.size() > 0) { if (sysStaffOrgVos.size() > 0) {
@ -766,7 +793,7 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
//更新用户信息 //更新用户信息
// sysUserService.updateByStaffSid(dto.getJobNumber(), sysStaffinfo.getMobile(), sid); // sysUserService.updateByStaffSid(dto.getJobNumber(), sysStaffinfo.getMobile(), sid);
SysUser sysUser=sysUserService.getOne(new QueryWrapper<SysUser>().eq("staffSid",sid)); // SysUser sysUser=sysUserService.getOne(new QueryWrapper<SysUser>().eq("staffSid",sid));
sysUser.setAccountType(dto.getAccountType()); sysUser.setAccountType(dto.getAccountType());
sysUser.setUserType(dto.getUserType()); sysUser.setUserType(dto.getUserType());
sysUser.setRemarks(dto.getRemarks()); sysUser.setRemarks(dto.getRemarks());
@ -779,8 +806,8 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
//更新员工的关联的部门信息 //更新员工的关联的部门信息
SysStaffOrgDto sysStaffOrgDto = dto.getSysStaffOrg(); SysStaffOrgDto sysStaffOrgDto = dto.getSysStaffOrg();
SysStaffOrg sysStaffOrg = sysStaffOrgService.getOrgByStaffSidn(sid,dto.getSysStaffOrg().getOrgSid1()); SysStaffOrg sysStaffOrg = sysStaffOrgService.getOrgByStaffSidn(sid,dto.getSysStaffOrg().getOrgSid1());
BeanUtil.copyProperties(sysStaffOrgDto,sysStaffOrg); BeanUtil.copyProperties(sysStaffOrgDto,sysStaffOrg,"manageType");
sysStaffOrg.setManageType(dto.getSysStaffOrg().getManageType()); // sysStaffOrg.setManageType(dto.getSysStaffOrg().getManageType());
if(StringUtils.isBlank(sysStaffOrg.getOrgSid())){ if(StringUtils.isBlank(sysStaffOrg.getOrgSid())){
sysStaffOrg.setOrgSid(dto.getOrgSid()); sysStaffOrg.setOrgSid(dto.getOrgSid());
} }
@ -859,6 +886,11 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
// SysStaffPostDetailsVo staffPostDetailsVo = sysStaffPostService.getPostByStaffSid(sid); // SysStaffPostDetailsVo staffPostDetailsVo = sysStaffPostService.getPostByStaffSid(sid);
SysStaffOrgDetailsVo sysStaffOrgDetailsVo = sysStaffOrgService.selectByStaffByType(sysUser.getStaffSid(), orgSid, type); SysStaffOrgDetailsVo sysStaffOrgDetailsVo = sysStaffOrgService.selectByStaffByType(sysUser.getStaffSid(), orgSid, type);
SysOrganization s =sysOrganizationService.getOne(new QueryWrapper<SysOrganization>().eq("sid",orgSid1)); SysOrganization s =sysOrganizationService.getOne(new QueryWrapper<SysOrganization>().eq("sid",orgSid1));
if(StringUtils.isNotBlank(s.getManagerSid())){
if(s.getManagerSid().equals(sysUser.getStaffSid())){
sysStaffOrgDetailsVo.setManageType("1");
}
}
s.setOrgSidPath(s.getOrgSidPath()+"/"); s.setOrgSidPath(s.getOrgSidPath()+"/");
String b[]=s.getOrgSidPath().split("/"); String b[]=s.getOrgSidPath().split("/");
List<SysUserRoleVo> list=sysUserRoleService.selByUserSid(sysUser.getSid(),b[0]); List<SysUserRoleVo> list=sysUserRoleService.selByUserSid(sysUser.getSid(),b[0]);
@ -926,6 +958,7 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
} }
public List<Map<String, String>> getStaffName(String staffName,String deptSid) { public List<Map<String, String>> getStaffName(String staffName,String deptSid) {
QueryWrapper<Map<String, Object>> qw = new QueryWrapper<>(); QueryWrapper<Map<String, Object>> qw = new QueryWrapper<>();
SysOrganization sysOrganization=sysOrganizationService.getOne(new QueryWrapper<SysOrganization>().eq("sid",deptSid)); SysOrganization sysOrganization=sysOrganizationService.getOne(new QueryWrapper<SysOrganization>().eq("sid",deptSid));
sysOrganization.setOrgSidPath(sysOrganization.getOrgSidPath()+"/"); sysOrganization.setOrgSidPath(sysOrganization.getOrgSidPath()+"/");
@ -933,11 +966,12 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
if (StringUtils.isNotBlank(staffName)) { if (StringUtils.isNotBlank(staffName)) {
qw.like("ss.name", staffName); qw.like("ss.name", staffName);
} }
qw.eq("ss.isDelete", 0); qw.eq("s.isDelete", 0);
qw.ne("sso.orgSid", deptSid); qw.ne("sso.orgSid", deptSid);
qw.like("o.orgSidPath", orgSids[0]); qw.like("o.orgSidPath", orgSids[0]);
// qw.ne("ss.personTypeKey","01"); qw.eq("sso.manageType","3");
return baseMapper.getStaffName(qw); List<Map<String, String>> maps =baseMapper.getStaffName(qw).stream().filter(s->!s.get("name").equals("单位管理员")).collect(toList());
return maps;
} }
public List<Map<String, String>> getStaffNameByDeptSid(String staffName, String deptSid) { public List<Map<String, String>> getStaffNameByDeptSid(String staffName, String deptSid) {
@ -946,8 +980,8 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
qw.like("ss.name", staffName); qw.like("ss.name", staffName);
} }
qw.eq("sso.orgSid", deptSid); qw.eq("sso.orgSid", deptSid);
qw.eq("ss.isDelete", 0); qw.eq("s.isDelete", 0);
// qw.ne("ss.personTypeKey","01"); qw.eq("sso.manageType","3");
return baseMapper.getStaffNameByDeptSid(qw); return baseMapper.getStaffNameByDeptSid(qw);
} }

2
src/main/java/com/yxt/portal/biz/sysstafforg/SysStaffOrg.java

@ -41,6 +41,6 @@ public class SysStaffOrg extends BaseEntity {
// @ApiModelProperty("部门名称路径") // @ApiModelProperty("部门名称路径")
// private String orgNamePath; // private String orgNamePath;
@ApiModelProperty("管理类型:1、主管。2、分管。3、员工") @ApiModelProperty("管理类型:2、分管。3、员工")
private String manageType; private String manageType;
} }

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

@ -36,7 +36,7 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
//@Update("update sys_user set name=#{msg} where id=#{id}") //@Update("update sys_user set name=#{msg} where id=#{id}")
//IPage<SysUserVo> voPage(IPage<SysUser> page, @Param(Constants.WRAPPER) QueryWrapper<SysUser> qw); //IPage<SysUserVo> voPage(IPage<SysUser> page, @Param(Constants.WRAPPER) QueryWrapper<SysUser> qw);
IPage<SysUserVo> selectPageVo(IPage<SysUser> page, @Param(Constants.WRAPPER) Wrapper<SysUser> ew, @Param("orgName") String orgName, @Param("userName") String userName); IPage<SysUserVo> selectPageVo(IPage<SysUser> page, @Param(Constants.WRAPPER) Wrapper<SysUser> ew, @Param("orgName") String orgName, @Param("userName") String userName,@Param("orgSid") String orgSid);
List<SysUserVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<SysUser> qw); List<SysUserVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<SysUser> qw);

163
src/main/java/com/yxt/portal/biz/sysuser/SysUserMapper.xml

@ -5,66 +5,75 @@
<!-- ${ew.customSqlSegment} --> <!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.portal.biz.sysuser.SysUserVo"> <select id="selectPageVo" resultType="com.yxt.portal.biz.sysuser.SysUserVo">
SELECT DISTINCT user.staffSid, SELECT DISTINCT user.staffSid,
user.userType, user.userType,
user.accountType, user.accountType,
user.createTime, user.createTime,
user.isEnable, user.isEnable,
( (
SELECT GROUP_CONCAT(org.name) SELECT GROUP_CONCAT(org.name)
FROM sys_staff_org staffOrg FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid WHERE staffOrg.staffSid = user.staffSid
) departmentName, ) departmentName,
( (
SELECT GROUP_CONCAT(org.sid) SELECT GROUP_CONCAT(org.sid)
FROM sys_staff_org staffOrg FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid and staffOrg.manageType!=2 WHERE staffOrg.staffSid = user.staffSid and staffOrg.manageType!=2
) departmentSid, ) departmentSid,
( (
SELECT GROUP_CONCAT(post.name) SELECT
FROM sys_staff_post staffPost GROUP_CONCAT( org.sid )
LEFT JOIN sys_post post ON post.sid = staffPost.postSid FROM
WHERE staffPost.staffSid = user.staffSid sys_staff_org staffOrg
) postName, LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
( WHERE
SELECT GROUP_CONCAT(post.sid) staffOrg.staffSid = USER.staffSid
FROM sys_staff_post staffPost AND staffOrg.manageType != 2 AND org.orgSidPath like #{orgSid}
LEFT JOIN sys_post post ON post.sid = staffPost.postSid ) orgSid,
WHERE staffPost.staffSid = user.staffSid (
) postSid, SELECT GROUP_CONCAT(post.name)
user.userName, FROM sys_staff_post staffPost
user.sid sid, LEFT JOIN sys_post post ON post.sid = staffPost.postSid
staff.name, WHERE staffPost.staffSid = user.staffSid
( ) postName,
SELECT GROUP_CONCAT(role.name) (
FROM sys_user_role user_role SELECT GROUP_CONCAT(post.sid)
LEFT JOIN sys_role role ON role.sid = user_role.roleSid FROM sys_staff_post staffPost
WHERE user_role.userSid = USER.sid and user_role.orgSid=SUBSTRING_INDEX(c.orgSidPath,'/',1) LEFT JOIN sys_post post ON post.sid = staffPost.postSid
) roleName, WHERE staffPost.staffSid = user.staffSid
c.sid as orgSid ) postSid,
-- dict.dictValue userType, user.userName,
user.sid sid,
staff.name,
(
SELECT GROUP_CONCAT(role.name)
FROM sys_user_role user_role
LEFT JOIN sys_role role ON role.sid = user_role.roleSid
WHERE user_role.userSid = USER.sid and user_role.orgSid=SUBSTRING_INDEX(c.orgSidPath,'/',1)
) roleName
-- dict.dictValue userType,
FROM sys_user USER FROM sys_user USER
LEFT JOIN sys_user_role user_role ON user_role.userSid = USER.sid LEFT JOIN sys_user_role user_role ON user_role.userSid = USER.sid
LEFT JOIN sys_role role ON role.sid = user_role.roleSid LEFT JOIN sys_role role ON role.sid = user_role.roleSid
-- LEFT JOIN dict_common dict ON dict.dictKey = user.userType AND dict.dictType = 'userType' -- LEFT JOIN dict_common dict ON dict.dictKey = user.userType AND dict.dictType = 'userType'
LEFT JOIN sys_staffinfo staff ON staff.sid = user.staffSid LEFT JOIN sys_staffinfo staff ON staff.sid = user.staffSid
left join sys_staff_org a on a.staffSid=staff.sid left join sys_staff_org a on a.staffSid=staff.sid
left join sys_org_authorize b on b.orgSid=a.orgSid left join sys_org_authorize b on b.orgSid=a.orgSid
left join sys_organization c on c.sid=a.orgSid left join sys_organization c on c.sid=a.orgSid
<where> <where>
${ew.sqlSegment} ${ew.sqlSegment}
<if test="orgName != null and orgName != ''"> <if test="orgName != null and orgName != ''">
AND (SELECT GROUP_CONCAT(org.name) AND (SELECT GROUP_CONCAT(org.name)
FROM sys_staff_org staffOrg FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid) WHERE staffOrg.staffSid = user.staffSid)
LIKE concat('%', LIKE concat('%',
#{orgName} #{orgName}
, ,
'%' '%'
) )
</if> </if>
<if test="userName != null and userName != ''"> <if test="userName != null and userName != ''">
and and
@ -211,8 +220,7 @@
LEFT JOIN sys_staff_org sso ON su.staffSid = sso.staffSid LEFT JOIN sys_staff_org sso ON su.staffSid = sso.staffSid
LEFT JOIN sys_organization so ON sso.orgSid = so.sid LEFT JOIN sys_organization so ON sso.orgSid = so.sid
WHERE su.sid = #{userSid} WHERE su.sid = #{userSid}
ORDER BY sso.id ORDER BY sso.id LIMIT 1
LIMIT 1
</select> </select>
<!--根据用户的sid查询用户的组织信息:多个时取第一个--> <!--根据用户的sid查询用户的组织信息:多个时取第一个-->
<select id="selectUserInfoByUserSid" resultType="com.yxt.portal.biz.sysuser.SysUserInfoVo"> <select id="selectUserInfoByUserSid" resultType="com.yxt.portal.biz.sysuser.SysUserInfoVo">
@ -222,8 +230,7 @@
LEFT JOIN sys_staff_org sso ON su.staffSid = sso.staffSid LEFT JOIN sys_staff_org sso ON su.staffSid = sso.staffSid
LEFT JOIN sys_organization so ON sso.orgSid = so.sid LEFT JOIN sys_organization so ON sso.orgSid = so.sid
WHERE su.sid = #{userSid} WHERE su.sid = #{userSid}
ORDER BY sso.id ORDER BY sso.id LIMIT 1
LIMIT 1
</select> </select>
<select id="selectUserInfoByUserSidOne" resultType="com.yxt.portal.biz.sysuser.SysUserInfoVo"> <select id="selectUserInfoByUserSidOne" resultType="com.yxt.portal.biz.sysuser.SysUserInfoVo">
@ -234,8 +241,7 @@
LEFT JOIN sys_organization so ON sso.orgSid = so.sid LEFT JOIN sys_organization so ON sso.orgSid = so.sid
WHERE su.sid = #{userSid} WHERE su.sid = #{userSid}
and find_in_set(#{orgSid}, replace(sso.orgSidPath, '/', ',')) and find_in_set(#{orgSid}, replace(sso.orgSidPath, '/', ','))
ORDER BY sso.id ORDER BY sso.id LIMIT 1
LIMIT 1
</select> </select>
<!--根据员工sid更新用户表的工号以及手机号--> <!--根据员工sid更新用户表的工号以及手机号-->
<update id="updateByStaffSid"> <update id="updateByStaffSid">
@ -279,11 +285,11 @@
<select id="getUserByRole" resultType="com.yxt.portal.biz.sysuser.SysUserVo"> <select id="getUserByRole" resultType="com.yxt.portal.biz.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
left join sys_staff_org so on so.staffSid = si.sid left join sys_staff_org so on so.staffSid = si.sid
where sr.roleSid = #{roleSid} where sr.roleSid = #{roleSid}
and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ',')) and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ','))
</select> </select>
@ -321,7 +327,7 @@
<select id="fetchBySids" resultType="com.yxt.portal.biz.sysuser.SysUserVo"> <select id="fetchBySids" resultType="com.yxt.portal.biz.sysuser.SysUserVo">
select su.*, ss.name select su.*, ss.name
from sys_user su from sys_user su
left join sys_staffinfo ss on su.staffSid = ss.sid left join sys_staffinfo ss on su.staffSid = ss.sid
where su.sid in where su.sid in
<foreach collection="sids" index="index" item="item" open="(" separator="," close=")"> <foreach collection="sids" index="index" item="item" open="(" separator="," close=")">
#{item} #{item}
@ -358,13 +364,13 @@
<select id="getUserMessageByRole" resultType="com.yxt.portal.biz.sysuser.SysUserVo"> <select id="getUserMessageByRole" resultType="com.yxt.portal.biz.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
left join sys_staff_org so on so.staffSid = si.sid left join sys_staff_org so on so.staffSid = si.sid
where sr.roleSid = #{roleSid} where sr.roleSid = #{roleSid}
and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ',')) and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ','))
AND so.`manageType` = 3 AND so.`manageType` = 3
and su.sid in and su.sid in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")"> <foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
@ -373,13 +379,13 @@
<select id="getUserSidMessageByRole" resultType="java.lang.String"> <select id="getUserSidMessageByRole" resultType="java.lang.String">
select distinct su.sid select distinct su.sid
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
left join sys_staff_org so on so.staffSid = si.sid left join sys_staff_org so on so.staffSid = si.sid
where sr.roleSid = #{roleSid} where sr.roleSid = #{roleSid}
and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ',')) and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ','))
AND so.`manageType` = 3 AND so.`manageType` = 3
and su.sid in and su.sid in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")"> <foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
@ -405,7 +411,7 @@
<select id="selectUserByStaffSid" resultType="java.lang.String"> <select id="selectUserByStaffSid" resultType="java.lang.String">
select su.sid select su.sid
from sys_user su from sys_user su
left join sys_staffinfo si on su.staffSid = si.sid where su.staffSid in left join sys_staffinfo si on su.staffSid = si.sid where su.staffSid in
<foreach collection="list" index="index" item="item" open="(" separator="," close=")"> <foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
@ -416,6 +422,7 @@
select su.token select su.token
from sys_staffinfo si from sys_staffinfo si
left join sys_user su on su.staffSid = si.sid left join sys_user su on su.staffSid = si.sid
where si.personTypeKey = '01' and length(su.token)>0 where si.personTypeKey = '01'
and length(su.token) > 0
</select> </select>
</mapper> </mapper>

2
src/main/java/com/yxt/portal/biz/sysuser/SysUserService.java

@ -161,7 +161,7 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
userName = query.getUserName().trim(); userName = query.getUserName().trim();
} }
IPage<SysUserVo> pagging = baseMapper.selectPageVo(page, qw, deptName, userName); IPage<SysUserVo> pagging = baseMapper.selectPageVo(page, qw, deptName, userName,"%"+query.getOrgSid()+"%");
List<SysUserVo> records = pagging.getRecords(); List<SysUserVo> records = pagging.getRecords();
for (SysUserVo record : records) { for (SysUserVo record : records) {
SysOrganization d =sysOrganizationService.getOne(new QueryWrapper<SysOrganization>().eq("sid",record.getOrgSid())); SysOrganization d =sysOrganizationService.getOne(new QueryWrapper<SysOrganization>().eq("sid",record.getOrgSid()));

Loading…
Cancel
Save