Browse Source

课程目标达成度修改

wangliang 1 year ago
parent
commit
f886676735

+ 18 - 6
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/result/ScoreResult.java

@@ -37,8 +37,12 @@ public class ScoreResult implements Serializable {
     private String paperNumber;
     private String paperNumber;
 
 
     @JsonSerialize(using = ToStringSerializer.class)
     @JsonSerialize(using = ToStringSerializer.class)
-    @ApiModelProperty(value = "教学课程id")
-    private Long teachCourseId;
+    @ApiModelProperty(value = "培养方案id")
+    private Long cultureProgramId;
+
+    @JsonSerialize(using = ToStringSerializer.class)
+    @ApiModelProperty(value = "课程id")
+    private Long courseId;
 
 
     @ApiModelProperty(value = "用户名称")
     @ApiModelProperty(value = "用户名称")
     private String userName;
     private String userName;
@@ -46,12 +50,20 @@ public class ScoreResult implements Serializable {
     @ApiModelProperty(value = "用户登陆名")
     @ApiModelProperty(value = "用户登陆名")
     private String userLoginName;
     private String userLoginName;
 
 
-    public Long getTeachCourseId() {
-        return teachCourseId;
+    public Long getCultureProgramId() {
+        return cultureProgramId;
+    }
+
+    public void setCultureProgramId(Long cultureProgramId) {
+        this.cultureProgramId = cultureProgramId;
+    }
+
+    public Long getCourseId() {
+        return courseId;
     }
     }
 
 
-    public void setTeachCourseId(Long teachCourseId) {
-        this.teachCourseId = teachCourseId;
+    public void setCourseId(Long courseId) {
+        this.courseId = courseId;
     }
     }
 
 
     public String getUserName() {
     public String getUserName() {

+ 18 - 18
distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/TCFinalScore.java

@@ -72,7 +72,7 @@ public class TCFinalScore extends BaseEntity implements Serializable {
 
 
     }
     }
 
 
-    public TCFinalScore(Long cultureProgramId,Long courseId, String courseCode, String courseName, String paperNumber, SourceEnum source, Long userId) {
+    public TCFinalScore(Long cultureProgramId, Long courseId, String courseCode, String courseName, String paperNumber, SourceEnum source, Long userId) {
         insertInfo(userId);
         insertInfo(userId);
         this.cultureProgramId = cultureProgramId;
         this.cultureProgramId = cultureProgramId;
         this.courseId = courseId;
         this.courseId = courseId;
@@ -83,7 +83,7 @@ public class TCFinalScore extends BaseEntity implements Serializable {
         this.enable = true;
         this.enable = true;
     }
     }
 
 
-    public TCFinalScore(MarkStudentScoreVo markStudentScoreVo, String scoreDetail, SourceEnum source, Long userId, Long cultureProgramId,Long courseId) {
+    public TCFinalScore(MarkStudentScoreVo markStudentScoreVo, String scoreDetail, SourceEnum source, Long userId, Long cultureProgramId, Long courseId) {
         insertInfo(userId);
         insertInfo(userId);
         this.examId = markStudentScoreVo.getExamId();
         this.examId = markStudentScoreVo.getExamId();
         this.courseCode = markStudentScoreVo.getCourseCode();
         this.courseCode = markStudentScoreVo.getCourseCode();
@@ -202,20 +202,20 @@ public class TCFinalScore extends BaseEntity implements Serializable {
         this.enable = enable;
         this.enable = enable;
     }
     }
 
 
-//    @Override
-//    public boolean equals(Object o) {
-//        if (this == o) {
-//            return true;
-//        }
-//        if (o == null || getClass() != o.getClass()) {
-//            return false;
-//        }
-//        TCFinalScore that = (TCFinalScore) o;
-//        return examId.equals(that.examId) && courseCode.equals(that.courseCode) && Objects.equals(courseName, that.courseName) && Objects.equals(paperNumber, that.paperNumber) && teachCourseId.equals(that.teachCourseId) && name.equals(that.name) && studentCode.equals(that.studentCode) && score.equals(that.score) && scoreDetail.equals(that.scoreDetail) && enable.equals(that.enable) && Objects.equals(getCreateId(), that.getCreateId());
-//    }
-//
-//    @Override
-//    public int hashCode() {
-//        return Objects.hash(examId, courseCode, courseName, paperNumber, teachCourseId, name, studentCode, score, scoreDetail, enable, getCreateId());
-//    }
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        TCFinalScore that = (TCFinalScore) o;
+        return cultureProgramId.equals(that.cultureProgramId) && courseCode.equals(that.courseCode) && Objects.equals(courseName, that.courseName) && Objects.equals(paperNumber, that.paperNumber) && courseId.equals(that.courseId) && name.equals(that.name) && studentCode.equals(that.studentCode) && score.equals(that.score) && scoreDetail.equals(that.scoreDetail) && enable.equals(that.enable) && Objects.equals(getCreateId(), that.getCreateId());
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(cultureProgramId, courseCode, courseName, paperNumber, courseId, name, studentCode, score, scoreDetail, enable, getCreateId());
+    }
 }
 }

+ 20 - 19
distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/TCPaperStruct.java

@@ -9,6 +9,7 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiModelProperty;
 
 
 import java.io.Serializable;
 import java.io.Serializable;
+import java.util.Objects;
 
 
 /**
 /**
  * <p>
  * <p>
@@ -69,7 +70,7 @@ public class TCPaperStruct extends BaseEntity implements Serializable {
 
 
     }
     }
 
 
-    public TCPaperStruct(Long cultureProgramId,Long courseId, String courseCode, String courseName, String paperNumber, String paperStructDimension, Long userId, Long dimensionSign) {
+    public TCPaperStruct(Long cultureProgramId, Long courseId, String courseCode, String courseName, String paperNumber, String paperStructDimension, Long userId, Long dimensionSign) {
         insertInfo(userId);
         insertInfo(userId);
         this.cultureProgramId = cultureProgramId;
         this.cultureProgramId = cultureProgramId;
         this.courseId = courseId;
         this.courseId = courseId;
@@ -81,7 +82,7 @@ public class TCPaperStruct extends BaseEntity implements Serializable {
         this.dimensionSign = dimensionSign;
         this.dimensionSign = dimensionSign;
     }
     }
 
 
-    public TCPaperStruct(Long cultureProgramId,Long courseId, String courseCode, String courseName, String paperNumber, String paperStruct, Double totalScore, Double passScore, Long userId) {
+    public TCPaperStruct(Long cultureProgramId, Long courseId, String courseCode, String courseName, String paperNumber, String paperStruct, Double totalScore, Double passScore, Long userId) {
         insertInfo(userId);
         insertInfo(userId);
         this.cultureProgramId = cultureProgramId;
         this.cultureProgramId = cultureProgramId;
         this.courseId = courseId;
         this.courseId = courseId;
@@ -99,7 +100,7 @@ public class TCPaperStruct extends BaseEntity implements Serializable {
         updateInfo(userId);
         updateInfo(userId);
     }
     }
 
 
-    public TCPaperStruct(Long cultureProgramId,Long courseId, String courseCode, String courseName, String paperNumber, String paperStruct, Long userId) {
+    public TCPaperStruct(Long cultureProgramId, Long courseId, String courseCode, String courseName, String paperNumber, String paperStruct, Long userId) {
         insertInfo(userId);
         insertInfo(userId);
         this.cultureProgramId = cultureProgramId;
         this.cultureProgramId = cultureProgramId;
         this.courseId = courseId;
         this.courseId = courseId;
@@ -206,20 +207,20 @@ public class TCPaperStruct extends BaseEntity implements Serializable {
         this.paperStructDimension = paperStructDimension;
         this.paperStructDimension = paperStructDimension;
     }
     }
 
 
-//    @Override
-//    public boolean equals(Object o) {
-//        if (this == o) {
-//            return true;
-//        }
-//        if (o == null || getClass() != o.getClass()) {
-//            return false;
-//        }
-//        TCPaperStruct that = (TCPaperStruct) o;
-//        return examId.equals(that.examId) && courseCode.equals(that.courseCode) && Objects.equals(courseName, that.courseName) && Objects.equals(paperNumber, that.paperNumber) && teachCourseId.equals(that.teachCourseId) && Objects.equals(paperStruct, that.paperStruct) && Objects.equals(paperStructDimension, that.paperStructDimension) && Objects.equals(getCreateId(), that.getCreateId());
-//    }
-//
-//    @Override
-//    public int hashCode() {
-//        return Objects.hash(examId, courseCode, courseName, paperNumber, teachCourseId, paperStruct, paperStructDimension, getCreateId());
-//    }
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) {
+            return true;
+        }
+        if (o == null || getClass() != o.getClass()) {
+            return false;
+        }
+        TCPaperStruct that = (TCPaperStruct) o;
+        return cultureProgramId.equals(that.cultureProgramId) && courseCode.equals(that.courseCode) && Objects.equals(courseName, that.courseName) && Objects.equals(paperNumber, that.paperNumber) && courseId.equals(that.courseId) && Objects.equals(paperStruct, that.paperStruct) && Objects.equals(paperStructDimension, that.paperStructDimension) && Objects.equals(getCreateId(), that.getCreateId());
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(cultureProgramId, courseCode, courseName, paperNumber, courseId, paperStruct, paperStructDimension, getCreateId());
+    }
 }
 }

+ 1 - 14
distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/TRBasicInfo.java

@@ -99,15 +99,11 @@ public class TRBasicInfo extends BaseEntity implements Serializable {
     @TableField(exist = false)
     @TableField(exist = false)
     private ReportResult reportResult;
     private ReportResult reportResult;
 
 
-    @JsonSerialize(using = ToStringSerializer.class)
-    @ApiModelProperty(value = "教学课程id")
-    private Long teachCourseId;
-
     public TRBasicInfo() {
     public TRBasicInfo() {
 
 
     }
     }
 
 
-    public TRBasicInfo(Long cultureProgramId,Long courseId, String courseCode, String courseName, String paperNumber, String openTime, String teachingObject, String teacher, Integer participantCount, Long userId) {
+    public TRBasicInfo(Long cultureProgramId, Long courseId, String courseCode, String courseName, String paperNumber, String openTime, String teachingObject, String teacher, Integer participantCount, Long userId) {
         insertInfo(userId);
         insertInfo(userId);
         this.cultureProgramId = cultureProgramId;
         this.cultureProgramId = cultureProgramId;
         this.courseId = courseId;
         this.courseId = courseId;
@@ -138,7 +134,6 @@ public class TRBasicInfo extends BaseEntity implements Serializable {
         this.courseCode = trBasicInfo.getCourseCode();
         this.courseCode = trBasicInfo.getCourseCode();
         this.courseName = trBasicInfo.getCourseName();
         this.courseName = trBasicInfo.getCourseName();
         this.paperNumber = trBasicInfo.getPaperNumber();
         this.paperNumber = trBasicInfo.getPaperNumber();
-        this.teachCourseId = trBasicInfo.getTeachCourseId();
         this.courseType = trBasicInfo.getCourseType();
         this.courseType = trBasicInfo.getCourseType();
         this.credit = trBasicInfo.getCredit();
         this.credit = trBasicInfo.getCredit();
         this.period = trBasicInfo.getPeriod();
         this.period = trBasicInfo.getPeriod();
@@ -185,14 +180,6 @@ public class TRBasicInfo extends BaseEntity implements Serializable {
         this.courseId = courseId;
         this.courseId = courseId;
     }
     }
 
 
-    public Long getTeachCourseId() {
-        return teachCourseId;
-    }
-
-    public void setTeachCourseId(Long teachCourseId) {
-        this.teachCourseId = teachCourseId;
-    }
-
     public ReportResult getReportResult() {
     public ReportResult getReportResult() {
         return reportResult;
         return reportResult;
     }
     }

+ 12 - 8
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/TCFinalScoreMapper.java

@@ -27,10 +27,11 @@ public interface TCFinalScoreMapper extends BaseMapper<TCFinalScore> {
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param teachCourseId
+     * @param cultureProgramId
+     * @param courseId
      * @return
      * @return
      */
      */
-    public IPage<TCFinalScore> finalScoreList(IPage<Map> iPage, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("teachCourseId") Long teachCourseId);
+    public IPage<TCFinalScore> finalScoreList(IPage<Map> iPage, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("cultureProgramId") Long cultureProgramId, @Param("courseId") Long courseId);
 
 
     /**
     /**
      * 查找期末成绩分数图
      * 查找期末成绩分数图
@@ -38,10 +39,11 @@ public interface TCFinalScoreMapper extends BaseMapper<TCFinalScore> {
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param teachCourseId
+     * @param cultureProgramId
+     * @param courseId
      * @return
      * @return
      */
      */
-    public FinalScoreDto finalScoreScoreOverView(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("teachCourseId") Long teachCourseId);
+    public FinalScoreDto finalScoreScoreOverView(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("cultureProgramId") Long cultureProgramId, @Param("courseId") Long courseId);
 
 
     /**
     /**
      * 查找期末成绩分数区间
      * 查找期末成绩分数区间
@@ -49,12 +51,13 @@ public interface TCFinalScoreMapper extends BaseMapper<TCFinalScore> {
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param teachCourseId
+     * @param cultureProgramId
+     * @param courseId
      * @param start
      * @param start
      * @param end
      * @param end
      * @return
      * @return
      */
      */
-    public int getCountByScoreRange(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("teachCourseId") Long teachCourseId, @Param("start") Double start, @Param("end") Double end);
+    public int getCountByScoreRange(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("cultureProgramId") Long cultureProgramId, @Param("courseId") Long courseId, @Param("start") Double start, @Param("end") Double end);
 
 
     /**
     /**
      * 查找考生成绩
      * 查找考生成绩
@@ -62,8 +65,9 @@ public interface TCFinalScoreMapper extends BaseMapper<TCFinalScore> {
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param teachCourseId
+     * @param cultureProgramId
+     * @param courseId
      * @return
      * @return
      */
      */
-    public List<FinalScoreResult> examStudentOverview(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("teachCourseId") Long teachCourseId);
+    public List<FinalScoreResult> examStudentOverview(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("cultureProgramId") Long cultureProgramId, @Param("courseId") Long courseId);
 }
 }

