|
|
@@ -141,20 +141,23 @@ namespace UAS_MES_NEW.Make
|
|
|
LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, omakeCode, User.UserLineCode, User.UserSourceCode, "产测软件对接", "产测软件对接成功", serial, "");
|
|
|
ShowMsg(1, $"序列号: {serial} 过站处理成功");
|
|
|
}
|
|
|
- }
|
|
|
+ }
|
|
|
+
|
|
|
+ //string newJsonData = "{\"Name\":\"VerifyResult\",\"Data\":\"{\"ErrorCode\":\"0\",\"ErrorMsg\":\"\",\"Serial\":\"" + serial + "\"}\"}";
|
|
|
|
|
|
+ var dataObject = new
|
|
|
+ {
|
|
|
+ ErrorCode = "0",
|
|
|
+ ErrorMsg = "PD111111",
|
|
|
+ Serial = "123456789"
|
|
|
+ };
|
|
|
+ string dataJson = JsonConvert.SerializeObject(dataObject, Formatting.None);
|
|
|
VerifyResultMessage message = new VerifyResultMessage
|
|
|
{
|
|
|
Name = "VerifyResult",
|
|
|
- Data = new VerifyResultData
|
|
|
- {
|
|
|
- ErrorCode = "0",
|
|
|
- ErrorMsg = "",
|
|
|
- Serial = serial
|
|
|
- }
|
|
|
+ Data = dataJson
|
|
|
};
|
|
|
string jsonMessage = JsonConvert.SerializeObject(message, Formatting.None);
|
|
|
-
|
|
|
string sendMsg = _server.SendMessage(e.ClientId, jsonMessage);
|
|
|
|
|
|
ShowMsg(sendMsg.StartsWith("OK") ? 1 : 0, sendMsg);
|
|
|
@@ -315,7 +318,7 @@ namespace UAS_MES_NEW.Make
|
|
|
public string Name { get; set; } = "VerifyResult";
|
|
|
|
|
|
[JsonProperty("Data")]
|
|
|
- public VerifyResultData Data { get; set; }
|
|
|
+ public string Data { get; set; }
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -590,26 +593,37 @@ namespace UAS_MES_NEW.Make
|
|
|
return $"NG,客户端 {clientId} 连接已断开";
|
|
|
}
|
|
|
|
|
|
- byte[] jsonBytes = Encoding.Unicode.GetBytes(jsonMessage); // UTF-16 LE编码
|
|
|
- long length = jsonBytes.Length; // UTF-16字节长度
|
|
|
-
|
|
|
- byte[] packet = new byte[8 + jsonBytes.Length]; // 8字节长度头
|
|
|
- // 8字节小端序(与客户端4字节小端序对应,只是扩展为8字节)
|
|
|
+ var utf16LE = new UnicodeEncoding(false, false);
|
|
|
+ byte[] jsonBytes = utf16LE.GetBytes(jsonMessage);
|
|
|
+ long length = jsonBytes.Length;
|
|
|
+ byte[] packet = new byte[4 + jsonBytes.Length + 2];
|
|
|
+ // 大端序
|
|
|
+ /*packet[0] = (byte)(length >> 24);
|
|
|
+ packet[1] = (byte)(length >> 16);
|
|
|
+ packet[2] = (byte)(length >> 8);
|
|
|
+ packet[3] = (byte)(length);*/
|
|
|
+
|
|
|
+ // 小端序
|
|
|
packet[0] = (byte)(length);
|
|
|
packet[1] = (byte)(length >> 8);
|
|
|
packet[2] = (byte)(length >> 16);
|
|
|
packet[3] = (byte)(length >> 24);
|
|
|
- packet[4] = (byte)(length >> 32);
|
|
|
- packet[5] = (byte)(length >> 40);
|
|
|
- packet[6] = (byte)(length >> 48);
|
|
|
- packet[7] = (byte)(length >> 56);
|
|
|
+ Array.Copy(jsonBytes, 0, packet, 4, jsonBytes.Length);
|
|
|
+ packet[packet.Length - 2] = 0x00;
|
|
|
+ packet[packet.Length - 1] = 0x00;
|
|
|
|
|
|
- Array.Copy(jsonBytes, 0, packet, 8, jsonBytes.Length);
|
|
|
clientSocket.BeginSend(packet, 0, packet.Length, SocketFlags.None,
|
|
|
new AsyncCallback(SendCallback),
|
|
|
new { ClientId = clientId, ClientSocket = clientSocket });
|
|
|
|
|
|
- return $"OK,发送成功,JSON长度: {jsonMessage.Length}, 报文总字节: {packet.Length} 到 {clientId}";
|
|
|
+ string result2 = BitConverter.ToString(packet).Replace("-", " ");
|
|
|
+ return $"OK,发送成功,JSON长度: {jsonMessage.Length}, 报文总字节: {packet.Length} 到 {clientId},({result2})({jsonMessage})";
|
|
|
+
|
|
|
+ //byte[] jsonBytes = Encoding.Unicode.GetBytes(jsonMessage);
|
|
|
+ //clientSocket.BeginSend(jsonBytes, 0, jsonBytes.Length, SocketFlags.None,
|
|
|
+ // new AsyncCallback(SendCallback),
|
|
|
+ // new { ClientId = clientId, ClientSocket = clientSocket });
|
|
|
+ //return $"OK,发送成功,JSON长度: {jsonMessage.Length}, 报文总字节: {jsonBytes.Length} 到 {clientId}";
|
|
|
}
|
|
|
catch (Exception ex)
|
|
|
{
|