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

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

@ -232,9 +232,9 @@
<el-input v-model="form.bjmc" placeholder="请输入班级名称" />
</el-form-item>
<el-form-item label="主班教师" prop="zbjs">
<el-select v-model="form.zbjs" placeholder="请选择主班教师">
<el-select v-model="form.zbjs" clearable placeholder="请选择主班教师">
<el-option
v-for="item in zbjsOptions"
v-for="item in zbjsOptionsnotclass"
:key="item.userId"
:label="item.nickName"
:value="item.userId"
@ -243,9 +243,9 @@
</el-select>
</el-form-item>
<el-form-item label="配班教师" prop="pbjs">
<el-select v-model="form.pbjs" placeholder="请选择配班教师">
<el-select v-model="form.pbjs" clearable placeholder="请选择配班教师">
<el-option
v-for="item in pbjsOptions"
v-for="item in pbjsOptionsnotclass"
:key="item.userId"
:label="item.nickName"
:value="item.userId"
@ -254,9 +254,9 @@
</el-select>
</el-form-item>
<el-form-item label="助理教师" prop="zljs">
<el-select v-model="form.zljs" placeholder="请选择助理教师">
<el-select v-model="form.zljs" clearable placeholder="请选择助理教师">
<el-option
v-for="item in zljsOptions"
v-for="item in zljsOptionsnotclass"
:key="item.userId"
:label="item.nickName"
:value="item.userId"
@ -313,6 +313,12 @@ export default {
pbjsOptions: [],
//
zljsOptions: [],
//
zbjsOptionsnotclass: [],
//
pbjsOptionsnotclass: [],
//
zljsOptionsnotclass: [],
//
queryParams: {
pageNum: 1,
@ -328,6 +334,18 @@ export default {
zljsxm: undefined,
createtime: undefined,
},
updateZbUserPush: {
nickName: null,
userId: null,
},
updatePbUserPush: {
nickName: null,
userId: null,
},
updateZlUserPush: {
nickName: null,
userId: null,
},
//
form: {},
//
@ -351,6 +369,9 @@ export default {
this.zbjsOptions = response.zbjs;
this.pbjsOptions = response.pbjs;
this.zljsOptions = response.zljs;
this.zbjsOptionsnotclass = response.zbjsnotclass;
this.pbjsOptionsnotclass = response.pbjsnotclass;
this.zljsOptionsnotclass = response.zljsnotclass;
});
},
methods: {
@ -409,10 +430,14 @@ export default {
this.open = true;
this.title = "添加班级信息";
//
//
getUsersByRoleId().then((response) => {
this.zbjsOptions = response.zbjs;
this.pbjsOptions = response.pbjs;
this.zljsOptions = response.zljs;
this.zbjsOptionsnotclass = response.zbjsnotclass;
this.pbjsOptionsnotclass = response.pbjsnotclass;
this.zljsOptionsnotclass = response.zljsnotclass;
});
},
/** 修改按钮操作 */
@ -423,12 +448,34 @@ export default {
this.form = response.data;
this.open = true;
this.title = "修改班级信息";
//console.log(response.data);
this.updateZbUserPush.nickName = response.data.zbjsxm;
this.updateZbUserPush.userId = response.data.zbjs;
this.updatePbUserPush.nickName = response.data.pbjsxm;
this.updatePbUserPush.userId = response.data.pbjs;
this.updateZlUserPush.nickName = response.data.zljsxm;
this.updateZlUserPush.userId = response.data.zljs;
//
//
getUsersByRoleId().then((response) => {
this.zbjsOptions = response.zbjs;
this.pbjsOptions = response.pbjs;
this.zljsOptions = response.zljs;
this.zbjsOptionsnotclass = response.zbjsnotclass;
if (this.updateZbUserPush.nickName != null) {
this.zbjsOptionsnotclass.push(this.updateZbUserPush);
}
this.pbjsOptionsnotclass = response.pbjsnotclass;
if (this.updatePbUserPush.nickName != null) {
this.pbjsOptionsnotclass.push(this.updatePbUserPush);
}
this.zljsOptionsnotclass = response.zljsnotclass;
if (this.updateZlUserPush.nickName != null) {
this.zljsOptionsnotclass.push(this.updateZlUserPush);
}
});
});
},

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>