Explorar o código

ExamScoreEntity去除

xiatian %!s(int64=5) %!d(string=hai) anos
pai
achega
f05ba09a66
Modificáronse 15 ficheiros con 264 adicións e 241 borrados
  1. 27 12
      examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/provider/ExamRecordCloudServiceProvider.java
  2. 7 6
      examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/provider/ExamScoreCloudServiceProvider.java
  3. 23 26
      examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/provider/ExamScoreDataCloudServiceProvider.java
  4. 3 3
      examcloud-core-oe-admin-dao/src/main/java/cn/com/qmth/examcloud/core/oe/admin/dao/ExamRecordDataRepo.java
  5. 3 3
      examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/ExamScoreService.java
  6. 45 31
      examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/ExamAuditServiceImpl.java
  7. 24 29
      examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/ExamRecordQuestionsServiceImpl.java
  8. 50 43
      examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/ExamRecordServiceImpl.java
  9. 16 18
      examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/ExamScoreServiceImpl.java
  10. 24 23
      examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/ExamStudentFinalScoreServiceImpl.java
  11. 5 6
      examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/OfflineExamServiceImpl.java
  12. 8 10
      examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/PracticeServiceImpl.java
  13. 4 0
      examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/pushscore/bean/ExamScorePushInfo.java
  14. 14 18
      examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/pushscore/cup/CupExamScorePushServiceImpl.java
  15. 11 13
      examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/pushscore/swufe/SwufeExamScorePushServiceImpl.java

+ 27 - 12
examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/provider/ExamRecordCloudServiceProvider.java

@@ -34,14 +34,12 @@ import cn.com.qmth.examcloud.core.oe.admin.base.utils.Check;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamCaptureRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordDataRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordQuestionsRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScoreRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamStudentRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamCaptureEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamQuestionEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordForMarkingEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordQuestionsEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamStudentEntity;
 import cn.com.qmth.examcloud.core.oe.admin.service.ExamRecordForMarkingService;
 import cn.com.qmth.examcloud.core.oe.admin.service.others.ExamCacheTransferHelper;
@@ -70,8 +68,8 @@ public class ExamRecordCloudServiceProvider extends ControllerSupport implements
      */
     private static final long serialVersionUID = 7678785677176906341L;
 
-    @Autowired
-    private ExamScoreRepo examScoreRepo;
+//    @Autowired
+//    private ExamScoreRepo examScoreRepo;
 
     @Autowired
     private ExamRecordDataRepo examRecordDataRepo;
