From a41b28d983f46f90a41ff7d2aa47179541c1be99 Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期一, 05 六月 2023 17:59:13 +0800
Subject: [PATCH] 修改

---
 src/main/java/com/boying/controller/car/PlateServlet3.java |   80 ++++++++++++++++++++++++++++++++++-----
 1 files changed, 69 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/boying/controller/car/PlateServlet3.java b/src/main/java/com/boying/controller/car/PlateServlet3.java
index 5115a1e..a087cd5 100644
--- a/src/main/java/com/boying/controller/car/PlateServlet3.java
+++ b/src/main/java/com/boying/controller/car/PlateServlet3.java
@@ -9,6 +9,7 @@
 import com.boying.entity.*;
 import com.boying.service.*;
 import com.boying.util.DateUtilOther;
+import com.boying.util.FileUtil;
 import com.boying.util.StringUtil;
 import com.google.gson.JsonObject;
 import com.google.gson.JsonParser;
@@ -35,11 +36,12 @@
 import java.util.List;
 import java.util.concurrent.TimeUnit;
 
+
 /**
  * Servlet implementation class PlateServlet
  */
 @Controller
-@RequestMapping("/car")
+@RequestMapping("/ffzf/car")
 @RequiredArgsConstructor
 public class PlateServlet3 extends HttpServlet {
     private static final long serialVersionUID = 1L;
@@ -52,6 +54,7 @@
     private final TicketService ticketService;
     private final CostRuleService costRuleService;
     private final WhiteListService whiteListService;
+    private final FileInfoService fileInfoService;
     private final String LEDURL = "http://192.168.31.212:9988/LedShow/IGetResultDataAllLine";
 
     /**
@@ -145,9 +148,13 @@
                     int i = Integer.parseInt(redisnum);
                     i--;
                     if(i<0){
+                        String s= "2."+barrier.getCarNo()+"闂告満鎵嬪姩鍚姩锛屽満鍐呭仠杞︽暟涓�"+i+"\n";
+                        writeTxt2(s);
                         redisTemplate.opsForValue().set("car_park_" + park.getId(),"0",30, TimeUnit.DAYS);
                         redisTemplate.opsForValue().set("park_up_" + park.getId(),"true",30, TimeUnit.DAYS);
                     }else {
+                        String s= "2."+barrier.getCarNo()+"闂告満鎵嬪姩鍚姩锛屽満鍐呭仠杞︽暟涓�"+i+"\n";
+                        writeTxt2(s);
                         redisTemplate.opsForValue().set("car_park_" + park.getId(),Integer.toString(i),30, TimeUnit.DAYS);
                         redisTemplate.opsForValue().set("park_up_" + park.getId(),"true",30, TimeUnit.DAYS);
                     }
@@ -170,9 +177,13 @@
                         int i = Integer.parseInt(redisnum);
                         i--;
                         if(i<0){
+                            String s= "2."+outPark.getCarNo()+"缂磋垂瀹屾垚锛屽満鍐呭仠杞︽暟涓�"+i+"\n";
+                            writeTxt2(s);
                             redisTemplate.opsForValue().set("car_park_" + park.getId(),"0",30, TimeUnit.DAYS);
                             redisTemplate.opsForValue().set("park_up_" + park.getId(),"true",30, TimeUnit.DAYS);
                         }else {
+                            String s= "2."+outPark.getCarNo()+"缂磋垂瀹屾垚锛屽満鍐呭仠杞︽暟涓�"+i+"\n";
+                            writeTxt2(s);
                             redisTemplate.opsForValue().set("car_park_" + park.getId(),Integer.toString(i),30, TimeUnit.DAYS);
                             redisTemplate.opsForValue().set("park_up_" + park.getId(),"true",30, TimeUnit.DAYS);
                         }
@@ -208,6 +219,7 @@
         BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream(),"UTF-8"));
         String str = "";
         String lineStr = "";
+        FileInfo fileInfo = null;
         while((str = reader.readLine()) != null){
             lineStr += str;
         }
@@ -218,6 +230,7 @@
         JSONObject result = alarmInfoPlate.getJSONObject("result");
         JSONObject plateResult = result.getJSONObject("PlateResult");
         String carNo = plateResult.get("license").toString();
+      //  String image = plateResult.get("imageFile").toString();
         String code = alarmInfoPlate.get("serialno").toString();
 
         try {
@@ -253,7 +266,14 @@
                     break;
                 }
 
-                System.out.println("缂栧彿锛�"+serialno+"璁惧璇嗗埆鍒颁簡锛�"+license);
+
+//                if(StringUtils.isNotBlank(image)){
+//                    fileInfo = FileUtil.generateBase64StringToFile(image, 1,1);
+//                    fileInfoService.save(fileInfo);
+//                }
+
+
+                System.out.println("缂栧彿锛�"+serialno+"  璁惧璇嗗埆鍒颁簡锛�"+license);
                 String format = sdf.format(new Date());
                 s+= format+",杞︾墝鍙蜂负锛�"+license+",serialno涓猴細"+code+"  ";
 
@@ -264,7 +284,7 @@
                     easyNoOpen(request,response);
                 }else{
                     if(barrier.getType()==0){
-                        outPark(license, barrier.getId(), barrier.getParkId(),request,response);
+                        outPark(license, barrier.getId(), barrier.getParkId(),request,response,fileInfo);
                         s+=license+"-淇濆瓨鍑哄満璁板綍\n";
                     }else{
                         String num = redisTemplate.opsForValue().get("car_park_" +  barrier.getParkId());
@@ -280,7 +300,7 @@
                         }else {
                             //led鏄剧ず
                             inLedShow(code, license,barrier.getParkId(),request,response);
-                            enterPark(license,barrier.getId(),barrier.getParkId());
+                            enterPark(license,barrier.getId(),barrier.getParkId(),fileInfo);
                             s+=license+"-淇濆瓨鍏ュ満璁板綍\n";
                         }
                     }
@@ -314,10 +334,27 @@
         }
     }
 
+    private void writeTxt2( String txt)
+    {
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
+        try
+        {
+            FileWriter f = new FileWriter(systemConfigProperties.getLogPath()+sdf.format(new Date())+"LED.txt",true);
+            BufferedWriter bw=new BufferedWriter(f);
+            bw.write(txt);
+            bw.newLine();
+            bw.close();
+        }
+        catch(Exception e)
+        {
+            System.out.println("鎵撳嵃閿欒");
+        }
+    }
 
 
 
-    public void enterPark(String carNo,Integer barrierId,Integer parkId) {
+
+    public void enterPark(String carNo,Integer barrierId,Integer parkId,FileInfo fileInfo) {
         Park park = parkService.getById(parkId);
 //        int num = 0;
 //        String s = redisTemplate.opsForValue().get("car_park_" + parkId);
@@ -348,6 +385,9 @@
         if(tickets.size()>0){
             enterPark.setStatus(1);//鍙戠幇鏈夎繚绔�
         }
+        if(fileInfo != null){
+            enterPark.setImgId(fileInfo.getId());
+        }
         enterParkService.saveOrUpdate(enterPark);
 
 //        Barrier barrier = barrierService.getById(barrierId);
@@ -355,7 +395,7 @@
 //        barrierService.saveOrUpdate(barrier);
     }
 
-    public double outPark(String carNo,Integer barrierId,Integer parkId,HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+    public double outPark(String carNo,Integer barrierId,Integer parkId,HttpServletRequest request, HttpServletResponse response,FileInfo fileInfo) throws ServletException, IOException {
         double money = 0.0;
         EnterPark enterPark = null;
         String toDayHrMinSec = null;
@@ -386,6 +426,9 @@
         //outPark.setPrice(Double.valueOf(String.format("%.1f", money)));
         outPark.setPrice(money);
         outPark.setStatus3(findTicket(carNo));
+        if(fileInfo != null){
+            outPark.setImgId(fileInfo.getId());
+        }
         outParkService.saveOrUpdate(outPark);
         Barrier barrier =barrierService.getById(barrierId);
         barrier.setCarNo(carNo);
@@ -408,7 +451,7 @@
                     outParkService.saveOrUpdate(byCarNoAndBarrierId);
                     return 0.0;
                 }else{
-                    if(w.getParkIds()!=null){
+                    if(StringUtils.isNotBlank(w.getParkIds())){
                         if(w.getEndTime()!=null){
                             String parkIds = w.getParkIds();
                             String[] split = parkIds.split(",");
@@ -430,10 +473,14 @@
         }
         if(outPark.getPrice()==0&&outPark.getStatus3()==0){
             System.out.println(outPark.getCarNo()+"璇ヨ溅涓嶉渶瑕佺即璐�");
+            String s= "1."+barrier.getCarNo()+"璇ヨ溅涓嶉渶瑕佺即璐筡n";
+            writeTxt2(s);
             outLedShow(barrier.getCode(),barrier.getCarNo(),outPark.getPrice(),toDayHrMinSec,barrier.getParkId(),request,response,0);
         }else {
             //闇�瑕佺即璐规垨鑰呮湁杩濈珷
             System.out.println(outPark.getCarNo()+"璇ヨ溅闇�瑕佺即璐�"+outPark.getPrice());
+            String s= "1."+barrier.getCarNo()+"璇ヨ溅闇�瑕佺即璐筡n";
+            writeTxt2(s);
             outLedShow(barrier.getCode(),barrier.getCarNo(),outPark.getPrice(),toDayHrMinSec,barrier.getParkId(),request,response,1);
         }
         barrierService.saveOrUpdate(barrier);
@@ -478,10 +525,12 @@
                 carType = "鏈堢杞�";
             }else {
                 //鐧藉悕鍗曞浐瀹氬仠杞﹀満杞﹁締
-                if(byCarNo.getParkId().equals(barrier.getParkId())){
+                if(StringUtils.isNotBlank(byCarNo.getParkIds()) && byCarNo.getParkIds().contains(barrier.getParkId()+"")){
                     carType = "鏈堢杞�";
                     long l = (byCarNo.getEndTime().getTime() - byCarNo.getStartTime().getTime()) / (24 * 3600 * 1000);
                     carDay = "鏈夋晥鏈熻繕鏈�"+l+"澶�";
+                }else {
+                    carType = "涓存椂杞�";
                 }
             }
         }
@@ -525,10 +574,10 @@
                 carType = "鏈堢杞�";
             }else {
                 //鐧藉悕鍗曞浐瀹氬仠杞﹀満杞﹁締
-                if(byCarNo.getParkId().equals(barrier.getParkId())){
+                if(StringUtils.isNotBlank(byCarNo.getParkIds()) && byCarNo.getParkIds().contains(barrier.getParkId()+"")){
                     carType = "鏈堢杞�";
-                    long l = (byCarNo.getEndTime().getTime() - byCarNo.getStartTime().getTime()) / (24 * 3600 * 1000);
-                    carDay = "鏈夋晥鏈熻繕鏈�"+l+"澶�";
+                }else {
+                    carType = "涓存椂杞�";
                 }
             }
         }
@@ -585,9 +634,13 @@
             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);
             }
@@ -625,9 +678,13 @@
             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);
             }
@@ -698,4 +755,5 @@
         noOpen(request,response,data1);
     }
 
+
 }

--
Gitblit v1.9.1