src/main/java/com/mindskip/xzs/controller/admin/UserController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/mindskip/xzs/repository/UserMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/mindskip/xzs/service/UserService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/mindskip/xzs/service/impl/UserServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/mindskip/xzs/viewmodel/admin/user/UserResponseVM.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/UserMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/mindskip/xzs/controller/admin/UserController.java
@@ -50,9 +50,7 @@ @RequestMapping(value = "/page/list", method = RequestMethod.POST) public RestResponse<PageInfo<UserResponseVM>> pageList(@RequestBody UserPageRequestVM model) { model.setDepartmentId(ObjectUtils.isNotEmpty(model.getDepartmentId()) ? model.getDepartmentId() : getAdminDeptIds()); PageInfo<User> pageInfo = userService.userPage(model); PageInfo<UserResponseVM> page = PageInfoHelper.copyMap(pageInfo, d -> UserResponseVM.from(d)); PageInfo<UserResponseVM> page = userService.userPage(model); page.setList(page.getList().stream().map(e->{ List<UserDepartment> userDepartments = userDepartmentMapper.selectByUserId(e.getId()); List<Department> list = new ArrayList<>(); src/main/java/com/mindskip/xzs/repository/UserMapper.java
@@ -8,6 +8,7 @@ import com.mindskip.xzs.domain.vo.UpdateDeptAdminVO; import com.mindskip.xzs.viewmodel.admin.paper.ExamPaperGradeQuery; import com.mindskip.xzs.viewmodel.admin.user.UserPageRequestVM; import com.mindskip.xzs.viewmodel.admin.user.UserResponseVM; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -80,7 +81,7 @@ * @param requestVM requestVM * @return List<User> */ List<User> userPage(UserPageRequestVM requestVM); List<UserResponseVM> userPage(UserPageRequestVM requestVM); /** src/main/java/com/mindskip/xzs/service/UserService.java
@@ -6,6 +6,7 @@ import com.mindskip.xzs.domain.User; import com.mindskip.xzs.domain.other.KeyValue; import com.mindskip.xzs.viewmodel.admin.user.UserPageRequestVM; import com.mindskip.xzs.viewmodel.admin.user.UserResponseVM; import java.util.List; @@ -76,7 +77,7 @@ * @param requestVM requestVM * @return PageInfo<User> */ PageInfo<User> userPage(UserPageRequestVM requestVM); PageInfo<UserResponseVM> userPage(UserPageRequestVM requestVM); /** src/main/java/com/mindskip/xzs/service/impl/UserServiceImpl.java
@@ -1,17 +1,17 @@ package com.mindskip.xzs.service.impl; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.mindskip.xzs.domain.Department; import com.mindskip.xzs.domain.ExamPaper; import com.mindskip.xzs.domain.other.KeyValue; import com.mindskip.xzs.domain.vo.UserVO; import com.mindskip.xzs.exception.BusinessException; import com.mindskip.xzs.domain.User; import com.mindskip.xzs.domain.other.KeyValue; import com.mindskip.xzs.event.OnRegistrationCompleteEvent; import com.mindskip.xzs.exception.BusinessException; import com.mindskip.xzs.repository.UserMapper; import com.mindskip.xzs.service.UserService; import com.mindskip.xzs.viewmodel.admin.user.UserPageRequestVM; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.mindskip.xzs.viewmodel.admin.user.UserResponseVM; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationEventPublisher; import org.springframework.stereotype.Service; @@ -94,7 +94,7 @@ @Override public PageInfo<User> userPage(UserPageRequestVM requestVM) { public PageInfo<UserResponseVM> userPage(UserPageRequestVM requestVM) { return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "id desc").doSelectPageInfo(() -> userMapper.userPage(requestVM) ); src/main/java/com/mindskip/xzs/viewmodel/admin/user/UserResponseVM.java
@@ -1,7 +1,9 @@ package com.mindskip.xzs.viewmodel.admin.user; import com.mindskip.xzs.domain.User; import com.mindskip.xzs.domain.enums.DepartmentExamineEnum; import com.mindskip.xzs.domain.enums.UserConditionEnum; import com.mindskip.xzs.domain.enums.UserConditionExamineEnum; import com.mindskip.xzs.utility.DateTimeUtil; import com.mindskip.xzs.viewmodel.BaseVM; @@ -56,6 +58,26 @@ private String password; private DepartmentExamineEnum departmentExamineResult; private UserConditionExamineEnum conditionExamineResult; public DepartmentExamineEnum getDepartmentExamineResult() { return departmentExamineResult; } public void setDepartmentExamineResult(DepartmentExamineEnum departmentExamineResult) { this.departmentExamineResult = departmentExamineResult; } public UserConditionExamineEnum getConditionExamineResult() { return conditionExamineResult; } public void setConditionExamineResult(UserConditionExamineEnum conditionExamineResult) { this.conditionExamineResult = conditionExamineResult; } public String getPassword() { return password; } src/main/resources/mapper/UserMapper.xml
@@ -329,30 +329,27 @@ </select> <select id="userPage" resultMap="BaseResultMap" parameterType="com.mindskip.xzs.viewmodel.admin.user.UserPageRequestVM"> <select id="userPage" resultType="com.mindskip.xzs.viewmodel.admin.user.UserResponseVM" parameterType="com.mindskip.xzs.viewmodel.admin.user.UserPageRequestVM"> SELECT a.* a.*, c.result as departmentExamineResult, d.result as conditionExamineResult FROM t_user a lEFT join (select * from t_user_department <if test="departmentId != null and departmentId.size() > 0"> where department_id in <foreach collection="departmentId" item="item" index="index" open="(" separator="," close=")"> #{item} </foreach> </if> group by user_id ) b on a.id = b.user_id where LEFT JOIN t_user_department b ON a.id = b.user_id LEFT JOIN t_department_examine c ON a.id = c.user_id AND c.deleted = 0 AND c.result = 0 LEFT JOIN t_user_condition_examine d ON a.id = d.user_id AND d.deleted = 0 AND d.result = 0 WHERE a.deleted=0 <if test="departmentId != null and departmentId.size() > 0"> and b.department_id in <foreach collection="departmentId" item="item" index="index" open="(" separator="," close=")"> #{item} </foreach> AND b.department_id IN <foreach collection="departmentId" item="item" index="index" open="(" separator="," close=")"> #{item} </foreach> </if> <if test="userName != null and userName != ''"> and real_name like concat('%',#{userName},'%') AND real_name LIKE concat('%',#{userName},'%') </if> <if test="role != null and role.size() > 0"> and role in <foreach collection="role" item="item" open="(" separator="," close=")"> #{item} </foreach> AND role IN <foreach collection="role" item="item" open="(" separator="," close=")"> #{item} </foreach> </if> GROUP BY a.id </select>