班级教师设置优化,新增自动过滤

This commit is contained in:
zhanglipeng
2021-09-28 11:13:18 +08:00
parent 8dc6e2443f
commit fc207d9489
6 changed files with 191 additions and 6 deletions

View File

@ -187,16 +187,19 @@ public class SysUserController extends BaseController {
user.setUserId((long) 102);
user.setDeptId(deptId);
ajax.put("zbjs", userService.selectUserListByRoleId(user));
ajax.put("zbjsnotclass", userService.selectUserListByRoleIdNotZbClass(user));
//配班教师
user = new SysUser();
user.setUserId((long) 104);
user.setDeptId(deptId);
ajax.put("pbjs", userService.selectUserListByRoleId(user));
ajax.put("pbjsnotclass", userService.selectUserListByRoleIdNotPbClass(user));
//助理教师
user = new SysUser();
user.setUserId((long) 105);
user.setDeptId(deptId);
ajax.put("zljs", userService.selectUserListByRoleId(user));
ajax.put("zljsnotclass", userService.selectUserListByRoleIdNotZlClass(user));
return ajax;
}

View File

@ -69,6 +69,30 @@ public interface SysUserMapper
*/
public List<SysUser> selectUserListByRoleId(SysUser user);
/**
* 根据roleId查询用户列表
*
* @param sysUser 用户信息
* @return 用户信息集合信息
*/
public List<SysUser> selectUserListByRoleIdNotZbClass(SysUser user);
/**
* 根据roleId查询用户列表
*
* @param sysUser 用户信息
* @return 用户信息集合信息
*/
public List<SysUser> selectUserListByRoleIdNotPbClass(SysUser user);
/**
* 根据roleId查询用户列表
*
* @param sysUser 用户信息
* @return 用户信息集合信息
*/
public List<SysUser> selectUserListByRoleIdNotZlClass(SysUser user);
/**
* 根据roleId查询用户列表
*

View File

@ -67,6 +67,30 @@ public interface ISysUserService
*/
public List<SysUser> selectUserListByRoleId(SysUser user);
/**
* 根据roleId查询用户列表
*
* @param sysUser 用户信息
* @return 用户信息集合信息
*/
public List<SysUser> selectUserListByRoleIdNotZbClass(SysUser user);
/**
* 根据roleId查询用户列表
*
* @param sysUser 用户信息
* @return 用户信息集合信息
*/
public List<SysUser> selectUserListByRoleIdNotPbClass(SysUser user);
/**
* 根据roleId查询用户列表
*
* @param sysUser 用户信息
* @return 用户信息集合信息
*/
public List<SysUser> selectUserListByRoleIdNotZlClass(SysUser user);
/**
* 根据roleId查询用户列表
*

View File

@ -125,6 +125,39 @@ public class SysUserServiceImpl implements ISysUserService {
return userMapper.selectUserListByRoleId(sysUser);
}
/**
* 根据roleId查询用户列表
*
* @param sysUser 用户信息
* @return 用户信息集合信息
*/
@Override
public List<SysUser> selectUserListByRoleIdNotZbClass(SysUser user){
return userMapper.selectUserListByRoleIdNotZbClass(user);
}
/**
* 根据roleId查询用户列表
*
* @param sysUser 用户信息
* @return 用户信息集合信息
*/
@Override
public List<SysUser> selectUserListByRoleIdNotPbClass(SysUser user){
return userMapper.selectUserListByRoleIdNotPbClass(user);
}
/**
* 根据roleId查询用户列表
*
* @param sysUser 用户信息
* @return 用户信息集合信息
*/
@Override
public List<SysUser> selectUserListByRoleIdNotZlClass(SysUser user){
return userMapper.selectUserListByRoleIdNotZlClass(user);
}
/**
* 根据roleId查询用户列表
*

View File

@ -189,6 +189,60 @@
</select>
<select id="selectUserListByRoleIdNotZbClass" parameterType="SysUser" resultMap="SysUserResult">
select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.password, u.sex,
u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader
from sys_user u
left join sys_dept d on u.dept_id = d.dept_id
left join sys_user_role ur on u.user_id = ur.user_id
left join sys_role r on r.role_id = ur.role_id
where u.del_flag = '0'
<if test="userId != null and userId != ''">
and r.role_id = #{userId}
</if>
<if test="deptId != null and deptId != 0">
AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE FIND_IN_SET
(#{deptId},ancestors) ))
</if>
and u.user_id not in (select ifnull(zbjs,0) from by_class where dept_id=#{deptId} and isdel='0')
</select>
<select id="selectUserListByRoleIdNotPbClass" parameterType="SysUser" resultMap="SysUserResult">
select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.password, u.sex,
u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader
from sys_user u
left join sys_dept d on u.dept_id = d.dept_id
left join sys_user_role ur on u.user_id = ur.user_id
left join sys_role r on r.role_id = ur.role_id
where u.del_flag = '0'
<if test="userId != null and userId != ''">
and r.role_id = #{userId}
</if>
<if test="deptId != null and deptId != 0">
AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE FIND_IN_SET
(#{deptId},ancestors) ))
</if>
and u.user_id not in (select ifnull(pbjs,0) from by_class where dept_id=#{deptId} and isdel='0')
</select>
<select id="selectUserListByRoleIdNotZlClass" parameterType="SysUser" resultMap="SysUserResult">
select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.password, u.sex,
u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader
from sys_user u
left join sys_dept d on u.dept_id = d.dept_id
left join sys_user_role ur on u.user_id = ur.user_id
left join sys_role r on r.role_id = ur.role_id
where u.del_flag = '0'
<if test="userId != null and userId != ''">
and r.role_id = #{userId}
</if>
<if test="deptId != null and deptId != 0">
AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE FIND_IN_SET
(#{deptId},ancestors) ))
</if>
and u.user_id not in (select ifnull(zljs,0) from by_class where dept_id=#{deptId} and isdel='0')
</select>
<select id="selectUserOnlyByRoleId" parameterType="Long" resultMap="SysUserResult">
select * FROM sys_user where del_flag = '0' and user_id in (select user_id from sys_user_role where role_id = #{roleId});
</select>