Crazy 8 달 전
부모
커밋
bb7b0f645b

+ 73 - 17
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/UserController.java

@@ -77,6 +77,38 @@ public class UserController {
         return success(id);
     }
 
+//    @PostMapping("/createStudent")
+//    @Operation(summary = "新增学生")
+//    @PreAuthorize("@ss.hasPermission('system:user:createStudent')")
+//    public CommonResult<Long> createStudent(@Valid @RequestBody UserSaveReqVO reqVO) {
+//        reqVO.setUserType("1");
+//        Long id = userService.createUser(reqVO);
+//        Set<Long> roleId = new HashSet<>();
+//        if (reqVO.getUserType()!=null){//添加权限
+//            if (reqVO.getUserType().equals("1") ||reqVO.getUserType().equals("2")) {
+//                roleId.add(112L);//学生
+//            }
+//        }
+//        permissionService.assignUserRole(id,roleId);
+//        return success(id);
+//    }
+//
+//    @PostMapping("/createTeacher")
+//    @Operation(summary = "新增导师")
+//    @PreAuthorize("@ss.hasPermission('system:user:createTeacher')")
+//    public CommonResult<Long> createTeacher(@Valid @RequestBody UserSaveReqVO reqVO) {
+//        reqVO.setUserType("2");
+//        Long id = userService.createUser(reqVO);
+//        Set<Long> roleId = new HashSet<>();
+//        if (reqVO.getUserType()!=null){//添加权限
+//            if (reqVO.getUserType().equals("3")) {
+//                roleId.add(113L);//学生
+//            }
+//        }
+//        permissionService.assignUserRole(id,roleId);
+//        return success(id);
+//    }
+
 
     @PutMapping("update")
     @Operation(summary = "修改用户")
@@ -173,22 +205,22 @@ public class UserController {
                 pageResult.getTotal()));
     }
 
-//    @GetMapping("/SchoolStudentPage")
-//    @Operation(summary = "获得在校学生分页列表")
-//    @PreAuthorize("@ss.hasPermission('system:user:SchoolStudentList')")
-//    public CommonResult<PageResult<UserRespVO>> getSchoolStudentPage(@Valid UserPageReqVO pageReqVO) {
-//        // 获得用户分页列表
-//        pageReqVO.setUserType("1");
-//        PageResult<AdminUserDO> pageResult = userService.getUserPage1(pageReqVO);
-//        if (CollUtil.isEmpty(pageResult.getList())) {
-//            return success(new PageResult<>(pageResult.getTotal()));
-//        }
-//        // 拼接数据
-//        Map<Long, DeptDO> deptMap = deptService.getDeptMap(
-//                convertList(pageResult.getList(), AdminUserDO::getDeptId));
-//        return success(new PageResult<>(UserConvert.INSTANCE.convertList(pageResult.getList(), deptMap),
-//                pageResult.getTotal()));
-//    }
+    @GetMapping("/SchoolStudentPage")
+    @Operation(summary = "获得在校学生分页列表")
+    @PreAuthorize("@ss.hasPermission('system:user:SchoolStudentList')")
+    public CommonResult<PageResult<UserRespVO>> getSchoolStudentPage(@Valid UserPageReqVO pageReqVO) {
+        // 获得用户分页列表
+        pageReqVO.setUserType("1");
+        PageResult<AdminUserDO> pageResult = userService.getUserPage1(pageReqVO);
+        if (CollUtil.isEmpty(pageResult.getList())) {
+            return success(new PageResult<>(pageResult.getTotal()));
+        }
+        // 拼接数据
+        Map<Long, DeptDO> deptMap = deptService.getDeptMap(
+                convertList(pageResult.getList(), AdminUserDO::getDeptId));
+        return success(new PageResult<>(UserConvert.INSTANCE.convertList(pageResult.getList(), deptMap),
+                pageResult.getTotal()));
+    }
 
 
     @GetMapping("/DeptTeacherPage")
