diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/CommandManager.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/CommandManager.java index a4ec0c0..fd58b6a 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/CommandManager.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/CommandManager.java @@ -77,7 +77,7 @@ byte[] bytes = data.getBytes(StandardCharsets.UTF_8); byte[] encrypt = TEA.encrypt(bytes); String dataHex = ByteUtils.bytesToHexString(encrypt); - int dataLength = 2 + targetName.length() + 9 + clientName.length() + 2 + data.length() + 2; + int dataLength = 2 + targetName.length() + 9 + clientName.length() + 2 + dataHex.length() + 2; String cmd = "*AT^IOTDATA=" + dataLength + ",\"^$" + targetName diff --git a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/CommandManager.java b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/CommandManager.java index a4ec0c0..fd58b6a 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/CommandManager.java +++ b/casic-shelter/src/main/java/com/casic/missiles/modular/system/utils/CommandManager.java @@ -77,7 +77,7 @@ byte[] bytes = data.getBytes(StandardCharsets.UTF_8); byte[] encrypt = TEA.encrypt(bytes); String dataHex = ByteUtils.bytesToHexString(encrypt); - int dataLength = 2 + targetName.length() + 9 + clientName.length() + 2 + data.length() + 2; + int dataLength = 2 + targetName.length() + 9 + clientName.length() + 2 + dataHex.length() + 2; String cmd = "*AT^IOTDATA=" + dataLength + ",\"^$" + targetName diff --git a/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java b/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java index e0bf4b3..35d3d57 100644 --- a/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java +++ b/casic-shelter/src/main/java/com/casic/missiles/socket/service/impl/SocketServiceImpl.java @@ -122,35 +122,29 @@ //1.先得到发送的DTU数据 byte[] dtuData = new byte[data.length - 5]; System.arraycopy(data, 4, dtuData, 0, dtuData.length); - log.info("dtuData ===> " + Arrays.toString(dtuData)); //2.转16进制 StringBuilder hexBuilder = new StringBuilder(); for (byte dtuDatum : dtuData) { hexBuilder.append((char) dtuDatum); } String s = hexBuilder.toString(); - log.info("s ===> " + s); //3.去掉符号 if (s.contains("FFFFFF")) { s = s.replace("FFFFFF", ""); } - log.info("s ===> " + s); //4.DTU数据是加密过的,需要解密 List ints = new ArrayList<>(); for (int i = 0; i < s.length(); i += 2) { String hex = s.substring(i, i + 2); ints.add(Integer.parseInt(hex, 16)); } - log.info("ints ===> " + ints); byte[] bytes = new byte[ints.size()]; for (int i = 0; i < ints.size(); i++) { Integer integer = ints.get(i); bytes[i] = integer.byteValue(); } - log.info("bytes ===> " + Arrays.toString(bytes)); byte[] decrypt = TEA.decrypt(bytes); String message = new String(decrypt); - log.info("message ===> " + message); saveDataLog(2, "", message, "0"); sendToSocket(message); break; @@ -439,6 +433,6 @@ dataLog.setDataContent(JSON.toJSONString(data)); } dataLog.setStatus(status); -// logService.save(dataLog); + logService.save(dataLog); } }