diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java index 5d0a2f8..8450045 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java @@ -109,6 +109,7 @@ public class SysUserServiceImpl implements ISysUserService { String phone =user.getPhonenumber().replace("\\", "\\\\").replace("%", "\\%").replace("_", "\\_"); user.setPhonenumber(phone); } + user.setCompanyId(SecurityUtils.getLoginUser().getSysUser().getCompanyId()); List sysUsers = userMapper.selectUserList(user); return sysUsers; } diff --git a/bonus-modules/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml b/bonus-modules/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml index 0896365..86258d8 100644 --- a/bonus-modules/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/bonus-modules/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -130,6 +130,9 @@ AND date_format(u.create_time,'%y%m%d') <= date_format(#{params.endTime},'%y%m%d') + + AND (find_in_set(#{companyId}, ancestors) or u.dept_id = #{companyId}) + AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{deptId}, ancestors) ))