package com.ycl.jxkg.controller.admin; import com.ycl.jxkg.base.BaseApiController; import com.ycl.jxkg.base.Result; import com.ycl.jxkg.domain.ExamPaperAnswer; import com.ycl.jxkg.domain.Subject; import com.ycl.jxkg.domain.User; import com.ycl.jxkg.service.*; import com.ycl.jxkg.utils.DateTimeUtil; import com.ycl.jxkg.utils.ExamUtil; import com.ycl.jxkg.utils.PageInfoHelper; import com.ycl.jxkg.vo.student.exampaper.ExamPaperAnswerPageResponseVO; import com.ycl.jxkg.vo.admin.paper.ExamPaperAnswerPageRequestVO; import com.github.pagehelper.PageInfo; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @RequiredArgsConstructor @RestController("AdminExamPaperAnswerController") @RequestMapping(value = "/api/admin/examPaperAnswer") public class ExamPaperAnswerController extends BaseApiController { private final ExamPaperAnswerService examPaperAnswerService; private final SubjectService subjectService; private final UserService userService; @RequestMapping(value = "/page", method = RequestMethod.POST) public Result> pageJudgeList(@RequestBody ExamPaperAnswerPageRequestVO model) { PageInfo pageInfo = examPaperAnswerService.adminPage(model); PageInfo page = PageInfoHelper.copyMap(pageInfo, e -> { ExamPaperAnswerPageResponseVO vo = new ExamPaperAnswerPageResponseVO(); BeanUtils.copyProperties(e, vo); Subject subject = subjectService.getById(vo.getSubjectId()); vo.setDoTime(ExamUtil.secondToVM(e.getDoTime())); vo.setSystemScore(ExamUtil.scoreToVM(e.getSystemScore())); vo.setUserScore(ExamUtil.scoreToVM(e.getUserScore())); vo.setPaperScore(ExamUtil.scoreToVM(e.getPaperScore())); vo.setSubjectName(subject.getName()); vo.setCreateTime(DateTimeUtil.dateFormat(e.getCreateTime())); User user = userService.getById(e.getCreateUser()); vo.setUserName(user.getUserName()); return vo; }); return Result.ok(page); } }