+ 17 - 9
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/TCFinalScoreService.java

@@ -23,6 +23,7 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
 
 
     /**
     /**
      * 导入期末成绩excel
      * 导入期末成绩excel
+     *
      * @param file
      * @param file
      * @param examId
      * @param examId
      * @param courseId
      * @param courseId
@@ -31,7 +32,7 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
      * @return
      * @return
      * @throws IOException
      * @throws IOException
      */
      */
-    public Map<String, String> finalScoreExcelImport(MultipartFile file, Long examId,Long courseId, String paperNumber, Long cultureProgramId) throws IOException;
+    public Map<String, String> finalScoreExcelImport(MultipartFile file, Long examId, Long courseId, String paperNumber, Long cultureProgramId) throws IOException;
 
 
     /**
     /**
      * 期末成绩列表(分页)
      * 期末成绩列表(分页)
@@ -40,10 +41,11 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param obeCourseOutlineId
+     * @param cultureProgramId
+     * @param courseId
      * @return
      * @return
      */
      */
-    public IPage<TCFinalScore> finalScoreList(IPage<Map> iPage, Long examId, String courseCode, String paperNumber, Long obeCourseOutlineId);
+    public IPage<TCFinalScore> finalScoreList(IPage<Map> iPage, Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId);
 
 
     /**
     /**
      * 查找期末成绩分数图
      * 查找期末成绩分数图
@@ -51,10 +53,11 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param obeCourseOutlineId
+     * @param cultureProgramId
+     * @param courseId
      * @return
      * @return
      */
      */
