|
@@ -3,6 +3,7 @@ package com.qmth.teachcloud.report.api;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.qmth.boot.api.constant.ApiConstant;
|
|
import com.qmth.boot.api.constant.ApiConstant;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
|
|
+import com.qmth.teachcloud.common.entity.BasicSemester;
|
|
import com.qmth.teachcloud.common.service.BasicSemesterService;
|
|
import com.qmth.teachcloud.common.service.BasicSemesterService;
|
|
import com.qmth.teachcloud.common.util.Result;
|
|
import com.qmth.teachcloud.common.util.Result;
|
|
import com.qmth.teachcloud.common.util.ResultUtil;
|
|
import com.qmth.teachcloud.common.util.ResultUtil;
|
|
@@ -21,9 +22,9 @@ import org.springframework.web.bind.annotation.RequestParam;
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
-import java.util.ArrayList;
|
|
|
|
-import java.util.List;
|
|
|
|
-import java.util.Objects;
|
|
|
|
|
|
+import java.util.*;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
+import java.util.stream.Stream;
|
|
|
|
|
|
@Api(tags = "教研分析学校公用Controller")
|
|
@Api(tags = "教研分析学校公用Controller")
|
|
@RestController
|
|
@RestController
|
|
@@ -46,16 +47,18 @@ public class SysReportController {
|
|
@RequestMapping(value = "/common/list_semester", method = RequestMethod.POST)
|
|
@RequestMapping(value = "/common/list_semester", method = RequestMethod.POST)
|
|
@ApiResponses({@ApiResponse(code = 200, message = "考试信息", response = TBExamResult.class)})
|
|
@ApiResponses({@ApiResponse(code = 200, message = "考试信息", response = TBExamResult.class)})
|
|
public Result listSemester(@ApiParam(value = "学校id", required = true) @RequestParam String schoolId) {
|
|
public Result listSemester(@ApiParam(value = "学校id", required = true) @RequestParam String schoolId) {
|
|
- QueryWrapper<TBExam> tbExamQueryWrapper = new QueryWrapper<>();
|
|
|
|
- tbExamQueryWrapper.select(" DISTINCT id,semester_id,exam_time ").eq("school_id", SystemConstant.convertIdToLong(schoolId)).orderByDesc("exam_time");
|
|
|
|
- List<TBExam> tbExamList = tbExamService.list(tbExamQueryWrapper);
|
|
|
|
- List<TBExamResult> tbExamResultList = null;
|
|
|
|
- if (Objects.nonNull(tbExamList) && tbExamList.size() > 0) {
|
|
|
|
- tbExamResultList = new ArrayList<>();
|
|
|
|
- for (TBExam tbExam : tbExamList) {
|
|
|
|
- tbExamResultList.add(new TBExamResult(tbExam.getSemesterId(), basicSemesterService.getById(tbExam.getSemesterId()).getName()));
|
|
|
|
- }
|
|
|
|
|
|
+ List<TBExam> tbExamList = tbExamService.list(new QueryWrapper<TBExam>().lambda().eq(TBExam::getSchoolId,schoolId));
|
|
|
|
+ Set<Long> semesterIdSet = tbExamList.stream().map(TBExam::getSemesterId).collect(Collectors.toSet());
|
|
|
|
+ List<BasicSemester> basicSemesterList = new ArrayList<>();
|
|
|
|
+ if (semesterIdSet.size() > 0){
|
|
|
|
+ basicSemesterList = basicSemesterService.list(new QueryWrapper<BasicSemester>().lambda().in(BasicSemester::getId,semesterIdSet).orderByDesc(BasicSemester::getCreateTime));
|
|
}
|
|
}
|
|
|
|
+ List<TBExamResult> tbExamResultList = basicSemesterList.stream().flatMap(e -> {
|
|
|
|
+ TBExamResult tbExamResult = new TBExamResult();
|
|
|
|
+ tbExamResult.setId(e.getId());
|
|
|
|
+ tbExamResult.setSemesterStr(e.getName());
|
|
|
|
+ return Stream.of(tbExamResult);
|
|
|
|
+ }).collect(Collectors.toList());
|
|
return ResultUtil.ok(tbExamResultList);
|
|
return ResultUtil.ok(tbExamResultList);
|
|
}
|
|
}
|
|
|
|
|