Jelajahi Sumber

网考一月份新功能开发

lideyin 5 tahun lalu
induk
melakukan
79a1cd0067

+ 5 - 3
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/bean/examaudit/ExamAuditEntityConvert.java

@@ -50,10 +50,10 @@ public class ExamAuditEntityConvert {
                 }
 
                 DisciplineType disciplineType = DisciplineType.tramsformByType(info.getDisciplineType());
-                if(disciplineType!=null){
-                	info.setDisciplineType(disciplineType.getName());	
+                if (disciplineType != null) {
+                    info.setDisciplineType(disciplineType.getName());
                 }
-                
+
                 list.add(info);
             } catch (Exception e) {
                 throw new ExamCloudRuntimeException(e.getMessage(), e.getCause());
@@ -86,6 +86,8 @@ public class ExamAuditEntityConvert {
             excel.setFaceStrangerCount(e.getFaceStrangerCount());
             excel.setFaceTotalCount(e.getFaceTotalCount());
             excel.setFaceSuccessPercent(e.getFaceSuccessPercent());
+            excel.setDisciplineDetail(e.getDisciplineDetail());
+            excel.setObjectiveScore(e.getObjectiveScore());
             list.add(excel);
         });
         return list;

+ 28 - 8
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/bean/examaudit/ExamAuditExcel.java

