|
@@ -1,32 +1,19 @@
|
|
|
package cn.com.qmth.dp.examcloud.oe.modules.get_continued_count;
|
|
|
|
|
|
-import cn.com.qmth.examcloud.commons.helpers.ObjectHolder;
|
|
|
import cn.com.qmth.examcloud.commons.helpers.poi.ExcelWriter;
|
|
|
-import cn.com.qmth.examcloud.commons.util.JsonUtil;
|
|
|
+import cn.com.qmth.examcloud.support.examing.ExamRecordData;
|
|
|
+import cn.com.qmth.examcloud.web.redis.RedisClient;
|
|
|
import com.google.common.collect.Lists;
|
|
|
-import com.google.common.collect.Maps;
|
|
|
-import com.google.common.collect.Sets;
|
|
|
-import com.mongodb.MongoException;
|
|
|
-import io.swagger.models.auth.In;
|
|
|
-import org.apache.commons.collections.CollectionUtils;
|
|
|
-import org.apache.commons.lang3.StringUtils;
|
|
|
-import org.bson.Document;
|
|
|
-import org.jsoup.Jsoup;
|
|
|
-import org.jsoup.safety.Whitelist;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.dao.DataAccessException;
|
|
|
-import org.springframework.data.mongodb.core.DocumentCallbackHandler;
|
|
|
import org.springframework.data.mongodb.core.MongoTemplate;
|
|
|
-import org.springframework.data.mongodb.core.query.Criteria;
|
|
|
-import org.springframework.data.mongodb.core.query.Query;
|
|
|
import org.springframework.data.redis.core.RedisTemplate;
|
|
|
import org.springframework.jdbc.core.JdbcTemplate;
|
|
|
-import org.springframework.scheduling.annotation.Async;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.io.File;
|
|
|
-import java.util.*;
|
|
|
-import java.util.stream.Collectors;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
* @Description 获取考生断点次数
|
|
@@ -45,6 +32,8 @@ public class GetStudentContinutedCountService {
|
|
|
|
|
|
@Autowired
|
|
|
RedisTemplate<String, Object> redisTemplate;
|
|
|
+ @Autowired
|
|
|
+ RedisClient redisClient;
|
|
|
|
|
|
public void start(Long examId) throws Exception {
|
|
|
System.out.println("开始初始化数据...");
|
|
@@ -63,18 +52,15 @@ public class GetStudentContinutedCountService {
|
|
|
Long examRecordDataId = (Long) map.get("exam_record_data_id");
|
|
|
String examRecordDataKey = String.format("OE_ERD:%s", examRecordDataId);
|
|
|
Long st = System.currentTimeMillis();
|
|
|
- Object oData = redisTemplate.opsForValue().get(examRecordDataKey);
|
|
|
+// Object oData = redisTemplate.opsForValue().get(examRecordDataKey);
|
|
|
+ ExamRecordData erd = redisClient.get(examRecordDataKey,ExamRecordData.class);
|
|
|
System.out.println(String.format("%s:.1.redis中取数据耗时:%s ms",i,(System.currentTimeMillis()-st)));
|
|
|
|
|
|
//缓存中有数据则从缓存中取数据,没有则从数据库中取
|
|
|
- if (oData != null) {
|
|
|
- Map<String, Object> erdMap = (Map<String, Object>) oData;
|
|
|
- Object oContinuedCount = erdMap.get("continued_count");
|
|
|
- Integer continuedCount;
|
|
|
- if (oContinuedCount == null) {
|
|
|
+ if (erd != null) {
|
|
|
+ Integer continuedCount = erd.getContinuedCount();
|
|
|
+ if (continuedCount == null) {
|
|
|
continuedCount = 0;
|
|
|
- } else {
|
|
|
- continuedCount = (Integer) oContinuedCount;
|
|
|
}
|
|
|
map.put("continued_count", continuedCount);
|
|
|
}
|
|
@@ -96,7 +82,6 @@ public class GetStudentContinutedCountService {
|
|
|
System.out.println(String.format("%s:.3.结果map中放数据耗时:%s ms",i,(System.currentTimeMillis()-st)));
|
|
|
}
|
|
|
}
|
|
|
- System.out.println(String.format("%s:.完成一次循环.合计耗时:%s ms",i,(System.currentTimeMillis()-st)));
|
|
|
}
|
|
|
|
|
|
System.out.println("准备导出数据完成,开始导出...");
|