| | |
| | | if (codeReader != null) |
| | | { |
| | | LogHelper.Info($"agv={codeReader.agv},ip={codeReader.ip}"); |
| | | for (int i = 1; i <= 5; i++) |
| | | for (int i = 1; i <= 3; i++) |
| | | { |
| | | //try |
| | | //{ |
| | | //var res = OITcpHelper.HexTransit(new OITcpHelper.StrTransitData { data = "4C 4F 4E 0D", host = codeReader.ip, port = 9004 }); |
| | | var res = SendHexOnce(codeReader.ip, codeReader.port, "41"); |
| | | LogHelper.Info($"扫码返回报文{res}"); |
| | | if (string.IsNullOrEmpty(res)) |
| | | { |
| | | NDCApi.ChangeOrderParam(mst.S_CODE, 6, "3"); |
| | | } |
| | | else |
| | | //if (string.IsNullOrEmpty(res)) |
| | | //{ |
| | | // NDCApi.ChangeOrderParam(mst.S_CODE, 6, "3"); |
| | | //} |
| | | //else |
| | | //{ |
| | | if (res.Length >= 18) |
| | | { |
| | | res = res.Substring(2, 16); |
| | | } |
| | | |
| | | |
| | | var code = hexToStr(res); |
| | | Console.WriteLine(code); |
| | | LogHelper.Info($"托盘信息为={mst.S_CNTR_CODE},扫码结果为={code},结果:{mst.S_CNTR_CODE.Trim() == code.Trim()}"); |
| | | if (res != null && code.Trim() != "ERROR") |
| | | if (!string.IsNullOrEmpty(code) && res.Trim() != "022503") |
| | | { |
| | | if (mst.S_CNTR_CODE.Trim() == code.Trim()) |
| | | { |
| | |
| | | } |
| | | return; |
| | | } |
| | | else if (i == 5) |
| | | else if (i == 3) |
| | | { |
| | | if (res != null) |
| | | if (!string.IsNullOrEmpty(code)) |
| | | { |
| | | NDCApi.ChangeOrderParam(mst.S_CODE, 6, "3"); |
| | | } |
| | |
| | | NDCApi.ChangeOrderParam(mst.S_CODE, 6, "4"); |
| | | } |
| | | } |
| | | } |
| | | //} |
| | | |
| | | //} |
| | | //catch (Exception ex) |
| | |
| | | private static string SendHexOnce(string ip, int port, string hex) |
| | | { |
| | | var res = string.Empty; |
| | | try |
| | | { |
| | | Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); |
| | | client.Connect(ip, port); |
| | | //client.Connect(ip, port); |
| | | IAsyncResult connectResult = client.BeginConnect(ip, port, null, null); |
| | | if (!connectResult.AsyncWaitHandle.WaitOne(5000)) |
| | | { |
| | | client.Close(); |
| | | return ""; |
| | | } |
| | | client.ReceiveTimeout = 2000; |
| | | if (client.Connected) |
| | | { |
| | | client.Send(Hex2Bytes(hex)); |
| | | byte[] buffer = new byte[1024]; |
| | | try |
| | | { |
| | | |
| | | var length = client.Receive(buffer, SocketFlags.None); |
| | | byte[] data = new byte[length]; |
| | | Array.Copy(buffer, data, length); |
| | | res = BitConverter.ToString(data).Replace("-", ""); |
| | | |
| | | |
| | | client.Disconnect(true); |
| | | client.Dispose(); |
| | | } |
| | | client = null; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | LogHelper.Error(ex.Message, ex); |
| | | } |
| | | client.Disconnect(true); |
| | | client.Dispose(); |
| | | } |
| | | client = null; |
| | | return res; |
| | | } |
| | | |