| | |
| | | import com.github.pagehelper.PageInfo; |
| | | import com.mindskip.xzs.base.BaseApiController; |
| | | import com.mindskip.xzs.base.RestResponse; |
| | | import com.mindskip.xzs.domain.ExamPaperAnswer; |
| | | import com.mindskip.xzs.domain.ExamTemplates; |
| | | import com.mindskip.xzs.domain.ExamTemplatesUserCount; |
| | | import com.mindskip.xzs.domain.User; |
| | | import com.mindskip.xzs.domain.*; |
| | | import com.mindskip.xzs.domain.vo.AnswerVO; |
| | | import com.mindskip.xzs.domain.vo.ExamTemplatesUserCountVO; |
| | | import com.mindskip.xzs.domain.vo.TeamplatesUserExcelVO; |
| | | import com.mindskip.xzs.domain.vo.UserCountExcelVO; |
| | | import com.mindskip.xzs.repository.ExamPaperAnswerMapper; |
| | | import com.mindskip.xzs.repository.ExamTemplatesMapper; |
| | | import com.mindskip.xzs.repository.ExamTemplatesUserMapper; |
| | | import com.mindskip.xzs.service.ExamPaperAnswerService; |
| | | import com.mindskip.xzs.service.ExamTemplatesUserCountService; |
| | | import com.mindskip.xzs.service.UserService; |
| | |
| | | import lombok.SneakyThrows; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.servlet.ServletOutputStream; |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.io.InputStream; |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.net.URLEncoder; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | |
| | | private final ExamTemplatesMapper examTemplatesMapper; |
| | | private final UserService userService; |
| | | private final ExamPaperAnswerService examPaperAnswerService; |
| | | private final ExamPaperAnswerMapper examPaperAnswerMapper; |
| | | private final ExamTemplatesUserMapper examTemplatesUserMapper; |
| | | |
| | | public ExamTemplatesUserCountController(ExamTemplatesUserCountService examTemplatesUserCountService, ExamTemplatesMapper examTemplatesMapper, UserService userService, ExamPaperAnswerService examPaperAnswerService) { |
| | | public ExamTemplatesUserCountController(ExamTemplatesUserCountService examTemplatesUserCountService, ExamTemplatesMapper examTemplatesMapper, UserService userService, ExamPaperAnswerService examPaperAnswerService, ExamPaperAnswerMapper examTemplatesUserCountMapper, ExamTemplatesUserMapper examTemplatesUserMapper) { |
| | | this.examTemplatesUserCountService = examTemplatesUserCountService; |
| | | this.examTemplatesMapper = examTemplatesMapper; |
| | | this.userService = userService; |
| | | this.examPaperAnswerService = examPaperAnswerService; |
| | | this.examPaperAnswerMapper = examTemplatesUserCountMapper; |
| | | this.examTemplatesUserMapper = examTemplatesUserMapper; |
| | | } |
| | | |
| | | @RequestMapping(value = "/list", method = RequestMethod.POST) |
| | |
| | | ExcelUtils.export(response,"个人练习",list,UserCountExcelVO.class); |
| | | } |
| | | |
| | | @RequestMapping(value = "/exportRandownTemplatesId/{id}", method = RequestMethod.GET) |
| | | @SneakyThrows |
| | | public void exportRandownTemplatesId(@PathVariable("id") Integer id, HttpServletResponse response, HttpServletRequest request) { |
| | | ExamTemplates byId = examTemplatesMapper.getById(id); |
| | | List<ExamTemplatesUser> byId1 = examTemplatesUserMapper.getById(id); |
| | | |
| | | List<ExamTemplatesUserCount> byTemplates = examTemplatesUserCountService.getByTemplates(id); |
| | | List<Integer> list = byTemplates.stream().map(ExamTemplatesUserCount::getExamPaperId).collect(Collectors.toList()); |
| | | List<Integer> userIds = byId1.stream().map(e->Integer.parseInt(e.getUserId())).collect(Collectors.toList()); |
| | | //考试 |
| | | List<ExamPaperAnswer> result = new ArrayList<>(); |
| | | if(list.size()!=0){ |
| | | result = examPaperAnswerMapper.getResult(list); |
| | | } |
| | | |
| | | //用户 |
| | | List<User> users = userService.selectByIds(userIds); |
| | | |
| | | List<TeamplatesUserExcelVO> list1 = new ArrayList<>(); |
| | | |
| | | for (User user : users) { |
| | | TeamplatesUserExcelVO vo = new TeamplatesUserExcelVO(); |
| | | vo.setName(byId.getName()); |
| | | vo.setUserName(user.getRealName()); |
| | | Boolean str = false; |
| | | for (ExamPaperAnswer answer: result) { |
| | | if(user.getId().equals(answer.getCreateUser())){ |
| | | str = true; |
| | | vo.setUserScore(answer.getUserScore() == 0 ? "0" : String.valueOf(answer.getUserScore() / 10)); |
| | | vo.setPaperScore(answer.getPaperScore() == 0 ? "0" : String.valueOf(answer.getPaperScore() / 10)); |
| | | vo.setDoTime(answer.getDoTime().toString()); |
| | | list1.add(vo); |
| | | continue; |
| | | } |
| | | } |
| | | if(!str){ |
| | | list1.add(vo); |
| | | } |
| | | str = false; |
| | | |
| | | } |
| | | |
| | | |
| | | ExcelUtils.export(response,"个人练习",list1, TeamplatesUserExcelVO.class); |
| | | } |
| | | |
| | | @RequestMapping(value = "/timeOne", method = RequestMethod.GET) |
| | | @SneakyThrows |
| | | public void time( HttpServletResponse response, HttpServletRequest request) { |
| | | List<TeamplatesUserExcelVO> list = examPaperAnswerMapper.getByTimeOne(); |
| | | ExcelUtils.export(response,"个人练习",list,TeamplatesUserExcelVO.class); |
| | | } |
| | | |
| | | |
| | | |
| | | } |