|
@@ -16,9 +16,11 @@ import com.qmth.teachcloud.common.enums.log.OperationTypeEnum;
|
|
|
import com.qmth.teachcloud.common.util.*;
|
|
|
import com.qmth.teachcloud.mark.entity.MarkPaper;
|
|
|
import com.qmth.teachcloud.mark.service.MarkQuestionService;
|
|
|
+import com.qmth.teachcloud.obe.been.dto.CourseWeightDetailDto;
|
|
|
import com.qmth.teachcloud.obe.been.dto.CourseWeightDto;
|
|
|
import com.qmth.teachcloud.obe.been.excel.PaperStructDto;
|
|
|
import com.qmth.teachcloud.obe.been.params.report.PaperStructParams;
|
|
|
+import com.qmth.teachcloud.obe.been.report.CourseTargetWebDto;
|
|
|
import com.qmth.teachcloud.obe.been.result.ObeCourseWeightResult;
|
|
|
import com.qmth.teachcloud.obe.been.result.report.PaperStructDimensionResult;
|
|
|
import com.qmth.teachcloud.obe.entity.ObeCourseOutline;
|
|
@@ -41,10 +43,7 @@ import javax.annotation.Resource;
|
|
|
import javax.validation.Valid;
|
|
|
import java.io.IOException;
|
|
|
import java.math.BigDecimal;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Objects;
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
@@ -225,7 +224,34 @@ public class TCPaperStructController {
|
|
|
} else {
|
|
|
paperStructDimensionResultList = this.getPaperStructDimensionResult(tcPaperStruct, paperStructDimensionResultList);
|
|
|
}
|
|
|
- paperStructDimensionResultList.stream().peek(s -> s.setPaperNumber(tcPaperStruct.getPaperNumber())).collect(Collectors.toList());
|
|
|
+ List<CourseWeightDto> courseWeightDtoList = obeCourseWeightResult.getSubmitForm();
|
|
|
+ if (!CollectionUtils.isEmpty(courseWeightDtoList)) {
|
|
|
+ List<PaperStructDimensionResult> paperStructDimensionResultNewList = new ArrayList<>(paperStructDimensionResultList.size());
|
|
|
+ Map<Long, String> courseWeightFinalScoreMap = new LinkedHashMap<>();
|
|
|
+ for (CourseWeightDto courseWeightDto : courseWeightDtoList) {
|
|
|
+ List<CourseWeightDetailDto> courseWeightDetailDtoList = courseWeightDto.getEvaluationList();
|
|
|
+ if (!CollectionUtils.isEmpty(courseWeightDetailDtoList)) {
|
|
|
+ courseWeightDetailDtoList.stream().filter(s -> {
|
|
|
+ if (Objects.equals(s.getEvaluationName(), SystemConstant.FINAL_SCORE_STR) && Objects.nonNull(s.getEnable()) && s.getEnable()) {
|
|
|
+ courseWeightFinalScoreMap.put(courseWeightDto.getCourseTargetId(), courseWeightDto.getCourseTargetName());
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ paperStructDimensionResultList.stream().peek(s -> {
|
|
|
+ s.setPaperNumber(tcPaperStruct.getPaperNumber());
|
|
|
+ List<CourseTargetWebDto> courseTargetWebDtoList = s.getTargetList();
|
|
|
+ courseTargetWebDtoList.stream().peek(m -> {
|
|
|
+ if (!courseWeightFinalScoreMap.containsKey(m.getTargetId())) {
|
|
|
+ paperStructDimensionResultNewList.add(s);
|
|
|
+ }
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ paperStructDimensionResultNewList.stream().peek(s -> s.getTargetList().clear()).collect(Collectors.toList());
|
|
|
+ }
|
|
|
}
|
|
|
return ResultUtil.ok(paperStructDimensionResultList);
|
|
|
}
|