Bläddra i källkod

Merge remote-tracking branch 'origin/master'

lideyin 4 år sedan
förälder
incheckning
cec7be11d5

+ 4 - 5
src/main/java/cn/com/qmth/dp/examcloud/oe/Task.java

@@ -1,10 +1,8 @@
 package cn.com.qmth.dp.examcloud.oe;
 
-import cn.com.qmth.dp.examcloud.oe.modules.get_continued_count.GetStudentContinutedCountService;
 import cn.com.qmth.examcloud.commons.logging.ExamCloudLog;
 import cn.com.qmth.examcloud.commons.logging.ExamCloudLogFactory;
 import cn.com.qmth.examcloud.commons.util.JsonUtil;
-import cn.com.qmth.examcloud.commons.util.PropertiesUtil;
 import cn.com.qmth.examcloud.web.support.SpringContextHolder;
 import cn.com.qmth.examcloud.web.upyun.UpYunPathInfo;
 import cn.com.qmth.examcloud.web.upyun.UpyunPathEnvironmentInfo;
@@ -43,9 +41,10 @@ public class Task {
         try {
             // ResetScoreService bean1 = SpringContextHolder.getBean(ResetScoreService.class);
             // bean1.start();
-            Long examId = PropertiesUtil.getLong("getContiuedCount.examId", 0L);
-            GetStudentContinutedCountService bean = SpringContextHolder.getBean(GetStudentContinutedCountService.class);
-            bean.start(examId);
+
+            // Long examId = PropertiesUtil.getLong("getContiuedCount.examId", 0L);
+            // GetStudentContinutedCountService bean = SpringContextHolder.getBean(GetStudentContinutedCountService.class);
+            // bean.start(examId);
 
             // GetStduentAnswerDetailService bean = SpringContextHolder.getBean(GetStduentAnswerDetailService.class);
             // bean.start(1627L, "000004");

+ 16 - 5
src/main/java/cn/com/qmth/dp/examcloud/oe/modules/export_exam_student_score/ExportExamStudentScore.java

@@ -82,16 +82,18 @@ public class ExportExamStudentScore {
             String markingType = this.queryExamMarkingType(entry.getKey(), MARKING_TYPE_KEY);
             log.info("---> markingType is " + markingType);
 
+            String examName = this.queryExamName(entry.getKey());
+
             for (Long courseId : examCourseIds) {
                 // 按考试的每个课程依次导出
-                this.export(entry.getKey(), courseId, markingType, orgNameMaps, courseNameMaps);
+                this.export(entry.getKey(), examName, courseId, markingType, orgNameMaps, courseNameMaps);
             }
 
             log.info("===> export finished, examId = " + entry.getKey() + "\n");
         }
     }
 
-    private void export(Long examId, Long courseId, String markingType, Map<Long, String> orgNameMaps, Map<Long, String> courseNameMaps) {
+    private void export(Long examId, String examName, Long courseId, String markingType, Map<Long, String> orgNameMaps, Map<Long, String> courseNameMaps) {
         List<ExamStudentVO> examStudents = this.queryExamStudents(examId, courseId);
         log.info(String.format("---> examId = %s, courseId = %s, examStudentSize = %s", examId, courseId, examStudents.size()));
 
@@ -252,12 +254,12 @@ public class ExportExamStudentScore {
         List<String> fixedExcelHeaders = Lists.newArrayList("学习中心", "课程代码", "课程名称", "层次", "是否缺考", "身份证号", "学号", "姓名", "年级", "专业", "客观总分", "主观总分", "总分");
         fixedExcelHeaders.addAll(dynamicExcelHeaders);
 
-        this.toExcel(examId, courseId, examStudents, fixedExcelHeaders);
+        this.toExcel(examId, examName, courseId, examStudents, fixedExcelHeaders);
 
         examStudents.clear();
     }
 
-    private void toExcel(Long examId, Long courseId, List<ExamStudentVO> examStudents, List<String> excelHeaders) {
+    private void toExcel(Long examId, String examName, Long courseId, List<ExamStudentVO> examStudents, List<String> excelHeaders) {
         // 处理Excel
         List<Object[]> excelRows = new ArrayList<>();
 
@@ -282,7 +284,7 @@ public class ExportExamStudentScore {
             excelTypes[n] = String.class;
         }
 
-        final String filePath = String.format("/home/admin/project/oe/exam_%s/exam_student_score_%s.xlsx", examId, courseId);
+        final String filePath = String.format("/home/admin/project/oe/%s_%s/exam_student_score_%s.xlsx", examId, examName, courseId);
         ExcelWriter.write(excelHeaders.toArray(new String[excelHeaders.size()]), excelTypes, excelRows, new File(filePath));
     }
 
@@ -295,6 +297,15 @@ public class ExportExamStudentScore {
         }
     }
 
+    private String queryExamName(Long examId) {
+        final String querySql = String.format("select name from ec_e_exam where id = %s", examId);
+        try {
+            return jdbcTemplate.queryForObject(querySql, String.class);
+        } catch (EmptyResultDataAccessException e) {
+            return "";
+        }
+    }
+
     private String queryCourseName(Long courseId) {
         final String querySql = String.format("select name from ec_b_course where id = %s", courseId);
         try {

+ 12 - 12
src/main/resources/application.properties

@@ -6,11 +6,11 @@ spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
 spring.jackson.time-zone=GMT+8
 
 #datasource
-dsurl.host=qmth-db4.mysql.rds.aliyuncs.com
+dsurl.host=qmth-db1.mysql.rds.aliyuncs.com
 dsurl.port=3306
-dsurl.database=exam_cloud_test
-spring.datasource.username=exam_cloud_test
-spring.datasource.password=Examcloud123
+dsurl.database=exam_cloud
+spring.datasource.username=exam_cloud_view
+spring.datasource.password=dldkfs-596zcv-WslCv5
 spring.datasource.url=jdbc:mysql://${dsurl.host}:${dsurl.port}/${dsurl.database}?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2b8&rewriteBatchedStatements=true
 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
@@ -28,25 +28,25 @@ spring.datasource.druid.test-on-return=false
 spring.datasource.druid.test-while-idle=true
 
 #mongodb
-mguri.hostAndPortGroup=dds-wz972dde5d2d78e433270.mongodb.rds.aliyuncs.com:3717
-mguri.username=exam-cloud-dev
-mguri.password=Examcloud123
+mguri.hostAndPortGroup=dds-wz93958e4b3d8b141100.mongodb.rds.aliyuncs.com:3717
+mguri.username=reader
+mguri.password=vqd2uq-5zuxcm-ge4fn3
 mguri.database=admin
 spring.data.mongodb.uri=mongodb://${mguri.username}:${mguri.password}@${mguri.hostAndPortGroup}/${mguri.database}
 spring.data.mongodb.grid-fs-database=examcloud-core-oe
 spring.data.mongodb.database=examcloud-core-oe
 
-#redis
+#redis test env
 spring.redis.host=qmth-redis3.redis.rds.aliyuncs.com
 spring.redis.port=6379
 spring.redis.database=0
 spring.redis.password=jkhm45-UO8rFc-q2Eb90
 
 #exchange
-qmth.rootOrgId=0
-qmth.secretKey=123456
-qmth.appId=11
-qmth.server.host=192.168.1.91
+qmth.rootOrgId=17196
+qmth.secretKey=lkjfjnioeweJI9IOnifasfe
+qmth.appId=jhun
+qmth.server.host=ecs.qmth.com.cn
 qmth.server.port=8007
 
 #fixParam's path

+ 1 - 1
src/test/java/cn/com/qmth/dp/examcloud/oe/test/ExportTest.java

@@ -26,7 +26,7 @@ public class ExportTest {
     @Test
     public void exportTest() throws Exception {
         // 导出 - 小题分
-        // exportExamStudentScore.start();
+        exportExamStudentScore.start();
 
         // 导出 - 考生作答结果(带手机号)
         // studentOneAnswerService.start(1213L, 1, "01");