-    public FinalScoreDto finalScoreScoreOverView(Long examId, String courseCode, String paperNumber, Long obeCourseOutlineId);
+    public FinalScoreDto finalScoreScoreOverView(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId);
 
 
     /**
     /**
      * 查找期末成绩分数区间
      * 查找期末成绩分数区间
@@ -62,12 +65,13 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param obeCourseOutlineId
+     * @param cultureProgramId
+     * @param courseId
      * @param start
      * @param start
      * @param end
      * @param end
      * @return
      * @return
      */
      */
-    public int getCountByScoreRange(Long examId, String courseCode, String paperNumber, Long obeCourseOutlineId, Double start, Double end);
+    public int getCountByScoreRange(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId, Double start, Double end);
 
 
     /**
     /**
      * 查找考生成绩
      * 查找考生成绩
@@ -75,13 +79,15 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param obeCourseOutlineId
+     * @param cultureProgramId
+     * @param courseId
      * @return
      * @return
      */
      */
-    public List<FinalScoreResult> examStudentOverview(Long examId, String courseCode, String paperNumber, Long obeCourseOutlineId);
+    public List<FinalScoreResult> examStudentOverview(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId);
 
 
     /**
     /**
      * 同步期末成绩
      * 同步期末成绩
+     *
      * @param examId
      * @param examId
      * @param courseId
      * @param courseId
      * @param paperNumber
      * @param paperNumber
@@ -93,6 +99,7 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
 
 
     /**
     /**
      * 根据考试id/课程编码/试卷编码删除数据
      * 根据考试id/课程编码/试卷编码删除数据
+     *
      * @param cultureProgramId
      * @param cultureProgramId
      * @param courseId
      * @param courseId
      * @param paperNumber
      * @param paperNumber
@@ -102,6 +109,7 @@ public interface TCFinalScoreService extends IService<TCFinalScore> {
 
 
     /**
     /**
      * 根据考试id/课程编码/试卷编码查询数据库数据
      * 根据考试id/课程编码/试卷编码查询数据库数据
+     *
      * @param cultureProgramId
      * @param cultureProgramId
      * @param courseId
      * @param courseId
      * @param paperNumber
      * @param paperNumber

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

@@ -91,8 +91,7 @@ public class ObeCourseRequirementReportServiceImpl extends ServiceImpl<ObeCourse
             Objects.requireNonNull(basicCourse, "科目信息为空");
             Objects.requireNonNull(basicCourse, "科目信息为空");
             for (CourseRequirementMatrixDto c : courseRequirementMatrixDtoList) {
             for (CourseRequirementMatrixDto c : courseRequirementMatrixDtoList) {
                 if (Objects.equals(c.getCourseCode(), basicCourse.getCode())) {
                 if (Objects.equals(c.getCourseCode(), basicCourse.getCode())) {
-                    // TODO: 2024/6/14 wl
-                    TRBasicInfo trBasicInfo = null;
+                    TRBasicInfo trBasicInfo = trBasicInfoService.queryBasicInfo(obeCourseOutlineId, obeCourseOutline.getCourseId(), null);
                     if (Objects.nonNull(trBasicInfo)) {
                     if (Objects.nonNull(trBasicInfo)) {
                         ReportCourseEvaluationResultDto reportCourseEvaluationResultDto = Objects.nonNull(trBasicInfo.getCourseEvaluationResult()) ? JSONObject.parseObject(trBasicInfo.getCourseEvaluationResult(), ReportCourseEvaluationResultDto.class) : null;
                         ReportCourseEvaluationResultDto reportCourseEvaluationResultDto = Objects.nonNull(trBasicInfo.getCourseEvaluationResult()) ? JSONObject.parseObject(trBasicInfo.getCourseEvaluationResult(), ReportCourseEvaluationResultDto.class) : null;
                         if (Objects.nonNull(reportCourseEvaluationResultDto)) {
                         if (Objects.nonNull(reportCourseEvaluationResultDto)) {

+ 21 - 17
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TCFinalScoreServiceImpl.java

@@ -82,7 +82,7 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
 
 
     @Override
     @Override
     @Transactional
     @Transactional
-    public Map<String, String> finalScoreExcelImport(MultipartFile file, Long examId,Long courseId,String paperNumber, Long cultureProgramId) {
+    public Map<String, String> finalScoreExcelImport(MultipartFile file, Long examId, Long courseId, String paperNumber, Long cultureProgramId) {
         log.debug("导入Excel开始...");
         log.debug("导入Excel开始...");
         long start = System.currentTimeMillis();
         long start = System.currentTimeMillis();
         Map<String, String> messageMap = new LinkedHashMap<>();
         Map<String, String> messageMap = new LinkedHashMap<>();
@@ -119,7 +119,7 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
                         }
                         }
                         boolean error = false;
                         boolean error = false;
                         List<TCFinalScoreDto> tcFinalScoreDtoList = new ArrayList<>();
                         List<TCFinalScoreDto> tcFinalScoreDtoList = new ArrayList<>();
-                        TCFinalScore tcFinalScore = new TCFinalScore(cultureProgramId, courseId,null, markPaper.getCourseName(), paperNumber, SourceEnum.EXCEL_IMPORT, sysUser.getId());
+                        TCFinalScore tcFinalScore = new TCFinalScore(cultureProgramId, courseId, null, markPaper.getCourseName(), paperNumber, SourceEnum.EXCEL_IMPORT, sysUser.getId());
                         BigDecimal score = new BigDecimal(0);
                         BigDecimal score = new BigDecimal(0);
                         for (int j = 0; j < strs.length; j++) {
                         for (int j = 0; j < strs.length; j++) {
                             if (Objects.isNull(strs[j]) || Objects.equals(strs[j].trim(), "")) {
                             if (Objects.isNull(strs[j]) || Objects.equals(strs[j].trim(), "")) {
@@ -166,7 +166,7 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
                 }
                 }
                 if (!CollectionUtils.isEmpty(tcFinalScoreList)) {
                 if (!CollectionUtils.isEmpty(tcFinalScoreList)) {
                     successData.add("共导入").add(tcFinalScoreList.size() + "").add("条数据");
                     successData.add("共导入").add(tcFinalScoreList.size() + "").add("条数据");
-                    List<TCFinalScore> tcFinalScoreDbSourceList = tcFinalScoreService.queryFinalScore(cultureProgramId,courseId,paperNumber);
+                    List<TCFinalScore> tcFinalScoreDbSourceList = tcFinalScoreService.queryFinalScore(cultureProgramId, courseId, paperNumber);
                     if (CollectionUtils.isEmpty(tcFinalScoreDbSourceList) || !CollectionUtils.isEqualCollection(tcFinalScoreDbSourceList, tcFinalScoreList)) {
                     if (CollectionUtils.isEmpty(tcFinalScoreDbSourceList) || !CollectionUtils.isEqualCollection(tcFinalScoreDbSourceList, tcFinalScoreList)) {
                         tcFinalScoreService.removeByIds(tcFinalScoreDbSourceList.stream().map(s -> s.getId()).collect(Collectors.toList()));
                         tcFinalScoreService.removeByIds(tcFinalScoreDbSourceList.stream().map(s -> s.getId()).collect(Collectors.toList()));
                         tcFinalScoreService.saveBatch(tcFinalScoreList);
                         tcFinalScoreService.saveBatch(tcFinalScoreList);
@@ -201,12 +201,13 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param obeCourseOutlineId
+     * @param cultureProgramId
+     * @param courseId
      * @return
      * @return
      */
      */
     @Override
     @Override
