From e8734db76fbbb3149ba663beff3b4f7451012b03 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周二, 03 12月 2024 13:28:34 +0800
Subject: [PATCH] 11

---
 CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Outbound/3、DataProcess_RobotBuffer_FinishTaskForOutbound.cs |   61 ++++++++++++++++++++++++------
 1 files changed, 49 insertions(+), 12 deletions(-)

diff --git "a/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Outbound/3\343\200\201DataProcess_RobotBuffer_FinishTaskForOutbound.cs" "b/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Outbound/3\343\200\201DataProcess_RobotBuffer_FinishTaskForOutbound.cs"
index 8e05c85..5b01710 100644
--- "a/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Outbound/3\343\200\201DataProcess_RobotBuffer_FinishTaskForOutbound.cs"
+++ "b/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Outbound/3\343\200\201DataProcess_RobotBuffer_FinishTaskForOutbound.cs"
@@ -1,4 +1,5 @@
 锘縰sing Admin.NET.Application;
+using iWareCC.StationService;
 using iWareCommon.Common.Globle;
 using iWareCommon.Utils;
 using iWareModel;
@@ -21,22 +22,22 @@
             LogType logType = LogType.DataProcess_RobotBuffer_FinishTaskForOutbound;
             while (true)
             {
-                Thread.Sleep(2000);//浼戠湢2绉掞紝灏嗕紤鐪犲啓鍒板墠闈紝鏄负浜嗕笅闈㈢殑continue鏂规硶鎵ц鍚庝笉鏄剧ず閿欒淇℃伅鐨勬彁绀猴紒锛侊紒銆怑ditBy shaocx,2022-05-24銆�
+                Thread.Sleep(500);//浼戠湢2绉掞紝灏嗕紤鐪犲啓鍒板墠闈紝鏄负浜嗕笅闈㈢殑continue鏂规硶鎵ц鍚庝笉鏄剧ず閿欒淇℃伅鐨勬彁绀猴紒锛侊紒銆怑ditBy shaocx,2022-05-24銆�
                 SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = string.Empty;
                 try
-                {
-                    if (SystemValue.isAllowRuning_DataProcess_RobotBuffer_FinishTaskForOutbound && SystemValue.isStartedModel)
+                {//SystemValue.isAllowRuning_DataProcess_RobotBuffer_FinishTaskForOutbound &&
+                    if (SystemValue.isStartedModel)
                     {
                         var rgvLocation = StationLocationEnum.BZ39.ToString();
                         var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault();
                         if (obj.R_OutboundFinish)
                         {
-                            var result = obj.R_OutboundNumber;
-                            if (string.IsNullOrEmpty(result))
-                            {
-                                SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}- 鍑哄簱搴撲綅鍙锋槸绌虹殑,姝ゆ寰幆缁撴潫";
-                                continue;
-                            }
+                            //var result = obj.R_OutboundNumber;
+                            //if (string.IsNullOrEmpty(result))
+                            //{
+                            //    SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}- 鍑哄簱搴撲綅鍙锋槸绌虹殑,姝ゆ寰幆缁撴潫";
+                            //    continue;
+                            //}
 
                             var result2 = obj.R_Outbound_TaskID;
                             if (result2 == 0)
@@ -49,14 +50,26 @@
 
                             using (WmsDBModel wmsDB = new WmsDBModel())
                             {
-                                var task = wmsDB.wms_rbline_task.Where(x => x.PlaceCode == obj.R_OutboundNumber
-                                && x.TaskNo == obj.R_Outbound_TaskID.ToString()
+                                var task = wmsDB.wms_rbline_task.Where(x =>
+                                 x.TaskNo == obj.R_Outbound_TaskID.ToString()
                                 && x.RbTaskType == (int)RbTaskTypeEnum.鍑哄簱浠诲姟
-                                && x.TaskStatus == (int)TaskStatusEnum.宸蹭笅鍙�).FirstOrDefault();
+                                ).OrderByDescending(x => x.Id).FirstOrDefault();
                                 if (task == null)
                                 {
                                     SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()},鏍规嵁 R_OutboundNumber:{obj.R_OutboundNumber}娌℃湁鎵惧埌宸蹭笅鍙戠殑浠诲姟 ";
                                     continue;
+                                }
+                                else
+                                {
+                                    if (task.TaskStatus == (int)TaskStatusEnum.宸插畬鎴�)
+                                    {
+                                        using (StationServiceClient client = new StationServiceClient())
+                                        {
+                                            var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, true, rgvLocation, false);
+                                        }
+                                        continue;
+                                    }
+
                                 }
 
                                 var upiCode = task.UPI;
@@ -77,9 +90,33 @@
                                 var place = StationHandler.GetPlaceByPlaceCode(task.PlaceCode, wmsDB);
                                 place.PlaceStatus = (int)PlaceStatusEnum.姝e父;
 
+                                //缁橮LC鎺ㄩ�佷换鍔″畬鎴愮‘璁や俊鍙�
+                                using (StationServiceClient client = new StationServiceClient())
+                                {
+                                    var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, true, rgvLocation, true);
+                                    if (!res.result)
+                                    {
+                                        SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 澶辫触,OutboundFinishConfirmAsync 杩斿洖:{res.resMsg}";
+                                        continue;
+                                    }
+                                    else
+                                    {
+                                        Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 鎴愬姛,OutboundFinishConfirmAsync锛屽弬鏁�: 绔欑偣{rgvLocation}");
+                                    }
+                                }
+
+                                WmsRecordUpiProcessHandler.SaveWmsRecordUpiProcess(wmsDB, upiObj, task.PlaceCode, $"鍑虹紦瀛樺簱锛歿task.PlaceCode},"+task.TaskMsg);
+
                                 wmsDB.SaveChanges();
                             }
                         }
+                        else
+                        {
+                            using (StationServiceClient client = new StationServiceClient())
+                            {
+                                var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, false, rgvLocation, false);
+                            }
+                        }
                     }
                 }
                 catch (Exception ex)

--
Gitblit v1.9.3