|
@@ -1,55 +0,0 @@
|
|
|
-package cn.com.qmth.examcloud.core.questions.service.cache;
|
|
|
-
|
|
|
-import cn.com.qmth.examcloud.commons.exception.StatusException;
|
|
|
-import cn.com.qmth.examcloud.core.questions.service.ExtractConfigProviderService;
|
|
|
-import cn.com.qmth.examcloud.core.questions.service.bean.extract.ExtractConfigPaper;
|
|
|
-import cn.com.qmth.examcloud.support.cache.bean.PaperCacheBean;
|
|
|
-import cn.com.qmth.examcloud.web.cache.RandomObjectRedisCache;
|
|
|
-import org.apache.commons.lang3.StringUtils;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.stereotype.Component;
|
|
|
-
|
|
|
-@Component
|
|
|
-public class PaperCache extends RandomObjectRedisCache<PaperCacheBean> {
|
|
|
- @Autowired
|
|
|
- private ExtractConfigProviderService extractConfigProviderService;
|
|
|
-
|
|
|
- @Override
|
|
|
- public PaperCacheBean loadFromResource(Object... keys) {
|
|
|
- Long examId = (Long) keys[0];
|
|
|
- String courseCode = String.valueOf(keys[1]);
|
|
|
- String groupCode = String.valueOf(keys[2]);
|
|
|
-
|
|
|
- if (examId == null) {
|
|
|
- throw new StatusException("400", "examId is null");
|
|
|
- }
|
|
|
-
|
|
|
- if (StringUtils.isBlank(courseCode)) {
|
|
|
- throw new StatusException("400", "courseCode is empty");
|
|
|
- }
|
|
|
-
|
|
|
- if (StringUtils.isBlank(groupCode)) {
|
|
|
- throw new StatusException("400", "groupCode is empty");
|
|
|
- }
|
|
|
-
|
|
|
- ExtractConfigPaper result = extractConfigProviderService.getDefaultPaper(examId, courseCode, groupCode);
|
|
|
-
|
|
|
- PaperCacheBean cacheBean = new PaperCacheBean();
|
|
|
- cacheBean.setPaperId(result.getPaperId());
|
|
|
- cacheBean.setSortQuestionOrder(result.getSortQuestionOrder());
|
|
|
- cacheBean.setSortOptionOrder(result.getSortOptionOrder());
|
|
|
- cacheBean.setDefaultPaper(result.getDefaultPaper());
|
|
|
- return cacheBean;
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- protected String getKeyPrefix() {
|
|
|
- return "Q_PAPER:";
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- protected int getTimeout() {
|
|
|
- return 5 * 60;// N分钟
|
|
|
- }
|
|
|
-
|
|
|
-}
|