From de7dbe7cf85aa01abb64040aae1c04dfba74c135 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周二, 01 4月 2025 10:48:50 +0800
Subject: [PATCH] 优化 和plc交互问题

---
 CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Outbound/2、DataProcess_RobotBuffer_IssueOutboundTask.cs |   80 ++++++++++++++++++++++++++-------------
 1 files changed, 53 insertions(+), 27 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/2\343\200\201DataProcess_RobotBuffer_IssueOutboundTask.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/2\343\200\201DataProcess_RobotBuffer_IssueOutboundTask.cs"
index cca89f1..fef2874 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/2\343\200\201DataProcess_RobotBuffer_IssueOutboundTask.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/2\343\200\201DataProcess_RobotBuffer_IssueOutboundTask.cs"
@@ -67,7 +67,7 @@
                             var isValidate = TaskHandler.ValidateIssueOutTaskForRobotBuffer(wmsDB);
                             if (!isValidate)
                             {
-                                SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-鏈夆�樺凡涓嬪彂鈥欑殑浠诲姟锛屼笉鑳藉鐞�,姝ゆ寰幆缁撴潫";
+                                SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $" 褰撳墠鏈夆�樺凡涓嬪彂鈥欑殑鍑哄簱浠诲姟锛屼笉鑳藉啀娆″鐞嗕笅鍙戜换鍔�,姝ゆ寰幆缁撴潫";
                                 continue;
                             }
 
@@ -112,37 +112,63 @@
                             var doTask = taskList.FirstOrDefault();
 
 
-                            //杩欓噷涓嬪彂 鍑哄簱浠诲姟
-                            using (StationServiceClient client = new StationServiceClient())
-                            {
-                                //棣栧厛瑕佹竻鐞�
-                                //var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, false, rgvLocation);
-                                //if (!res.result)
-                                //{
-                                //    SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 澶辫触,OutboundFinishConfirmAsync 杩斿洖:{res.resMsg}";
-                                //    continue;
-                                //}
-                                //else
-                                //{
-                                //    Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 鎴愬姛,OutboundFinishConfirmAsync锛屽弬鏁�: 绔欑偣{rgvLocation}");
-                                //}
+                            ////杩欓噷涓嬪彂 鍑哄簱浠诲姟
+                            //using (StationServiceClient client = new StationServiceClient())
+                            //{
+                            //    //棣栧厛瑕佹竻鐞�
+                            //    //var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, false, rgvLocation);
+                            //    //if (!res.result)
+                            //    //{
+                            //    //    SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 澶辫触,OutboundFinishConfirmAsync 杩斿洖:{res.resMsg}";
+                            //    //    continue;
+                            //    //}
+                            //    //else
+                            //    //{
+                            //    //    Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 鎴愬姛,OutboundFinishConfirmAsync锛屽弬鏁�: 绔欑偣{rgvLocation}");
+                            //    //}
 
-                                var res = await client.WriteOutStoreTaskInfoAsync(false, (int)EDevice.Station, rgvLocation, doTask.PlaceCode, Convert.ToInt32(doTask.TaskNo));
-                                if (!res.result)
-                                {
-                                    SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 澶辫触,WriteOutStoreTaskInfoAsync 杩斿洖:{res.resMsg}";
-                                    continue;
-                                }
-                                else
-                                {
-                                    Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 鎴愬姛,WriteOutStoreTaskInfoAsync锛屽弬鏁�: 绔欑偣{rgvLocation}");
-                                }
-                            }
+                            //    var res = await client.WriteOutStoreTaskInfoAsync(false, (int)EDevice.Station, rgvLocation, doTask.PlaceCode, Convert.ToInt32(doTask.TaskNo));
+                            //    if (!res.result)
+                            //    {
+                            //        SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 澶辫触,WriteOutStoreTaskInfoAsync 杩斿洖:{res.resMsg}";
+                            //        continue;
+                            //    }
+                            //    else
+                            //    {
+                            //        Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 鎴愬姛,WriteOutStoreTaskInfoAsync锛屽弬鏁�: 绔欑偣{rgvLocation}");
+                            //    }
+                            //}
 
                             doTask.TaskStatus = (int)TaskStatusEnum.宸蹭笅鍙�;
                             doTask.IssueTime = DateTime.Now;
 
-                            wmsDB.SaveChanges();
+                            int changeNum = wmsDB.SaveChanges();
+                            if (changeNum > 0)
+                            {
+                                //蹇呴』瑕佺粰PLC涓嬪彂鎴愬姛,瑙e喅鍙兘浼氱粰PLC閲嶅涓嬪彂浠诲姟鐨勬儏鍐�
+                                var isRight = true;
+                                while (isRight)
+                                {
+                                    //杩欓噷涓嬪彂 鍑哄簱浠诲姟
+                                    using (StationServiceClient client = new StationServiceClient())
+                                    {
+
+                                        var res = await client.WriteOutStoreTaskInfoAsync(false, (int)EDevice.Station, rgvLocation, doTask.PlaceCode, Convert.ToInt32(doTask.TaskNo));
+                                        if (!res.result)
+                                        {
+                                            SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 澶辫触,WriteOutStoreTaskInfoAsync 杩斿洖:{res.resMsg}鍙傛暟: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo}";
+                                            Log4NetHelper.WriteErrorLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 澶辫触,WriteOutStoreTaskInfoAsync锛屽弬鏁�: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo},鏉$爜:{doTask.Upi}");
+                                            continue;
+                                        }
+                                        else
+                                        {
+                                            Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 鎴愬姛,WriteOutStoreTaskInfoAsync锛屽弬鏁�: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo},鏉$爜:{doTask.Upi}");
+                                            isRight = false;
+                                        }
+                                    }
+                                    Thread.Sleep(1000);
+                                }
+                            }
                         }
 
                     }

--
Gitblit v1.9.3