wangliang@qmth.com.cn 4 лет назад
Родитель
Сommit
07b5cd1e5a

+ 35 - 0
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/bean/result/DimensionAnalyzeResult.java

@@ -0,0 +1,35 @@
+package com.qmth.teachcloud.report.business.bean.result;
+
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @Description: DimensionAnalyzeResult
+ * @Param:
+ * @return:
+ * @Author: wangliang
+ * @Date: 2021/6/10
+ */
+public class DimensionAnalyzeResult implements Serializable {
+
+    @ApiModelProperty(value = "dimensionAnalyzeList")
+    private List<ModuleDimensionResult> dimensionAnalyzeList;
+
+    public DimensionAnalyzeResult() {
+
+    }
+
+    public DimensionAnalyzeResult(List<ModuleDimensionResult> dimensionAnalyzeList) {
+        this.dimensionAnalyzeList = dimensionAnalyzeList;
+    }
+
+    public List<ModuleDimensionResult> getDimensionAnalyzeList() {
+        return dimensionAnalyzeList;
+    }
+
+    public void setDimensionAnalyzeList(List<ModuleDimensionResult> dimensionAnalyzeList) {
+        this.dimensionAnalyzeList = dimensionAnalyzeList;
+    }
+}

+ 71 - 0
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/bean/result/ModuleDimensionResult.java

@@ -0,0 +1,71 @@
+package com.qmth.teachcloud.report.business.bean.result;
+
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @Description: ModuleDimensionResult
+ * @Param:
+ * @return:
+ * @Author: wangliang
+ * @Date: 2021/6/10
+ */
+public class ModuleDimensionResult implements Serializable {
+
+    @ApiModelProperty(value = "模块名称")
+    private String moduleName;
+
+    @ApiModelProperty(value = "dioList")
+    private List<DimensionInfoResult> dioList;
+
+    @ApiModelProperty(value = "batterThanAll")
+    private List<DimensionInfoResult> batterThanAll;
+
+    @ApiModelProperty(value = "worseThanAll")
+    private List<DimensionInfoResult> worseThanAll;
+
+    public ModuleDimensionResult() {
+
+    }
+
+    public ModuleDimensionResult(String moduleName, List<DimensionInfoResult> dioList, List<DimensionInfoResult> batterThanAll, List<DimensionInfoResult> worseThanAll) {
+        this.moduleName = moduleName;
+        this.dioList = dioList;
+        this.batterThanAll = batterThanAll;
+        this.worseThanAll = worseThanAll;
+    }
+
+    public String getModuleName() {
+        return moduleName;
+    }
+
+    public void setModuleName(String moduleName) {
+        this.moduleName = moduleName;
+    }
+
+    public List<DimensionInfoResult> getDioList() {
+        return dioList;
+    }
+
+    public void setDioList(List<DimensionInfoResult> dioList) {
+        this.dioList = dioList;
+    }
+
+    public List<DimensionInfoResult> getBatterThanAll() {
+        return batterThanAll;
+    }
+
+    public void setBatterThanAll(List<DimensionInfoResult> batterThanAll) {
+        this.batterThanAll = batterThanAll;
+    }
+
+    public List<DimensionInfoResult> getWorseThanAll() {
+        return worseThanAll;
+    }
+
+    public void setWorseThanAll(List<DimensionInfoResult> worseThanAll) {
+        this.worseThanAll = worseThanAll;
+    }
+}

+ 2 - 1
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/ReportCommonService.java

@@ -2,6 +2,7 @@ package com.qmth.teachcloud.report.business.service;
 
 import com.qmth.teachcloud.report.business.bean.result.CollegeAndSchoolGradeDistributionResult;
 import com.qmth.teachcloud.report.business.bean.result.CourseInfoResult;
+import com.qmth.teachcloud.report.business.bean.result.DimensionAnalyzeResult;
 
 /**
  * @Description: 教研公共服务
@@ -40,5 +41,5 @@ public interface ReportCommonService {
      * @param collegeId
      * @return
      */
-    Object findDimensionInfo(Long examId, String courseCode, Long collegeId);
+    DimensionAnalyzeResult findDimensionInfo(Long examId, String courseCode, Long collegeId);
 }

