Explorar el Código

导出老师数据

jinxia.mo hace 21 horas
padre
commit
3254def264

+ 84 - 77
ie-admin/src/main/java/com/ruoyi/web/controller/dz/DzTeacherController.java

@@ -14,6 +14,7 @@ import com.ruoyi.dz.service.IDzClassesService;
 import com.ruoyi.dz.service.IDzTeacherClassService;
 import com.ruoyi.enums.UserTypeEnum;
 import com.ruoyi.system.service.ISysUserService;
+import org.apache.commons.collections.CollectionUtils;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -67,8 +68,84 @@ public class DzTeacherController extends BaseController
         }
         startPage();
         List<DzTeacher> list = dzTeacherService.selectDzTeacherList(dzTeacher);
+        list =  processTeacherList(list);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出老师列表
+     */
+    @PreAuthorize("@ss.hasPermi('dz:teacher:export')")
+    @Log(title = "老师", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, DzTeacher dzTeacher)
+    {
+        List<DzTeacher> list = dzTeacherService.selectDzTeacherList(dzTeacher);
+        list =  processTeacherList(list);
+        ExcelUtil<DzTeacher> util = new ExcelUtil<DzTeacher>(DzTeacher.class);
+        util.exportExcel(response, list, "老师数据");
+    }
+
+    /**
+     * 获取老师详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('dz:teacher:query')")
+    @GetMapping(value = "/{teacherId}")
+    public AjaxResult getInfo(@PathVariable("teacherId") Long teacherId)
+    {
+        return success(dzTeacherService.selectDzTeacherByTeacherId(teacherId));
+    }
+
+    /**
+     * 新增老师
+     */
+    @PreAuthorize("@ss.hasPermi('dz:teacher:add')")
+    @Log(title = "老师", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody DzTeacher dzTeacher)
+    {
+        return AjaxResult.success(dzTeacherService.insertDzTeacher(dzTeacher));
+    }
+
+    /**
+     * 修改老师
+     */
+    @PreAuthorize("@ss.hasPermi('dz:teacher:edit')")
+    @Log(title = "老师", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody DzTeacher dzTeacher)
+    {
+        if (UserTypeEnum.isSys(SecurityUtils.getLoginUser().getUser().getUserType())) {
+            dzTeacher.setCampusId(null);
+        } else {
+            dzTeacher.setSchoolId(null);
+        }
+        dzTeacherService.updateDzTeacher(dzTeacher);
+        //同时修改sys_user表的nickName
+        SysUser user = userService.selectUserByUserName(String.valueOf(dzTeacher.getTeacherId()));
+        if (null != user) {
+            if (null == user.getNickName() || !user.getNickName().equalsIgnoreCase(dzTeacher.getName())) {
+                user.setNickName(dzTeacher.getName());
+                userService.updateUserInfo(user);
+            }
+        }
+        return AjaxResult.success();
+    }
+
+    /**
+     * 删除老师
+     */
+    @PreAuthorize("@ss.hasPermi('dz:teacher:remove')")
+    @Log(title = "老师", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{teacherIds}")
+    public AjaxResult remove(@PathVariable Long[] teacherIds)
+    {
+        return toAjax(dzTeacherService.deleteDzTeacherByTeacherIds(teacherIds));
+    }
+
+    private List<DzTeacher> processTeacherList(List<DzTeacher> list) {
         // 批量查询用户信息,获取password2字段
-        if (list != null && !list.isEmpty()) {
+        if (CollectionUtils.isNotEmpty(list)) {
             List<Long> userIds = list.stream()
                     .map(DzTeacher::getUserId).filter(userId -> userId != null)
                     .distinct().collect(Collectors.toList());
@@ -114,7 +191,7 @@ public class DzTeacherController extends BaseController
                                 clazz -> clazz,
                                 (existing, replacement) -> existing
                         ));
-                
+
                 // 设置每个teacher的schoolClass和campusClass
                 list.forEach(teacher -> {
                     if (teacherClassMap.containsKey(teacher.getTeacherId())) {
@@ -122,21 +199,21 @@ public class DzTeacherController extends BaseController
                         // 根据schoolId分组,分别处理schoolClass和campusClass
                         List<String> schoolClassNames = new java.util.ArrayList<>();
                         List<String> campusClassNames = new java.util.ArrayList<>();
-                        
+
                         for (Long classId : classIds) {
                             DzClasses clazz = classIdMap.get(classId);
                             if (clazz != null && clazz.getName() != null) {
-                                if (teacher.getSchoolId() != null && clazz.getSchoolId() != null 
+                                if (teacher.getSchoolId() != null && clazz.getSchoolId() != null
                                         && clazz.getSchoolId().equals(teacher.getSchoolId())) {
                                     schoolClassNames.add(clazz.getName());
                                 }
-                                if (teacher.getCampusId() != null && clazz.getSchoolId() != null 
+                                if (teacher.getCampusId() != null && clazz.getSchoolId() != null
                                         && clazz.getSchoolId().equals(teacher.getCampusId())) {
                                     campusClassNames.add(clazz.getName());
                                 }
                             }
                         }
-                        
+
                         // 用英文逗号连接并设置
                         if (!schoolClassNames.isEmpty()) {
                             teacher.setSchoolClass(String.join(",", schoolClassNames));
@@ -148,76 +225,6 @@ public class DzTeacherController extends BaseController
                 });
             }
         }
-        return getDataTable(list);
-    }
-
-    /**
-     * 导出老师列表
-     */
-    @PreAuthorize("@ss.hasPermi('dz:teacher:export')")
-    @Log(title = "老师", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(HttpServletResponse response, DzTeacher dzTeacher)
-    {
-        List<DzTeacher> list = dzTeacherService.selectDzTeacherList(dzTeacher);
-        ExcelUtil<DzTeacher> util = new ExcelUtil<DzTeacher>(DzTeacher.class);
-        util.exportExcel(response, list, "老师数据");
-    }
-
-    /**
-     * 获取老师详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('dz:teacher:query')")
-    @GetMapping(value = "/{teacherId}")
-    public AjaxResult getInfo(@PathVariable("teacherId") Long teacherId)
-    {
-        return success(dzTeacherService.selectDzTeacherByTeacherId(teacherId));
-    }
-
-    /**
-     * 新增老师
-     */
-    @PreAuthorize("@ss.hasPermi('dz:teacher:add')")
-    @Log(title = "老师", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody DzTeacher dzTeacher)
-    {
-        return AjaxResult.success(dzTeacherService.insertDzTeacher(dzTeacher));
-    }
-
-    /**
-     * 修改老师
-     */
-    @PreAuthorize("@ss.hasPermi('dz:teacher:edit')")
-    @Log(title = "老师", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody DzTeacher dzTeacher)
-    {
-        if (UserTypeEnum.isSys(SecurityUtils.getLoginUser().getUser().getUserType())) {
-            dzTeacher.setCampusId(null);
-        } else {
-            dzTeacher.setSchoolId(null);
-        }
-        dzTeacherService.updateDzTeacher(dzTeacher);
-        //同时修改sys_user表的nickName
-        SysUser user = userService.selectUserByUserName(String.valueOf(dzTeacher.getTeacherId()));
-        if (null != user) {
-            if (null == user.getNickName() || !user.getNickName().equalsIgnoreCase(dzTeacher.getName())) {
-                user.setNickName(dzTeacher.getName());
-                userService.updateUserInfo(user);
-            }
-        }
-        return AjaxResult.success();
-    }
-
-    /**
-     * 删除老师
-     */
-    @PreAuthorize("@ss.hasPermi('dz:teacher:remove')")
-    @Log(title = "老师", businessType = BusinessType.DELETE)
-	@DeleteMapping("/{teacherIds}")
-    public AjaxResult remove(@PathVariable Long[] teacherIds)
-    {
-        return toAjax(dzTeacherService.deleteDzTeacherByTeacherIds(teacherIds));
+        return list;
     }
 }

+ 19 - 13
ie-system/src/main/java/com/ruoyi/dz/domain/DzTeacher.java

@@ -16,34 +16,40 @@ public class DzTeacher extends BaseEntity
     private static final long serialVersionUID = 1L;
 
     /** 老师id */
+    @Excel(name = "卡号")
     private Long teacherId;
-
+    @Excel(name = "密码")
+    private String password2;
+    /** 教师姓名 */
+    @Excel(name = "姓名")
+    private String name;
     /** 用户ID */
-    @Excel(name = "用户ID")
+    // @Excel(name = "用户ID")
     private Long userId;
 
     /** 机构ID */
-    @Excel(name = "机构ID")
+    // @Excel(name = "机构ID")
     private Long deptId;
 
     /** 所在校区 */
-    @Excel(name = "所在校区")
+    // @Excel(name = "所在校区")
     private Long schoolId;
     //培训校区
     private Long campusId;
-
-    /** 教师姓名 */
-    @Excel(name = "教师姓名")
-    private String name;
-
-
+    // @Excel(name = "用户名")
     private String username;
-    private String deptName;
+
+    @Excel(name = "所在学校")
     private String schoolName;
-    private String campusName;
-    private String password2;
+    @Excel(name = "所在学校班级")
     private String schoolClass;
+    @Excel(name = "培训校区")
+    private String campusName;
+    @Excel(name = "培训校区班级")
     private String campusClass;
+
+    @Excel(name = "所在机构")
+    private String deptName;
     private String status;
 
     public String getStatus() {