From 7156119e51320afd0ffdd0723cd983fd415d61d9 Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期四, 26 九月 2024 11:17:34 +0800
Subject: [PATCH] fix : 新增修改车数日志

---
 src/main/java/com/boying/controller/BarrierController.java |   33 ++++++++++++++++++++++++++++++++-
 1 files changed, 32 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/boying/controller/BarrierController.java b/src/main/java/com/boying/controller/BarrierController.java
index a05bf04..92fc67a 100644
--- a/src/main/java/com/boying/controller/BarrierController.java
+++ b/src/main/java/com/boying/controller/BarrierController.java
@@ -2,6 +2,7 @@
 
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.boying.common.R;
 import com.boying.entity.Barrier;
@@ -24,7 +25,8 @@
 import java.time.LocalDateTime;
 import java.time.ZoneOffset;
 import java.time.temporal.ChronoUnit;
-import java.util.List;
+import java.util.*;
+import java.util.stream.Collectors;
 
 @RestController
 @RequestMapping("ffzf/barrier")
@@ -199,4 +201,33 @@
            }
         }
     }
+
+    @PostMapping("getDisConnect")
+    @Operation(summary = "璁惧鎺夌嚎閫氱煡" , description = "璁惧鎺夌嚎閫氱煡" )
+    public Object getDisConnect() {
+        List<Map<String,Object>> resultlist = new ArrayList<>();
+        String barrierCodeAll = redisTemplate.opsForValue().get("barrierCode_all");
+        if(StringUtils.isBlank(barrierCodeAll)){
+            QueryWrapper<Barrier> wrapper = new QueryWrapper<>();
+            wrapper.select(" code ");
+            List<Barrier> list = barrierService.list(wrapper);
+            String collect = list.stream().map(Barrier::getCode).collect(Collectors.joining(","));
+            redisTemplate.opsForValue().set("barrierCode_all",collect);
+            barrierCodeAll = collect;
+        }
+        for (String s : barrierCodeAll.split(",")) {
+            Barrier barrier = barrierService.findByCode(s);
+            long between = ChronoUnit.SECONDS.between(barrier.getUpdateTime(), LocalDateTime.now());
+            if(between>121){
+                Map<String,Object> map = new HashMap<>();
+                map.put("parkName",parkService.getOneById(barrier.getParkId()).getName());
+                map.put("type",barrier.getType()==0?"鍑哄彛":"鍏ュ彛");
+                map.put("downTime",barrier.getUpdateTime());
+                resultlist.add(map);
+            }
+        }
+        Collections.sort(resultlist, (m1, m2)-> String.valueOf(m2.get("downTime")).compareTo(String.valueOf(m1.get("downTime")))); // lamuda鎺掑簭
+        return R.ok(resultlist);
+    }
+
 }

--
Gitblit v1.9.1