|
@@ -8,6 +8,7 @@ import cn.iocoder.yudao.framework.security.core.LoginUser;
|
|
|
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
|
|
|
import cn.iocoder.yudao.module.system.controller.admin.user.vo.user.UserPageReqVO;
|
|
|
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
|
|
|
+import cn.iocoder.yudao.module.system.service.permission.PermissionService;
|
|
|
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
|
|
|
import com.baomidou.mybatisplus.annotation.DbType;
|
|
|
import com.baomidou.mybatisplus.extension.toolkit.Db;
|
|
@@ -18,6 +19,7 @@ import org.apache.ibatis.annotations.Mapper;
|
|
|
import org.apache.ibatis.annotations.Param;
|
|
|
import org.apache.ibatis.annotations.Select;
|
|
|
|
|
|
+import javax.annotation.Resource;
|
|
|
import java.util.Collection;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
@@ -26,6 +28,7 @@ import java.util.Objects;
|
|
|
@Mapper
|
|
|
public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
|
|
|
|
|
|
+
|
|
|
default AdminUserDO selectByUsername(String username) {
|
|
|
return selectOne(AdminUserDO::getUsername, username);
|
|
|
}
|
|
@@ -49,7 +52,7 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
|
|
|
.orderByDesc(AdminUserDO::getId));
|
|
|
}
|
|
|
|
|
|
-// 查所有老师管理查询 参数1. reqVo模糊查询 2.过滤部门及子部门
|
|
|
+// 查所有老师管理查询
|
|
|
default PageResult<AdminUserDO> selectPage0(UserPageReqVO reqVO, Collection<Long> deptIds) {
|
|
|
return selectPage(reqVO, new LambdaQueryWrapperX<AdminUserDO>()
|
|
|
.likeIfPresent(AdminUserDO::getUsername, reqVO.getUsername())
|
|
@@ -63,25 +66,30 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
|
|
|
.orderByDesc(AdminUserDO::getId));
|
|
|
}
|
|
|
|
|
|
- // lsq 查所有学生
|
|
|
- default PageResult<AdminUserDO> selectPage1(UserPageReqVO reqVO, Collection<Long> deptIds) {
|
|
|
- // 查询用户数据
|
|
|
- PageResult<AdminUserDO> result = selectPage(reqVO, new LambdaQueryWrapperX<AdminUserDO>()
|
|
|
- .likeIfPresent(AdminUserDO::getUsername, reqVO.getUsername())
|
|
|
- .likeIfPresent(AdminUserDO::getMobile, reqVO.getMobile())
|
|
|
- .eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
|
|
|
- .betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
|
|
|
- .inIfPresent(AdminUserDO::getDeptId, deptIds)
|
|
|
- .inSql(AdminUserDO::getId, "SELECT id FROM system_users WHERE user_type IN (1,2)")
|
|
|
- .orderByDesc(AdminUserDO::getId));
|
|
|
-
|
|
|
- // 遍历结果集,设置 photoIsExist
|
|
|
- for (AdminUserDO user : result.getList()) {
|
|
|
- user.setPhotoIsExist(Long.valueOf(user.getPhotoUrl() != null && !user.getPhotoUrl().isEmpty() ? 1 : 0));
|
|
|
- }
|
|
|
-
|
|
|
- return result;
|
|
|
+ // 会根据登录 查所有学生
|
|
|
+ default PageResult<AdminUserDO> selectPage1(UserPageReqVO reqVO, Collection<Long> deptIds) {
|
|
|
+ // 查询用户数据
|
|
|
+ Long loginId =SecurityFrameworkUtils.getLoginUserId();
|
|
|
+ List<Long> roleId = selectUserRoleId(loginId);
|
|
|
+ LambdaQueryWrapperX<AdminUserDO> queryWrapperX =new LambdaQueryWrapperX<AdminUserDO>();
|
|
|
+ queryWrapperX.likeIfPresent(AdminUserDO::getUsername, reqVO.getUsername())
|
|
|
+ .likeIfPresent(AdminUserDO::getMobile, reqVO.getMobile())
|
|
|
+ .eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
|
|
|
+ .betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
|
|
|
+ .inIfPresent(AdminUserDO::getDeptId, deptIds)
|
|
|
+ .inSql(AdminUserDO::getId, "SELECT id FROM system_users WHERE user_type IN (1,2)")
|
|
|
+ .orderByDesc(AdminUserDO::getId);
|
|
|
+
|
|
|
+ if (roleId.contains(113L)){//如果是教师,只找导师是登录的
|
|
|
+ queryWrapperX.eqIfPresent(AdminUserDO::getSupervisorId,loginId);
|
|
|
+ }
|
|
|
+ PageResult<AdminUserDO> result = selectPage(reqVO,queryWrapperX);
|
|
|
+ // 遍历结果集,设置 photoIsExist
|
|
|
+ for (AdminUserDO user : result.getList()) {
|
|
|
+ user.setPhotoIsExist(Long.valueOf(user.getPhotoUrl() != null && !user.getPhotoUrl().isEmpty() ? 1 : 0));
|
|
|
}
|
|
|
+ return result;
|
|
|
+ }
|
|
|
|
|
|
// lsq 查工作间下的老师 3老师
|
|
|
default PageResult<AdminUserDO> selectDeptTeacherPage(UserPageReqVO reqVO, Collection<Long> deptIds) {
|
|
@@ -125,40 +133,27 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
-
|
|
|
- // lsq 查所有毕业学生
|
|
|
+ // lsq 根据登录人员查所有毕业学生
|
|
|
default PageResult<AdminUserDO> selectGraduateStudentPage(UserPageReqVO reqVO, Collection<Long> deptIds) {
|
|
|
- return selectPage(reqVO, new LambdaQueryWrapperX<AdminUserDO>()
|
|
|
- //找毕业生1.本校,2毕业,3老师
|
|
|
- .eqIfPresent(AdminUserDO::getUserType,"2")
|
|
|
- //.likeIfPresent(AdminUserDO::getUsername, reqVO.getUsername())
|
|
|
- .likeIfPresent(AdminUserDO::getMobile, reqVO.getMobile())
|
|
|
- .eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
|
|
|
- .betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
|
|
|
- .inIfPresent(AdminUserDO::getDeptId, deptIds)
|
|
|
- //新加的查询条件
|
|
|
- .eqIfPresent(AdminUserDO::getGrade, reqVO.getGrade())
|
|
|
- .likeIfPresent(AdminUserDO::getNickname, reqVO.getNickname())//
|
|
|
- .orderByDesc(AdminUserDO::getId));
|
|
|
- }
|
|
|
-
|
|
|
- // lsq 查所有毕业学生
|
|
|
- default PageResult<AdminUserDO> selectGraduateStudentTPage(UserPageReqVO reqVO, Collection<Long> deptIds) {
|
|
|
Long loginId =SecurityFrameworkUtils.getLoginUserId();
|
|
|
- return selectPage(reqVO, new LambdaQueryWrapperX<AdminUserDO>()
|
|
|
- //找毕业生1.本校,2毕业,3老师
|
|
|
- .eqIfPresent(AdminUserDO::getUserType,"2")
|
|
|
- //找到登录的导师
|
|
|
- .eqIfPresent(AdminUserDO::getSupervisorId,loginId)
|
|
|
+ List<Long> roleId = selectUserRoleId(loginId);
|
|
|
+ LambdaQueryWrapperX<AdminUserDO> queryWrapper = new LambdaQueryWrapperX<AdminUserDO>()
|
|
|
+ // 找毕业生: 1. 本校, 2. 毕业生, 3. 老师
|
|
|
+ .eqIfPresent(AdminUserDO::getUserType, "2")
|
|
|
.likeIfPresent(AdminUserDO::getMobile, reqVO.getMobile())
|
|
|
.eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
|
|
|
.betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
|
|
|
.inIfPresent(AdminUserDO::getDeptId, deptIds)
|
|
|
.eqIfPresent(AdminUserDO::getGrade, reqVO.getGrade())
|
|
|
- .likeIfPresent(AdminUserDO::getNickname, reqVO.getNickname())//
|
|
|
- .orderByDesc(AdminUserDO::getId));
|
|
|
+ .likeIfPresent(AdminUserDO::getNickname, reqVO.getNickname())
|
|
|
+ .orderByDesc(AdminUserDO::getId);
|
|
|
+ if (roleId.contains(113L)){//如果是教师
|
|
|
+ queryWrapper.eqIfPresent(AdminUserDO::getSupervisorId,loginId);
|
|
|
+ }
|
|
|
+ return selectPage(reqVO,queryWrapper);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
//上面是分页
|
|
|
// lsq 查所有导师列表
|
|
|
default List<AdminUserDO> selectSupervisor() {
|
|
@@ -188,6 +183,10 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
|
|
|
return selectList(AdminUserDO::getDeptId, deptIds);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ @Select("SELECT role_id FROM system_user_role WHERE user_id = #{userId}")
|
|
|
+ List<Long> selectUserRoleId(Long userId);
|
|
|
+
|
|
|
//通过学号查找用户
|
|
|
@Select("SELECT * FROM system_users WHERE user_number = #{userNumber}")
|
|
|
AdminUserDO findUserByUserNumber(String userNumber);
|