@@ -108,10 +106,17 @@ public class ExamRecordCloudServiceProvider extends ControllerSupport implements
     @PostMapping("/queryExamRecordForSelectScoreByScoreId")
     public QueryExamRecordForSelectScoreResp queryExamRecordForSelectScoreByScoreId(@RequestBody QueryExamRecordForSelectScoreReq req) {
         QueryExamRecordForSelectScoreResp resp = new QueryExamRecordForSelectScoreResp();
-        if (req.getExamScoreId() != null) {
-            ExamScoreEntity examScore = GlobalHelper.getEntity(examScoreRepo, req.getExamScoreId(), ExamScoreEntity.class);
+        Long examRecordDataId=null;
+        if (req.getExamRecordDataId() != null) {
+            examRecordDataId=req.getExamRecordDataId();
+        }
+        if (examRecordDataId==null&&req.getExamScoreId() != null) {
+            examRecordDataId=req.getExamScoreId();
+        }
+        if (examRecordDataId != null) {
+//            ExamScoreEntity examScore = GlobalHelper.getEntity(examScoreRepo, req.getExamScoreId(), ExamScoreEntity.class);
             ExamRecordDataEntity examRecordData =
-                    GlobalHelper.getEntity(examRecordDataRepo, examScore.getExamRecordDataId(), ExamRecordDataEntity.class);
+                    GlobalHelper.getEntity(examRecordDataRepo, examRecordDataId, ExamRecordDataEntity.class);
             List<ExamRecordForSelectScore> examRecordForSelectScoreList = new ArrayList<ExamRecordForSelectScore>();
             examRecordForSelectScoreList.add(buildExamRecordForSelectScore(examRecordData));
             resp.setExamRecordForSelectScoreList(examRecordForSelectScoreList);
@@ -155,12 +160,22 @@ public class ExamRecordCloudServiceProvider extends ControllerSupport implements
     @ApiOperation(value = "查询照片数据-供exchange调用")
     @PostMapping("/getExamPhotoVerifyData")
     public GetExamPhotoVerifyDataResp getExamPhotoVerifyData(@RequestBody GetExamPhotoVerifyDataReq req) {
-        Long scoreId = req.getScoreId();
-        ExamScoreEntity examScoreEntity = GlobalHelper.getEntity(examScoreRepo, scoreId, ExamScoreEntity.class);
-        if (examScoreEntity == null) {
+//        Long scoreId = req.getScoreId();
+//        ExamScoreEntity examScoreEntity = GlobalHelper.getEntity(examScoreRepo, scoreId, ExamScoreEntity.class);
+//        if (examScoreEntity == null) {
+//            return null;
+//        }
+//        Long examRecordDataId = examScoreEntity.getExamRecordDataId();
+        Long examRecordDataId=null;
+        if (req.getExamRecordDataId() != null) {
+            examRecordDataId=req.getExamRecordDataId();
+        }
+        if (examRecordDataId==null&&req.getScoreId() != null) {
+            examRecordDataId=req.getScoreId();
+        }
+        if (examRecordDataId == null) {
             return null;
         }
-        Long examRecordDataId = examScoreEntity.getExamRecordDataId();
         ExamRecordDataEntity examRecordData = GlobalHelper.getEntity(examRecordDataRepo, examRecordDataId, ExamRecordDataEntity.class);
         if (examRecordData == null) {
             return null;
@@ -168,7 +183,7 @@ public class ExamRecordCloudServiceProvider extends ControllerSupport implements
         List<ExamCaptureEntity> examCaptureList = examCaptureRepo.findByExamRecordDataId(examRecordDataId);
 
         GetExamPhotoVerifyDataResp resp = new GetExamPhotoVerifyDataResp();
-        resp.setScoreId(scoreId);
+        resp.setScoreId(examRecordDataId);
         resp.setSuccessRate(examRecordData.getFaceSuccessPercent());
         int strangerCount = 0;
         List<String> photoUrls = new ArrayList<String>();

+ 7 - 6
examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/provider/ExamScoreCloudServiceProvider.java

@@ -13,8 +13,8 @@ import cn.com.qmth.examcloud.core.oe.admin.api.ExamScoreCloudService;
 import cn.com.qmth.examcloud.core.oe.admin.api.bean.ExamScoreBean;
 import cn.com.qmth.examcloud.core.oe.admin.api.request.QueryExamScoreReq;
 import cn.com.qmth.examcloud.core.oe.admin.api.response.QueryExamScoreResp;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScoreRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
+import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordDataRepo;
+import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
 import cn.com.qmth.examcloud.web.support.ControllerSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -31,7 +31,7 @@ public class ExamScoreCloudServiceProvider extends ControllerSupport implements
 	private static final long serialVersionUID = -1957765271029136836L;
 	
 	@Autowired
-	private ExamScoreRepo examScoreRepo;
+	private ExamRecordDataRepo examRecordDataRepo;
 	
 	@Override
 	@ApiOperation(value = "分数查询")
@@ -43,13 +43,14 @@ public class ExamScoreCloudServiceProvider extends ControllerSupport implements
 			return null;
 		}
 		
-		List<ExamScoreEntity> examScoreList = examScoreRepo.findByExamRecordDataIdIn(req.getExamRecordDataIds());
+//		List<ExamScoreEntity> examScoreList = examScoreRepo.findByExamRecordDataIdIn(req.getExamRecordDataIds());
+		List<ExamRecordDataEntity> examScoreList=examRecordDataRepo.findAllById(req.getExamRecordDataIds());
 		
 		List<ExamScoreBean> examScoreBeans = new ArrayList<ExamScoreBean>();
-		for(ExamScoreEntity examScore:examScoreList){
+		for(ExamRecordDataEntity examScore:examScoreList){
 			ExamScoreBean examScoreBean = new ExamScoreBean();
 			examScoreBean.setId(examScore.getId());
-			examScoreBean.setExamRecordDataId(examScore.getExamRecordDataId());
+			examScoreBean.setExamRecordDataId(examScore.getId());
 			examScoreBean.setObjectiveAccuracy(examScore.getObjectiveAccuracy());
 			examScoreBean.setObjectiveScore(examScore.getObjectiveScore());
 			examScoreBean.setSubjectiveScore(examScore.getSubjectiveScore());

+ 23 - 26
examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/provider/ExamScoreDataCloudServiceProvider.java

@@ -38,12 +38,10 @@ import cn.com.qmth.examcloud.core.oe.admin.base.utils.Check;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamAuditRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamCaptureRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordDataRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScoreRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamStudentRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamAuditEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamCaptureEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamStudentEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamStudentFinalScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.DisciplineType;
@@ -74,8 +72,8 @@ public class ExamScoreDataCloudServiceProvider extends ControllerSupport impleme
      */
     private static final long serialVersionUID = 8280332746440316604L;
 
-    @Autowired
-    private ExamScoreRepo examScoreRepo;
+//    @Autowired
+//    private ExamScoreRepo examScoreRepo;
 
     @Autowired
     private ExamRecordDataRepo examRecordDataRepo;
@@ -108,14 +106,14 @@ public class ExamScoreDataCloudServiceProvider extends ControllerSupport impleme
     @ApiOperation(value = "根据分数id查询考试记录,学生信息,分数信息等数据")
     @PostMapping("/findExamScoreDataByScoreId")
     public FindExamScoreDataResp findExamScoreDataByScoreId(@RequestBody FindExamScoreDataReq findExamScoreDataReq) {
-        long scoreId = findExamScoreDataReq.getScoreId();
-        ExamScoreEntity examScore = GlobalHelper.getEntity(examScoreRepo, scoreId, ExamScoreEntity.class);
-        ExamRecordDataEntity examRecordDataEntity = GlobalHelper.getEntity(examRecordDataRepo, examScore.getExamRecordDataId(), ExamRecordDataEntity.class);
+//        long scoreId = findExamScoreDataReq.getScoreId();
+//        ExamScoreEntity examScore = GlobalHelper.getEntity(examScoreRepo, scoreId, ExamScoreEntity.class);
+        ExamRecordDataEntity examRecordDataEntity = GlobalHelper.getEntity(examRecordDataRepo, findExamScoreDataReq.getExamRecordDataId(), ExamRecordDataEntity.class);
         ExamStudentEntity examStudentEntity = examStudentRepo.findByExamStudentId(examRecordDataEntity.getExamStudentId());
 
         FindExamScoreDataResp findExamScoreDataResp = new FindExamScoreDataResp();
         List<ExamScoreDataBean> examScoreDatas = new ArrayList<ExamScoreDataBean>();
-        examScoreDatas.add(buildExamScoreDataBean(examScore, examRecordDataEntity, examStudentEntity));
+        examScoreDatas.add(buildExamScoreDataBean(examRecordDataEntity, examStudentEntity));
         findExamScoreDataResp.setExamScoreDatas(examScoreDatas);
 
         return findExamScoreDataResp;
@@ -131,9 +129,9 @@ public class ExamScoreDataCloudServiceProvider extends ControllerSupport impleme
 
         List<ExamScoreDataBean> examScoreDatas = new ArrayList<ExamScoreDataBean>();
         for (ExamRecordDataEntity examRecordData : examRecordDataList) {
-            ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordData.getId());
+//            ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordData.getId());
             ExamStudentEntity examStudent = examStudentRepo.findByExamStudentId(examRecordData.getExamStudentId());
-            examScoreDatas.add(buildExamScoreDataBean(examScore, examRecordData, examStudent));
+            examScoreDatas.add(buildExamScoreDataBean(examRecordData, examStudent));
         }
 
         FindExamScoreDataResp findExamScoreDataResp = new FindExamScoreDataResp();
@@ -141,8 +139,7 @@ public class ExamScoreDataCloudServiceProvider extends ControllerSupport impleme
         return findExamScoreDataResp;
     }
 
-    private ExamScoreDataBean buildExamScoreDataBean(
-            ExamScoreEntity examScore, ExamRecordDataEntity examRecordDataEntity, ExamStudentEntity examStudentEntity) {
+    private ExamScoreDataBean buildExamScoreDataBean(ExamRecordDataEntity examRecordDataEntity, ExamStudentEntity examStudentEntity) {
         ExamScoreDataBean examScoreDataBean = new ExamScoreDataBean();
         examScoreDataBean.setExamId(examStudentEntity.getExamId());
         examScoreDataBean.setStudentName(examStudentEntity.getStudentName());
@@ -156,10 +153,10 @@ public class ExamScoreDataCloudServiceProvider extends ControllerSupport impleme
         examScoreDataBean.setEndTime(examRecordDataEntity.getEndTime());
         examScoreDataBean.setSuccPercent(examRecordDataEntity.getFaceSuccessPercent());
         examScoreDataBean.setIsIllegality(examRecordDataEntity.getIsIllegality());
-        examScoreDataBean.setScoreId(examScore.getId());
-        examScoreDataBean.setTotalScore(examScore.getTotalScore());
-        examScoreDataBean.setObjectiveScore(examScore.getObjectiveScore());
-        examScoreDataBean.setSubjectiveScore(examScore.getSubjectiveScore());
+        examScoreDataBean.setScoreId(examRecordDataEntity.getId());
+        examScoreDataBean.setTotalScore(examRecordDataEntity.getTotalScore());
+        examScoreDataBean.setObjectiveScore(examRecordDataEntity.getObjectiveScore());
+        examScoreDataBean.setSubjectiveScore(examRecordDataEntity.getSubjectiveScore());
         return examScoreDataBean;
     }
 
@@ -172,7 +169,7 @@ public class ExamScoreDataCloudServiceProvider extends ControllerSupport impleme
         if (null == examRecordData) {
             throw new StatusException("getScoreData-exception", "请求参数不正确");
         }
-        ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordDataId);
+//        ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordDataId);
 
         GetScoreDataResp resp = new GetScoreDataResp();
         resp.setExamRecordDataId(examRecordDataId);
@@ -185,7 +182,7 @@ public class ExamScoreDataCloudServiceProvider extends ControllerSupport impleme
         resp.setCourseName(courseBean.getName());
         resp.setStartTime(examRecordData.getStartTime());
         resp.setEndTime(examRecordData.getEndTime());
-        resp.setTotalScore(examScore.getTotalScore());
+        resp.setTotalScore(examRecordData.getTotalScore());
 
         resp.setIsWarn(examRecordData.getIsWarn());
         resp.setIsAudit(examRecordData.getIsAudit());
@@ -330,10 +327,10 @@ public class ExamScoreDataCloudServiceProvider extends ControllerSupport impleme
         List<ScoreDataBean> scoreDataBeanList = new ArrayList<ScoreDataBean>();
         List<ExamRecordDataEntity> examRecordList = examRecordDataRepo.findAll(Example.of(selectCondition));
         for (ExamRecordDataEntity examRecordData : examRecordList) {
-            ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordData.getId());
-            if (examScore == null) {
-                throw new StatusException("100001", "该考生未交卷");
-            }
+//            ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordData.getId());
+//            if (examScore == null) {
+//                throw new StatusException("100001", "该考生未交卷");
+//            }
 
             ScoreDataBean scoreDataBean = new ScoreDataBean();
             scoreDataBean.setExamRecordDataId(examRecordData.getId());
@@ -345,7 +342,7 @@ public class ExamScoreDataCloudServiceProvider extends ControllerSupport impleme
             scoreDataBean.setCourseName(courseBean.getName());
             scoreDataBean.setStartTime(examRecordData.getStartTime());
             scoreDataBean.setEndTime(examRecordData.getEndTime());
-            scoreDataBean.setTotalScore(examScore.getTotalScore());
+            scoreDataBean.setTotalScore(examRecordData.getTotalScore());
 
             scoreDataBean.setIsWarn(examRecordData.getIsWarn());
             scoreDataBean.setIsAudit(examRecordData.getIsAudit());
@@ -425,16 +422,16 @@ public class ExamScoreDataCloudServiceProvider extends ControllerSupport impleme
 
         //如果查不到有效的分数集合,则将所有的考试分数集合均返回
         resp.setAbsent(false);
-        List<ExamScoreEntity> allExamScoreList =
+        List<ExamRecordDataEntity> allExamScoreList =
                 examScoreService.getAllExamScoreList(req.getExamId(), identityNumber, courseId);
         if (allExamScoreList == null) {
             return resp;
         }
 
         List<ScoreDataBean> scoreDataBeanList = new ArrayList<>();
-        for (ExamScoreEntity scoreEntity : allExamScoreList) {
+        for (ExamRecordDataEntity scoreEntity : allExamScoreList) {
             scoreDataBeanList.add(buildScoreDataBean(identityNumber,
-                    courseBean, scoreEntity.getTotalScore(), scoreEntity.getExamRecordDataId()));
+                    courseBean, scoreEntity.getTotalScore(), scoreEntity.getId()));
         }
         resp.setAllScoreDataBeanList(scoreDataBeanList);
         resp.setAudit(scoreDataBeanList.stream().anyMatch(p -> p.getIsAudit() == null || !p.getIsAudit()));

+ 3 - 3
examcloud-core-oe-admin-dao/src/main/java/cn/com/qmth/examcloud/core/oe/admin/dao/ExamRecordDataRepo.java

@@ -1,5 +1,7 @@
 package cn.com.qmth.examcloud.core.oe.admin.dao;
 
+import java.util.List;
+
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.data.jpa.repository.Modifying;
@@ -8,9 +10,6 @@ import org.springframework.stereotype.Repository;
 import org.springframework.transaction.annotation.Transactional;
 
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.enums.IsSuccess;
-
-import java.util.List;
 
 /**
  * @author chenken
@@ -95,4 +94,5 @@ public interface ExamRecordDataRepo extends JpaRepository<ExamRecordDataEntity,
             "where exam_record_status in('EXAM_END','EXAM_OVERDUE') and is_illegality=0 and (is_warn=0 or is_warn=1  and is_audit=1) " +
             "and exam_id=?1 and id>=?2 order by id asc limit ?3", nativeQuery = true)
     List<ExamRecordDataEntity> findLimitedDataByExamIdAndIdMoreThan(Long examId, Long startExamRecordId, int rowCount);
+    
 }

+ 3 - 3
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/ExamScoreService.java

@@ -11,7 +11,7 @@ import java.util.List;
 
 import org.springframework.data.domain.Page;
 
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
+import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examscore.ExamScoreInfo;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examscore.ExamScoreQuery;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.examscore.ObjectiveScoreInfo;
@@ -35,13 +35,13 @@ public interface ExamScoreService {
      * @param courseId 课程代码
      * @return ExamScoreEntity
      */
-    List<ExamScoreEntity> getAllExamScoreList(Long examId, String identityNumber, Long courseId);
+    List<ExamRecordDataEntity> getAllExamScoreList(Long examId, String identityNumber, Long courseId);
 
     /**
      * 离线考试初始化得分
      * @param examRecordDataId
      */
-    public void createExamScoreWithOffline(Long examRecordDataId);
+//    public void createExamScoreWithOffline(Long examRecordDataId);
     
     
     /**

+ 45 - 31
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/ExamAuditServiceImpl.java

@@ -7,6 +7,28 @@
 
 package cn.com.qmth.examcloud.core.oe.admin.service.impl;
 
+import static cn.com.qmth.examcloud.core.oe.admin.service.bean.examaudit.ExamAuditMapper.EXAM_RECORD_DATA_ID;
+
+import java.math.BigInteger;
+import java.util.Date;
+import java.util.List;
+
+import javax.persistence.EntityManager;
+import javax.persistence.Query;
+
+import org.apache.commons.lang3.StringUtils;
+import org.hibernate.query.NativeQuery;
+import org.hibernate.transform.Transformers;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageImpl;
+import org.springframework.data.domain.Pageable;
+import org.springframework.data.jpa.domain.Specification;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import com.google.common.collect.Lists;
+
 import cn.com.qmth.examcloud.api.commons.security.bean.User;
 import cn.com.qmth.examcloud.core.basic.api.bean.CourseBean;
 import cn.com.qmth.examcloud.core.oe.admin.base.jpa.Searcher;
@@ -16,39 +38,31 @@ import cn.com.qmth.examcloud.core.oe.admin.base.utils.Check;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamAuditRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordDataRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordForMarkingRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScoreRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamAuditEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordForMarkingEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.enums.*;
-import cn.com.qmth.examcloud.core.oe.admin.service.*;
-import cn.com.qmth.examcloud.core.oe.admin.service.bean.examaudit.*;
+import cn.com.qmth.examcloud.core.oe.admin.dao.enums.AuditStatus;
+import cn.com.qmth.examcloud.core.oe.admin.dao.enums.CourseLevel;
+import cn.com.qmth.examcloud.core.oe.admin.dao.enums.DisciplineType;
+import cn.com.qmth.examcloud.core.oe.admin.dao.enums.ExamRecordStatus;
+import cn.com.qmth.examcloud.core.oe.admin.dao.enums.SelectType;
+import cn.com.qmth.examcloud.core.oe.admin.service.ExamAuditService;
+import cn.com.qmth.examcloud.core.oe.admin.service.ExamRecordQuestionsService;
+import cn.com.qmth.examcloud.core.oe.admin.service.ExamScoreObtainQueueService;
+import cn.com.qmth.examcloud.core.oe.admin.service.ExamScorePushQueueService;
+import cn.com.qmth.examcloud.core.oe.admin.service.GainBaseDataService;
+import cn.com.qmth.examcloud.core.oe.admin.service.LocalCacheService;
+import cn.com.qmth.examcloud.core.oe.admin.service.bean.examaudit.ExamAuditEntityConvert;
+import cn.com.qmth.examcloud.core.oe.admin.service.bean.examaudit.ExamAuditInfo;
+import cn.com.qmth.examcloud.core.oe.admin.service.bean.examaudit.ExamAuditMapper;
+import cn.com.qmth.examcloud.core.oe.admin.service.bean.examaudit.ExamAuditQuery;
+import cn.com.qmth.examcloud.core.oe.admin.service.bean.examaudit.RedoAuditInfo;
 import cn.com.qmth.examcloud.core.oe.admin.service.others.ExamCacheTransferHelper;
 import cn.com.qmth.examcloud.examwork.api.bean.ExamBean;
 import cn.com.qmth.examcloud.marking.api.MarkWorkCloudService;
 import cn.com.qmth.examcloud.marking.api.request.AppendMarkWorkPaperReq;
 import cn.com.qmth.examcloud.support.cache.bean.OrgCacheBean;
 import cn.com.qmth.examcloud.web.helpers.GlobalHelper;
-import com.google.common.collect.Lists;
-import org.apache.commons.lang3.StringUtils;
-import org.hibernate.query.NativeQuery;
-import org.hibernate.transform.Transformers;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageImpl;
-import org.springframework.data.domain.Pageable;
-import org.springframework.data.jpa.domain.Specification;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import javax.persistence.EntityManager;
-import javax.persistence.Query;
-import java.math.BigInteger;
-import java.util.Date;
-import java.util.List;
-
-import static cn.com.qmth.examcloud.core.oe.admin.service.bean.examaudit.ExamAuditMapper.EXAM_RECORD_DATA_ID;
 
 /**
  * 考试记录审核相关接口
@@ -60,8 +74,8 @@ import static cn.com.qmth.examcloud.core.oe.admin.service.bean.examaudit.ExamAud
 public class ExamAuditServiceImpl implements ExamAuditService {
     @Autowired
     private ExamAuditRepo examAuditRepo;
-    @Autowired
-    private ExamScoreRepo examScoreRepo;
+//    @Autowired
+//    private ExamScoreRepo examScoreRepo;
     @Autowired
     private EntityManager entityManager;
 
@@ -272,11 +286,11 @@ public class ExamAuditServiceImpl implements ExamAuditService {
 	 * 审核通过后置处理
 	 */
 	private void auditPassPostProcesser(ExamRecordDataEntity examRecordData){
-    	ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordData.getId());
+//    	ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordData.getId());
     	//审核通过且为非全客观题卷,保存阅卷需要数据
-    	saveExamRecordForMarkingWithAudit(examRecordData,examScore);
+    	saveExamRecordForMarkingWithAudit(examRecordData);
     	//保存推送分数队列
-        examScorePushQueueService.saveScoreDataInfoToQueue(examRecordData, examScore.getId());
+        examScorePushQueueService.saveScoreDataInfoToQueue(examRecordData, examRecordData.getId());
         //保存获取分数队列
         examScoreObtainQueueService.saveExamScoreObtainQueue(examRecordData);
         //发送通知
@@ -288,7 +302,7 @@ public class ExamAuditServiceImpl implements ExamAuditService {
 	 * @param examRecordData
 	 * @param examScore
 	 */
-	private void saveExamRecordForMarkingWithAudit(ExamRecordDataEntity examRecordData,ExamScoreEntity examScore){
+	private void saveExamRecordForMarkingWithAudit(ExamRecordDataEntity examRecordData){
     	if(examRecordData.getIsAllObjectivePaper() != null && !examRecordData.getIsAllObjectivePaper()){
             ExamRecordForMarkingEntity examRecordForMarkingExists =
                     examRecordForMarkingRepo.findByExamRecordDataId(examRecordData.getId());
@@ -302,7 +316,7 @@ public class ExamAuditServiceImpl implements ExamAuditService {
             examRecordForMarking.setBasePaperId(examRecordData.getBasePaperId());
             examRecordForMarking.setPaperType(examRecordData.getPaperType());
             examRecordForMarking.setCourseId(examRecordData.getCourseId());
-            examRecordForMarking.setObjectiveScore(examScore.getObjectiveScore());
+            examRecordForMarking.setObjectiveScore(examRecordData.getObjectiveScore());
             int subjectiveAnswerLength = examRecordQuestionsService.calculationSubjectiveAnswerLength(examRecordData.getId());
             examRecordForMarking.setSubjectiveAnswerLength(subjectiveAnswerLength);
             examRecordForMarkingRepo.save(examRecordForMarking);

+ 24 - 29
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/ExamRecordQuestionsServiceImpl.java

@@ -1,36 +1,30 @@
 package cn.com.qmth.examcloud.core.oe.admin.service.impl;
 
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
 import cn.com.qmth.examcloud.commons.exception.StatusException;
 import cn.com.qmth.examcloud.core.oe.admin.base.utils.QuestionTypeUtil;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordDataRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordQuestionsRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScoreRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamQuestionEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordQuestionsEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.ExamType;
 import cn.com.qmth.examcloud.core.oe.admin.service.ExamRecordQuestionsService;
 import cn.com.qmth.examcloud.core.oe.admin.service.ExamStudentFinalScoreService;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.SubjectiveQuestionScoreInfo;
-import cn.com.qmth.examcloud.core.questions.api.ExtractConfigCloudService;
 import cn.com.qmth.examcloud.question.commons.core.paper.DefaultPaper;
 import cn.com.qmth.examcloud.question.commons.core.paper.DefaultQuestionGroup;
 import cn.com.qmth.examcloud.question.commons.core.paper.DefaultQuestionStructureWrapper;
 import cn.com.qmth.examcloud.question.commons.core.paper.DefaultQuestionUnitWrapper;
 import cn.com.qmth.examcloud.web.helpers.GlobalHelper;
-import com.google.common.cache.Cache;
-import com.google.common.cache.CacheBuilder;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.stereotype.Service;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.concurrent.TimeUnit;
-import java.util.stream.Collectors;
 
 @Service("examRecordQuestionsService")
 public class ExamRecordQuestionsServiceImpl implements ExamRecordQuestionsService {
@@ -41,19 +35,19 @@ public class ExamRecordQuestionsServiceImpl implements ExamRecordQuestionsServic
     @Autowired
     private ExamRecordDataRepo examRecordDataRepo;
 
-    @Autowired
-    private ExamScoreRepo examScoreRepo;
+//    @Autowired
+//    private ExamScoreRepo examScoreRepo;
 
-    @Autowired
-    private RedisTemplate<String, Object> redisTemplate;
-
-    @Autowired
-    private ExtractConfigCloudService extractConfigCloudService;
+//    @Autowired
+//    private RedisTemplate<String, Object> redisTemplate;
+//
+//    @Autowired
+//    private ExtractConfigCloudService extractConfigCloudService;
 
 
     //本地题干缓存,最大200道题,默认缓存120秒
-    private Cache<String, String> questionContentCache = CacheBuilder.newBuilder().maximumSize(200)
-            .expireAfterWrite(120, TimeUnit.SECONDS).build();
+//    private Cache<String, String> questionContentCache = CacheBuilder.newBuilder().maximumSize(200)
+//            .expireAfterWrite(120, TimeUnit.SECONDS).build();
 
     @Autowired
     private ExamStudentFinalScoreService examStudentFinalScoreService;
@@ -93,11 +87,12 @@ public class ExamRecordQuestionsServiceImpl implements ExamRecordQuestionsServic
         }
 
         //更新ec_oe_exam_score
-        ExamScoreEntity examScoreEntity = examScoreRepo.findByExamRecordDataId(examRecordDataId);
-        examScoreEntity.setSubjectiveScore(totalSubjectiveScore);
-        double totalScore = totalSubjectiveScore + examScoreEntity.getObjectiveScore();
-        examScoreEntity.setTotalScore(totalScore);
-        examScoreRepo.save(examScoreEntity);
+//        ExamScoreEntity examScoreEntity = examScoreRepo.findByExamRecordDataId(examRecordDataId);
+        examRecordData.setSubjectiveScore(totalSubjectiveScore);
+        double totalScore = totalSubjectiveScore + examRecordData.getObjectiveScore();
+        examRecordData.setTotalScore(totalScore);
+//        examScoreRepo.save(examScoreEntity);
+        examRecordDataRepo.save(examRecordData);
 
         //计算考生的最终分数
         examStudentFinalScoreService.calculateFinalScore(examRecordData.getExamStudentId());

+ 50 - 43
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/ExamRecordServiceImpl.java

@@ -7,16 +7,39 @@
 
 package cn.com.qmth.examcloud.core.oe.admin.service.impl;
 
+import java.math.BigInteger;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+import javax.persistence.EntityManager;
+import javax.persistence.Query;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageImpl;
+import org.springframework.data.domain.PageRequest;
+import org.springframework.data.domain.Pageable;
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.jdbc.core.RowMapper;
+import org.springframework.stereotype.Service;
+
+import com.google.common.collect.Lists;
+
 import cn.com.qmth.examcloud.commons.exception.StatusException;
 import cn.com.qmth.examcloud.core.oe.admin.base.jpa.SqlWrapper;
 import cn.com.qmth.examcloud.core.oe.admin.base.utils.Check;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordDataRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordQuestionsRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScoreRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamQuestionEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordQuestionsEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.ExamRecordStatus;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.IsSuccess;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.MarkingType;
@@ -35,24 +58,7 @@ import cn.com.qmth.examcloud.examwork.api.bean.ExamBean;
 import cn.com.qmth.examcloud.support.cache.CacheHelper;
 import cn.com.qmth.examcloud.support.cache.bean.OrgCacheBean;
 import cn.com.qmth.examcloud.support.cache.bean.StudentCacheBean;
-import com.google.common.collect.Lists;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageImpl;
-import org.springframework.data.domain.PageRequest;
-import org.springframework.data.domain.Pageable;
-import org.springframework.jdbc.core.JdbcTemplate;
-import org.springframework.jdbc.core.RowMapper;
-import org.springframework.stereotype.Service;
-
-import javax.persistence.EntityManager;
-import javax.persistence.Query;
-import java.math.BigInteger;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.*;
-import java.util.stream.Collectors;
+import cn.com.qmth.examcloud.web.helpers.GlobalHelper;
 
 /**
  * 考试记录接口
@@ -62,8 +68,8 @@ import java.util.stream.Collectors;
  */
 @Service
 public class ExamRecordServiceImpl implements ExamRecordService {
-    @Autowired
-    private ExamScoreRepo examScoreRepo;
+//    @Autowired
+//    private ExamScoreRepo examScoreRepo;
     @Autowired
     private ExamRecordDataRepo examRecordDataRepo;
     @Autowired
@@ -424,17 +430,18 @@ public class ExamRecordServiceImpl implements ExamRecordService {
      */
     public Map<String, String> getPaperScore(Long examRecordDataId) {
         Map<String, String> data = new HashMap<>();
-        ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordDataId);
+//        ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordDataId);
+        ExamRecordDataEntity examRecordData = GlobalHelper.getEntity(examRecordDataRepo, examRecordDataId, ExamRecordDataEntity.class);
         //卷面总分
         Double paperTotalScore = 0d;
         //客观题总分
         Double objectiveTotalScore = 0d;
         //主观题总分
         Double subjectiveTotalScore = 0d;
-        if (examScore != null) {
-            paperTotalScore = examScore.getObjectiveScore() == null ? 0d : examScore.getObjectiveScore();
-            objectiveTotalScore = examScore.getObjectiveScore() == null ? 0d : examScore.getObjectiveScore();
-            subjectiveTotalScore = examScore.getSubjectiveScore() == null ? 0d : examScore.getSubjectiveScore();
+        if (examRecordData != null) {
+            paperTotalScore = examRecordData.getObjectiveScore() == null ? 0d : examRecordData.getObjectiveScore();
+            objectiveTotalScore = examRecordData.getObjectiveScore() == null ? 0d : examRecordData.getObjectiveScore();
+            subjectiveTotalScore = examRecordData.getSubjectiveScore() == null ? 0d : examRecordData.getSubjectiveScore();
         }
         data.put("paperTotalScore", String.valueOf(paperTotalScore));
         data.put("objectiveTotalScore", String.valueOf(objectiveTotalScore));
@@ -548,28 +555,28 @@ public class ExamRecordServiceImpl implements ExamRecordService {
         if (allExamRecordDataList == null || allExamRecordDataList.isEmpty()) {
             return null;
         }
-        List<Long> examRecordDataIdList = allExamRecordDataList.stream().map(p -> p.getId()).collect(Collectors.toList());
-        //当前考试记录的所有成绩
-        List<ExamScoreEntity> allExamScoreList = examScoreRepo.findByExamRecordDataIdIn(examRecordDataIdList);
-        if (allExamScoreList == null || allExamScoreList.isEmpty()) {
-            return null;
-        }
+//        List<Long> examRecordDataIdList = allExamRecordDataList.stream().map(p -> p.getId()).collect(Collectors.toList());
+//        当前考试记录的所有成绩
+//        List<ExamScoreEntity> allExamScoreList = examScoreRepo.findByExamRecordDataIdIn(examRecordDataIdList);
+//        if (allExamScoreList == null || allExamScoreList.isEmpty()) {
+//            return null;
+//        }
         Map<Long, List<ExamRecordDataEntity>> groupedByExamStudentExamRecordMap = allExamRecordDataList.stream().collect(Collectors.groupingBy(ExamRecordDataEntity::getExamStudentId));
         for (Long examStudentId : groupedByExamStudentExamRecordMap.keySet()) {
             //当前考生的所有考试记录集合
             List<ExamRecordDataEntity> curExamRecordDataList = groupedByExamStudentExamRecordMap.get(examStudentId);
-            //当前考试记录id集合
-            List<Long> curExamRecordDataIdList = curExamRecordDataList.stream().map(p -> p.getId()).collect(Collectors.toList());
-
-            //当前考生的所有考试成绩集合
-            List<ExamScoreEntity> curExamScoreList = allExamScoreList.stream().
-                    filter(p -> curExamRecordDataIdList.contains(p.getExamRecordDataId())).collect(Collectors.toList());
+//            //当前考试记录id集合
+//            List<Long> curExamRecordDataIdList = curExamRecordDataList.stream().map(p -> p.getId()).collect(Collectors.toList());
+//
+//            //当前考生的所有考试成绩集合
+//            List<ExamRecordDataEntity> curExamScoreList = allExamScoreList.stream().
+//                    filter(p -> curExamRecordDataIdList.contains(p.getExamRecordDataId())).collect(Collectors.toList());
 
             //最终生效的成绩
-            ExamScoreEntity effectiveScore = getStudentEffectiveScore(curExamScoreList, markingType);
+            ExamRecordDataEntity effectiveScore = getStudentEffectiveScore(curExamRecordDataList, markingType);
             //最终生效的考试记录
             ExamRecordDataEntity effectiveExamRecordData = curExamRecordDataList.stream().
-                    filter(p -> p.getId().equals(effectiveScore.getExamRecordDataId())).collect(Collectors.toList()).get(0);
+                    filter(p -> p.getId().equals(effectiveScore.getId())).collect(Collectors.toList()).get(0);
 
             ExamStudentEffectiveScoreInfo info = new ExamStudentEffectiveScoreInfo();
             info.setExamStudentId(examStudentId);
@@ -591,11 +598,11 @@ public class ExamRecordServiceImpl implements ExamRecordService {
      * @Date 2019/7/18 17:49
      * @Version 1.0
      */
-    private ExamScoreEntity getStudentEffectiveScore(List<ExamScoreEntity> curExamScoreList, String markingType) {
+    private ExamRecordDataEntity getStudentEffectiveScore(List<ExamRecordDataEntity> curExamScoreList, String markingType) {
         if (curExamScoreList == null || curExamScoreList.isEmpty()) {
             throw new StatusException("201101", "考试记录不为空,考试分数数据为空");
         }
-        ExamScoreEntity examScoreEntity;
+        ExamRecordDataEntity examScoreEntity;
         //阅卷方式为全部评阅或客观题分数最高,均取总分最高
         if (MarkingType.ALL.toString().equals(markingType) || MarkingType.OBJECT_SCORE_MAX.toString().equals(markingType)) {
             examScoreEntity = curExamScoreList.stream().max(Comparator.comparing(p -> p.getTotalScore())).get();

+ 16 - 18
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/ExamScoreServiceImpl.java

@@ -30,9 +30,7 @@ import cn.com.qmth.examcloud.core.oe.admin.base.jpa.SpecUtils;
 import cn.com.qmth.examcloud.core.oe.admin.base.utils.Check;
 import cn.com.qmth.examcloud.core.oe.admin.base.utils.CommonUtil;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordDataRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScoreRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamStudentEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamStudentFinalScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.CourseLevel;
@@ -61,8 +59,8 @@ import cn.com.qmth.examcloud.web.helpers.GlobalHelper;
  */
 @Service
 public class ExamScoreServiceImpl implements ExamScoreService {
-    @Autowired
-    private ExamScoreRepo examScoreRepo;
+//    @Autowired
+//    private ExamScoreRepo examScoreRepo;
     @Autowired
     private ExamRecordDataRepo examRecordDataRepo;
     @Autowired
@@ -149,15 +147,15 @@ public class ExamScoreServiceImpl implements ExamScoreService {
     }
 
     @Override
-    public List<ExamScoreEntity> getAllExamScoreList(Long examId, String identityNumber, Long courseId) {
+    public List<ExamRecordDataEntity> getAllExamScoreList(Long examId, String identityNumber, Long courseId) {
         List<ExamRecordDataEntity> allExamRecordDataList =
                 examRecordDataRepo.findByExamIdAndIdentityNumberAndCourseId(examId, identityNumber, courseId);
         if (allExamRecordDataList == null || allExamRecordDataList.isEmpty()) {
             return null;
         }
 
-        List<Long> examRecordDataIds = allExamRecordDataList.stream().map(p -> p.getId()).collect(Collectors.toList());
-        return examScoreRepo.findByExamRecordDataIdIn(examRecordDataIds);
+//        List<Long> examRecordDataIds = allExamRecordDataList.stream().map(p -> p.getId()).collect(Collectors.toList());
+        return allExamRecordDataList;
     }
 
     private List<ExamScoreInfo> getExamStudentInfoListOfScoreExport(ExamScoreQuery query, String markingType) {
@@ -394,15 +392,15 @@ public class ExamScoreServiceImpl implements ExamScoreService {
         return examStudentEntity;
     }
     
-    @Override
-    public void createExamScoreWithOffline(Long examRecordDataId) {
-        ExamScoreEntity examScoreEntity = new ExamScoreEntity();
-        examScoreEntity.setExamRecordDataId(examRecordDataId);
-        examScoreEntity.setObjectiveScore(0D);
-        examScoreEntity.setSubjectiveScore(0D);
-        examScoreEntity.setTotalScore(0D);
-        examScoreRepo.save(examScoreEntity);
-    }
+//    @Override
+//    public void createExamScoreWithOffline(Long examRecordDataId) {
+//        ExamScoreEntity examScoreEntity = new ExamScoreEntity();
+//        examScoreEntity.setExamRecordDataId(examRecordDataId);
+//        examScoreEntity.setObjectiveScore(0D);
+//        examScoreEntity.setSubjectiveScore(0D);
+//        examScoreEntity.setTotalScore(0D);
+//        examScoreRepo.save(examScoreEntity);
+//    }
 
     @Override
     public List<ObjectiveScoreInfo> queryObjectiveScoreList(Long examStudentId) {
@@ -436,9 +434,9 @@ public class ExamScoreServiceImpl implements ExamScoreService {
                 if (examRecordDataEntity.getIsWarn() && !examRecordDataEntity.getIsAudit()) {
                     objectiveScoreInfo.setIsAuditing(true);
                 } else if (!examRecordDataEntity.getIsWarn() || (examRecordDataEntity.getIsWarn() && examRecordDataEntity.getIsAudit())) {
-                    ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordDataEntity.getId());
+//                    ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordDataEntity.getId());
                     objectiveScoreInfo.setIsAuditing(false);
-                    objectiveScoreInfo.setObjectiveScore(examScore.getObjectiveScore());
+                    objectiveScoreInfo.setObjectiveScore(examRecordDataEntity.getObjectiveScore());
                 }
                 objectiveScoreInfo.setIsIllegality(false);
             } else {

+ 24 - 23
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/ExamStudentFinalScoreServiceImpl.java

@@ -1,11 +1,17 @@
 package cn.com.qmth.examcloud.core.oe.admin.service.impl;
 
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordDataRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScoreRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamStudentFinalScoreRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamStudentRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamStudentEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamStudentFinalScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.ExamProperties;
@@ -14,14 +20,6 @@ import cn.com.qmth.examcloud.core.oe.admin.dao.enums.MarkingType;
 import cn.com.qmth.examcloud.core.oe.admin.service.ExamStudentFinalScoreService;
 import cn.com.qmth.examcloud.core.oe.admin.service.others.ExamCacheTransferHelper;
 
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.stream.Collectors;
-import java.util.stream.Stream;
-
 /**
  * @Description 考生最终分数实现类
  * @Author lideyin
@@ -32,8 +30,8 @@ import java.util.stream.Stream;
 public class ExamStudentFinalScoreServiceImpl implements ExamStudentFinalScoreService {
     @Autowired
     private ExamRecordDataRepo examRecordDataRepo;
-    @Autowired
-    private ExamScoreRepo examScoreRepo;
+//    @Autowired
+//    private ExamScoreRepo examScoreRepo;
     @Autowired
     private ExamStudentRepo examStudentRepo;
     @Autowired
@@ -48,7 +46,7 @@ public class ExamStudentFinalScoreServiceImpl implements ExamStudentFinalScoreSe
         List<ExamRecordDataEntity> allExamRecordDataList = examRecordDataRepo.findByExamStudentId(examStudentId);
 
         //得到最终考试结果
-        ExamScoreEntity finalEffectiveExamScore = getFinalEffectiveExamScore(allExamRecordDataList, examType, markingType);
+        ExamRecordDataEntity finalEffectiveExamScore = getFinalEffectiveExamScore(allExamRecordDataList, examType, markingType);
 
         //保存最终考试结果
         saveExamStudentFinalScore(examStudent.getExamStudentId(), finalEffectiveExamScore);
@@ -60,14 +58,14 @@ public class ExamStudentFinalScoreServiceImpl implements ExamStudentFinalScoreSe
         return examStudentFinalScoreRepo.findByExamStudentId(examStudentId);
     }
 
-    private void saveExamStudentFinalScore(Long examStudentId, final ExamScoreEntity finalEffectiveExamScore) {
+    private void saveExamStudentFinalScore(Long examStudentId, final ExamRecordDataEntity finalEffectiveExamScore) {
         ExamStudentFinalScoreEntity finalScoreEntity
                 = examStudentFinalScoreRepo.findByExamStudentId(examStudentId);
         if (finalScoreEntity == null) {
             finalScoreEntity = new ExamStudentFinalScoreEntity();
         }
 
-        finalScoreEntity.setExamRecordDataId(finalEffectiveExamScore.getExamRecordDataId());
+        finalScoreEntity.setExamRecordDataId(finalEffectiveExamScore.getId());
         finalScoreEntity.setExamStudentId(examStudentId);
         finalScoreEntity.setObjectiveAccuracy(finalEffectiveExamScore.getObjectiveAccuracy());
         finalScoreEntity.setObjectiveScore(finalEffectiveExamScore.getObjectiveScore());
@@ -82,7 +80,10 @@ public class ExamStudentFinalScoreServiceImpl implements ExamStudentFinalScoreSe
     /**
      * 计算得出最终有效成绩
      */
-    private ExamScoreEntity getFinalEffectiveExamScore(List<ExamRecordDataEntity> examRecordAllList, String examType, String markingType) {
+    private ExamRecordDataEntity getFinalEffectiveExamScore(List<ExamRecordDataEntity> examRecordAllList, String examType, String markingType) {
+        if (examRecordAllList == null || examRecordAllList.size() == 0) {
+            return null;
+        }
         /*
          * 第一次过滤考试记录:
          * 状态为EXAM_END或EXAM_OVERDUE
@@ -114,24 +115,24 @@ public class ExamStudentFinalScoreServiceImpl implements ExamStudentFinalScoreSe
         for (int i = 0; i < secondFilterExamRecords.size(); i++) {
             examRecordDataIds.add(secondFilterExamRecords.get(i).getId());
         }
-        List<ExamScoreEntity> effectiveExamScoreList = examScoreRepo.findByExamRecordDataIdIn(examRecordDataIds);
-        if (effectiveExamScoreList == null || effectiveExamScoreList.size() == 0) {
-            return null;
-        }
+//        List<ExamScoreEntity> effectiveExamScoreList = examScoreRepo.findByExamRecordDataIdIn(examRecordDataIds);
+//        if (effectiveExamScoreList == null || effectiveExamScoreList.size() == 0) {
+//            return null;
+//        }
         //离线考试
         if ("OFFLINE".equals(examType)) {
-            return effectiveExamScoreList.get(0);
+            return examRecordAllList.get(0);
         } else {
             if (markingType.equals(MarkingType.ALL.name()) || markingType.equals(MarkingType.OBJECT_SCORE_MAX.name())) {
                 //全部评阅规则或客观分最高规则:取总分最高
-                List<ExamScoreEntity> examScores = effectiveExamScoreList
+                List<ExamRecordDataEntity> examScores = examRecordAllList
                         .stream()
                         .sorted((o1, o2) -> o2.getTotalScore().compareTo(o1.getTotalScore()))
                         .collect(Collectors.toList());
                 return examScores.get(0);
             } else if (markingType.equals(MarkingType.LAST_SUBMIT.name())) {
                 //最后一次提交规则:取最后一次的成绩
-                List<ExamScoreEntity> examScores = effectiveExamScoreList
+                List<ExamRecordDataEntity> examScores = examRecordAllList
                         .stream()
                         .sorted((o1, o2) -> o2.getId().compareTo(o1.getId()))
                         .collect(Collectors.toList());

+ 5 - 6
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/OfflineExamServiceImpl.java

@@ -25,7 +25,6 @@ import cn.com.qmth.examcloud.core.oe.admin.dao.enums.ExamRecordStatus;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.ExamType;
 import cn.com.qmth.examcloud.core.oe.admin.service.ExamRecordDataService;
 import cn.com.qmth.examcloud.core.oe.admin.service.ExamRecordForMarkingService;
-import cn.com.qmth.examcloud.core.oe.admin.service.ExamScoreService;
 import cn.com.qmth.examcloud.core.oe.admin.service.GainBaseDataService;
 import cn.com.qmth.examcloud.core.oe.admin.service.OfflineExamService;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.OfflineExamCourseInfo;
@@ -69,8 +68,8 @@ public class OfflineExamServiceImpl implements OfflineExamService {
     @Autowired
     private ExamRecordDataService examRecordDataService;
 
-    @Autowired
-    private ExamScoreService examScoreService;
+//    @Autowired
+//    private ExamScoreService examScoreService;
 
     @Autowired
     private ExamRecordForMarkingService examRecordForMarkingService;
@@ -183,11 +182,11 @@ public class OfflineExamServiceImpl implements OfflineExamService {
         GetPaperResp getPaperResp = extractConfigCloudService.getPaper(getPaperReq);
 
         //生成考试记录
-        ExamRecordDataEntity examRecordData = examRecordDataService.createOfflineExamRecordData(bean,
+        examRecordDataService.createOfflineExamRecordData(bean,
                 examBean, courseBean, getPaperResp.getPaperId(),
                 null, getPaperResp.getDefaultPaper().getFullyObjective());
-        //生成分数
-        examScoreService.createExamScoreWithOffline(examRecordData.getId());
+//        生成分数
+//        examScoreService.createExamScoreWithOffline(examRecordData.getId());
         //更新考生
         examStudentRepo.updateExamStudentFinished(examStudentId);
     }

+ 8 - 10
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/PracticeServiceImpl.java

@@ -12,13 +12,11 @@ import cn.com.qmth.examcloud.core.basic.api.bean.CourseBean;
 import cn.com.qmth.examcloud.core.oe.admin.base.utils.QuestionTypeUtil;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordDataRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordQuestionsRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScoreRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamStudentRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamQuestionEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordPaperStructEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordQuestionsEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamStudentEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.ExamRecordStatus;
 import cn.com.qmth.examcloud.core.oe.admin.service.ExamRecordPaperStructService;
@@ -49,8 +47,8 @@ public class PracticeServiceImpl implements PracticeService {
     @Autowired
     private ExamRecordDataRepo examRecordDataRepo;
 
-    @Autowired
-    private ExamScoreRepo examScoreRepo;
+//    @Autowired
+//    private ExamScoreRepo examScoreRepo;
 
     @Autowired
     private ExamRecordQuestionsRepo examRecordQuestionsRepo;
@@ -95,12 +93,12 @@ public class PracticeServiceImpl implements PracticeService {
         List<ExamRecordDataEntity> examRecordEntities = examRecordDataRepo.findByExamStudentId(examStudent.getExamStudentId());
 
         int allExamRecordNums = 0;
-        List<ExamScoreEntity> examScoreEntities = new ArrayList<ExamScoreEntity>();
+        List<ExamRecordDataEntity> examScoreEntities = new ArrayList<ExamRecordDataEntity>();
         for (ExamRecordDataEntity examRecordData : examRecordEntities) {
             if (examRecordData.getExamRecordStatus() != ExamRecordStatus.EXAM_ING) {
                 allExamRecordNums++;
-                ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordData.getId());
-                examScoreEntities.add(examScore);
+//                ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examRecordData.getId());
+                examScoreEntities.add(examRecordData);
             }
         }
         double allObjectiveAccuracy = 0;//总正确率
@@ -108,7 +106,7 @@ public class PracticeServiceImpl implements PracticeService {
         long recentObjectiveAccuracyId = 0;//最近ID
         double recentObjectiveAccuracy = 0;//最近客观题正确率
 
-        for (ExamScoreEntity examScore : examScoreEntities) {
+        for (ExamRecordDataEntity examScore : examScoreEntities) {
             if (examScore != null) {
                 if (examScore.getObjectiveAccuracy() > maxObjectiveAccuracy) {
                     maxObjectiveAccuracy = examScore.getObjectiveAccuracy();
@@ -159,8 +157,8 @@ public class PracticeServiceImpl implements PracticeService {
         practiceRecordInfo.setEndTime(examRecordData.getEndTime());
         practiceRecordInfo.setUsedExamTime(examRecordData.getUsedExamTime());
 
-        ExamScoreEntity examScoreEntity = examScoreRepo.findByExamRecordDataId(examRecordData.getId());
-        practiceRecordInfo.setObjectiveAccuracy(examScoreEntity.getObjectiveAccuracy());//客观题答对的比率
+//        ExamScoreEntity examScoreEntity = examScoreRepo.findByExamRecordDataId(examRecordData.getId());
+        practiceRecordInfo.setObjectiveAccuracy(examRecordData.getObjectiveAccuracy());//客观题答对的比率
         ExamRecordQuestionsEntity examRecordQuestions = examRecordQuestionsRepo.findByExamRecordDataId(examRecordData.getId());
         List<ExamQuestionEntity> examQuestionEntities = examRecordQuestions.getExamQuestionEntities();
         practiceRecordInfo = calculationExamQuestionSituationInfo(practiceRecordInfo, examQuestionEntities);

+ 4 - 0
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/pushscore/bean/ExamScorePushInfo.java

@@ -46,6 +46,10 @@ public class ExamScorePushInfo implements JsonSerializable {
 	 */
 	private Boolean isMissExam;
 
+	
+	/**
+	 * 实际赋值为examRecordDataId
+	 */
 	private Long scoreId;
 
 	private Double totalScore;

+ 14 - 18
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/pushscore/cup/CupExamScorePushServiceImpl.java

@@ -22,11 +22,8 @@ import org.springframework.stereotype.Service;
 import cn.com.qmth.examcloud.commons.util.JsonUtil;
 import cn.com.qmth.examcloud.core.basic.api.bean.CourseBean;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordDataRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScorePushQueueRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScoreRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamStudentRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScorePushQueue;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamStudentEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.ExamScoreQueueStatus;
@@ -48,8 +45,8 @@ public class CupExamScorePushServiceImpl implements ExamScorePushService {
 
     private static final Logger log = LoggerFactory.getLogger(CupExamScorePushServiceImpl.class);
 
-    @Autowired
-    private ExamScoreRepo examScoreRepo;
+//    @Autowired
+//    private ExamScoreRepo examScoreRepo;
 
     @Autowired
     private ExamRecordDataRepo examRecordDataRepo;
@@ -57,8 +54,8 @@ public class CupExamScorePushServiceImpl implements ExamScorePushService {
     @Autowired
     private ExamStudentRepo examStudentRepo;
 
-    @Autowired
-    private ExamScorePushQueueRepo examScorePushQueueRepo;
+//    @Autowired
+//    private ExamScorePushQueueRepo examScorePushQueueRepo;
 
     @Autowired
     private ExamScoreQueueService examScoreQueueService;
@@ -72,16 +69,16 @@ public class CupExamScorePushServiceImpl implements ExamScorePushService {
     @Override
     public void scorePush(ExamScorePushQueue examScorePushQueue) {
         log.info("开始推送石油大学成绩:" + examScorePushQueue.getId());
-        Long scoreId = examScorePushQueue.getExamScoreId();
-        ExamScoreEntity examScore = GlobalHelper.getEntity(examScoreRepo, scoreId, ExamScoreEntity.class);
-        ExamRecordDataEntity examRecordData = GlobalHelper.getEntity(examRecordDataRepo, examScore.getExamRecordDataId(), ExamRecordDataEntity.class);
+//        Long scoreId = examScorePushQueue.getExamScoreId();
+//        ExamScoreEntity examScore = GlobalHelper.getEntity(examScoreRepo, scoreId, ExamScoreEntity.class);
+        ExamRecordDataEntity examRecordData = GlobalHelper.getEntity(examRecordDataRepo, examScorePushQueue.getExamRecordDataId(), ExamRecordDataEntity.class);
 
         ExamStudentEntity examStudent = examStudentRepo.findByExamStudentId(examRecordData.getExamStudentId());
-        if (examScore == null || examRecordData == null || examStudent == null) {
+        if (examRecordData == null || examStudent == null) {
             return;
         }
 
-        ExamScorePushInfo examScorePushInfo = buildexamScorePushInfo(examScore, examRecordData, examStudent);
+        ExamScorePushInfo examScorePushInfo = buildexamScorePushInfo(examRecordData, examStudent);
         String courseCode = examScorePushInfo.getCourseCode();
         //将Z000001变成000001
         if (courseCode.startsWith("Z") || courseCode.startsWith("Q") || courseCode.startsWith("S")) {
@@ -161,8 +158,7 @@ public class CupExamScorePushServiceImpl implements ExamScorePushService {
         }
     }
 
-    private ExamScorePushInfo buildexamScorePushInfo(ExamScoreEntity examScore,
-                                                     ExamRecordDataEntity examRecordDataEntity,
+    private ExamScorePushInfo buildexamScorePushInfo(ExamRecordDataEntity examRecordDataEntity,
                                                      ExamStudentEntity examStudentEntity) {
         ExamScorePushInfo examScorePushInfo = new ExamScorePushInfo();
         examScorePushInfo.setExamId(examStudentEntity.getExamId());
@@ -182,10 +178,10 @@ public class CupExamScorePushServiceImpl implements ExamScorePushService {
         examScorePushInfo.setEndTime(examRecordDataEntity.getEndTime());
         examScorePushInfo.setSuccPercent(examRecordDataEntity.getFaceSuccessPercent());
         examScorePushInfo.setIsIllegality(examRecordDataEntity.getIsIllegality());
-        examScorePushInfo.setScoreId(examScore.getId());
-        examScorePushInfo.setTotalScore(examScore.getTotalScore());
-        examScorePushInfo.setObjectiveScore(examScore.getObjectiveScore());
-        examScorePushInfo.setSubjectiveScore(examScore.getSubjectiveScore());
+        examScorePushInfo.setScoreId(examRecordDataEntity.getId());
+        examScorePushInfo.setTotalScore(examRecordDataEntity.getTotalScore());
+        examScorePushInfo.setObjectiveScore(examRecordDataEntity.getObjectiveScore());
+        examScorePushInfo.setSubjectiveScore(examRecordDataEntity.getSubjectiveScore());
         return examScorePushInfo;
     }
 

+ 11 - 13
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/pushscore/swufe/SwufeExamScorePushServiceImpl.java

@@ -25,10 +25,8 @@ import org.springframework.stereotype.Service;
 import cn.com.qmth.examcloud.core.basic.api.bean.CourseBean;
 import cn.com.qmth.examcloud.core.oe.admin.base.utils.CommonUtil;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamRecordDataRepo;
-import cn.com.qmth.examcloud.core.oe.admin.dao.ExamScoreRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.ExamStudentRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamRecordDataEntity;
-import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScoreEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamScorePushQueue;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.ExamStudentEntity;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.ExamScoreQueueStatus;
@@ -51,8 +49,8 @@ public class SwufeExamScorePushServiceImpl implements ExamScorePushService{
 
 	private static final Logger log = LoggerFactory.getLogger(SwufeExamScorePushServiceImpl.class);
 	
-	@Autowired
-	private ExamScoreRepo examScoreRepo;
+//	@Autowired
+//	private ExamScoreRepo examScoreRepo;
 	
 	@Autowired
 	private ExamRecordDataRepo examRecordDataRepo;
@@ -69,14 +67,14 @@ public class SwufeExamScorePushServiceImpl implements ExamScorePushService{
 	public void scorePush(ExamScorePushQueue examScorePushQueue) {
 		log.info("开始推送西南财大成绩:"+examScorePushQueue.getId());
 		Long scoreId = examScorePushQueue.getExamScoreId();
-		ExamScoreEntity examScore = GlobalHelper.getEntity(examScoreRepo,scoreId,ExamScoreEntity.class);
-		ExamRecordDataEntity examRecordData = GlobalHelper.getEntity(examRecordDataRepo,examScore.getExamRecordDataId(),ExamRecordDataEntity.class);
+//		ExamScoreEntity examScore = GlobalHelper.getEntity(examScoreRepo,scoreId,ExamScoreEntity.class);
+		ExamRecordDataEntity examRecordData = GlobalHelper.getEntity(examRecordDataRepo,examScorePushQueue.getExamRecordDataId(),ExamRecordDataEntity.class);
 
 		ExamStudentEntity examStudent = examStudentRepo.findByExamStudentId(examRecordData.getExamStudentId());
-		if(examScore == null || examRecordData == null || examStudent == null){
+		if(examRecordData == null || examStudent == null){
 			return;
 		}
-		ExamScorePushInfo examScorePushInfo = buildexamScorePushInfo(examScore,examRecordData,examStudent);
+		ExamScorePushInfo examScorePushInfo = buildexamScorePushInfo(examRecordData,examStudent);
 		
 		if (examScorePushInfo != null) {
 			 CloseableHttpResponse httpResponse = null;
@@ -159,7 +157,7 @@ public class SwufeExamScorePushServiceImpl implements ExamScorePushService{
         return params;
 	}
 
-	private ExamScorePushInfo buildexamScorePushInfo(ExamScoreEntity examScore,ExamRecordDataEntity examRecordDataEntity, ExamStudentEntity examStudentEntity) {
+	private ExamScorePushInfo buildexamScorePushInfo(ExamRecordDataEntity examRecordDataEntity, ExamStudentEntity examStudentEntity) {
 		ExamScorePushInfo examScorePushInfo = new ExamScorePushInfo();
 		examScorePushInfo.setExamId(examStudentEntity.getExamId());
 
@@ -177,10 +175,10 @@ public class SwufeExamScorePushServiceImpl implements ExamScorePushService{
 		examScorePushInfo.setEndTime(examRecordDataEntity.getEndTime());
 		examScorePushInfo.setSuccPercent(examRecordDataEntity.getFaceSuccessPercent());
 		examScorePushInfo.setIsIllegality(examRecordDataEntity.getIsIllegality());
-		examScorePushInfo.setScoreId(examScore.getId());
-		examScorePushInfo.setTotalScore(examScore.getTotalScore());
-		examScorePushInfo.setObjectiveScore(examScore.getObjectiveScore());
-		examScorePushInfo.setSubjectiveScore(examScore.getSubjectiveScore());
+		examScorePushInfo.setScoreId(examRecordDataEntity.getId());
+		examScorePushInfo.setTotalScore(examRecordDataEntity.getTotalScore());
+		examScorePushInfo.setObjectiveScore(examRecordDataEntity.getObjectiveScore());
+		examScorePushInfo.setSubjectiveScore(examRecordDataEntity.getSubjectiveScore());
 		return examScorePushInfo;
 	}