From c3877b2ebec19f473f45e8c2245926f65d2a3948 Mon Sep 17 00:00:00 2001 From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com> Date: 星期三, 10 九月 2025 09:26:23 +0800 Subject: [PATCH] 代码提交 --- 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageSocketServices/SocketClientService.cs | 142 ++++++++++++++++------------------------------ 1 files changed, 50 insertions(+), 92 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageSocketServices/SocketClientService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageSocketServices/SocketClientService.cs" index 4bf8120..9ae7a23 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageSocketServices/SocketClientService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageSocketServices/SocketClientService.cs" @@ -50,6 +50,8 @@ private readonly IDt_HostLogRepository _hostLogRepository; private bool _IsOnline = false; public DateTime Time { get; set; } = DateTime.Now; + private static int _currentNumber = 0; + private static readonly object _lock = new object(); public SocketClientService(IDt_TaskService TaskService, IDt_TaskRepository TaskRepository, IDt_StationManagerRepository stationManagerRepository, ILogger<SocketClientService> logger, IDt_HostLogRepository hostLogRepository) @@ -438,6 +440,23 @@ #endregion #region WMS涓嬪彂HOST鏂规硶 + public static string Sequence() + { + // 浣跨敤閿佺‘淇濈嚎绋嬪畨鍏� + lock (_lock) + { + _currentNumber++; + + // 濡傛灉瓒呰繃99999锛屽彲浠ラ噸缃垨鎶涘嚭寮傚父锛岃繖閲岄�夋嫨閲嶇疆 + if (_currentNumber > 99999) + { + _currentNumber = 1; + } + + return _currentNumber.ToString("D5"); + } + } + /// <summary> /// 璁惧璇锋眰鍏ュ簱 宸ュ簭101 @@ -448,16 +467,12 @@ { try { - string str = SendandReply + "101" + BaseDal.GetSeqNo().Result.ToString("D5") + GetFieldsAsString(Agvstatus) + GetListStringOutStation(outStations) + OutStationSpare2 + "1" + GetFieldsAsString(inStation); + string str = SendandReply + "101" + Sequence() + GetFieldsAsString(Agvstatus) + GetListStringOutStation(outStations) + OutStationSpare2 + "1" + GetFieldsAsString(inStation); clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("DeviceRequestInbound").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); - } - finally - { - BaseDal.Db.Close(); } } @@ -470,16 +485,12 @@ { try { - string str = SendandReply + "925" + BaseDal.GetSeqNo().Result.ToString("D5"); + string str = SendandReply + "925" + Sequence(); clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("RequestCommunication").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); - } - finally - { - BaseDal.Db.Close(); } } @@ -492,16 +503,12 @@ { try { - string str = SendNotReply + "915" + BaseDal.GetSeqNo().Result.ToString("D5") + Command; + string str = SendNotReply + "915" + Sequence() + Command; clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("JobReady").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); - } - finally - { - BaseDal.Db.Close(); } } @@ -514,18 +521,13 @@ { try { - string str = SendNotReply + "913" + BaseDal.GetSeqNo().Result.ToString("D5") + Status; + string str = SendNotReply + "913" + Sequence() + Status; clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("DeviceStateReport").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); } - finally - { - BaseDal.Db.Close(); - } - } /// <summary> @@ -537,16 +539,12 @@ { try { - string str = SendandReply + "917" + BaseDal.GetSeqNo().Result.ToString("D5") + Status; + string str = SendandReply + "917" + Sequence() + Status; clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("DeviceAutoStatusReport").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); - } - finally - { - BaseDal.Db.Close(); } } @@ -562,18 +560,13 @@ { try { - string str = SendandReply + "905" + BaseDal.GetSeqNo().Result.ToString("D5") + Status + JobOrderID + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; + string str = SendandReply + "905" + Sequence() + Status + JobOrderID + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("JobStartOrEnd").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); } - finally - { - BaseDal.Db.Close(); - } - } /// <summary> @@ -589,18 +582,13 @@ { try { - string str = SendNotReply + "907" + BaseDal.GetSeqNo().Result.ToString("D5") + Status + JobOrderID + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; + string str = SendNotReply + "907" + Sequence() + Status + JobOrderID + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("PalletActionReport宸ュ簭907").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); } - finally - { - BaseDal.Db.Close(); - } - } /// <summary> @@ -615,7 +603,7 @@ { try { - string str = SendandReply + "901" + BaseDal.GetSeqNo().Result.ToString("D5") + "0" + JobOrderID + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; + string str = SendandReply + "901" + Sequence() + "0" + JobOrderID + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; Dt_HostLog hostLog = new Dt_HostLog() { CommandID = 901, @@ -629,47 +617,32 @@ { LogFactory.GetLog("PalletActionReport宸ュ簭901").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); } - finally - { - BaseDal.Db.Close(); - } - } public void PalletActionReportPDA(string FormLocation, string ToLocation, string TaskType, string PallteCode) { try { - string str = SendandReply + "901" + BaseDal.GetSeqNo().Result.ToString("D5") + "0" + JobOrderIDPDA + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; + string str = SendandReply + "901" + Sequence() + "0" + JobOrderIDPDA + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("PalletActionReportPDA宸ュ簭901").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); } - finally - { - BaseDal.Db.Close(); - } - } public void PalletActionReportFrie(string FormLocation, string ToLocation, string TaskType, string PallteCode) { try { - string str = SendandReply + "901" + BaseDal.GetSeqNo().Result.ToString("D5") + "0" + JobOrderIDF + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; + string str = SendandReply + "901" + Sequence() + "0" + JobOrderIDF + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("PalletActionReportPDA宸ュ簭901").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); } - finally - { - BaseDal.Db.Close(); - } - } /// <summary> @@ -694,7 +667,6 @@ { LogFactory.GetLog("DeviceStationStatusReport").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); } - } /// /// <summary> @@ -709,7 +681,7 @@ try { ErrorReport(Restocking, "A", "00"); - string str = SendandReply + "105" + BaseDal.GetSeqNo().Result.ToString("D5") + "R" + JobOrderID + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; + string str = SendandReply + "105" + Sequence() + "R" + JobOrderID + priority + FormLocation + ToLocation + TaskType + TrayCnt + PallteCode; Dt_HostLog hostLog = new Dt_HostLog() { CommandID = 105, @@ -723,11 +695,6 @@ { LogFactory.GetLog("RecreateGetLocation").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); } - finally - { - BaseDal.Db.Close(); - } - } /// <summary> @@ -738,16 +705,12 @@ { try { - string str = SendNotReply + "981" + BaseDal.GetSeqNo().Result.ToString("D5") + message; + string str = SendNotReply + "981" + Sequence() + message; clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("CheckSum").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); - } - finally - { - BaseDal.Db.Close(); } } @@ -761,17 +724,13 @@ { try { - string str = SendNotReply + "985" + BaseDal.GetSeqNo().Result.ToString("D5") + Trouble + Level + Location; + string str = SendNotReply + "985" + Sequence() + Trouble + Level + Location; clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("ErrorReport").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); - } - finally - { - BaseDal.Db.Close(); } } @@ -784,14 +743,13 @@ { try { - string str = SendNotReply + "104" + BaseDal.GetSeqNo().Result.ToString("D5") + Statues; + string str = SendNotReply + "104" + Sequence() + Statues; clientSend(MakeStringToByteMsg(str)); } catch (Exception ex) { LogFactory.GetLog("DeviceReceiveJobResponse").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); } - } /// /// <summary> @@ -806,7 +764,7 @@ try { ErrorReport(EmptyOutBoundconst, "A", "00"); - string str = SendandReply + "107" + BaseDal.GetSeqNo().Result.ToString("D5") + "1" + JobOrderID + priority + FormLocation + ToLocation + "O" + TrayCnt + PallteCode; + string str = SendandReply + "107" + Sequence() + "1" + JobOrderID + priority + FormLocation + ToLocation + "O" + TrayCnt + PallteCode; Dt_HostLog hostLog = new Dt_HostLog() { CommandID = 107, @@ -820,11 +778,6 @@ { LogFactory.GetLog("EmptyOutBound").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); } - finally - { - BaseDal.Db.Close(); - } - } /// <summary> @@ -835,23 +788,28 @@ { try { - string str = SendNotReply + "910" + BaseDal.GetSeqNo().Result.ToString("D5") + GetFieldsAsString(AgvStatus) + X + Y; + string str = SendNotReply + "910" + Sequence() + GetFieldsAsString(AgvStatus) + X + Y; clientSend(MakeStringToByteMsg(str)); - Dt_HostLog hostLog = new Dt_HostLog() + var hostlog = SqlSugarHelper.DbWMS.Queryable<Dt_HostLog>().Where(x => x.CommandID == 910).First(); + if (hostlog != null) { - CommandID = 910, - Count = 0, - Messgae = str, - }; - _hostLogRepository.AddData(hostLog); + hostlog.ModifyDate=DateTime.Now; + SqlSugarHelper.DbWMS.Updateable(hostlog).ExecuteCommand(); + } + else + { + Dt_HostLog hostLog = new Dt_HostLog() + { + CommandID = 910, + Count = 0, + Messgae = str, + }; + _hostLogRepository.AddData(hostLog); + } } catch (Exception ex) { LogFactory.GetLog("DeviceStatusReportResponse").InfoFormat(true, $"璇锋眰鍙傛暟锛歿JsonConvert.SerializeObject(ex.Message)}{Environment.NewLine}{ex.StackTrace}", ""); - } - finally - { - BaseDal.Db.Close(); } } -- Gitblit v1.9.3