Przeglądaj źródła

补充导出如下内容的主观题考生作答情况及教师评分情况
机构:1627 中国地质大学(武汉)
考试:481 2019年5月课程考试网络考试

deason 6 lat temu
rodzic
commit
02d667668e

+ 13 - 8
examcloud-core-questions-service/src/main/java/cn/com/qmth/examcloud/core/questions/service/temp/DdExcelService.java

@@ -559,16 +559,22 @@ public class DdExcelService {
     public void exportSubQues(String orgId, Long examId, List<String> codes) throws Exception {
         System.out.println(String.format("共%s门课程的调卷规则", codes.size()));
 
-        List<SubQuestionDto> dtos = new ArrayList<SubQuestionDto>();
-        int j = 1;
+        int index = 1;
+        List<SubQuestionDto> subjectQuestions = new ArrayList<>();
         for (String code : codes) {
+            System.out.println("开始处理第" + index + "门课程的调卷规则");
+            index++;
+
             Query query = new Query();
             query.addCriteria(Criteria.where("orgId").is(orgId));
             query.addCriteria(Criteria.where("examId").is(examId));
-            System.out.println("开始处理第" + j + "门课程的调卷规则");
-
             query.addCriteria(Criteria.where("courseCode").is(code));
             ExtractConfig tempConfig = this.mongoTemplate.findOne(query, ExtractConfig.class);
+            if (tempConfig == null) {
+                System.out.println(String.format("课程-%s:没有调卷规则", code));
+                continue;
+            }
+
             //定义试卷集合
             Set<String> ids = new HashSet<String>();
 
@@ -609,11 +615,10 @@ public class DdExcelService {
                         dto.setPaperId(basePaper.getId());
                         dto.setPaperName(basePaper.getName());
                         dto.setScore(paperDetailUnit.getScore());
-                        dtos.add(dto);
+                        subjectQuestions.add(dto);
                     }
                 }
             }
-            j++;
         }
 
         //生成Excel对象
@@ -638,10 +643,10 @@ public class DdExcelService {
         titleRow.createCell(11).setCellValue("标答(含标签)");
 
         //向Excle中写入数据,从第2行开始
-        for (int i = 0; i < dtos.size(); i++) {
+        for (int i = 0; i < subjectQuestions.size(); i++) {
             //创建一行:从第1行开始,跳过表头
             Row row = sheet.createRow(i + 1);
-            SubQuestionDto dto = dtos.get(i);
+            SubQuestionDto dto = subjectQuestions.get(i);
             //每列赋值
             row.createCell(0).setCellValue(dto.getCourseCode());
             row.createCell(1).setCellValue(dto.getCourseName());

+ 25 - 7
examcloud-core-questions-starter/src/main/java/cn/com/qmth/examcloud/core/questions/starter/IndexController.java

@@ -69,13 +69,31 @@ public class IndexController {
         //用来导出给定课程关联中的主观题信息的Excel(导出课程下的主观题试题分布)
         DdExcelService ddExcelService = SpringContextHolder.getBean(DdExcelService.class);
         List<String> codes = new ArrayList<>();
-        codes.add("D02020001");
-        codes.add("D07020005");
-        codes.add("D07020022");
-        codes.add("D08020006");
-        codes.add("D08020008");
-        codes.add("D08020009");
-        codes.add("D08020013");
+//        codes.add("D02020001");
+//        codes.add("D07020005");
+//        codes.add("D07020022");
+//        codes.add("D08020006");
+//        codes.add("D08020008");
+//        codes.add("D08020009");
+//        codes.add("D08020013");
+
+        codes.add("D17020004");
+        codes.add("D17020003");
+        codes.add("F06020036");
+        codes.add("D16020003");
+        codes.add("F46020001");
+        codes.add("F32020009");
+        codes.add("D17020007");
+        codes.add("D15020003");
+        codes.add("D15020002");
+        codes.add("D12020003");
+        codes.add("D11020015");
+        codes.add("D08020016");
+        codes.add("D06020024");
+        codes.add("D06020009");
+        codes.add("D05020025");
+        codes.add("D05020020");
+        codes.add("D05020001");
 
         try {
             ddExcelService.exportSubQues("1627", 481L, codes);