@@ -25,28 +25,32 @@ public class ExamAuditExcel implements JsonSerializable {
     private Long examRecordDataId;
     @ExcelProperty(name = "学习中心", index = 2)
     private String orgName;
-    @ExcelProperty(name = "违纪类型", index = 12)
+    @ExcelProperty(name = "违纪类型", index = 13)
     private String disciplineType;
     @ExcelProperty(name = "批次名称", index = 1)
     private String examName;
-    @ExcelProperty(name = "学号", index = 6)
+    @ExcelProperty(name = "学号", index = 7)
     private String studentCode;
-    @ExcelProperty(name = "姓名", index = 7)
+    @ExcelProperty(name = "姓名", index = 8)
     private String studentName;
     @ExcelProperty(name = "科目代码", index = 4)
     private String courseCode;
     @ExcelProperty(name = "考试科目", index = 3)
     private String courseName;
-    @ExcelProperty(name = "课程层次", index = 5)
+    @ExcelProperty(name = "课程层次", index = 6)
     private String courseLevel;
-    @ExcelProperty(name = "成功次数", index = 9)
+    @ExcelProperty(name = "成功次数", index = 10)
     private Integer faceSuccessCount;
-    @ExcelProperty(name = "陌生人记录", index = 10)
+    @ExcelProperty(name = "陌生人记录", index = 11)
     private Integer faceStrangerCount;
-    @ExcelProperty(name = "校验次数", index = 8)
+    @ExcelProperty(name = "校验次数", index = 9)
     private Integer faceTotalCount;
-    @ExcelProperty(name = "成功率", index = 11)
+    @ExcelProperty(name = "成功率", index = 12)
     private Double faceSuccessPercent;
+    @ExcelProperty(name = "客观题总分", index = 5)
+    private Double objectiveScore;
+    @ExcelProperty(name = "违纪描述", index = 14)
+    private String disciplineDetail;
     
     public Long getExamRecordDataId() {
 		return examRecordDataId;
@@ -151,4 +155,20 @@ public class ExamAuditExcel implements JsonSerializable {
     public void setOrgName(String orgName) {
         this.orgName = orgName;
     }
+
+    public String getDisciplineDetail() {
+        return disciplineDetail;
+    }
+
+    public void setDisciplineDetail(String disciplineDetail) {
+        this.disciplineDetail = disciplineDetail;
+    }
+
+    public Double getObjectiveScore() {
+        return objectiveScore;
+    }
+
+    public void setObjectiveScore(Double objectiveScore) {
+        this.objectiveScore = objectiveScore;
+    }
 }

+ 13 - 0
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/bean/examaudit/ExamAuditInfo.java

@@ -163,6 +163,11 @@ public class ExamAuditInfo implements JsonSerializable {
      */
     private Double faceLandmarkVal;
 
+    /**
+     * 客观题得分总分
+     */
+    private Double objectiveScore;
+
     public Long getId() {
         return id;
     }
@@ -450,4 +455,12 @@ public class ExamAuditInfo implements JsonSerializable {
     public void setOrgName(String orgName) {
         this.orgName = orgName;
     }
+
+    public Double getObjectiveScore() {
+        return objectiveScore;
+    }
+
+    public void setObjectiveScore(Double objectiveScore) {
+        this.objectiveScore = objectiveScore;
+    }
 }

+ 40 - 1
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/bean/examcapture/ExamCaptureAuditInfo.java

@@ -8,6 +8,7 @@
 package cn.com.qmth.examcloud.core.oe.admin.service.bean.examcapture;
 
 import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+import cn.com.qmth.examcloud.core.oe.admin.base.utils.excel.ExcelProperty;
 
 /**
  * 考试抓拍检测信息
@@ -99,6 +100,21 @@ public class ExamCaptureAuditInfo implements JsonSerializable {
      */
     private String virtualCameraNames;
 
+    /**
+     * 学习中心名称
+     */
+    private String orgName;
+
+    /**
+     * 年级
+     */
+    private String grade;
+
+    /**
+     * 课程层次
+     */
+    private String courseLevel;
+
     public String getStatus() {
         return status;
     }
@@ -275,5 +291,28 @@ public class ExamCaptureAuditInfo implements JsonSerializable {
 	public void setVirtualCameraNames(String virtualCameraNames) {
 		this.virtualCameraNames = virtualCameraNames;
 	}
-    
+
+    public String getOrgName() {
+        return orgName;
+    }
+
+    public void setOrgName(String orgName) {
+        this.orgName = orgName;
+    }
+
+    public String getGrade() {
+        return grade;
+    }
+
+    public void setGrade(String grade) {
+        this.grade = grade;
+    }
+
+    public String getCourseLevel() {
+        return courseLevel;
+    }
+
+    public void setCourseLevel(String courseLevel) {
+        this.courseLevel = courseLevel;
+    }
 }

+ 11 - 0
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/bean/examrecord/ExamRecordEntityConvert.java

@@ -12,7 +12,9 @@ import cn.com.qmth.examcloud.core.basic.api.bean.CourseBean;
 import cn.com.qmth.examcloud.core.oe.admin.base.Constants;
 import cn.com.qmth.examcloud.core.oe.admin.base.utils.DateUtils;
 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.enums.CourseLevel;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.ExamRecordStatus;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.IsSuccess;
@@ -48,6 +50,10 @@ public class ExamRecordEntityConvert {
 
     @Autowired
     private GainBaseDataService gainBaseDataService;
+
+    @Autowired
+    private ExamScoreRepo examScoreRepo;
+
     public  ExamRecordInfo of(ExamRecordDataEntity recordData,Map<String,Object> cahcheMap) {
         if (recordData == null) {
             return null;
@@ -137,6 +143,11 @@ public class ExamRecordEntityConvert {
             info.setFaceVerifyResult(result.getDesc());
         }
         info.setFaceLandmarkVal(recordData.getFaceLandmarkVal());
+
+        //ldy20200108需求变更:
+        ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(recordData.getId());
+        info.setObjectiveTotalScore(String.valueOf(examScore.getObjectiveScore()));
+
         return info;
     }
 

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

@@ -176,10 +176,14 @@ public class ExamAuditServiceImpl implements ExamAuditService {
         	examAuditInfo.setCourseCode(courseBean.getCode());
         	examAuditInfo.setCourseLevel(CourseLevel.getCourseLevel(courseBean.getLevel()).getTitle());
 
-            //获取考试名称
+            //考试名称
             ExamBean examBean = ExamCacheTransferHelper.getCachedExam(query.getExamId(),examAuditInfo.getStudentId());
             examAuditInfo.setExamName(examBean.getName());
 
+            //客观分
+            ExamScoreEntity examScore = examScoreRepo.findByExamRecordDataId(examAuditInfo.getExamRecordDataId());
+            examAuditInfo.setObjectiveScore(examScore.getObjectiveScore());
+
         }
         return new PageImpl<ExamAuditInfo>(list, pageable, totalSize);
     }

+ 14 - 0
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/ExamCaptureServiceImpl.java

@@ -22,6 +22,8 @@ import cn.com.qmth.examcloud.core.oe.admin.service.bean.examcapture.ExamCaptureI
 import cn.com.qmth.examcloud.core.oe.admin.service.others.ExamCacheTransferHelper;
 import cn.com.qmth.examcloud.support.Constants;
 import cn.com.qmth.examcloud.support.cache.CacheHelper;
+import cn.com.qmth.examcloud.support.cache.bean.ExamStudentCacheBean;
+import cn.com.qmth.examcloud.support.cache.bean.OrgCacheBean;
 import cn.com.qmth.examcloud.support.cache.bean.SysPropertyCacheBean;
 import cn.com.qmth.examcloud.web.bootstrap.PropertyHolder;
 import cn.com.qmth.examcloud.web.helpers.GlobalHelper;
@@ -102,6 +104,18 @@ public class ExamCaptureServiceImpl implements ExamCaptureService {
         	detail.setFaceVerifyResult(recordData.getFaceVerifyResult().name());
         }
         detail.setVirtualCameraNames(getVirtualCameraNames(examRecordDataId));
+
+        //组织机构
+        OrgCacheBean org = CacheHelper.getOrg(recordData.getOrgId());
+        detail.setOrgName(org.getName());
+
+        //考生
+        ExamStudentCacheBean examStudent = CacheHelper.getExamStudent(recordData.getExamStudentId());
+        detail.setGrade(examStudent.getGrade());
+
+        //课程层次
+        detail.setCourseLevel(recordData.getCourseLevel());
+
         return detail;
     }
 

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

@@ -324,6 +324,7 @@ public class ExamRecordServiceImpl implements ExamRecordService {
         //查询总数
         long total = countExamRecordListForPage(query);
         Pageable pageable = new PageRequest(query.getPageNo() - 1, query.getPageSize());
+
         Page<ExamRecordDataEntity> page = new PageImpl<ExamRecordDataEntity>(examRecordDataList, pageable, total);
         return examRecordEntityConvert.of(page);
     }