-    public IPage<TCFinalScore> finalScoreList(IPage<Map> iPage, Long examId, String courseCode, String paperNumber, Long obeCourseOutlineId) {
-        return this.baseMapper.finalScoreList(iPage, examId, courseCode, paperNumber, obeCourseOutlineId);
+    public IPage<TCFinalScore> finalScoreList(IPage<Map> iPage, Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId) {
+        return this.baseMapper.finalScoreList(iPage, examId, courseCode, paperNumber, cultureProgramId, courseId);
     }
     }
 
 
     /**
     /**
@@ -215,12 +216,13 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param obeCourseOutlineId
+     * @param cultureProgramId
+     * @param courseId
      * @return
      * @return
      */
      */
     @Override
     @Override
-    public FinalScoreDto finalScoreScoreOverView(Long examId, String courseCode, String paperNumber, Long obeCourseOutlineId) {
-        return this.baseMapper.finalScoreScoreOverView(examId, courseCode, paperNumber, obeCourseOutlineId);
+    public FinalScoreDto finalScoreScoreOverView(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId) {
+        return this.baseMapper.finalScoreScoreOverView(examId, courseCode, paperNumber, cultureProgramId, courseId);
     }
     }
 
 
     /**
     /**
@@ -229,14 +231,15 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param obeCourseOutlineId
+     * @param cultureProgramId
+     * @param courseId
      * @param start
      * @param start
      * @param end
      * @param end
      * @return
      * @return
      */
      */
     @Override
     @Override
-    public int getCountByScoreRange(Long examId, String courseCode, String paperNumber, Long obeCourseOutlineId, Double start, Double end) {
-        return this.baseMapper.getCountByScoreRange(examId, courseCode, paperNumber, obeCourseOutlineId, start, end);
+    public int getCountByScoreRange(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId, Double start, Double end) {
+        return this.baseMapper.getCountByScoreRange(examId, courseCode, paperNumber, cultureProgramId, courseId, start, end);
     }
     }
 
 
     /**
     /**
@@ -245,12 +248,13 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param obeCourseOutlineId
+     * @param cultureProgramId
+     * @param courseId
      * @return
      * @return
      */
      */
     @Override
     @Override
-    public List<FinalScoreResult> examStudentOverview(Long examId, String courseCode, String paperNumber, Long obeCourseOutlineId) {
-        return this.baseMapper.examStudentOverview(examId, courseCode, paperNumber, obeCourseOutlineId);
+    public List<FinalScoreResult> examStudentOverview(Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId) {
+        return this.baseMapper.examStudentOverview(examId, courseCode, paperNumber, cultureProgramId, courseId);
     }
     }
 
 
     @Override
     @Override
@@ -276,7 +280,7 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
                                 paperStructDimensionResultList.add(new PaperStructDimensionResult(scoreItem.getMainNumber(), scoreItem.getSubNumber(), paperNumber, scoreItem.getTotalScore()));
                                 paperStructDimensionResultList.add(new PaperStructDimensionResult(scoreItem.getMainNumber(), scoreItem.getSubNumber(), paperNumber, scoreItem.getTotalScore()));
                             }
                             }
                         }
                         }
-                        tcFinalScoreList.add(new TCFinalScore(markStudentScoreVo, JacksonUtil.parseJson(tcFinalScoreDtoList), SourceEnum.SYNC, sysUser.getId(), cultureProgramId,courseId));
+                        tcFinalScoreList.add(new TCFinalScore(markStudentScoreVo, JacksonUtil.parseJson(tcFinalScoreDtoList), SourceEnum.SYNC, sysUser.getId(), cultureProgramId, courseId));
                     }
                     }
                 }
                 }
                 if (!CollectionUtils.isEmpty(tcFinalScoreList) && !CollectionUtils.isEmpty(paperStructDimensionResultList)) {
                 if (!CollectionUtils.isEmpty(tcFinalScoreList) && !CollectionUtils.isEmpty(paperStructDimensionResultList)) {
@@ -296,7 +300,7 @@ public class TCFinalScoreServiceImpl extends ServiceImpl<TCFinalScoreMapper, TCF
                     } else {
                     } else {
                         BasicCourse basicCourse = basicCourseService.getById(courseId);
                         BasicCourse basicCourse = basicCourseService.getById(courseId);
                         Objects.requireNonNull(basicCourse, "未找到基础课程信息");
                         Objects.requireNonNull(basicCourse, "未找到基础课程信息");
-                        tcPaperStruct = new TCPaperStruct(cultureProgramId,courseId, basicCourse.getCode(), basicCourse.getName(), paperNumber, JacksonUtil.parseJson(paperStructDimensionResultList), sysUser.getId());
+                        tcPaperStruct = new TCPaperStruct(cultureProgramId, courseId, basicCourse.getCode(), basicCourse.getName(), paperNumber, JacksonUtil.parseJson(paperStructDimensionResultList), sysUser.getId());
                     }
                     }
                     tcPaperStructService.saveOrUpdate(tcPaperStruct);
                     tcPaperStructService.saveOrUpdate(tcPaperStruct);
                 }
                 }

