xiaofei před 2 roky
rodič
revize
6a39be7805

+ 2 - 1
src/main/java/com/qmth/eds/api/CloudMarkingScoreController.java

@@ -67,9 +67,10 @@ public class CloudMarkingScoreController {
     @PostMapping("/page")
     public Result page(@RequestParam(value = "semesterId", required = false) Long semesterId,
                        @RequestParam(value = "examTypeId", required = false) Long examTypeId,
+                       @RequestParam(value = "collegeId", required = false) Long collegeId,
                        @RequestParam(value = "examId", required = false) String examId,
                        @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
                        @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
-        return ResultUtil.ok(cloudMarkingScoreService.pageData(semesterId, examTypeId, examId, pageNumber, pageSize));
+        return ResultUtil.ok(cloudMarkingScoreService.pageData(collegeId, semesterId, examTypeId, examId, pageNumber, pageSize));
     }
 }

+ 2 - 0
src/main/java/com/qmth/eds/common/entity/CloudMarkingScoreForeign.java

@@ -4,6 +4,7 @@ import com.alibaba.excel.annotation.ExcelIgnore;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import com.qmth.eds.common.contant.SystemConstant;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 
@@ -67,6 +68,7 @@ public class CloudMarkingScoreForeign implements Serializable {
     }
 
     public CloudMarkingScoreForeign(Long schoolId, Long semesterId, Long examTypeId, Integer examId, String xnm, String xqm, String jxbId, String kch, String kcmc, String xh, String xmcj) {
+        this.id = SystemConstant.getDbUuid();
         this.schoolId = schoolId;
         this.semesterId = semesterId;
         this.examTypeId = examTypeId;

+ 1 - 1
src/main/java/com/qmth/eds/mapper/CloudMarkingScoreMapper.java

@@ -12,5 +12,5 @@ import org.apache.ibatis.annotations.Param;
  */
 public interface CloudMarkingScoreMapper extends BaseMapper<CloudMarkingScore> {
 
-    IPage<CloudMarkingScoreDto> pageData(@Param("page") Page<CloudMarkingScoreDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examTypeId") Long examTypeId, @Param("examId") String examId);
+    IPage<CloudMarkingScoreDto> pageData(@Param("page") Page<CloudMarkingScoreDto> page, @Param("collegeId") Long collegeId, @Param("semesterId") Long semesterId, @Param("examTypeId") Long examTypeId, @Param("examId") String examId);
 }

+ 3 - 1
src/main/java/com/qmth/eds/service/AsyncTaskService.java

@@ -3,6 +3,7 @@ package com.qmth.eds.service;
 import com.qmth.eds.common.entity.ExamScheduleTask;
 import com.qmth.eds.common.entity.TBSyncTask;
 import com.qmth.eds.common.enums.TaskTypeEnum;
+import com.qmth.eds.common.util.ServletUtil;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -29,9 +30,10 @@ public class AsyncTaskService {
     }
 
     public void syncStudentScore(Long semesterId, Long examTypeId, Long collegeId, Integer examId) {
+        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         // 记录日志
         String remark = "云阅卷考试:" + examId;
         TBSyncTask tbSyncTask = tbSyncTaskService.saveTask(collegeId, semesterId, examTypeId, TaskTypeEnum.CLOUD_MARKING_STUDENT_SCORE, remark);
-        dataSyncService.syncCloudMarkingStudentScoreData(tbSyncTask, examId);
+        dataSyncService.syncCloudMarkingStudentScoreData(tbSyncTask, schoolId, examId);
     }
 }

+ 1 - 1
src/main/java/com/qmth/eds/service/CloudMarkingScoreService.java

@@ -12,5 +12,5 @@ public interface CloudMarkingScoreService extends IService<CloudMarkingScore> {
 
     void deleteByKeys(Long schoolId, Long semesterId, Long examTypeId, Integer examId);
 
-    IPage<CloudMarkingScoreDto> pageData(Long semesterId, Long examTypeId, String examId, Integer pageNumber, Integer pageSize);
+    IPage<CloudMarkingScoreDto> pageData(Long collegeId, Long semesterId, Long examTypeId, String examId, Integer pageNumber, Integer pageSize);
 }

+ 1 - 1
src/main/java/com/qmth/eds/service/DataSyncService.java

@@ -25,5 +25,5 @@ public interface DataSyncService {
      * @param examId     云阅卷考试ID
      */
     @Async
-    void syncCloudMarkingStudentScoreData(TBSyncTask tbSyncTask, Integer examId);
+    void syncCloudMarkingStudentScoreData(TBSyncTask tbSyncTask, Long schoolId, Integer examId);
 }

+ 2 - 2
src/main/java/com/qmth/eds/service/impl/CloudMarkingScoreServiceImpl.java

@@ -25,9 +25,9 @@ public class CloudMarkingScoreServiceImpl extends ServiceImpl<CloudMarkingScoreM
     }
 
     @Override
