Przeglądaj źródła

Merge branch 'dev'
1

wangliang 4 lat temu
rodzic
commit
5237e3ec25

+ 1 - 3
themis-backend/src/main/java/com/qmth/themis/backend/api/TEExamActivityController.java

@@ -77,6 +77,7 @@ public class TEExamActivityController {
             examId = teExamActivityList.get(0).getExamId();
             for(TEExamActivity ac:teExamActivityList){
             	teExamActivityService.saveOrUpdate(ac);
+                teExamActivityService.updateExamActivityCacheBean(ac.getId());
             }
             TEExam teExam = teExamService.getById(teExamActivityList.get(0).getExamId());
             if (Objects.nonNull(teExam.getForceFinish()) && teExam.getForceFinish().intValue() == 1) {
@@ -88,9 +89,6 @@ public class TEExamActivityController {
                 mqDtoService.assembleSendOneWayMsg(mqDto);
                 //新增quartz任务,发送mq消息end
             }
-            teExamActivityList.forEach(s -> {
-                teExamActivityService.updateExamActivityCacheBean(s.getId());
-            });
         } catch (Exception e) {
             log.error("请求出错", e);
             if (Objects.nonNull(examId) && Objects.nonNull(teExamActivityList) && (Objects.nonNull(teExamActivityList) && teExamActivityList.size() > 0 && Objects.nonNull(teExamActivityList.get(0)))) {

+ 2 - 6
themis-backend/src/main/java/com/qmth/themis/backend/api/TEExamController.java

@@ -116,7 +116,6 @@ public class TEExamController {
                 teExam.setMonitorStatus(InvigilateMonitorStatusEnum.NOT_START);
             }
             teExamService.saveOrUpdate(teExam);
-            teExamService.updateExamCacheBean(teExam.getId());
             if (Objects.nonNull(oldTeExam) && !Objects.equals(oldTeExam.getMode().name(), teExamDto.getMode().name())) {//如果模式改变,则删除之前模式的全部quartz
                 QueryWrapper<TEExamActivity> teExamActivityQueryWrapper = new QueryWrapper<>();
                 teExamActivityQueryWrapper.lambda().eq(TEExamActivity::getExamId, oldId);
@@ -152,6 +151,7 @@ public class TEExamController {
                     });
                     for(TEExamActivity ac:teExamActivityList){
                     	teExamActivityService.saveOrUpdate(ac);
+                        teExamActivityService.updateExamActivityCacheBean(ac.getId());
                     }
                     if (Objects.nonNull(teExam.getForceFinish()) && teExam.getForceFinish().intValue() == 1) {
                         //新增quartz任务,发送mq消息start
@@ -162,17 +162,13 @@ public class TEExamController {
                         mqDtoService.assembleSendOneWayMsg(mqDto);
                         //新增quartz任务,发送mq消息end
                     }
-                    teExamActivityList.forEach(s -> {
-                    	log.debug("updateExamActivityCacheBean "+s.getId());
-                        teExamActivityService.updateExamActivityCacheBean(s.getId());
-                    });
                 } else {
                     TEExamActivity teExamActivity = new TEExamActivity(teExam.getId(), teExam.getPrepareSeconds(), teExam.getMaxDurationSeconds(), (int) ((teExam.getEndTime() - teExam.getStartTime()) / 1000), teExam.getStartTime(), teExam.getEndTime(), tbUser.getId());
                     teExamActivity.setCode(String.valueOf(redisUtil.getRedisActivityCodeSequence(teExam.getId())));
                     activityCode = teExamActivity.getCode();
                     teExamActivity.setEnable(1);
                     teExamActivityService.saveOrUpdate(teExamActivity);
-
+                    teExamActivityService.updateExamActivityCacheBean(teExamActivity.getId());
                     if (Objects.nonNull(teExam.getForceFinish()) && teExam.getForceFinish().intValue() == 1 && Objects.nonNull(teExamActivity) && teExamActivity.getEnable().intValue() == 1) {
                         //新增quartz任务,发送mq消息start
                         Map<String, Object> prop = new HashMap<>();

+ 1 - 3
themis-backend/src/main/java/com/qmth/themis/backend/api/TEExamStudentController.java

@@ -233,10 +233,8 @@ public class TEExamStudentController {
         });
         for(TEExamStudent es:teExamStudentList){
         	teExamStudentService.saveOrUpdate(es);
+            teExamStudentService.updateExamStudentCacheBean(es.getId());
         }
-        teExamStudentList.forEach(s -> {
-            teExamStudentService.updateExamStudentCacheBean(s.getId());
-        });
         return ResultUtil.ok(Collections.singletonMap("success", true));
     }
 

+ 9 - 0
themis-business/src/main/java/com/qmth/themis/business/service/impl/TEStudentServiceImpl.java

@@ -7,6 +7,9 @@ import java.util.Map;
 
 import javax.annotation.Resource;
 
+import com.google.gson.Gson;
+import com.qmth.themis.business.dto.cache.TEStudentCacheDto;
+import com.qmth.themis.business.util.RedisUtil;
 import org.apache.commons.codec.digest.DigestUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -41,6 +44,9 @@ public class TEStudentServiceImpl extends ServiceImpl<TEStudentMapper, TEStudent
     @Resource
     SystemConfig systemConfig;
 
+    @Resource
+    RedisUtil redisUtil;
+
     /**
      * 学生档案查询
      *
@@ -90,6 +96,9 @@ public class TEStudentServiceImpl extends ServiceImpl<TEStudentMapper, TEStudent
         	}
         	student.setBasePhotoPath(filePath);
         	this.saveOrUpdate(student);
+            Gson gson = new Gson();
+            TEStudentCacheDto teStudentCacheDto = gson.fromJson(gson.toJson(student), TEStudentCacheDto.class);
+            redisUtil.setStudent(student.getId(), teStudentCacheDto);
             in = file.getInputStream();
             OssUtil.ossUploadStream(systemConfig.getOssEnv(3), filePath, in);
             String url = systemConfig.getProperty("aliyun.oss.url") + File.separator + filePath;