From 47cd9ecc0eff38ffe6b3b794b2bf197e958f4403 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期三, 14 五月 2025 15:50:57 +0800 Subject: [PATCH] bug:学员有状态不能修改问题 --- src/main/java/com/mindskip/xzs/controller/admin/ExamPaperGradeController.java | 119 ++++++++++++++--------------------------------------------- 1 files changed, 29 insertions(+), 90 deletions(-) diff --git a/src/main/java/com/mindskip/xzs/controller/admin/ExamPaperGradeController.java b/src/main/java/com/mindskip/xzs/controller/admin/ExamPaperGradeController.java index f955916..11a3f5b 100644 --- a/src/main/java/com/mindskip/xzs/controller/admin/ExamPaperGradeController.java +++ b/src/main/java/com/mindskip/xzs/controller/admin/ExamPaperGradeController.java @@ -4,51 +4,43 @@ import com.github.pagehelper.PageInfo; import com.mindskip.xzs.base.BaseApiController; import com.mindskip.xzs.base.RestResponse; +import com.mindskip.xzs.context.WebContext; import com.mindskip.xzs.domain.ExamPaperAnswer; import com.mindskip.xzs.domain.User; import com.mindskip.xzs.domain.UserDepartment; -import com.mindskip.xzs.domain.vo.ScoreTemplatesCountVO; +import com.mindskip.xzs.repository.DepartmentMapper; import com.mindskip.xzs.repository.ExamPaperAnswerMapper; +import com.mindskip.xzs.repository.UserDepartmentMapper; +import com.mindskip.xzs.repository.UserMapper; import com.mindskip.xzs.service.*; -import com.mindskip.xzs.viewmodel.admin.paper.ExamPaperGradePageRequestVM; -import org.springframework.beans.factory.annotation.Autowired; +import com.mindskip.xzs.viewmodel.admin.paper.ExamPaperGradeQuery; +import lombok.RequiredArgsConstructor; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; -import java.util.ArrayList; import java.util.List; @RestController("AdminExamPaperGradeController") @RequestMapping(value = "/api/admin/examPaperGrade") +@RequiredArgsConstructor public class ExamPaperGradeController extends BaseApiController { private final ExamPaperAnswerService examPaperAnswerService; - private final SubjectService subjectService; private final UserService userService; + private final UserMapper userMapper; private final ExamPaperSubjectService examPaperSubjectService; - private final ScoreTemplatesUserCountService scoreTemplatesUserCountService; - private final ExamPaperUserService examPaperUserService; - private final UserDepartMentService userDepartMentService; - + private final UserDepartmentMapper userDepartmentMapper; private final ExamPaperAnswerMapper examPaperAnswerMapper; + private final WebContext webContext; + private final DepartmentMapper departmentMapper; - @Autowired - public ExamPaperGradeController(ExamPaperAnswerService examPaperAnswerService, SubjectService subjectService, UserService userService, ExamPaperSubjectService examPaperSubjectService, ScoreTemplatesUserCountService scoreTemplatesUserCountService, ExamPaperUserService examPaperUserService, UserDepartMentService userDepartMentService, ExamPaperAnswerMapper examPaperAnswerMapper) { - this.examPaperAnswerService = examPaperAnswerService; - this.subjectService = subjectService; - this.userService = userService; - this.examPaperSubjectService = examPaperSubjectService; - this.scoreTemplatesUserCountService = scoreTemplatesUserCountService; - this.examPaperUserService = examPaperUserService; - this.userDepartMentService = userDepartMentService; - this.examPaperAnswerMapper = examPaperAnswerMapper; - } // @RequestMapping(value = "/page", method = RequestMethod.POST) @@ -106,87 +98,34 @@ // } @RequestMapping(value = "/page", method = RequestMethod.POST) - public RestResponse<PageInfo<ExamPaperAnswer>> pageJudgeList(@RequestBody ExamPaperGradePageRequestVM grade) { - List<ExamPaperAnswer> filteredList9 = new ArrayList<>(); - PageInfo<User> info = PageHelper.startPage(grade.getPageIndex(), grade.getPageSize(), "id desc").doSelectPageInfo(() -> - userService.getUsers()); - for (User user : info.getList()) { - if(user.getRealName().equals("绠$悊鍛�")){ - continue; - } - ExamPaperAnswer answer = new ExamPaperAnswer(); - answer.setCreateUser(user.getId()); - answer.setUserName(user.getRealName()); - ScoreTemplatesCountVO vo = new ScoreTemplatesCountVO(); - vo.setCreateUser(user.getId()); - List<ExamPaperAnswer> byCreatUser = examPaperAnswerMapper.getByCreatUser(vo); - answer.setCounts(byCreatUser.size()); - filteredList9.add(answer); - } -// PageInfo<ExamPaperAnswer> list = examPaperAnswerService.adminPageByGrade(grade); -// for (ExamPaperAnswer e : list.getList()) { -// User user = userService.selectByIdName(e.getCreateUser(), grade.getUserName()); -// if (user==null){ -// return null; -// } -// ExamPaperAnswer examPaperAnswer = examPaperAnswerService.getById(e.getId()); -// Integer[] ids = examPaperSubjectService.getByExamPaperId(examPaperAnswer.getExamPaperId()).stream().map(ExamPaperSubject::getSubjectId).toArray(Integer[]::new); -// String names = ""; -// if (ids.length > 0) { -// names = subjectService.selectByIds(ids) -// .stream().map(Subject::getName).collect(Collectors.joining(",")); -// } -// Integer userId = examPaperUserService.getByPaperIdAndCreatUser(e.getExamPaperId(), e.getCreateUser()); -// if(userId == null){ -// return null; -// } -// e.setUserName(user.getRealName()); -// } -// List<ExamPaperAnswer> collect = list.getList().stream() -// .filter(exam -> exam != null) -// .collect(Collectors.toList()); -// ArrayList<ExamPaperAnswer> list2 = new ArrayList<>(); -// Map<String, Long> collect1 = collect.stream().collect(Collectors.groupingBy(ExamPaperAnswer::getPaperName, Collectors.counting())); -// collect.forEach(t->t.setCounts(Math.toIntExact(collect1.getOrDefault(t.getPaperName(),0L)))); -// Map<String, List<ExamPaperAnswer>> collect2 = collect.stream().collect(Collectors.groupingBy(ExamPaperAnswer::getUserName)); -// List<ExamPaperAnswer> filteredList1 = new ArrayList<>(); -// Set<String> uniqueUserNames = new HashSet<>(); -// collect2.forEach((key, value) -> { -// value.forEach(item -> { -// item.setUserName(key); -// item.setCounts(value.size()); -// }); -// list2.addAll(value); -// }); -// for (ExamPaperAnswer item : list2) { -// if (uniqueUserNames.add(item.getUserName())) { -// filteredList1.add(item); -// } -// } - PageHelper.startPage(grade.getPageIndex(), grade.getPageSize()); - PageInfo<ExamPaperAnswer> pageInfoPageInfo = new PageInfo<>(filteredList9); - return RestResponse.ok(pageInfoPageInfo); + public RestResponse<PageInfo<ExamPaperAnswer>> pageJudgeList(@RequestBody ExamPaperGradeQuery query) { + // 濡傛灉鏄儴闂ㄧ鐞嗗憳锛岄渶瑕佸仛鏁版嵁鏉冮檺 + query.setDeptId(ObjectUtils.isNotEmpty(query.getDeptId()) ? query.getDeptId() : getAdminDeptIds()); + query.setFullTime(); + // 鏌ヨ + PageInfo<ExamPaperAnswer> info = PageHelper.startPage(query.getPageIndex(), query.getPageSize()).doSelectPageInfo(() -> + userMapper.getUserByDept(query)); + return RestResponse.ok(info); } @RequestMapping(value = "/details", method = RequestMethod.POST) - public RestResponse<PageInfo<ExamPaperAnswer>> selectSource(@RequestBody ScoreTemplatesCountVO scoreTemplatesCountVO) throws Exception { - return RestResponse.ok(examPaperAnswerService.getByCreatUser(scoreTemplatesCountVO)); + public RestResponse<PageInfo<ExamPaperAnswer>> selectSource(@RequestBody ExamPaperGradeQuery query) throws Exception { + return RestResponse.ok(examPaperAnswerService.getByCreatUser(query)); } - @RequestMapping(value = "/updates", method = RequestMethod.POST) - public void updateDepartment(){ + + @RequestMapping(value = "/updates", method = RequestMethod.GET) + public void updateDepartment() { List<User> users = userService.getUsers(); for (User user : users) { Integer id = user.getId(); Integer userLevel = user.getUserLevel(); - UserDepartment userDepartment = userDepartMentService.selectByUser(id); - if (userDepartment!=null){ - userDepartment.setDepartmentId(userLevel); - userDepartMentService.updateUserDepartMent(userDepartment); - } + UserDepartment userDepartment = new UserDepartment(); + userDepartment.setUserId(id); + userDepartment.setDepartmentId(userLevel); + userDepartMentService.insert(userDepartment); } } - } -- Gitblit v1.8.0