+ 4 - 15
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/ReportCommonServiceImpl.java

@@ -204,29 +204,26 @@ public class ReportCommonServiceImpl implements ReportCommonService {
      * @return
      */
     @Override
-    public Object findDimensionInfo(Long examId, String courseCode, Long collegeId) {
-        List<Map<String, Object>> dimensionAnalyzeList = new ArrayList<>();
+    public DimensionAnalyzeResult findDimensionInfo(Long examId, String courseCode, Long collegeId) {
         //查找维度
         List<CourseDimensionResult> dimensionInfoDatasource = tbDimensionService.findDimensionInfo(examId, courseCode, collegeId);
         if (dimensionInfoDatasource.size() < 1) {
             throw ExceptionResultEnum.DATA_ERROR.exception();
         }
+        List<ModuleDimensionResult> dimensionAnalyzeList = new ArrayList<>();
         Set<String> moduleSet = dimensionInfoDatasource.stream().map(e -> e.getModule()).collect(Collectors.toSet()); // 考察模块集合
         for (String module : moduleSet) {
             List<CourseDimensionResult> dimensionInfoList = dimensionInfoDatasource
                     .stream().filter(e -> module.equals(e.getModule())).collect(Collectors.toList());
 
-
             List<DimensionInfoResult> dioList = new ArrayList<>();
             List<DimensionInfoResult> batterThanAll = new ArrayList<>(); // 掌握较好
             List<DimensionInfoResult> worseThanAll = new ArrayList<>(); // 掌握较差
             for (CourseDimensionResult courseDimensionResult : dimensionInfoList) {
                 String dimensionCode = String.valueOf(courseDimensionResult.getDimensionCode());
                 String dimensionName = String.valueOf(courseDimensionResult.getDimensionName());
-
                 double schScoreRate = courseDimensionResult.getSchScoreRate();
                 double colScoreRate = courseDimensionResult.getColScoreRate();
-
                 if (colScoreRate >= schScoreRate) {
                     batterThanAll.add(new DimensionInfoResult(dimensionCode, dimensionName));
                 } else {
@@ -234,16 +231,8 @@ public class ReportCommonServiceImpl implements ReportCommonService {
                 }
                 dioList.add(new DimensionInfoResult(dimensionCode, dimensionName, String.valueOf(courseDimensionResult.getTotalCount()), String.valueOf(schScoreRate), String.valueOf(colScoreRate)));
             }
-            Map<String, Object> moduleMap = new HashMap<>();
-            moduleMap.put("moduleName", module);
-            moduleMap.put("dioList", dioList);
-            moduleMap.put("batterThanAll", batterThanAll);
-            moduleMap.put("worseThanAll", worseThanAll);
-            dimensionAnalyzeList.add(moduleMap);
+            dimensionAnalyzeList.add(new ModuleDimensionResult(module, dioList, batterThanAll, worseThanAll));
         }
-
-        Map<String, Object> dimensionAnalyzeMap = new HashMap<>();
-        dimensionAnalyzeMap.put("dimensionAnalyzeList", dimensionAnalyzeList);
-        return dimensionAnalyzeMap;
+        return new DimensionAnalyzeResult(dimensionAnalyzeList);
     }
 }

+ 1 - 1
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/TAExamCourseServiceImpl.java

@@ -167,7 +167,7 @@ public class TAExamCourseServiceImpl extends ServiceImpl<TAExamCourseMapper, TAE
         CourseInfoResult courseInfoResult = reportCommonService.findCourseInfo(examId, courseCode, sysUser.getOrgId());
         //学院学科报表科目描述
         CollegeAndSchoolGradeDistributionResult collegeAndSchoolGradeDistributionResult = reportCommonService.findCourseDistribution(examId, courseCode, sysUser.getOrgId());
-
+        DimensionAnalyzeResult dimensionAnalyzeResult = reportCommonService.findDimensionInfo(examId, courseCode, sysUser.getOrgId());
 //        //查找维度
 //        List<CourseDimensionResult> courseDimensionResultList = tbDimensionService.findDimensionInfo(examId, courseCode, sysUser.getOrgId());