+ 19 - 15
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TRBasicInfoServiceImpl.java

@@ -12,9 +12,11 @@ import com.google.gson.reflect.TypeToken;
 import com.qmth.distributed.print.business.bean.dto.*;
 import com.qmth.distributed.print.business.bean.dto.*;
 import com.qmth.distributed.print.business.bean.dto.report.*;
 import com.qmth.distributed.print.business.bean.dto.report.*;
 import com.qmth.distributed.print.business.bean.result.FinalScoreResult;
 import com.qmth.distributed.print.business.bean.result.FinalScoreResult;
+import com.qmth.distributed.print.business.bean.result.ObeCourseOutlineResult;
 import com.qmth.distributed.print.business.bean.result.ObeCourseWeightResult;
 import com.qmth.distributed.print.business.bean.result.ObeCourseWeightResult;
 import com.qmth.distributed.print.business.bean.result.report.PaperStructDimensionResult;
 import com.qmth.distributed.print.business.bean.result.report.PaperStructDimensionResult;
 import com.qmth.distributed.print.business.bean.result.report.word.CourseReportBean;
 import com.qmth.distributed.print.business.bean.result.report.word.CourseReportBean;
+import com.qmth.distributed.print.business.entity.ObeCourseOutline;
 import com.qmth.distributed.print.business.entity.TCPaperStruct;
 import com.qmth.distributed.print.business.entity.TCPaperStruct;
 import com.qmth.distributed.print.business.entity.TRBasicInfo;
 import com.qmth.distributed.print.business.entity.TRBasicInfo;
 import com.qmth.distributed.print.business.entity.TRExamStudent;
 import com.qmth.distributed.print.business.entity.TRExamStudent;
@@ -106,7 +108,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
      */
      */
     @Override
     @Override
     public ReportScoreViewDto getScoreList(TRBasicInfo trBasicInfo, MarkPaper markPaper) {
     public ReportScoreViewDto getScoreList(TRBasicInfo trBasicInfo, MarkPaper markPaper) {
-        FinalScoreDto finalScoreDto = tcFinalScoreService.finalScoreScoreOverView(trBasicInfo.getExamId(), trBasicInfo.getCourseCode(), trBasicInfo.getPaperNumber(), trBasicInfo.getTeachCourseId());
+        FinalScoreDto finalScoreDto = tcFinalScoreService.finalScoreScoreOverView(trBasicInfo.getExamId(), trBasicInfo.getCourseCode(), trBasicInfo.getPaperNumber(), trBasicInfo.getCultureProgramId(), trBasicInfo.getCourseId());
         Objects.requireNonNull(finalScoreDto, "未找到期末成绩分数信息");
         Objects.requireNonNull(finalScoreDto, "未找到期末成绩分数信息");
 
 
         ReportScoreViewDto reportScoreViewDto = null;
         ReportScoreViewDto reportScoreViewDto = null;
@@ -115,7 +117,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
             BasicCourse basicCourse = basicCourseService.getByCode(trBasicInfo.getCourseCode());
             BasicCourse basicCourse = basicCourseService.getByCode(trBasicInfo.getCourseCode());
             markPaper = new MarkPaper(markPaper.getExamId(), markPaper.getCourseCode(), basicCourse.getName(), markPaper.getPaperNumber(), tcPaperStruct.getTotalScore(), tcPaperStruct.getPassScore());
             markPaper = new MarkPaper(markPaper.getExamId(), markPaper.getCourseCode(), basicCourse.getName(), markPaper.getPaperNumber(), tcPaperStruct.getTotalScore(), tcPaperStruct.getPassScore());
         }
         }
