From 61fae74b4c77a51e77588c741a70f0872ba34ceb Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期四, 21 九月 2023 16:10:28 +0800
Subject: [PATCH] 修改

---
 src/main/java/com/boying/service/impl/BarrierServiceImpl.java |   47 +++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 41 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/boying/service/impl/BarrierServiceImpl.java b/src/main/java/com/boying/service/impl/BarrierServiceImpl.java
index 69755c2..1d83789 100644
--- a/src/main/java/com/boying/service/impl/BarrierServiceImpl.java
+++ b/src/main/java/com/boying/service/impl/BarrierServiceImpl.java
@@ -7,17 +7,21 @@
 import com.boying.entity.Barrier;
 import com.boying.entity.EnterPark;
 import com.boying.entity.OutPark;
+import com.boying.entity.Park;
 import com.boying.mapper.BarrierMapper;
 import com.boying.mapper.EnterParkMapper;
 import com.boying.mapper.OutParkMapper;
+import com.boying.mapper.ParkMapper;
 import com.boying.service.BarrierService;
 import com.boying.service.EnterParkService;
 import lombok.AllArgsConstructor;
+import org.springframework.data.redis.core.StringRedisTemplate;
 import org.springframework.stereotype.Service;
 
 import java.time.ZoneId;
 import java.util.Date;
 import java.util.List;
+import java.util.concurrent.TimeUnit;
 
 /**
  * @author kdq
@@ -31,11 +35,26 @@
 public class BarrierServiceImpl extends ServiceImpl<BarrierMapper, Barrier> implements BarrierService {
     private EnterParkMapper enterParkMapper;
     private OutParkMapper outParkMapper;
+    private StringRedisTemplate redisTemplate;
+    private ParkMapper parkMapper;
     @Override
     public Barrier findByCode(String code) {
         QueryWrapper<Barrier> wrapper = new QueryWrapper<>();
         wrapper.lambda()
                 .eq(Barrier::getCode,code);
+        List<Barrier> list = list(wrapper);
+        if(list.size()>0){
+            return list.get(0);
+        }else {
+            return null;
+        }
+    }
+
+    @Override
+    public Barrier findByCode2(String code) {
+        QueryWrapper<Barrier> wrapper = new QueryWrapper<>();
+        wrapper.lambda()
+                .eq(Barrier::getCode2,code);
         List<Barrier> list = list(wrapper);
         if(list.size()>0){
             return list.get(0);
@@ -52,12 +71,24 @@
                 .orderByDesc(EnterPark::getId)
                 .last(" limit 1");
         EnterPark enterPark = enterParkMapper.selectOne(wrapper);
-        long dif = DateUtil.between(Date.from( enterPark.getCreateTime().atZone( ZoneId.systemDefault()).toInstant()), new Date(), DateUnit.SECOND, false);
-        if(dif >= 5 && dif <= 10){
-            return true;
+        if(enterPark != null){
+            long dif = DateUtil.between(Date.from( enterPark.getCreateTime().atZone( ZoneId.systemDefault()).toInstant()), new Date(), DateUnit.SECOND, false);
+            if(dif >= 5 && dif <= 7){
+                return true;
+            }else {
+                //鍒ゆ柇鍋滆溅鍦烘槸鍚︽湁浜嗚溅浣�
+                String s = redisTemplate.opsForValue().get("park_change_in_" + enterPark.getParkId());
+                if("true".equals(s)){
+                    redisTemplate.opsForValue().set("park_change_in_"+enterPark.getParkId(),"false",1, TimeUnit.DAYS);
+                    return true;
+                }else {
+                    return false;
+                }
+            }
         }else {
             return false;
         }
+
 
     }
 
@@ -69,9 +100,13 @@
                 .orderByDesc(OutPark::getId)
                 .last(" limit 1");
         OutPark outPark = outParkMapper.selectOne(wrapper);
-        long dif = DateUtil.between(Date.from( outPark.getCreateTime().atZone( ZoneId.systemDefault()).toInstant()), new Date(), DateUnit.SECOND, false);
-        if(dif >= 20 && dif <= 30){
-            return true;
+        if(outPark != null){
+            long dif = DateUtil.between(Date.from( outPark.getCreateTime().atZone( ZoneId.systemDefault()).toInstant()), new Date(), DateUnit.SECOND, false);
+            if(dif >= 20 && dif <= 23){
+                return true;
+            }else {
+                return false;
+            }
         }else {
             return false;
         }

--
Gitblit v1.9.1