@@ -322,7 +354,7 @@ public class UserController {
     }
 
     @GetMapping("/get-import-template")
-    @Operation(summary = "获得导入用户模板")
+    @Operation(summary = "获得在校生模板")
     public void importTemplate(HttpServletResponse response) throws IOException {
         // 手动创建导出 demo
         List<UserImportExcelVO> list = Arrays.asList(
@@ -334,6 +366,30 @@ public class UserController {
         ExcelUtils.write(response, "用户导入模板.xls", "用户列表", UserImportExcelVO.class, list);
     }
 
+    @GetMapping("/get-import-graduateTemplate")
+    @Operation(summary = "获得毕业生模板")
+    public void importGraduateTemplate(HttpServletResponse response) throws IOException {
+        List<graduateStudentImportExcelVO> list = Arrays.asList(
+                graduateStudentImportExcelVO.builder().username("graduateStudent").password("123456").email("2456125438@qq.com").mobile("15601691300")
+                        .nickname("测试000").userType("毕业生").status(CommonStatusEnum.ENABLE.getStatus()).sex(SexEnum.MALE.getSex())
+                        .build()
+        );
+        ExcelUtils.write(response, "用户导入模板.xls", "用户列表", graduateStudentImportExcelVO.class, list);
+    }
+
+    @GetMapping("/get-import-teacherTemplate")
+    @Operation(summary = "获得导师模板")
+    public void importTeacherTemplate(HttpServletResponse response) throws IOException {
+        List<teacherImportExcelVO> list = Arrays.asList(
+                teacherImportExcelVO.builder().username("teacher").password("123456").email("2456125438@qq.com").mobile("15601691300").deptName("2#601")
+                        .nickname("测试000") .userType("导师").status(CommonStatusEnum.ENABLE.getStatus()).sex(SexEnum.MALE.getSex())
+                        .build()
+        );
+        ExcelUtils.write(response, "用户导入模板.xls", "用户列表", teacherImportExcelVO.class, list);
+    }
+
+
+
     @PostMapping("/import")
     @Operation(summary = "导入用户")
     @Parameters({

+ 0 - 1
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/vo/user/UserSaveReqVO.java

@@ -83,7 +83,6 @@ public class UserSaveReqVO {
 
     //新加的
     @Schema(description ="照片url")
-    @DiffLogField(name = "照片url")
     private String  photoUrl;
 
     //新加修改传来的值

+ 10 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/vo/user/graduateStudentImportExcelVO.java

@@ -27,6 +27,9 @@ public class graduateStudentImportExcelVO {
     @ExcelProperty("用户名称")
     private String nickname;
 
+    @ExcelProperty("用户密码")
+    private String password;
+
     @ExcelProperty(value = "用户性别", converter = DictConvert.class)
     @DictFormat(DictTypeConstants.USER_SEX)
     private Integer sex;
@@ -46,6 +49,9 @@ public class graduateStudentImportExcelVO {
     @ExcelProperty("手机号码")
     private String mobile;
 
+    @ExcelProperty("用户类型:1在校生,2毕业生,3导师,4学院")
+    private  String userType;
+
     @ExcelProperty("工作地点")
     private String workPlace;
 
@@ -55,6 +61,10 @@ public class graduateStudentImportExcelVO {
     @ExcelProperty("导师电话")
     private String supervisorMobile;
 
+    @ExcelProperty(value = "账号状态", converter = DictConvert.class)
+    @DictFormat(DictTypeConstants.COMMON_STATUS)
+    private Integer status;
+
     //导入毕业生直接添加身份
 
 

+ 53 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/vo/user/teacherImportExcelVO.java

@@ -0,0 +1,53 @@
+package cn.iocoder.yudao.module.system.controller.admin.user.vo.user;
+
+import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
+import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
+import cn.iocoder.yudao.module.system.enums.DictTypeConstants;
+import com.alibaba.excel.annotation.ExcelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+/**
+ * 用户 Excel 导入 VO
+ */
+@Data
+@Builder
+@AllArgsConstructor
+@NoArgsConstructor
+@Accessors(chain = false) // 设置 chain = false,避免用户导入有问题
+public class teacherImportExcelVO {
+
+    @ExcelProperty("登录名称")
+    private String username;
+
+    @ExcelProperty("登录密码")
+    private String password;
+
+    @ExcelProperty("用户名称")
+    private String nickname;
+
+    @ExcelProperty(value = "用户性别", converter = DictConvert.class)
+    @DictFormat(DictTypeConstants.USER_SEX)
+    private Integer sex;
+
+    @ExcelProperty("手机号码")
+    private String mobile;
+
+    @ExcelProperty("用户类型:1在校生,2毕业生,3导师,4学院")
+    private  String userType;
+
+    @ExcelProperty("用户邮箱")
+    private String email;
+
+
+    @ExcelProperty("工作间名称")
+    private String deptName;
+
+    @ExcelProperty(value = "账号状态", converter = DictConvert.class)
+    @DictFormat(DictTypeConstants.COMMON_STATUS)
+    private Integer status;
+
+}

+ 5 - 3
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/user/AdminUserMapper.java

@@ -77,6 +77,7 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
                 .likeIfPresent(AdminUserDO::getUserNumber,reqVO.getUserNumber())//学号查询
                 .likeIfPresent(AdminUserDO::getNickname, reqVO.getNickname())//昵称查询
                 .eqIfPresent(AdminUserDO::getUserType,reqVO.getUserType())//类型查询
+                .likeIfPresent(AdminUserDO::getGrade, reqVO.getGrade())//班级查询
                 .eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
                 .betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
                 .inIfPresent(AdminUserDO::getDeptId, deptIds)
@@ -98,6 +99,7 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
                 .likeIfPresent(AdminUserDO::getUsername, reqVO.getUsername())
                 .likeIfPresent(AdminUserDO::getMobile, reqVO.getMobile())
                 .likeIfPresent(AdminUserDO::getNickname, reqVO.getNickname())//昵称查询
+                .likeIfPresent(AdminUserDO::getGrade, reqVO.getGrade())//班级查询
                 .eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
                 .betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
                 .inIfPresent(AdminUserDO::getDeptId, deptIds)
@@ -118,14 +120,14 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
                 .likeIfPresent(AdminUserDO::getUserNumber,reqVO.getUserNumber())//学号查询
                 .eqIfPresent(AdminUserDO::getUserType,reqVO.getUserType())//类型查询
                 .likeIfPresent(AdminUserDO::getNickname, reqVO.getNickname())//昵称查询
+                .likeIfPresent(AdminUserDO::getGrade, reqVO.getGrade())//班级查询
                 .likeIfPresent(AdminUserDO::getMobile, reqVO.getMobile())
                 .eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
                 .betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
                 .inIfPresent(AdminUserDO::getDeptId, deptIds)
                 .eqIfPresent(AdminUserDO::getDeptId,deptId)
-                .inIfPresent(AdminUserDO::getUserType,1,2)
+                .eqIfPresent(AdminUserDO::getUserType,1)
                 .orderByDesc(AdminUserDO::getId));
-
         return result;
     }
 
@@ -138,7 +140,7 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
                 .eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
                 .betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
                 .inIfPresent(AdminUserDO::getDeptId, deptIds)
-                .eqIfPresent(AdminUserDO::getGrade, reqVO.getGrade())
+                .likeIfPresent(AdminUserDO::getGrade, reqVO.getGrade())
                 .likeIfPresent(AdminUserDO::getNickname, reqVO.getNickname())//昵称查询
                 .likeIfPresent(AdminUserDO::getUserNumber,reqVO.getUserNumber())//学号查询
                 .orderByDesc(AdminUserDO::getId);