kongdeqiang
2023-03-01 29082c356872abc0c1208e8b4870d1ba1fa7afe7
src/main/java/com/boying/controller/car/PlateServlet2.java
@@ -1,22 +1,21 @@
package com.boying.controller.car;
import cn.hutool.http.HttpRequest;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.boying.common.R;
import com.boying.common.SystemConfigProperties;
import com.boying.entity.*;
import com.boying.entity.led.LedBean;
import com.boying.entity.led.ResultData;
import com.boying.service.*;
import com.boying.util.DateUtilOther;
import com.google.gson.JsonIOException;
import com.boying.util.StringUtil;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import com.google.gson.JsonSyntaxException;
import io.swagger.models.auth.In;
import ledshow.CodeUtil;
import ledshow.LedBean;
import ledshow.ResultData;
import com.sun.media.jfxmedia.track.Track;
import lombok.RequiredArgsConstructor;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Controller;
@@ -27,7 +26,9 @@
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sound.sampled.AudioFormat;
import java.io.*;
import java.nio.charset.StandardCharsets;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
@@ -53,8 +54,8 @@
    private final BarrierService barrierService;
    private final TicketService ticketService;
    private final CostRuleService costRuleService;
    private final LedShowService ledShowService;
    private final WhiteListService whiteListService;
    private final String LEDURL = "http://192.168.31.212:9988/LedShow/IGetResultDataAllLine";
    /**
     * 回复开闸
@@ -481,27 +482,42 @@
        }
        LedBean ledBean = new LedBean();
        ledBean.setcolor1(0);
        ledBean.setcolor2(0);
        ledBean.setcolor3(0);
        ledBean.setcolor4(0);
        ledBean.setcontent1(carNo);
        ledBean.setcontent2(carType);
        ledBean.setcontent3(carDay);
        ledBean.setcontent4("余位:"+i);
        ledBean.setdisMode1(1);
        ledBean.setdisMode2(1);
        ledBean.setdisMode3(1);
        ledBean.setdisMode4(1);
        ledBean.setvoiceContent(carType+","+carNo+","+carDay);
        ResultData resultData = CodeUtil.GetResultDataAnyLine(ledBean);
        byte[] dataX = new byte[resultData.getlenth()];
        System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
        open(request,response,data1);//入场开闸
        ledBean.setColor1(0);
        ledBean.setColor2(0);
        ledBean.setColor3(0);
        ledBean.setColor4(0);
        ledBean.setContent1(carNo);
        ledBean.setContent2(carType);
        ledBean.setContent3(carDay);
        ledBean.setContent4("余位:"+i);
        ledBean.setDisMode1(1);
        ledBean.setDisMode2(1);
        ledBean.setDisMode3(1);
        ledBean.setDisMode4(1);
        ledBean.setVoiceContent(carType+","+carNo+","+carDay);
        String s = JSON.toJSONString(ledBean);
        String s1= HttpRequest.post(LEDURL)
                .timeout(5000)
                .body(s)
                .execute()
                .body();
        ResultData resultData = JSON.parseObject(s1,ResultData.class);
        String[] split = resultData.getDatas().split("-");
        String[] dataX = new String[resultData.getLenth()];
        System.arraycopy(split,0,dataX,0,resultData.getLenth());
        String s2 = StringUtil.toStr(dataX);
        byte[] bytes = StringUtil.HexString2Bytes(s2);
        for (byte aByte : bytes) {
            System.out.print(aByte+" ");
        }
        System.out.println();
        String data1 = new String("gb2312");
        data1 = Base64.getMimeEncoder().encodeToString(bytes);
       // String data2 = data1.replace("\n", "");
        String data3  = data1.replaceAll("\r\n", "");
        System.out.println();
        System.out.println(data3);
        open(request,response,data3);//入场开闸
    }
    public void inLedFullShow(String ledId, String carNo, Integer parkId,HttpServletRequest request, HttpServletResponse response) throws IOException {
@@ -526,22 +542,28 @@
        }
        LedBean ledBean = new LedBean();
        ledBean.setcolor1(0);
        ledBean.setcolor2(0);
        ledBean.setcolor3(0);
        ledBean.setcolor4(0);
        ledBean.setcontent1(carNo);
        ledBean.setcontent2(carType);
        ledBean.setcontent3("车位已满");
        ledBean.setcontent4("请驶离");
        ledBean.setdisMode1(1);
        ledBean.setdisMode2(1);
        ledBean.setdisMode3(1);
        ledBean.setdisMode4(1);
        ledBean.setvoiceContent("车位已满,请驶离");
        ResultData resultData = CodeUtil.GetResultDataAnyLine(ledBean);
        byte[] dataX = new byte[resultData.getlenth()];
        System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth());
        ledBean.setColor1(0);
        ledBean.setColor2(0);
        ledBean.setColor3(0);
        ledBean.setColor4(0);
        ledBean.setContent1(carNo);
        ledBean.setContent2(carType);
        ledBean.setContent3("车位已满");
        ledBean.setContent4("请驶离");
        ledBean.setDisMode1(1);
        ledBean.setDisMode2(1);
        ledBean.setDisMode3(1);
        ledBean.setDisMode4(1);
        ledBean.setVoiceContent("车位已满,请驶离");
        String s = JSON.toJSONString(ledBean);
        String s1= HttpRequest.post(LEDURL)
                .timeout(5000)
                .body(s)
                .execute()
                .body();
        ResultData resultData = JSON.parseObject(s1,ResultData.class);
        byte[] dataX = new byte[resultData.getLenth()];
        System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLenth());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
@@ -551,22 +573,28 @@
    public void outLedShow(String ledId,String carNo,Double price,String timeStamp,Integer parkId,HttpServletRequest request, HttpServletResponse response,int type) throws ServletException, IOException {
        String redisnum = redisTemplate.opsForValue().get("car_park_" + parkId);
        LedBean ledBean = new LedBean();
        ledBean.setcolor1(0);
        ledBean.setcolor2(0);
        ledBean.setcolor3(0);
        ledBean.setcolor4(0);
        ledBean.setcontent1(carNo);
        ledBean.setcontent2("停车"+timeStamp);
        ledBean.setcontent3("交费"+price+"元");
        ledBean.setcontent4("禁止闯杆");
        ledBean.setdisMode1(1);
        ledBean.setdisMode2(1);
        ledBean.setdisMode3(1);
        ledBean.setdisMode4(1);
        ledBean.setvoiceContent(carNo+"停车"+timeStamp+"交费"+price+"元");
        ResultData resultData = CodeUtil.GetResultDataAnyLine(ledBean);
        byte[] dataX = new byte[resultData.getlenth()];
        System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth());
        ledBean.setColor1(0);
        ledBean.setColor2(0);
        ledBean.setColor3(0);
        ledBean.setColor4(0);
        ledBean.setContent1(carNo);
        ledBean.setContent2("停车"+timeStamp);
        ledBean.setContent3("交费"+price+"元");
        ledBean.setContent4("禁止闯杆");
        ledBean.setDisMode1(1);
        ledBean.setDisMode2(1);
        ledBean.setDisMode3(1);
        ledBean.setDisMode4(1);
        ledBean.setVoiceContent(carNo+"停车"+timeStamp+"交费"+price+"元");
        String s = JSON.toJSONString(ledBean);
        String s1= HttpRequest.post(LEDURL)
                .timeout(5000)
                .body(s)
                .execute()
                .body();
        ResultData resultData = JSON.parseObject(s1,ResultData.class);
        byte[] dataX = new byte[resultData.getLenth()];
        System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLenth());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
        if(type == 0){
@@ -590,22 +618,28 @@
    public void outLedShowYueZu(String carNo,String text,Integer parkId,HttpServletRequest request, HttpServletResponse response,int type) throws ServletException, IOException{
        String redisnum = redisTemplate.opsForValue().get("car_park_" + parkId);
        LedBean ledBean = new LedBean();
        ledBean.setcolor1(0);
        ledBean.setcolor2(0);
        ledBean.setcolor3(0);
        ledBean.setcolor4(0);
        ledBean.setcontent1(carNo);
        ledBean.setcontent2(text);
        ledBean.setcontent3("减速慢行");
        ledBean.setcontent4("欢迎下次光临");
        ledBean.setdisMode1(1);
        ledBean.setdisMode2(1);
        ledBean.setdisMode3(1);
        ledBean.setdisMode4(1);
        ledBean.setvoiceContent(text+carNo+"欢迎下次光临");
        ResultData resultData = CodeUtil.GetResultDataAnyLine(ledBean);
        byte[] dataX = new byte[resultData.getlenth()];
        System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth());
        ledBean.setColor1(0);
        ledBean.setColor2(0);
        ledBean.setColor3(0);
        ledBean.setColor4(0);
        ledBean.setContent1(carNo);
        ledBean.setContent2(text);
        ledBean.setContent3("减速慢行");
        ledBean.setContent4("欢迎下次光临");
        ledBean.setDisMode1(1);
        ledBean.setDisMode2(1);
        ledBean.setDisMode3(1);
        ledBean.setDisMode4(1);
        ledBean.setVoiceContent(text+carNo+"欢迎下次光临");
        String s = JSON.toJSONString(ledBean);
        String s1= HttpRequest.post(LEDURL)
                .timeout(5000)
                .body(s)
                .execute()
                .body();
        ResultData resultData = JSON.parseObject(s1,ResultData.class);
        byte[] dataX = new byte[resultData.getLenth()];
        System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLenth());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
        if(type == 0){
@@ -627,22 +661,28 @@
    public void outLedShowDefault(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
        LedBean ledBean = new LedBean();
        ledBean.setcolor1(0);
        ledBean.setcolor2(0);
        ledBean.setcolor3(0);
        ledBean.setcolor4(0);
        ledBean.setcontent1("一车一杆");
        ledBean.setcontent2("减速慢行");
        ledBean.setcontent3("无需取卡");
        ledBean.setcontent4("扫码缴费");
        ledBean.setdisMode1(1);
        ledBean.setdisMode2(1);
        ledBean.setdisMode3(1);
        ledBean.setdisMode4(1);
        ledBean.setvoiceContent("");
        ResultData resultData = CodeUtil.GetResultDataAnyLine(ledBean);
        byte[] dataX = new byte[resultData.getlenth()];
        System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth());
        ledBean.setColor1(0);
        ledBean.setColor2(0);
        ledBean.setColor3(0);
        ledBean.setColor4(0);
        ledBean.setContent1("一车一杆");
        ledBean.setContent2("减速慢行");
        ledBean.setContent3("无需取卡");
        ledBean.setContent4("扫码缴费");
        ledBean.setDisMode1(1);
        ledBean.setDisMode2(1);
        ledBean.setDisMode3(1);
        ledBean.setDisMode4(1);
        ledBean.setVoiceContent("");
        String s = JSON.toJSONString(ledBean);
        String s1= HttpRequest.post(LEDURL)
                .timeout(5000)
                .body(s)
                .execute()
                .body();
        ResultData resultData = JSON.parseObject(s1,ResultData.class);
        byte[] dataX = new byte[resultData.getLenth()];
        System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLenth());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
        noOpen(request,response,data1);
@@ -659,22 +699,28 @@
            i = 0;
        }
        LedBean ledBean = new LedBean();
        ledBean.setcolor1(0);
        ledBean.setcolor2(0);
        ledBean.setcolor3(0);
        ledBean.setcolor4(0);
        ledBean.setcontent1("一车一杆");
        ledBean.setcontent2("减速慢行");
        ledBean.setcontent3("排队等候");
        ledBean.setcontent4("余位:"+i);
        ledBean.setdisMode1(1);
        ledBean.setdisMode2(1);
        ledBean.setdisMode3(1);
        ledBean.setdisMode4(1);
        ledBean.setvoiceContent("");
        ResultData resultData = CodeUtil.GetResultDataAnyLine(ledBean);
        byte[] dataX = new byte[resultData.getlenth()];
        System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth());
        ledBean.setColor1(0);
        ledBean.setColor2(0);
        ledBean.setColor3(0);
        ledBean.setColor4(0);
        ledBean.setContent1("一车一杆");
        ledBean.setContent2("减速慢行");
        ledBean.setContent3("排队等候");
        ledBean.setContent4("余位:"+i);
        ledBean.setDisMode1(1);
        ledBean.setDisMode2(1);
        ledBean.setDisMode3(1);
        ledBean.setDisMode4(1);
        ledBean.setVoiceContent("");
        String s = JSON.toJSONString(ledBean);
        String s1= HttpRequest.post(LEDURL)
                .timeout(5000)
                .body(s)
                .execute()
                .body();
        ResultData resultData = JSON.parseObject(s1,ResultData.class);
        byte[] dataX = new byte[resultData.getLenth()];
        System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLenth());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
        noOpen(request,response,data1);