|
|
@ -5,59 +5,59 @@ |
|
|
|
<!-- ${ew.customSqlSegment} --> |
|
|
|
<select id="selectPageVo" resultType="com.yxt.anrui.portal.api.sysuser.SysUserVo"> |
|
|
|
SELECT DISTINCT user.staffSid, |
|
|
|
user.isEnable, |
|
|
|
( |
|
|
|
SELECT GROUP_CONCAT(org.name) |
|
|
|
FROM sys_staff_org staffOrg |
|
|
|
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid |
|
|
|
WHERE staffOrg.staffSid = user.staffSid |
|
|
|
) departmentName, |
|
|
|
( |
|
|
|
SELECT GROUP_CONCAT(org.sid) |
|
|
|
FROM sys_staff_org staffOrg |
|
|
|
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid |
|
|
|
WHERE staffOrg.staffSid = user.staffSid |
|
|
|
) departmentSid, |
|
|
|
( |
|
|
|
SELECT GROUP_CONCAT(post.name) |
|
|
|
FROM sys_staff_post staffPost |
|
|
|
LEFT JOIN sys_post post ON post.sid = staffPost.postSid |
|
|
|
WHERE staffPost.staffSid = user.staffSid |
|
|
|
) postName, |
|
|
|
( |
|
|
|
SELECT GROUP_CONCAT(post.sid) |
|
|
|
FROM sys_staff_post staffPost |
|
|
|
LEFT JOIN sys_post post ON post.sid = staffPost.postSid |
|
|
|
WHERE staffPost.staffSid = user.staffSid |
|
|
|
) postSid, |
|
|
|
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 |
|
|
|
) roleName, |
|
|
|
dict.dictValue userType, |
|
|
|
user.userType userTypeKey |
|
|
|
user.isEnable, |
|
|
|
( |
|
|
|
SELECT GROUP_CONCAT(org.name) |
|
|
|
FROM sys_staff_org staffOrg |
|
|
|
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid |
|
|
|
WHERE staffOrg.staffSid = user.staffSid |
|
|
|
) departmentName, |
|
|
|
( |
|
|
|
SELECT GROUP_CONCAT(org.sid) |
|
|
|
FROM sys_staff_org staffOrg |
|
|
|
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid |
|
|
|
WHERE staffOrg.staffSid = user.staffSid |
|
|
|
) departmentSid, |
|
|
|
( |
|
|
|
SELECT GROUP_CONCAT(post.name) |
|
|
|
FROM sys_staff_post staffPost |
|
|
|
LEFT JOIN sys_post post ON post.sid = staffPost.postSid |
|
|
|
WHERE staffPost.staffSid = user.staffSid |
|
|
|
) postName, |
|
|
|
( |
|
|
|
SELECT GROUP_CONCAT(post.sid) |
|
|
|
FROM sys_staff_post staffPost |
|
|
|
LEFT JOIN sys_post post ON post.sid = staffPost.postSid |
|
|
|
WHERE staffPost.staffSid = user.staffSid |
|
|
|
) postSid, |
|
|
|
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 |
|
|
|
) roleName, |
|
|
|
dict.dictValue userType, |
|
|
|
user.userType userTypeKey |
|
|
|
FROM sys_user USER |
|
|
|
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 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_user_role user_role ON user_role.userSid = USER.sid |
|
|
|
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 sys_staffinfo staff ON staff.sid = user.staffSid |
|
|
|
<where> |
|
|
|
${ew.sqlSegment} |
|
|
|
<if test="orgName != null and orgName != ''"> |
|
|
|
AND (SELECT GROUP_CONCAT(org.name) |
|
|
|
FROM sys_staff_org staffOrg |
|
|
|
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid |
|
|
|
WHERE staffOrg.staffSid = user.staffSid) |
|
|
|
LIKE concat('%', |
|
|
|
#{orgName} |
|
|
|
, |
|
|
|
'%' |
|
|
|
) |
|
|
|
FROM sys_staff_org staffOrg |
|
|
|
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid |
|
|
|
WHERE staffOrg.staffSid = user.staffSid) |
|
|
|
LIKE concat('%', |
|
|
|
#{orgName} |
|
|
|
, |
|
|
|
'%' |
|
|
|
) |
|
|
|
</if> |
|
|
|
<if test="userName != null and userName != ''"> |
|
|
|
and |
|
|
@ -113,7 +113,7 @@ |
|
|
|
<select id="selectByUserName" resultType="com.yxt.anrui.portal.api.sysuser.SysUser"> |
|
|
|
SELECT 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} |
|
|
|
and su.isDelete = 0 |
|
|
|
and su.userType = 1 |
|
|
@ -122,18 +122,20 @@ |
|
|
|
<select id="selectByUserNameApp" resultType="com.yxt.anrui.portal.api.sysuser.SysUser"> |
|
|
|
SELECT 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} |
|
|
|
and su.isDelete = 0 |
|
|
|
and su.userType = 1 and si.personTypeKey != '01' |
|
|
|
and su.userType = 1 |
|
|
|
and si.personTypeKey != '01' |
|
|
|
</select> |
|
|
|
<select id="selectByAppId" resultType="com.yxt.anrui.portal.api.sysuser.SysUser"> |
|
|
|
SELECT 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.appId = #{appId} |
|
|
|
and su.isDelete = 0 |
|
|
|
and su.userType = 1 and si.personTypeKey != '01' |
|
|
|
and su.userType = 1 |
|
|
|
and si.personTypeKey != '01' |
|
|
|
</select> |
|
|
|
<select id="fetchByUserName" resultType="com.yxt.anrui.portal.api.sysuser.SysUser"> |
|
|
|
SELECT * |
|
|
@ -191,7 +193,7 @@ |
|
|
|
<select id="selectByStaffsid" resultType="com.yxt.anrui.portal.api.sysuser.SysUserVo"> |
|
|
|
SELECT * |
|
|
|
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.staffSid = #{staffSid} |
|
|
|
AND su.isDelete = 0 |
|
|
|
</select> |
|
|
@ -199,32 +201,35 @@ |
|
|
|
<select id="getUserOrgInfoByUserSid" resultType="com.yxt.anrui.portal.api.sysuser.app.AppUserOrgInfoVo"> |
|
|
|
SELECT su.staffSid, ss.name staffName, sso.orgSid, sso.orgName, sso.orgSidPath, so.orgCode |
|
|
|
FROM sys_user su |
|
|
|
LEFT JOIN sys_staffinfo ss ON su.staffSid = ss.sid |
|
|
|
LEFT JOIN sys_staff_org sso ON su.staffSid = sso.staffSid |
|
|
|
LEFT JOIN sys_organization so ON sso.orgSid = so.sid |
|
|
|
LEFT JOIN sys_staffinfo ss ON su.staffSid = ss.sid |
|
|
|
LEFT JOIN sys_staff_org sso ON su.staffSid = sso.staffSid |
|
|
|
LEFT JOIN sys_organization so ON sso.orgSid = so.sid |
|
|
|
WHERE su.sid = #{userSid} |
|
|
|
ORDER BY sso.id LIMIT 1 |
|
|
|
ORDER BY sso.id |
|
|
|
LIMIT 1 |
|
|
|
</select> |
|
|
|
<!--根据用户的sid查询用户的组织信息:多个时取第一个--> |
|
|
|
<select id="selectUserInfoByUserSid" resultType="com.yxt.anrui.portal.api.sysuser.SysUserInfoVo"> |
|
|
|
SELECT su.staffSid, si.name staffName, sso.orgSid, sso.orgName, so.orgCode,su.mobile |
|
|
|
SELECT su.staffSid, si.name staffName, sso.orgSid, sso.orgName, so.orgCode, su.mobile |
|
|
|
FROM sys_user su |
|
|
|
LEFT JOIN sys_staffinfo si ON su.staffSid = si.sid |
|
|
|
LEFT JOIN sys_staff_org sso ON su.staffSid = sso.staffSid |
|
|
|
LEFT JOIN sys_organization so ON sso.orgSid = so.sid |
|
|
|
LEFT JOIN sys_staffinfo si ON su.staffSid = si.sid |
|
|
|
LEFT JOIN sys_staff_org sso ON su.staffSid = sso.staffSid |
|
|
|
LEFT JOIN sys_organization so ON sso.orgSid = so.sid |
|
|
|
WHERE su.sid = #{userSid} |
|
|
|
ORDER BY sso.id LIMIT 1 |
|
|
|
ORDER BY sso.id |
|
|
|
LIMIT 1 |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="selectUserInfoByUserSidOne" resultType="com.yxt.anrui.portal.api.sysuser.SysUserInfoVo"> |
|
|
|
SELECT su.staffSid, si.name staffName, sso.orgSid, sso.orgName, so.orgCode |
|
|
|
FROM sys_user su |
|
|
|
LEFT JOIN sys_staffinfo si ON su.staffSid = si.sid |
|
|
|
LEFT JOIN sys_staff_org sso ON su.staffSid = sso.staffSid |
|
|
|
LEFT JOIN sys_organization so ON sso.orgSid = so.sid |
|
|
|
LEFT JOIN sys_staffinfo si ON su.staffSid = si.sid |
|
|
|
LEFT JOIN sys_staff_org sso ON su.staffSid = sso.staffSid |
|
|
|
LEFT JOIN sys_organization so ON sso.orgSid = so.sid |
|
|
|
WHERE su.sid = #{userSid} |
|
|
|
and find_in_set(#{orgSid}, replace(sso.orgSidPath, '/', ',')) |
|
|
|
ORDER BY sso.id LIMIT 1 |
|
|
|
ORDER BY sso.id |
|
|
|
LIMIT 1 |
|
|
|
</select> |
|
|
|
<!--根据员工sid更新用户表的工号以及手机号--> |
|
|
|
<update id="updateByStaffSid"> |
|
|
@ -243,7 +248,7 @@ |
|
|
|
<select id="selectByMobile" resultType="com.yxt.anrui.portal.api.sysuser.SysUser"> |
|
|
|
select 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} |
|
|
|
and su.isDelete = 0 |
|
|
|
and su.userType = 1 |
|
|
@ -259,33 +264,33 @@ |
|
|
|
<select id="getUsersByRoleSid" resultType="com.yxt.anrui.portal.api.sysuser.SysUserVo"> |
|
|
|
SELECT su.sid, ss.name, sso.orgNamePath departmentName |
|
|
|
FROM `sys_user` su |
|
|
|
LEFT JOIN `sys_staffinfo` ss ON su.staffSid = ss.sid |
|
|
|
LEFT JOIN `sys_staff_org` sso ON sso.staffSid = ss.sid |
|
|
|
LEFT JOIN `sys_user_role` sur ON sur.userSid = su.sid |
|
|
|
LEFT JOIN `sys_role` sr ON sr.sid = sur.roleSid |
|
|
|
LEFT JOIN `sys_staffinfo` ss ON su.staffSid = ss.sid |
|
|
|
LEFT JOIN `sys_staff_org` sso ON sso.staffSid = ss.sid |
|
|
|
LEFT JOIN `sys_user_role` sur ON sur.userSid = su.sid |
|
|
|
LEFT JOIN `sys_role` sr ON sr.sid = sur.roleSid |
|
|
|
WHERE sr.sid = #{roleSid} |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="getUserByRole" 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 |
|
|
|
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 find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ',')) |
|
|
|
and si.personTypeKey != '01' |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="getUserSidByRole" resultType="java.lang.String"> |
|
|
|
select distinct su.sid |
|
|
|
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 |
|
|
|
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 find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ',')) |
|
|
|
and si.personTypeKey != '01' |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="getUserByOrgSid" resultType="java.util.Map"> |
|
|
@ -294,14 +299,14 @@ |
|
|
|
sso.orgName, |
|
|
|
sp.name as postName |
|
|
|
FROM sys_user su |
|
|
|
LEFT JOIN sys_staffinfo st |
|
|
|
ON su.`staffSid` = st.`sid` |
|
|
|
LEFT JOIN sys_staff_org sso |
|
|
|
ON st.`sid` = sso.`staffSid` |
|
|
|
LEFT JOIN sys_staff_post ssp |
|
|
|
ON st.sid = ssp.`staffSid` |
|
|
|
LEFT JOIN sys_post sp |
|
|
|
ON ssp.`postSid` = sp.`sid` |
|
|
|
LEFT JOIN sys_staffinfo st |
|
|
|
ON su.`staffSid` = st.`sid` |
|
|
|
LEFT JOIN sys_staff_org sso |
|
|
|
ON st.`sid` = sso.`staffSid` |
|
|
|
LEFT JOIN sys_staff_post ssp |
|
|
|
ON st.sid = ssp.`staffSid` |
|
|
|
LEFT JOIN sys_post sp |
|
|
|
ON ssp.`postSid` = sp.`sid` |
|
|
|
WHERE su.sid != #{userSid} |
|
|
|
AND sso.`orgSidPath` LIKE concat('%' |
|
|
|
, #{orgSid} |
|
|
@ -311,7 +316,7 @@ |
|
|
|
<select id="fetchBySids" resultType="com.yxt.anrui.portal.api.sysuser.SysUserVo"> |
|
|
|
select su.*, ss.name |
|
|
|
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 |
|
|
|
<foreach collection="sids" index="index" item="item" open="(" separator="," close=")"> |
|
|
|
#{item} |
|
|
@ -321,8 +326,8 @@ |
|
|
|
<select id="getUserByRoleSid" resultType="com.yxt.anrui.portal.api.sysuser.SysUserVo"> |
|
|
|
select si.name, su.sid, su.staffSid |
|
|
|
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_user su on sr.userSid = su.sid |
|
|
|
left join sys_staffinfo si on si.sid = su.staffSid |
|
|
|
where sr.roleSid = #{roleSid} |
|
|
|
and si.personTypeKey != '01' |
|
|
|
</select> |
|
|
@ -347,14 +352,16 @@ |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="getUserMessageByRole" 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 |
|
|
|
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 |
|
|
|
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 |
|
|
|
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> |
|
|
@ -363,12 +370,14 @@ |
|
|
|
<select id="getUserSidMessageByRole" resultType="java.lang.String"> |
|
|
|
select distinct su.sid |
|
|
|
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 |
|
|
|
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 |
|
|
|
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> |
|
|
@ -385,17 +394,26 @@ |
|
|
|
<select id="fetchByUserNameAndUserPhone" resultType="java.lang.String"> |
|
|
|
SELECT su.`sid` |
|
|
|
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 ss.name = #{userName} |
|
|
|
AND su.mobile = #{userPhone} |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="selectUserByStaffSid" resultType="java.lang.String"> |
|
|
|
select su.sid from sys_user su left join sys_staffinfo si on su.staffSid = si.sid where su.staffSid in |
|
|
|
select su.sid |
|
|
|
from sys_user su |
|
|
|
left join sys_staffinfo si on su.staffSid = si.sid where su.staffSid in |
|
|
|
<foreach collection="list" index="index" item="item" open="(" separator="," close=")"> |
|
|
|
#{item} |
|
|
|
</foreach> |
|
|
|
and si.personTypeKey != '01' |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="selectTokenList" resultType="java.lang.String"> |
|
|
|
select su.token |
|
|
|
from sys_staffinfo si |
|
|
|
left join sys_user su on su.staffSid = si.sid |
|
|
|
where si.personTypeKey = '01' |
|
|
|
</select> |
|
|
|
</mapper> |