2021与蓝度共同重构项目,服务端
liuhaonan
2022-02-14 0d75b97f3dc35013f1b6dca1b639e16275bfc95d
功能完善
已修改8个文件
已添加3个文件
已重命名2个文件
170 ■■■■ 文件已修改
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/AtmoHeartBeatDataPackage.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/DataTransportMainFrame.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/DataTransportMainResponse.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/DataTransportOrderType.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/MainBoardResponse.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/RRPCParams.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/main/FunctionCode.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/main/InnerFrame.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/main/MainFrame.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/main/OrderType.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/AtmoCommonFrame.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/response/AtmoQueryHeartBeatResponse.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/utils/HexStrConvertUtil.java 94 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/AtmoHeartBeatDataPackage.java
@@ -1,5 +1,6 @@
package com.sandu.ximon.admin.entity;
import com.sandu.ximon.admin.utils.LogUtils;
import lombok.Data;
@Data
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/DataTransportMainFrame.java
@@ -1,5 +1,8 @@
package com.sandu.ximon.admin.entity;
import com.sandu.ximon.admin.entity.main.FunctionCode;
import com.sandu.ximon.admin.entity.main.InnerFrame;
import com.sandu.ximon.admin.entity.main.MainFrame;
import com.sandu.ximon.admin.manager.iot.rrpc.util.CRC32Utils;
import com.sandu.ximon.admin.manager.iot.rrpc.util.SupplementUtils;
import com.sandu.ximon.admin.utils.HexStrConvertUtil;
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/DataTransportMainResponse.java
@@ -1,5 +1,6 @@
package com.sandu.ximon.admin.entity;
import com.sandu.ximon.admin.manager.iot.rrpc.util.CRC32Utils;
import lombok.Data;
@Data
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/DataTransportOrderType.java
@@ -1,5 +1,7 @@
package com.sandu.ximon.admin.entity;
import com.sandu.ximon.admin.entity.main.OrderType;
public enum DataTransportOrderType implements OrderType {
    //  å•灯数据指令
    LightData("01"),
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/MainBoardResponse.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
package com.sandu.ximon.admin.entity;
public interface MainBoardResponse<T> {
    T convertInstance(String hex);
}
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/RRPCParams.java
@@ -1,5 +1,9 @@
package com.sandu.ximon.admin.entity;
import lombok.Data;
import java.util.HashMap;
/**
 * RRPC参数实体类
 */
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/main/FunctionCode.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
package com.sandu.ximon.admin.entity.main;
public enum FunctionCode {
    //  ä¸»æ¿æ¨¡å—配置  ç”¨äºŽè®¾ç½®ä¸»æ¿çš„配置参数等
    MainBoardConfig("A1"),
    //  ä¸»æ¿æ¨¡å—控制命令    ç”¨äºŽæŽ§åˆ¶ä¸»æ¿çš„æŽ¥å£å‘½ä»¤
    MainBoardControl("A2"),
    //  ä¸»æ¿æ¨¡å—调试信息    ç”¨äºŽè®¾ç½®æˆ–读出一些调试测试信息等
    MainBoardTest("A3"),
    //  è¿œç¨‹å‡çº§å‘½ä»¤  ç”¨äºŽä¸»æ¿ä»¥åŠå¤–设远程升级功能
    RemoteUpdate("A4"),
    //  å¤–设数据    ç”¨äºŽå¤–设数据传输使用接口
    DataTransportData("A5"),
    //  mqtt板子远程升级
    MQTTRemoteUpdate("A6");
    private String code;
    FunctionCode(String code) {
        this.code = code;
    }
    public String getCode() {
        return code;
    }
}
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/main/InnerFrame.java
ÎļþÃû´Ó ximon-admin/src/main/java/com/sandu/ximon/admin/entity/InnerFrame.java ÐÞ¸Ä
@@ -1,4 +1,4 @@
package com.sandu.ximon.admin.entity;
package com.sandu.ximon.admin.entity.main;
/**
 * å†…协议帧
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/main/MainFrame.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
package com.sandu.ximon.admin.entity.main;
/**
 * ä¸»åè®®å¸§
 */
public interface MainFrame {
//    //  åŠŸèƒ½ç (1)
//    private FunctionCode functionCode;
//    //  å‘½ä»¤ç±»åž‹(1)
//    private OrderType orderType;
//    //  è´Ÿè·é•¿åº¦(2)
//    private Integer payloadLength;
//    //  è´Ÿè·æ•°æ®
//    private InnerFrame payload;
//    //  å¸§æ ¡éªŒ(4)
//    private String crc32;
    //  èŽ·å–åè®®å¸§
    String getFrame();
}
ximon-admin/src/main/java/com/sandu/ximon/admin/entity/main/OrderType.java
ÎļþÃû´Ó ximon-admin/src/main/java/com/sandu/ximon/admin/entity/OrderType.java ÐÞ¸Ä
@@ -1,4 +1,4 @@
package com.sandu.ximon.admin.entity;
package com.sandu.ximon.admin.entity.main;
/**
 * å‘½ä»¤ç±»åž‹
ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/AtmoCommonFrame.java
@@ -1,6 +1,6 @@
package com.sandu.ximon.admin.manager.iot.frame.inner;
import com.sandu.ximon.admin.entity.InnerFrame;
import com.sandu.ximon.admin.entity.main.InnerFrame;
import com.sandu.ximon.admin.entity.MQTTConnectType;
import com.sandu.ximon.admin.manager.iot.rrpc.util.CRC32Utils;
import com.sandu.ximon.admin.manager.iot.rrpc.util.SupplementUtils;
ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/response/AtmoQueryHeartBeatResponse.java
@@ -1,6 +1,8 @@
package com.sandu.ximon.admin.manager.iot.frame.inner.response;
import com.sandu.ximon.admin.entity.AtmoHeartBeatDataPackage;
import com.sandu.ximon.admin.entity.MainBoardResponse;
import com.sandu.ximon.admin.manager.iot.rrpc.util.CRC32Utils;
import com.sandu.ximon.admin.utils.LogUtils;
import lombok.Data;
ximon-admin/src/main/java/com/sandu/ximon/admin/utils/HexStrConvertUtil.java
@@ -1,5 +1,7 @@
package com.sandu.ximon.admin.utils;
import java.util.ArrayList;
/**
 * 16
 */
@@ -71,25 +73,25 @@
     * @return: int
     * @description: åå…­è¿›åˆ¶è½¬åè¿›åˆ¶
     */
    public static int HexToInt(String content){
        int number=0;
        String [] HighLetter = {"A","B","C","D","E","F"};
        Map<String,Integer> map = new HashMap<>();
        for(int i = 0;i <= 9;i++){
            map.put(i+"",i);
        }
        for(int j= 10;j<HighLetter.length+10;j++){
            map.put(HighLetter[j-10],j);
        }
        String[]str = new String[content.length()];
        for(int i = 0; i < str.length; i++){
            str[i] = content.substring(i,i+1);
        }
        for(int i = 0; i < str.length; i++){
            number += map.get(str[i])*Math.pow(16,str.length-1-i);
        }
        return number;
    }
//    public static int HexToInt(String content){
//        int number=0;
//        String [] HighLetter = {"A","B","C","D","E","F"};
//        Map<String,Integer> map = new HashMap<>();
//        for(int i = 0;i <= 9;i++){
//            map.put(i+"",i);
//        }
//        for(int j= 10;j<HighLetter.length+10;j++){
//            map.put(HighLetter[j-10],j);
//        }
//        String[]str = new String[content.length()];
//        for(int i = 0; i < str.length; i++){
//            str[i] = content.substring(i,i+1);
//        }
//        for(int i = 0; i < str.length; i++){
//            number += map.get(str[i])*Math.pow(16,str.length-1-i);
//        }
//        return number;
//    }
    /**
@@ -116,8 +118,9 @@
        String sTemp;
        for (int i = 0; i < bArray.length; i++) {
            sTemp = Integer.toHexString(0xFF & bArray[i]);
            if (sTemp.length() < 2)
            if (sTemp.length() < 2) {
                sb.append(0);
            }
            sb.append(sTemp.toLowerCase());
        }
        return sb.toString();
@@ -127,8 +130,9 @@
        StringBuffer sb = new StringBuffer();
        String sTemp;
        sTemp = Integer.toHexString(0xFF & b);
        if (sTemp.length() < 2)
        if (sTemp.length() < 2) {
            sb.append(0);
        }
        sb.append(sTemp.toLowerCase());
        return sb.toString();
    }
@@ -328,30 +332,30 @@
    }
    public static byte[] readInputStream(InputStream inputStream) {
        ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
        if (inputStream != null) {
            try {
                byte[] buffer = new byte[91];
                int counts;
                while ((counts = inputStream.read(buffer, 0, buffer.length)) > 0) {
                    byteArrayOutputStream.write(buffer, 0, counts);
                }
            } catch (IOException e) {
                e.printStackTrace();
            }/* finally {
                if (byteArrayOutputStream != null) {
                    try {
                        byteArrayOutputStream.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                }
            }*/
        }
        return byteArrayOutputStream.toByteArray();
    }
//    public static byte[] readInputStream(InputStream inputStream) {
//        ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
//
//        if (inputStream != null) {
//            try {
//                byte[] buffer = new byte[91];
//                int counts;
//                while ((counts = inputStream.read(buffer, 0, buffer.length)) > 0) {
//                    byteArrayOutputStream.write(buffer, 0, counts);
//                }
//            } catch (IOException e) {
//                e.printStackTrace();
//            }/* finally {
//                if (byteArrayOutputStream != null) {
//                    try {
//                        byteArrayOutputStream.close();
//                    } catch (IOException e) {
//                        e.printStackTrace();
//                    }
//                }
//            }*/
//        }
//        return byteArrayOutputStream.toByteArray();
//    }
    //                br = new BufferedReader(new InputStreamReader(inputStream));
//                byteArrayOutputStream = new ByteArrayOutputStream();