-    public IPage<CloudMarkingScoreDto> pageData(Long semesterId, Long examTypeId, String examId, Integer pageNumber, Integer pageSize) {
+    public IPage<CloudMarkingScoreDto> pageData(Long collegeId, Long semesterId, Long examTypeId, String examId, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Page<CloudMarkingScoreDto> page = new Page<>(pageNumber, pageSize);
-        return this.baseMapper.pageData(page, schoolId, semesterId, examTypeId, examId);
+        return this.baseMapper.pageData(page, collegeId, semesterId, examTypeId, examId);
     }
 }

+ 6 - 7
src/main/java/com/qmth/eds/service/impl/DataSyncServiceImpl.java

@@ -182,7 +182,7 @@ public class DataSyncServiceImpl implements DataSyncService {
     }
 
     @Override
-    public void syncCloudMarkingStudentScoreData(TBSyncTask tbSyncTask, Integer examId) {
+    public void syncCloudMarkingStudentScoreData(TBSyncTask tbSyncTask, Long schoolId, Integer examId) {
         // 同步初始参数
         TaskResultEnum result = null;
         String errorMessage = "";
@@ -228,8 +228,8 @@ public class DataSyncServiceImpl implements DataSyncService {
                         cloudMarkingScore.setTotalScore(m.getString("totalScore"));
                         cloudMarkingScore.setObjectiveScore(m.getString("objectiveScore"));
                         cloudMarkingScore.setSubjectiveScore(m.getString("subjectiveScore"));
-//                        cloudMarkingScore.setObjectiveScoreDetail(m.getString("objectiveScoreDetail"));
-//                        cloudMarkingScore.setSubjectiveScoreDetail(m.getString("subjectiveScoreDetail"));
+                        cloudMarkingScore.setObjectiveScoreDetail(m.getString("objectiveScoreDetail"));
+                        cloudMarkingScore.setSubjectiveScoreDetail(m.getString("subjectiveScoreDetail"));
 //                        cloudMarkingScore.setMarkTags(m.getString("markTags"));
                         return cloudMarkingScore;
                     }).collect(Collectors.toList());
@@ -239,7 +239,7 @@ public class DataSyncServiceImpl implements DataSyncService {
 
             //2.调用教务系统接口回传成绩
             if (!cloudMarkingScoreList.isEmpty()) {
-                saveScoreData(collegeId, semesterId, examTypeId, examId, cloudMarkingScoreList);
+                saveScoreData(schoolId, collegeId, semesterId, examTypeId, examId, cloudMarkingScoreList);
             }
 
             result = TaskResultEnum.SUCCESS;
@@ -268,8 +268,7 @@ public class DataSyncServiceImpl implements DataSyncService {
     }
 
     @Transactional
-    public void saveScoreData(Long collegeId, Long semesterId, Long examTypeId, Integer examId, List<CloudMarkingScore> cloudMarkingScoreList) {
-        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+    public void saveScoreData(Long schoolId, Long collegeId, Long semesterId, Long examTypeId, Integer examId, List<CloudMarkingScore> cloudMarkingScoreList) {
         // 删除旧数据
         cloudMarkingScoreService.deleteByKeys(collegeId, semesterId, examTypeId, examId);
 
@@ -330,7 +329,7 @@ public class DataSyncServiceImpl implements DataSyncService {
         for (CloudMarkingScoreForeign scoreForeign : cloudMarkingScoreForeigns) {
             if (foreignData.size() == 1000) {
                 cloudMarkingScoreForeignService.saveBatch(foreignData);
-                data.clear();
+                foreignData.clear();
             }
             foreignData.add(scoreForeign);
         }

+ 1 - 1
src/main/resources/mapper/CloudMarkingScoreMapper.xml

@@ -25,7 +25,7 @@
         FROM
             cloud_marking_score
         <where>
-            and school_id = #{schoolId}
+            and school_id = #{collegeId}
             <if test="semesterId != null">
                 and semester_id = #{semesterId}
             </if>