kongdeqiang
2023-03-01 ee098c66d2ba6fac036275db180709d2bf737bc0
增加属性
2个文件已修改
2个文件已添加
14个文件已删除
1675 ■■■■ 已修改文件
src/main/java/com/boying/Application.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/boying/controller/car/PlateServlet2.java 242 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/boying/entity/led/LedBean.java 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/boying/entity/led/ResultData.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/LedShow.dll 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/LedShow.j4n.dll 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/LedShow.j4n.jar 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/LedShow.proxygen.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/build.cmd 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/clr/ledshow/CodeUtil.generated.cs 127 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/clr/ledshow/LedBean.generated.cs 737 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/clr/ledshow/ResultData.generated.cs 113 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/jni4net.j-0.8.8.0.jar 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/jni4net.n-0.8.8.0.dll 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/jni4net.n.w64.v40-0.8.8.0.dll 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/jvm/CodeUtil.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/jvm/LedBean.java 207 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/jni/jvm/ResultData.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/boying/Application.java
@@ -1,14 +1,10 @@
package com.boying;
import cn.hutool.core.io.resource.ClassPathResource;
import net.sf.jni4net.Bridge;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.scheduling.annotation.EnableScheduling;
import java.io.File;
import java.io.IOException;
/**
 * @author kdq
@@ -22,15 +18,5 @@
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
    @Bean
    public static void getBean() throws IOException {
        Bridge.setVerbose(true);
        Bridge.init();
        //加载资源文件
        ClassPathResource classPathResource = new ClassPathResource("jni/LedShow.j4n.dll");
        File loadDll = classPathResource.getFile();
        Bridge.LoadAndRegisterAssemblyFrom(loadDll);
    }
}
src/main/java/com/boying/controller/car/PlateServlet2.java
@@ -1,22 +1,19 @@
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.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 lombok.RequiredArgsConstructor;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Controller;
@@ -53,8 +50,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://localhost:9988/LedShow/IGetResultDataAllLine";
    /**
     * 回复开闸
@@ -481,25 +478,30 @@
        }
        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());
        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);
        byte[] dataX = new byte[resultData.getLength()];
        System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLength());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
        open(request,response,data1);//入场开闸
    }
@@ -526,22 +528,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.getLength()];
        System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLength());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
@@ -551,22 +559,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.getLength()];
        System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLength());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
        if(type == 0){
@@ -590,22 +604,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.getLength()];
        System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLength());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
        if(type == 0){
@@ -627,22 +647,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.getLength()];
        System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLength());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
        noOpen(request,response,data1);
@@ -659,22 +685,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.getLength()];
        System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLength());
        String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "=";
        data1 = data1.replaceAll("\r\n", "");
        noOpen(request,response,data1);
src/main/java/com/boying/entity/led/LedBean.java
New file
@@ -0,0 +1,85 @@
package com.boying.entity.led;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
/**
 * @author kdq
 * @version 1.0.0
 * @ClassName LedBean.java
 * @Description TODO
 * @createTime 2023年03月01日 14:35:00
 */
@Data
public class LedBean {
    private int id;
    private String ledId;
    private String name;
    private String ipAddress;
    private int port;
    private int isDefault;
    private int type;
    private String password;
    @ApiModelProperty(value = "状态")
    private Integer status;
    @ApiModelProperty(value = "下发指令时间")
    private String timeStamp;
    @ApiModelProperty(value = "第一行颜色")
    private Integer color1;
    @ApiModelProperty(value = "第一行内容")
    private String content1;
    @ApiModelProperty(value = "LED1显示模式:0静态显示,1向左移动,2向右移动,3向上移动,4向下移动,5向左展开,6向右展开")
    private Integer disMode1;
    @ApiModelProperty(value = "第一行状态")
    private Integer status1;
    @ApiModelProperty(value = "第二行颜色")
    private Integer color2;
    @ApiModelProperty(value = "第二行内容")
    private String content2;
    @ApiModelProperty(value = "LED1显示模式:0静态显示,1向左移动,2向右移动,3向上移动,4向下移动,5向左展开,6向右展开")
    private Integer disMode2;
    @ApiModelProperty(value = "第二行状态")
    private Integer status2;
    @ApiModelProperty(value = "第三行颜色")
    private Integer color3;
    @ApiModelProperty(value = "第三行内容")
    private String content3;
    @ApiModelProperty(value = "LED1显示模式:0静态显示,1向左移动,2向右移动,3向上移动,4向下移动,5向左展开,6向右展开")
    private Integer disMode3;
    @ApiModelProperty(value = "第三行状态")
    private Integer status3;
    @ApiModelProperty(value = "第四行颜色")
    private Integer color4;
    @ApiModelProperty(value = "第四行内容")
    private String content4;
    @ApiModelProperty(value = "LED1显示模式:0静态显示,1向左移动,2向右移动,3向上移动,4向下移动,5向左展开,6向右展开")
    private Integer disMode4;
    @ApiModelProperty(value = "第四行状态")
    private Integer status4;
    @ApiModelProperty(value = "语音播报内容")
    private String voiceContent;
    @ApiModelProperty(value = "编号")
    private Integer number;
}
src/main/java/com/boying/entity/led/ResultData.java
New file
@@ -0,0 +1,16 @@
package com.boying.entity.led;
import lombok.Data;
/**
 * @author kdq
 * @version 1.0.0
 * @ClassName ResultData.java
 * @Description TODO
 * @createTime 2023年03月01日 14:34:00
 */
@Data
public class ResultData {
    private int length;
    private byte[] datas;
}
src/main/resources/jni/LedShow.dll
Binary files differ
src/main/resources/jni/LedShow.j4n.dll
Binary files differ
src/main/resources/jni/LedShow.j4n.jar
Binary files differ
src/main/resources/jni/LedShow.proxygen.xml
File was deleted
src/main/resources/jni/build.cmd
File was deleted
src/main/resources/jni/clr/ledshow/CodeUtil.generated.cs
File was deleted
src/main/resources/jni/clr/ledshow/LedBean.generated.cs
File was deleted
src/main/resources/jni/clr/ledshow/ResultData.generated.cs
File was deleted
src/main/resources/jni/jni4net.j-0.8.8.0.jar
Binary files differ
src/main/resources/jni/jni4net.n-0.8.8.0.dll
Binary files differ
src/main/resources/jni/jni4net.n.w64.v40-0.8.8.0.dll
Binary files differ
src/main/resources/jni/jvm/CodeUtil.java
File was deleted
src/main/resources/jni/jvm/LedBean.java
File was deleted
src/main/resources/jni/jvm/ResultData.java
File was deleted