-        fillScoreRange(finalScoreDto, trBasicInfo.getExamId(), trBasicInfo.getPaperNumber(), trBasicInfo.getTeachCourseId(), markPaper);
+        fillScoreRange(finalScoreDto, trBasicInfo.getExamId(), trBasicInfo.getPaperNumber(), trBasicInfo.getCultureProgramId(), trBasicInfo.getCourseId(), markPaper);
         List<ScoreRangeVo> scoreRangeVoList = finalScoreDto.getScoreRange();
         List<ScoreRangeVo> scoreRangeVoList = finalScoreDto.getScoreRange();
         if (!CollectionUtils.isEmpty(scoreRangeVoList)) {
         if (!CollectionUtils.isEmpty(scoreRangeVoList)) {
             Integer failCount = scoreRangeVoList.get(0).getStudentCount();//第一行数据默认为不及格
             Integer failCount = scoreRangeVoList.get(0).getStudentCount();//第一行数据默认为不及格
@@ -141,7 +143,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
     public Map<String, Object> getReportCalculateParams(TRBasicInfo trBasicInfo, List<PaperStructDimensionResult> paperStructDimensionResultList, ObeCourseWeightResult obeCourseWeightResult) {
     public Map<String, Object> getReportCalculateParams(TRBasicInfo trBasicInfo, List<PaperStructDimensionResult> paperStructDimensionResultList, ObeCourseWeightResult obeCourseWeightResult) {
         Map<String, Object> paramsMap = new HashMap<>();
         Map<String, Object> paramsMap = new HashMap<>();
         //查询考生数据
         //查询考生数据
-        List<FinalScoreResult> finalScoreResultList = tcFinalScoreService.examStudentOverview(trBasicInfo.getExamId(), trBasicInfo.getCourseCode(), trBasicInfo.getPaperNumber(), trBasicInfo.getTeachCourseId());//考生成绩
+        List<FinalScoreResult> finalScoreResultList = tcFinalScoreService.examStudentOverview(trBasicInfo.getExamId(), trBasicInfo.getCourseCode(), trBasicInfo.getPaperNumber(), trBasicInfo.getCultureProgramId(), trBasicInfo.getCourseId());//考生成绩
         if (CollectionUtils.isEmpty(finalScoreResultList)) {
         if (CollectionUtils.isEmpty(finalScoreResultList)) {
             throw ExceptionResultEnum.ERROR.exception("成绩数据异常,平时成绩与期末成绩里考生名单不一致,请检查");
             throw ExceptionResultEnum.ERROR.exception("成绩数据异常,平时成绩与期末成绩里考生名单不一致,请检查");
         }
         }
@@ -415,7 +417,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
      * @param markPaper
      * @param markPaper
      * @param userId
      * @param userId
      * @param obeCourseWeightResult
      * @param obeCourseWeightResult
-     * @param obeCourseOutlineId
+     * @param cultureProgramId
      * @return
      * @return
      */
      */
     @Override
     @Override
@@ -432,7 +434,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
         }
         }
 
 
         if (Objects.isNull(trBasicInfo)) {
         if (Objects.isNull(trBasicInfo)) {
-            trBasicInfo = new TRBasicInfo(cultureProgramId,basicCourseService.findByCourseCode(markPaper.getCourseCode(), basicSemester.getSchoolId()).getId(), markPaper.getCourseCode(), markPaper.getCourseName(), markPaper.getPaperNumber(), basicSemester.getName(), teachingObject, teacher, null, userId);
+            trBasicInfo = new TRBasicInfo(cultureProgramId, basicCourseService.findByCourseCode(markPaper.getCourseCode(), basicSemester.getSchoolId()).getId(), markPaper.getCourseCode(), markPaper.getCourseName(), markPaper.getPaperNumber(), basicSemester.getName(), teachingObject, teacher, null, userId);
         } else {
         } else {
             trBasicInfo.setBasicInfo(markPaper.getExamId(), markPaper.getCourseCode(), markPaper.getCourseName(), markPaper.getPaperNumber(), basicSemester.getName(), teachingObject, teacher, null);
             trBasicInfo.setBasicInfo(markPaper.getExamId(), markPaper.getCourseCode(), markPaper.getCourseName(), markPaper.getPaperNumber(), basicSemester.getName(), teachingObject, teacher, null);
         }
         }
@@ -999,7 +1001,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
     @Override
     @Override
     @Transactional
     @Transactional
     public void clearReportData(Long cultureProgramId, Long courseId, String paperNumber, boolean clearDimension) {
     public void clearReportData(Long cultureProgramId, Long courseId, String paperNumber, boolean clearDimension) {
-        trExamStudentService.remove(cultureProgramId,courseId, paperNumber);
+        trExamStudentService.remove(cultureProgramId, courseId, paperNumber);
         trBasicInfoService.remove(cultureProgramId, courseId, paperNumber);
         trBasicInfoService.remove(cultureProgramId, courseId, paperNumber);
         if (clearDimension) {
         if (clearDimension) {
             TCPaperStruct tcPaperStruct = tcPaperStructService.queryPaperStruct(cultureProgramId, courseId, paperNumber);
             TCPaperStruct tcPaperStruct = tcPaperStructService.queryPaperStruct(cultureProgramId, courseId, paperNumber);
@@ -1051,10 +1053,11 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
      * @param finalScoreDto
      * @param finalScoreDto
      * @param examId
      * @param examId
      * @param paperNumber
      * @param paperNumber
-     * @param obeCourseOutlineId
+     * @param cultureProgramId
+     * @param courseId
      * @param markPaper
      * @param markPaper
      */
      */
-    protected void fillScoreRange(FinalScoreDto finalScoreDto, Long examId, String paperNumber, Long obeCourseOutlineId, MarkPaper markPaper) {
+    protected void fillScoreRange(FinalScoreDto finalScoreDto, Long examId, String paperNumber, Long cultureProgramId, Long courseId, MarkPaper markPaper) {
         //分数区间
         //分数区间
         Double passScore = markPaper.getPassScore();//及格分
         Double passScore = markPaper.getPassScore();//及格分
         Objects.requireNonNull(passScore, "及格分为空");
         Objects.requireNonNull(passScore, "及格分为空");
@@ -1068,20 +1071,20 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
         //开始、结束分数区间
         //开始、结束分数区间
         Double startInterval = 0.5d, endInterval = 9.5d, increaseStartScore = passScore - startInterval,
         Double startInterval = 0.5d, endInterval = 9.5d, increaseStartScore = passScore - startInterval,
                 increaseEndScore = increaseStartScore + startInterval + endInterval;
                 increaseEndScore = increaseStartScore + startInterval + endInterval;
-        scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, obeCourseOutlineId, 1.0d, increaseStartScore));
+        scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, cultureProgramId, courseId, 1.0d, increaseStartScore));
         increaseStartScore = increaseStartScore + startInterval;
         increaseStartScore = increaseStartScore + startInterval;
         increaseEndScore = increaseStartScore + endInterval;
         increaseEndScore = increaseStartScore + endInterval;
         if (totalScore.doubleValue() - increaseEndScore.doubleValue() == startInterval || increaseEndScore.doubleValue() >= totalScore.doubleValue()) {
         if (totalScore.doubleValue() - increaseEndScore.doubleValue() == startInterval || increaseEndScore.doubleValue() >= totalScore.doubleValue()) {
             increaseEndScore = totalScore;
             increaseEndScore = totalScore;
-            scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, obeCourseOutlineId, increaseStartScore, increaseEndScore));
+            scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, cultureProgramId, courseId, increaseStartScore, increaseEndScore));
         } else {
         } else {
             while (increaseEndScore.doubleValue() < totalScore.doubleValue()) {
             while (increaseEndScore.doubleValue() < totalScore.doubleValue()) {
-                scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, obeCourseOutlineId, increaseStartScore, increaseEndScore));
+                scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, cultureProgramId, courseId, increaseStartScore, increaseEndScore));
                 increaseStartScore = increaseEndScore + startInterval;
                 increaseStartScore = increaseEndScore + startInterval;
                 increaseEndScore = increaseStartScore + endInterval;
                 increaseEndScore = increaseStartScore + endInterval;
                 if (totalScore.doubleValue() - increaseEndScore.doubleValue() == startInterval || increaseEndScore.doubleValue() >= totalScore.doubleValue()) {
                 if (totalScore.doubleValue() - increaseEndScore.doubleValue() == startInterval || increaseEndScore.doubleValue() >= totalScore.doubleValue()) {
                     increaseEndScore = totalScore;
                     increaseEndScore = totalScore;
-                    scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, obeCourseOutlineId, increaseStartScore, increaseEndScore));
+                    scoreRange.add(getScoreRangeVo(finalScoreDto.getStudentCount(), examId, markPaper.getCourseCode(), paperNumber, cultureProgramId, courseId, increaseStartScore, increaseEndScore));
                 }
                 }
             }
             }
         }
         }
@@ -1198,13 +1201,14 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
      * @param examId
      * @param examId
      * @param courseCode
      * @param courseCode
      * @param paperNumber
      * @param paperNumber
-     * @param obeCourseOutlineId
+     * @param cultureProgramId
+     * @param courseId
      * @param start
      * @param start
      * @param end
      * @param end
      * @return
      * @return
      */
      */
