From fb878bb4e7ec51a60ac63203a65714506e04b55d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A6=82=E6=84=8F=20=E5=BD=AD?= <2417589739@qq.com> Date: Fri, 5 May 2023 13:35:10 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E7=8A=B6=E6=80=81=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BPASmartClient.Helper/ThreadManage.cs | 1 + BPASmartClient.MorkS/Control_Morks.cs | 84 +++++++++++++++------------ BPASmartClient.MorkS/GVL_MORKS.cs | 2 + 3 files changed, 50 insertions(+), 37 deletions(-) diff --git a/BPASmartClient.Helper/ThreadManage.cs b/BPASmartClient.Helper/ThreadManage.cs index 732d2364..c16fb029 100644 --- a/BPASmartClient.Helper/ThreadManage.cs +++ b/BPASmartClient.Helper/ThreadManage.cs @@ -65,6 +65,7 @@ namespace BPASmartClient.Helper catch (Exception ex) { MessageLog.GetInstance.ShowEx(ex.ToString()); + MessageLog.GetInstance.ShowEx(ex.Message); if (IsRestart) { Thread.Sleep(2000); diff --git a/BPASmartClient.MorkS/Control_Morks.cs b/BPASmartClient.MorkS/Control_Morks.cs index 4ebb59fb..8e4c8d2a 100644 --- a/BPASmartClient.MorkS/Control_Morks.cs +++ b/BPASmartClient.MorkS/Control_Morks.cs @@ -129,51 +129,60 @@ namespace BPASmartClient.MorkS private void OrderChange(string subid, ORDER_STATUS oRDER_STATUS) { - var res = mORKS.doOrderEvents.FirstOrDefault(p => p.MorkOrder.SuborderId == subid); + //var res = mORKS.doOrderEvents.FirstOrDefault(p => p.MorkOrder.SuborderId == subid); string goodName = string.Empty; string SortNum = string.Empty; - if (res != null) - { - goodName = res.MorkOrder.GoodsName; - SortNum = res.MorkOrder.SortNum.ToString(); - } - - EventBus.EventBus.GetInstance().Publish(new OrderStatusChangedEvent() { SortNum = SortNum, GoodName = goodName, Status = oRDER_STATUS, SubOrderId = subid, deviceClientType = DeviceType }); + //if (res != null) + //{ + // goodName = res.MorkOrder.GoodsName; + // SortNum = res.MorkOrder.SortNum.ToString(); + //} - var index = DataServer.GetInstance.morkS.MakeOrder.FindIndex(p => p.SortNum == SortNum); - if (index >= 0 && index < DataServer.GetInstance.morkS.MakeOrder.Count) + if (mORKS.doe.ContainsKey(subid)) { - if (oRDER_STATUS == ORDER_STATUS.COMPLETED_COOK) + goodName = mORKS.doe[subid].MorkOrder.GoodsName; + SortNum = mORKS.doe[subid].MorkOrder.SortNum.ToString(); + if (!string.IsNullOrEmpty(goodName) && !string.IsNullOrEmpty(SortNum)) { - DataServer.GetInstance.morkS.MakeOrder.RemoveAt(index); - DataServer.GetInstance.morkS.MakeOrderOver.Add(new OrderMakeModel() + EventBus.EventBus.GetInstance().Publish(new OrderStatusChangedEvent() { SortNum = SortNum, GoodName = goodName, Status = oRDER_STATUS, SubOrderId = subid, deviceClientType = DeviceType }); + var index = DataServer.GetInstance.morkS.MakeOrder.FindIndex(p => p.SortNum == SortNum); + if (index >= 0 && index < DataServer.GetInstance.morkS.MakeOrder.Count) { - Status = oRDER_STATUS, - GoodName = goodName, - SortNum = SortNum, - StopTime = DateTime.Now.ToString("HH:mm:ss") - }); - } - else if (oRDER_STATUS == ORDER_STATUS.COMPLETED_TAKE) - { - var temp = DataServer.GetInstance.morkS.MakeOrderOver.FirstOrDefault(p => p.SortNum == SortNum); - if (temp != null) DataServer.GetInstance.morkS.MakeOrderOver.Remove(temp); - } - else - { - DataServer.GetInstance.morkS.MakeOrder.ElementAt(index).Status = oRDER_STATUS; + if (oRDER_STATUS == ORDER_STATUS.COMPLETED_COOK) + { + DataServer.GetInstance.morkS.MakeOrder.RemoveAt(index); + DataServer.GetInstance.morkS.MakeOrderOver.Add(new OrderMakeModel() + { + Status = oRDER_STATUS, + GoodName = goodName, + SortNum = SortNum, + StopTime = DateTime.Now.ToString("HH:mm:ss") + }); + } + else if (oRDER_STATUS == ORDER_STATUS.COMPLETED_TAKE) + { + var temp = DataServer.GetInstance.morkS.MakeOrderOver.FirstOrDefault(p => p.SortNum == SortNum); + if (temp != null) DataServer.GetInstance.morkS.MakeOrderOver.Remove(temp); + } + else + { + DataServer.GetInstance.morkS.MakeOrder.ElementAt(index).Status = oRDER_STATUS; + } + } + else + { + DataServer.GetInstance.morkS.MakeOrder.Add(new OrderMakeModel() + { + Status = oRDER_STATUS, + GoodName = goodName, + SortNum = SortNum, + StartTime = DateTime.Now.ToString("HH:mm:ss") + }); + } + mORKS.doe.Remove(subid, out _); } } - else - { - DataServer.GetInstance.morkS.MakeOrder.Add(new OrderMakeModel() - { - Status = oRDER_STATUS, - GoodName = goodName, - SortNum = SortNum, - StartTime = DateTime.Now.ToString("HH:mm:ss") - }); - } + } private void GetStatus(string key, Action action) @@ -322,6 +331,7 @@ namespace BPASmartClient.MorkS if (@event is DoOrderEvent order) { mORKS.doOrderEvents.Add(order); + mORKS.doe.TryAdd(order.MorkOrder.SuborderId, order); DeviceProcessLogShow($"接收到{order.MorkOrder.SortNum}号订单"); if (order.MorkOrder.GoodBatchings == null) return; if (mORKS.HistorySuborderId.Contains(order.MorkOrder.SuborderId)) return; diff --git a/BPASmartClient.MorkS/GVL_MORKS.cs b/BPASmartClient.MorkS/GVL_MORKS.cs index 4cebd61e..64aa162c 100644 --- a/BPASmartClient.MorkS/GVL_MORKS.cs +++ b/BPASmartClient.MorkS/GVL_MORKS.cs @@ -313,6 +313,8 @@ namespace BPASmartClient.MorkS public List doOrderEvents { get; set; } = new List(); + public ConcurrentDictionary doe { get; set; } = new ConcurrentDictionary(); + /// /// 是否有面条 ///