From 59bec7db0e4bd0e1ad2491d797aea4e78634c40d Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期四, 08 六月 2023 12:01:36 +0800
Subject: [PATCH] 修改

---
 src/main/java/com/boying/controller/car/PlateServlet3.java |   81 +++++++++++++++++++++++++++-------------
 1 files changed, 54 insertions(+), 27 deletions(-)

diff --git a/src/main/java/com/boying/controller/car/PlateServlet3.java b/src/main/java/com/boying/controller/car/PlateServlet3.java
index f99bd8a..ce0ce7a 100644
--- a/src/main/java/com/boying/controller/car/PlateServlet3.java
+++ b/src/main/java/com/boying/controller/car/PlateServlet3.java
@@ -338,18 +338,34 @@
             if(Integer.parseInt(num) >= byId.getNum() ){
                 return R.failed(null,"绂佹閫氳,杞︿綅宸叉弧");
             }else {
-                enterPark.setCreateTime(LocalDateTime.now());
-                QueryWrapper<Ticket> wrapper = new QueryWrapper<>();
-                wrapper.lambda()
-                        .eq(Ticket::getCarNo,enterPark.getCarNo())
-                        .eq(Ticket::getPayStatus,1);
-                List<Ticket> tickets = ticketService.list(wrapper);
-                if(tickets.size()>0){
-                    enterPark.setStatus(1);//鍙戠幇鏈夎繚绔�
+                QueryWrapper<EnterPark> wrapper2 = new QueryWrapper<>();
+                wrapper2.lambda()
+                        .eq(EnterPark::getBarrierId,barrier.getId())
+                        .orderByDesc(EnterPark::getCreateTime)
+                        .last(" limit 1");
+                EnterPark one = enterParkService.getOne(wrapper2);
+                if(one == null){
+                    return R.failed("鏈煡璇㈠埌杞﹁締瀛樺湪");
+                }else {
+                    if(one.getCarNo().equals("鏃犵墝杞�")){
+                        enterPark.setCreateTime(LocalDateTime.now());
+                        QueryWrapper<Ticket> wrapper = new QueryWrapper<>();
+                        wrapper.lambda()
+                                .eq(Ticket::getCarNo,enterPark.getCarNo())
+                                .eq(Ticket::getPayStatus,1);
+                        List<Ticket> tickets = ticketService.list(wrapper);
+                        if(tickets.size()>0){
+                            enterPark.setStatus(1);//鍙戠幇鏈夎繚绔�
+                        }
+                        enterParkService.deleteByCarNo(enterPark.getCarNo(),enterPark.getParkId());
+                        enterParkService.save(enterPark);
+                        barrier.setType2(1);
+                        barrierService.updateById(barrier);
+                        return R.ok();
+                    }else {
+                        return R.failed("闈炴硶鎿嶄綔");
+                    }
                 }
-                enterParkService.deleteByCarNo(enterPark.getCarNo(),enterPark.getParkId());
-                enterParkService.save(enterPark);
-                return R.ok();
             }
         }
         return R.failed(null,"鏁版嵁寮傚父");
@@ -641,8 +657,10 @@
                 }
             }
         }
-        if(StringUtils.isBlank(carDay)){
+        if(StringUtils.isBlank(carDay) && !carNo.equals("鏃犺溅鐗�")){
             carDay = "娆㈣繋鍏変复";
+        }else if(StringUtils.isBlank(carDay) && carNo.equals("鏃犺溅鐗�")){
+            carDay = "鎷掔粷椹跺叆";
         }
 
         LedBean ledBean = new LedBean();
@@ -665,7 +683,12 @@
         String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
         data1 = data1.replaceAll("\r\n", "");
 
-        open(request,response,data1);//鍏ュ満寮�闂�
+        if(!carNo.equals("鏃犺溅鐗�")){
+            open(request,response,data1);//鍏ュ満寮�闂�
+        }else {
+            noOpen(request,response,data1);
+        }
+
     }
 
     public void inLedFullShow(String ledId, String carNo, Integer parkId,HttpServletRequest request, HttpServletResponse response) throws IOException {
@@ -735,21 +758,25 @@
         String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
         data1 = data1.replaceAll("\r\n", "");
         if(type == 0){
-            //寮�闂�
-            open(request,response,data1);
-            redisTemplate.opsForValue().set("park_change_in_"+parkId,"true",1, TimeUnit.DAYS);
-            int i = Integer.parseInt(redisnum);
-            i--;
-            if(i<0){
-                String s= "2."+carNo+"锛屽満鍐呭仠杞︽暟涓�0\n";
-                writeTxt2(s);
-                redisTemplate.opsForValue().set("car_park_" + parkId,"0",30, TimeUnit.DAYS);
-                redisTemplate.opsForValue().set("park_up_" + parkId,"true",30, TimeUnit.DAYS);
+            if(carNo.equals("鏃犺溅鐗�")){
+                noOpen(request,response,data1);
             }else {
-                String s= "2."+carNo+"锛屽満鍐呭仠杞︽暟涓�"+i+"\n";
-                writeTxt2(s);
-                redisTemplate.opsForValue().set("car_park_" + parkId,Integer.toString(i),30, TimeUnit.DAYS);
-                redisTemplate.opsForValue().set("park_up_" + parkId,"true",30, TimeUnit.DAYS);
+                //寮�闂�
+                open(request,response,data1);
+                redisTemplate.opsForValue().set("park_change_in_"+parkId,"true",1, TimeUnit.DAYS);
+                int i = Integer.parseInt(redisnum);
+                i--;
+                if(i<0){
+                    String s= "2."+carNo+"锛屽満鍐呭仠杞︽暟涓�0\n";
+                    writeTxt2(s);
+                    redisTemplate.opsForValue().set("car_park_" + parkId,"0",30, TimeUnit.DAYS);
+                    redisTemplate.opsForValue().set("park_up_" + parkId,"true",30, TimeUnit.DAYS);
+                }else {
+                    String s= "2."+carNo+"锛屽満鍐呭仠杞︽暟涓�"+i+"\n";
+                    writeTxt2(s);
+                    redisTemplate.opsForValue().set("car_park_" + parkId,Integer.toString(i),30, TimeUnit.DAYS);
+                    redisTemplate.opsForValue().set("park_up_" + parkId,"true",30, TimeUnit.DAYS);
+                }
             }
         }else {
             noOpen(request,response,data1);

--
Gitblit v1.9.1