修改外校、本校老师和研究生管理的list接口,实现学科过滤查询功能

This commit is contained in:
YuNan 2025-02-23 12:39:42 +08:00
parent ad2701bfe1
commit 57937bf704
4 changed files with 44 additions and 21 deletions

View File

@ -29,7 +29,9 @@ public class H5WaiTeacher implements Serializable {
*/
// 不需要导出这个字段
private String openId;
// 专业
/**
* 专业id,0表示未选择,1为语文,4为地理,7为历史,8为政治
*/
private Integer majorId;
/**

View File

@ -51,6 +51,7 @@ public class H5LocalTeacherServiceImpl extends ServiceImpl<H5LocalTeacherMapper,
String sortOrder = (String) params.get("sort");
// 排序字段
String sortField = (String) params.get("prop");
String arr = (String) params.get("arr");
Set<String> userPermissions = shiroServiceImpl.getUserPermissions(PUserId);
boolean containsy = userPermissions.contains("wai:user:listy");
boolean containsd = userPermissions.contains("wai:user:listd");
@ -58,19 +59,19 @@ public class H5LocalTeacherServiceImpl extends ServiceImpl<H5LocalTeacherMapper,
boolean containsz = userPermissions.contains("wai:user:listz");
// 如果是管理员看到所有人
if (userPermissions.size()>30){
return queryPageUser(params, userName,0,sortOrder,sortField);
return queryPageUser(params, userName,0,sortOrder,sortField,arr);
}else if(containsy){
// 查看语文学科人
return queryPageUser(params, userName,1,sortOrder,sortField);
return queryPageUser(params, userName,1,sortOrder,sortField,arr);
// 地理学科
}else if (containsd){
return queryPageUser(params, userName,4,sortOrder,sortField);
return queryPageUser(params, userName,4,sortOrder,sortField,arr);
// 历史
}else if (containsl){
return queryPageUser(params, userName,7,sortOrder,sortField);
return queryPageUser(params, userName,7,sortOrder,sortField,arr);
// 政治
}else if (containsz){
return queryPageUser(params, userName,8,sortOrder,sortField);
return queryPageUser(params, userName,8,sortOrder,sortField,arr);
}
return null;
@ -126,9 +127,10 @@ public class H5LocalTeacherServiceImpl extends ServiceImpl<H5LocalTeacherMapper,
// return new PageUtils(page);
// }
public PageUtils queryPageUser(Map<String, Object> params, String userName, Integer majorId, String sortOrder, String sortField) {
public PageUtils queryPageUser(Map<String, Object> params, String userName, Integer majorId, String sortOrder, String sortField, String arr) {
QueryWrapper<H5LocalTeacher> queryWrapper = new QueryWrapper<>();
// 按照,来分隔
String[] list = arr.split(",");
if (majorId == 0) {
if (StringUtils.isNotBlank(userName)) {
queryWrapper.like("user_name", userName);
@ -144,7 +146,15 @@ public class H5LocalTeacherServiceImpl extends ServiceImpl<H5LocalTeacherMapper,
queryWrapper.like("user_name", userName);
}
}
//todo 这是啥
// 判断数组list不等于null并且第一个元素非空串
if (list.length > 0 && list[0] != null && !list[0].equals("")) {
// params.put("limit", "400");
}
for (String s : list) {
queryWrapper.like("major_id", s);
}
// 字段映射
String s = H5Util.mapSortField(sortField);

View File

@ -50,26 +50,27 @@ public class H5StudentServiceImpl extends ServiceImpl<H5StudentMapper, H5Student
String sortOrder = (String) params.get("sort");
// 排序字段
String sortField = (String) params.get("prop");
String arr = (String) params.get("arr");
Set<String> userPermissions = shiroServiceImpl.getUserPermissions(PUserId);
boolean containsy = userPermissions.contains("wai:user:listy");
boolean containsd = userPermissions.contains("wai:user:listd");
boolean containsl = userPermissions.contains("wai:user:listl");
boolean containsz = userPermissions.contains("wai:user:listz");
// 如果是管理源看到所有人
if (userPermissions.size()>30){
return queryPageUser(params, userName,0,sortOrder,sortField);
}else if(containsy){
if (userPermissions.size() > 30) {
return queryPageUser(params, userName, 0, sortOrder, sortField, arr);
} else if (containsy) {
// 查看语文学科人
return queryPageUser(params, userName,1,sortOrder,sortField);
return queryPageUser(params, userName, 1, sortOrder, sortField, arr);
// 地理学科
}else if (containsd){
return queryPageUser(params, userName,4,sortOrder,sortField);
} else if (containsd) {
return queryPageUser(params, userName, 4, sortOrder, sortField, arr);
// 历史
}else if (containsl){
return queryPageUser(params, userName,7,sortOrder,sortField);
} else if (containsl) {
return queryPageUser(params, userName, 7, sortOrder, sortField, arr);
// 政治
}else if (containsz){
return queryPageUser(params, userName,8,sortOrder,sortField);
} else if (containsz) {
return queryPageUser(params, userName, 8, sortOrder, sortField, arr);
}
return null;
@ -104,9 +105,10 @@ public class H5StudentServiceImpl extends ServiceImpl<H5StudentMapper, H5Student
// return new PageUtils(page);
// }
public PageUtils queryPageUser(Map<String, Object> params, String userName, Integer majorId, String sortOrder, String sortField) {
public PageUtils queryPageUser(Map<String, Object> params, String userName, Integer majorId, String sortOrder, String sortField, String arr) {
QueryWrapper<H5Student> queryWrapper = new QueryWrapper<>();
// 按照,来分隔
String[] list = arr.split(",");
// 添加条件查询
if (majorId != null && majorId != 0) {
queryWrapper.eq("major_id", majorId);
@ -119,7 +121,15 @@ public class H5StudentServiceImpl extends ServiceImpl<H5StudentMapper, H5Student
if (major != null) {
queryWrapper.like("major_id", major);
}
//todo 这是啥
// 判断数组list不等于null并且第一个元素非空串
if (list.length > 0 && list[0] != null && !list[0].equals("")) {
// params.put("limit", "5");
}
for (String s : list) {
queryWrapper.like("major_id", s);
}
// 字段映射
String s = H5Util.mapSortField(sortField);

View File

@ -237,9 +237,10 @@ public class H5WaiTeacherServiceImpl extends ServiceImpl<H5WaiTeacherMapper, H5W
queryWrapper.like("user_name", userName);
}
}
//todo 这是啥
// 判断数组list不等于null并且第一个元素非空串
if (list.length > 0 && list[0] != null && !list[0].equals("")) {
params.put("limit", "400");
// params.put("limit", "400");
}
for (String s : list) {