Răsfoiți Sursa

`去除缓存跟新操作,,直接重置缓存`

wenhongquan 1 an în urmă
părinte
comite
5e85fb2d35

+ 5 - 1
ruoyi-modules/ruoyi-dzbc/src/main/java/org/dromara/system/controller/TblDzbcPathSchedulingController.java

@@ -81,7 +81,11 @@ public class TblDzbcPathSchedulingController extends BaseController {
     @GetMapping("/{id}")
     public R<TblDzbcPathSchedulingVo> getInfo(@NotNull(message = "主键不能为空")
                                      @PathVariable Long id) {
-        return R.ok(tblDzbcPathSchedulingService.queryById(id));
+        TblDzbcPathSchedulingVo  vo = tblDzbcPathSchedulingService.queryById(id);
+        if(vo==null){
+            return R.fail("未找到该排班");
+        }
+        return R.ok(vo);
     }
 
     /**

+ 14 - 7
ruoyi-modules/ruoyi-dzbc/src/main/java/org/dromara/system/service/impl/TblDzbcPathSchedulingServiceImpl.java

@@ -172,20 +172,27 @@ public class TblDzbcPathSchedulingServiceImpl implements ITblDzbcPathSchedulingS
 
                 @Override
                 public void run() {
+
+                    RedisUtils.deleteKeys("dzbc_path_scheduling*");
+
                     TblDzbcPathSchedulingBo bo = new TblDzbcPathSchedulingBo();
                     bo.getParams().put("mdate", DateUtil.today());
                     LambdaQueryWrapper<TblDzbcPathScheduling> lqw = buildQueryWrapper(bo);
                     List<TblDzbcPathSchedulingVo> list = baseMapper.selectVoList(lqw);
                     Map<String,Map<String,TblDzbcPathSchedulingVo> > map = new HashMap<>();
-                    for (TblDzbcPathSchedulingVo tblDzbcPathSchedulingVo : list) {
-                        if(tblDzbcPathSchedulingVo.getMdate()!=null){
-                            if(map.containsKey(DateUtil.formatDate(tblDzbcPathSchedulingVo.getMdate()))){
-                                map.get(DateUtil.formatDate(tblDzbcPathSchedulingVo.getMdate())).put(tblDzbcPathSchedulingVo.getId().toString(),tblDzbcPathSchedulingVo);
-                            }else{
-                                map.put(DateUtil.formatDate(tblDzbcPathSchedulingVo.getMdate()),Map.of(tblDzbcPathSchedulingVo.getId().toString(),tblDzbcPathSchedulingVo));
+
+                        for (TblDzbcPathSchedulingVo tblDzbcPathSchedulingVo : list) {
+                            if(tblDzbcPathSchedulingVo.getMdate()!=null){
+                                if(map.containsKey(DateUtil.formatDate(tblDzbcPathSchedulingVo.getMdate()))){
+                                    map.get(DateUtil.formatDate(tblDzbcPathSchedulingVo.getMdate())).put(tblDzbcPathSchedulingVo.getId().toString(),tblDzbcPathSchedulingVo);
+                                }else{
+                                    Map<String,TblDzbcPathSchedulingVo> tempm = new HashMap<>();
+                                    tempm.put(tblDzbcPathSchedulingVo.getId().toString(),tblDzbcPathSchedulingVo);
+                                    map.put(DateUtil.formatDate(tblDzbcPathSchedulingVo.getMdate()),  tempm);
+                                }
                             }
                         }
-                    }
+
                     map.keySet().forEach(key ->{
                         RedisUtils.setCacheMap(StrUtil.format("dzbc_path_scheduling|{}", key), map.get(key));
                         RedisUtils.expire(StrUtil.format("dzbc_path_scheduling|{}", key), DateUtil.offset(DateUtil.parseDate(key), DateField.HOUR_OF_DAY, 24).getTime() - DateUtil.current());