-    protected ScoreRangeVo getScoreRangeVo(int toltal, Long examId, String courseCode, String paperNumber, Long obeCourseOutlineId, Double start, Double end) {
-        int count = tcFinalScoreService.getCountByScoreRange(examId, courseCode, paperNumber, obeCourseOutlineId, start, end);
+    protected ScoreRangeVo getScoreRangeVo(int toltal, Long examId, String courseCode, String paperNumber, Long cultureProgramId, Long courseId, Double start, Double end) {
+        int count = tcFinalScoreService.getCountByScoreRange(examId, courseCode, paperNumber, cultureProgramId, courseId, start, end);
         Double rate = null;
         Double rate = null;
         if (toltal != 0) {
         if (toltal != 0) {
             rate = new BigDecimal(count).divide(new BigDecimal(toltal), 2, BigDecimal.ROUND_HALF_UP).setScale(2, BigDecimal.ROUND_HALF_UP).multiply(SystemConstant.PERCENT).doubleValue();
             rate = new BigDecimal(count).divide(new BigDecimal(toltal), 2, BigDecimal.ROUND_HALF_UP).setScale(2, BigDecimal.ROUND_HALF_UP).multiply(SystemConstant.PERCENT).doubleValue();

+ 22 - 11
distributed-print-business/src/main/resources/mapper/TCFinalScoreMapper.xml

@@ -14,8 +14,11 @@
             <if test="paperNumber != null and paperNumber != ''">
             <if test="paperNumber != null and paperNumber != ''">
                 and t.paper_number = #{paperNumber}
                 and t.paper_number = #{paperNumber}
             </if>
             </if>
-            <if test="obeCourseOutlineId != null and obeCourseOutlineId != ''">
-                and t.teach_course_id = #{obeCourseOutlineId}
+            <if test="cultureProgramId != null and cultureProgramId != ''">
+                and t.culture_program_id = #{cultureProgramId}
+            </if>
+            <if test="courseId != null and courseId != ''">
+                and t.course_id = #{courseId}
             </if>
             </if>
         </where>
         </where>
         order by t.student_code
         order by t.student_code
@@ -27,7 +30,7 @@
             min(case when tcfs.score is not null then tcfs.score else null end) finalScoreMinScore,
             min(case when tcfs.score is not null then tcfs.score else null end) finalScoreMinScore,
             avg(case when tcfs.score is not null then tcfs.score else null end) finalScoreAvgScore
             avg(case when tcfs.score is not null then tcfs.score else null end) finalScoreAvgScore
             from t_c_final_score tcfs
             from t_c_final_score tcfs
-            join t_c_usual_score tcus on tcfs.exam_id = tcus.exam_id and tcfs.course_code = tcus.course_code and tcfs.teach_course_id = tcus.teach_course_id and tcfs.student_code = tcus.student_code
+            join t_c_usual_score tcus on tcfs.exam_id = tcus.exam_id and tcfs.course_code = tcus.course_code and tcfs.course_id = tcus.course_id and tcfs.culture_program_id = tcus.culture_program_id and tcfs.student_code = tcus.student_code
         <where>
         <where>
             <if test="examId != null and examId != ''">
             <if test="examId != null and examId != ''">
                 and tcfs.exam_id = #{examId}
                 and tcfs.exam_id = #{examId}
@@ -38,8 +41,11 @@
             <if test="paperNumber != null and paperNumber != ''">
             <if test="paperNumber != null and paperNumber != ''">
                 and tcfs.paper_number = #{paperNumber}
                 and tcfs.paper_number = #{paperNumber}
             </if>
             </if>
-            <if test="obeCourseOutlineId != null and obeCourseOutlineId != ''">
-                and tcfs.teach_course_id = #{obeCourseOutlineId}
+            <if test="cultureProgramId != null and cultureProgramId != ''">
+                and tcfs.culture_program_id = #{cultureProgramId}
+            </if>
+            <if test="courseId != null and courseId != ''">
+                and tcfs.course_id = #{courseId}
             </if>
             </if>
                 and tcfs.enable = true and tcus.enable = true
                 and tcfs.enable = true and tcus.enable = true
         </where>
         </where>
@@ -57,8 +63,11 @@
             <if test="paperNumber != null and paperNumber != ''">
             <if test="paperNumber != null and paperNumber != ''">
                 and tcfs.paper_number = #{paperNumber}
                 and tcfs.paper_number = #{paperNumber}
             </if>
             </if>
-            <if test="obeCourseOutlineId != null and obeCourseOutlineId != ''">
-                and tcfs.teach_course_id = #{obeCourseOutlineId}
+            <if test="cultureProgramId != null and cultureProgramId != ''">
+                and tcfs.culture_program_id = #{cultureProgramId}
+            </if>
+            <if test="courseId != null and courseId != ''">
+                and tcfs.course_id = #{courseId}
             </if>
             </if>
                 and tcfs.score &gt;= #{start} and tcfs.score &lt;= #{end}
                 and tcfs.score &gt;= #{start} and tcfs.score &lt;= #{end}
                 and tcfs.enable = true
                 and tcfs.enable = true
@@ -73,7 +82,7 @@
             tcus.score as usualScore,
             tcus.score as usualScore,
             es.teach_clazz_name as administrativeClass
             es.teach_clazz_name as administrativeClass
         from t_c_final_score tcfs
         from t_c_final_score tcfs
-        join t_c_usual_score tcus on tcfs.exam_id = tcus.exam_id and tcfs.course_code = tcus.course_code and tcfs.teach_course_id = tcus.teach_course_id and tcfs.student_code = tcus.student_code
+        join t_c_usual_score tcus on tcfs.exam_id = tcus.exam_id and tcfs.course_code = tcus.course_code and tcfs.course_id = tcus.course_id and tcfs.culture_program_id = tcus.culture_program_id and tcfs.student_code = tcus.student_code
         left join exam_student es on es.exam_id = tcfs.exam_id and es.paper_number = tcfs.paper_number and es.student_code = tcfs.student_code
         left join exam_student es on es.exam_id = tcfs.exam_id and es.paper_number = tcfs.paper_number and es.student_code = tcfs.student_code
         <where>
         <where>
             <if test="examId != null and examId != ''">
             <if test="examId != null and examId != ''">
@@ -85,10 +94,12 @@
             <if test="paperNumber != null and paperNumber != ''">
             <if test="paperNumber != null and paperNumber != ''">
                 and tcfs.paper_number = #{paperNumber}
                 and tcfs.paper_number = #{paperNumber}
             </if>
             </if>
-            <if test="obeCourseOutlineId != null and obeCourseOutlineId != ''">
-                and tcfs.teach_course_id = #{obeCourseOutlineId}
+            <if test="cultureProgramId != null and cultureProgramId != ''">
+                and tcfs.culture_program_id = #{cultureProgramId}
+            </if>
+            <if test="courseId != null and courseId != ''">
+                and tcfs.course_id = #{courseId}
             </if>
             </if>
-                and tcfs.enable = true and tcus.enable = true
         </where>
         </where>
             order by tcfs.student_code
             order by tcfs.student_code
     </select>
     </select>

+ 4 - 3
distributed-print/src/main/java/com/qmth/distributed/print/api/TCFinalScoreController.java

@@ -87,7 +87,7 @@ public class TCFinalScoreController {
                                            @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber,
                                            @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber,
                                            @ApiParam(value = "培养方案id", required = true) @RequestParam Long cultureProgramId) throws IOException {
                                            @ApiParam(value = "培养方案id", required = true) @RequestParam Long cultureProgramId) throws IOException {
         printCommonService.getLock(cultureProgramId, courseId, paperNumber);
         printCommonService.getLock(cultureProgramId, courseId, paperNumber);
-        TCPaperStruct tcPaperStruct = tcPaperStructService.queryPaperStruct(cultureProgramId,courseId, paperNumber);
+        TCPaperStruct tcPaperStruct = tcPaperStructService.queryPaperStruct(cultureProgramId, courseId, paperNumber);
         List<ExcelField> excelFieldList = new ArrayList<>();
         List<ExcelField> excelFieldList = new ArrayList<>();
         excelFieldList.addAll(new ArrayList<>(Arrays.asList(new ExcelField("studentCode", "学号", true), new ExcelField("name", "姓名", true), new ExcelField("score", "成绩", true))));
         excelFieldList.addAll(new ArrayList<>(Arrays.asList(new ExcelField("studentCode", "学号", true), new ExcelField("name", "姓名", true), new ExcelField("score", "成绩", true))));
         if (Objects.isNull(tcPaperStruct) || Objects.isNull(tcPaperStruct.getPaperStruct())) {
         if (Objects.isNull(tcPaperStruct) || Objects.isNull(tcPaperStruct.getPaperStruct())) {
@@ -191,10 +191,11 @@ public class TCFinalScoreController {
     public Result finalScoreList(@ApiParam(value = "考试id", required = true) @RequestParam Long examId,
     public Result finalScoreList(@ApiParam(value = "考试id", required = true) @RequestParam Long examId,
                                  @ApiParam(value = "科目编码", required = true) @RequestParam String courseCode,
                                  @ApiParam(value = "科目编码", required = true) @RequestParam String courseCode,
                                  @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber,
                                  @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber,
-                                 @ApiParam(value = "教学课程id", required = true) @RequestParam Long teachCourseId,
+                                 @ApiParam(value = "培养方案id", required = true) @RequestParam Long cultureProgramId,
+                                 @ApiParam(value = "课程id", required = true) @RequestParam Long courseId,
                                  @ApiParam(value = "分页页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
                                  @ApiParam(value = "分页页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
                                  @ApiParam(value = "分页数", required = true) @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) throws IOException {
                                  @ApiParam(value = "分页数", required = true) @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) throws IOException {
-        return ResultUtil.ok(tcFinalScoreService.finalScoreList(new Page<>(pageNumber, pageSize), examId, courseCode, paperNumber, teachCourseId));
+        return ResultUtil.ok(tcFinalScoreService.finalScoreList(new Page<>(pageNumber, pageSize), examId, courseCode, paperNumber, cultureProgramId, courseId));
     }
     }
 
 
     @ApiOperation(value = "期末成绩编辑")
     @ApiOperation(value = "期末成绩编辑")

+ 4 - 4
distributed-print/src/main/java/com/qmth/distributed/print/api/TRBasicInfoController.java

@@ -55,7 +55,6 @@ import javax.validation.constraints.Max;
 import javax.validation.constraints.Min;
 import javax.validation.constraints.Min;
 import java.io.File;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileInputStream;
-import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStream;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.util.*;
 import java.util.*;
@@ -106,8 +105,8 @@ public class TRBasicInfoController {
     @RequestMapping(value = "/report/list", method = RequestMethod.POST)
     @RequestMapping(value = "/report/list", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "分页查询", response = ObeScoreResult.class)})
     @ApiResponses({@ApiResponse(code = 200, message = "分页查询", response = ObeScoreResult.class)})
     public Result reportList(@ApiParam(value = "培养方案ID", required = true) @RequestParam Long cultureProgramId, @ApiParam(value = "学期ID", required = true) @RequestParam Long semesterId,
     public Result reportList(@ApiParam(value = "培养方案ID", required = true) @RequestParam Long cultureProgramId, @ApiParam(value = "学期ID", required = true) @RequestParam Long semesterId,
-            @ApiParam(value = "课程id") @RequestParam(required = false) Long courseId, @ApiParam(value = "分页页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
-            @ApiParam(value = "分页数", required = true) @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
+                             @ApiParam(value = "课程id") @RequestParam(required = false) Long courseId, @ApiParam(value = "分页页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
+                             @ApiParam(value = "分页数", required = true) @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
         return ResultUtil.ok(
         return ResultUtil.ok(
                 printCommonService.scoreList(new Page<>(pageNumber, pageSize), cultureProgramId, semesterId, courseId));
                 printCommonService.scoreList(new Page<>(pageNumber, pageSize), cultureProgramId, semesterId, courseId));
     }
     }
@@ -211,7 +210,8 @@ public class TRBasicInfoController {
                 trBasicInfoDb = new TRBasicInfo(trBasicInfo, sysUser.getId());
                 trBasicInfoDb = new TRBasicInfo(trBasicInfo, sysUser.getId());
                 TCPaperStruct tcPaperStruct = tcPaperStructService.queryPaperStruct(trBasicInfo.getCultureProgramId(), trBasicInfo.getCourseId(), trBasicInfo.getPaperNumber());
                 TCPaperStruct tcPaperStruct = tcPaperStructService.queryPaperStruct(trBasicInfo.getCultureProgramId(), trBasicInfo.getCourseId(), trBasicInfo.getPaperNumber());
                 MarkPaper markPaper = printCommonService.getMarkPaper(trBasicInfo.getExamId(), trBasicInfo.getCourseCode(), Objects.nonNull(tcPaperStruct) ? tcPaperStruct.getPaperNumber() : trBasicInfo.getPaperNumber());
                 MarkPaper markPaper = printCommonService.getMarkPaper(trBasicInfo.getExamId(), trBasicInfo.getCourseCode(), Objects.nonNull(tcPaperStruct) ? tcPaperStruct.getPaperNumber() : trBasicInfo.getPaperNumber());
-                trBasicInfoDb = trBasicInfoService.getReportView(trBasicInfoDb, markPaper, sysUser.getId(), trBasicInfoService.findCourseWeightResultRmi(trBasicInfo.getTeachCourseId()), trBasicInfo.getCultureProgramId());
+                ObeCourseOutline obeCourseOutline = obeCourseOutlineService.findByCultureProgramIdAndCourseId(trBasicInfo.getCultureProgramId(), trBasicInfo.getCourseId());
+                trBasicInfoDb = trBasicInfoService.getReportView(trBasicInfoDb, markPaper, sysUser.getId(), trBasicInfoService.findCourseWeightResultRmi(obeCourseOutline.getId()), trBasicInfo.getCultureProgramId());
             } else {
             } else {
                 trBasicInfoDb.updateInfo(trBasicInfo, sysUser.getId());
                 trBasicInfoDb.updateInfo(trBasicInfo, sysUser.getId());
             }
             }