xiaofei 1 rok temu
rodzic
commit
0bacb23edf

+ 1 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ConditionServiceImpl.java

@@ -258,7 +258,7 @@ public class ConditionServiceImpl implements ConditionService {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         String privilegeIdString = privilegeId == null ? null : String.valueOf(privilegeId);
         // 课程大纲管理、课程考核设置、课程目标达成度统计
-        if ("3000".equals(privilegeIdString) || "3001".equals(privilegeIdString) || "2002".equals(privilegeIdString)) {
+        if ("3000".equals(privilegeIdString) || "3001".equals(privilegeIdString) || "2002".equals(privilegeIdString) || "2080".equals(privilegeIdString)) {
             result = conditionMapper.listCultureProgram(schoolId, professionalId, dpr);
         }
         // 成绩管理

+ 6 - 3
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TRExamStudentServiceImpl.java

@@ -246,7 +246,7 @@ public class TRExamStudentServiceImpl extends ServiceImpl<TRExamStudentMapper, T
         List<CourseTargetRequirement> courseTargetRequirementListAll = new ArrayList<>();
         for (StudentCourseInfoDto studentCourseInfoDto : studentCourseInfoDtoList) {
             courseTargetRequirementListAll.addAll(studentCourseInfoDto.getCourseTargetRequirementList().stream().map(m -> {
-                m.setCourseTargetDegree(m.getCourseTargetDegree() == null ? 0 : m.getCourseTargetDegree());
+                m.setCourseTargetDegree(m.getCourseTargetDegree() == null ? null : m.getCourseTargetDegree());
                 return m;
             }).collect(Collectors.toList()));
         }
@@ -262,11 +262,14 @@ public class TRExamStudentServiceImpl extends ServiceImpl<TRExamStudentMapper, T
         List<StudentTotalRequirement> studentTotalRequirementList = new ArrayList<>();
         for (Map.Entry<String, List<CourseTargetRequirement>> entry : stringDoubleMap.entrySet()) {
             String[] keys = entry.getKey().split("##");
-            Map<Long, Double> doubleMap = entry.getValue().stream().collect(Collectors.groupingBy(CourseTargetRequirement::getSubRequirementId, Collectors.averagingDouble(CourseTargetRequirement::getCourseTargetDegree)));
+            Map<Long, Double> doubleMap = entry.getValue().stream().filter(m -> m.getCourseTargetDegree() != null).collect(Collectors.groupingBy(CourseTargetRequirement::getSubRequirementId, Collectors.averagingDouble(CourseTargetRequirement::getCourseTargetDegree)));
             StudentTotalRequirement studentTotalRequirement = new StudentTotalRequirement();
             studentTotalRequirement.setRequirementName(keys[1]);
             studentTotalRequirement.setRequirementSortNum(Integer.valueOf(keys[0]));
-            studentTotalRequirement.setStudentDegree(new BigDecimal(doubleMap.values().stream().min(Double::compare).get()).setScale(2, RoundingMode.HALF_UP).doubleValue());
+            if (!CollectionUtils.isEmpty(doubleMap)) {
+                Double minValue = doubleMap.values().stream().filter(m -> m != null).min(Double::compare).orElseGet(null);
+                studentTotalRequirement.setStudentDegree(minValue != null ? new BigDecimal(minValue).setScale(2, RoundingMode.HALF_UP).doubleValue() : null);
+            }
             if (requirementDegreeMap.containsKey(keys[1])) {
                 studentTotalRequirement.setProfessionalDegree(requirementDegreeMap.get(keys[1]).doubleValue());
             }