From afd0f03dac38e56bfdd60b03f197fb9bf5c1eda4 Mon Sep 17 00:00:00 2001
From: 杨张扬 <634643841@qq.com>
Date: 星期四, 19 六月 2025 17:29:00 +0800
Subject: [PATCH] 取消任务,不删除容器货品明细

---
 core/WCSCore.cs |   72 ++++++++++++++++++------------------
 1 files changed, 36 insertions(+), 36 deletions(-)

diff --git a/core/WCSCore.cs b/core/WCSCore.cs
index c1ec6bd..0de22fe 100644
--- a/core/WCSCore.cs
+++ b/core/WCSCore.cs
@@ -1,5 +1,6 @@
 锘縰sing HH.WCS.Mobox3.DoubleCoin.device;
 using HH.WCS.Mobox3.DoubleCoin.dispatch;
+using HH.WCS.Mobox3.DoubleCoin.models;
 using HH.WCS.Mobox3.DoubleCoin.process;
 using HH.WCS.Mobox3.DoubleCoin.util;
 using HH.WCS.Mobox3.DoubleCoin.wms;
@@ -143,9 +144,13 @@
 
                                     Task task19 = Task.Run(() =>
                                     {
-                                        if (TN_Task.S_END_AREA == Settings.Areas[2])
+                                        if (TN_Task.S_END_AREA == Settings.Areas[1])
                                         {
                                             SpecHelper.UpdateInventoryM_RuKu(TN_Task.S_CNTR_CODE);
+                                        }
+                                        else
+                                        {
+                                            LogHelper.Info($"鏇存柊WMS搴撳瓨鏄庣粏鐨勫叆搴撴椂闂磋烦杩囷紝TN_Task.S_END_AREA锛�{TN_Task.S_END_AREA }涓嶇瓑浜�Settings.Areas[1]锛歿Settings.Areas[1]}");
                                         }
                                     });
 
@@ -157,58 +162,53 @@
                                 case 7:
                                     Task task10 = Task.Run(() =>
                                     {
-                                        if (TN_Task.S_TYPE == "婊℃墭涓嬬嚎鍏ュ簱")
+                                        if (TN_Task.S_TYPE.Contains("婊℃墭涓嬬嚎鍏ュ簱") || TN_Task.S_TYPE.Contains("PDA婊℃墭涓嬬嚎鍏ュ簱") || TN_Task.S_END_AREA == Settings.Areas[1])
                                         {
                                             TaskProcess.OperateStatus(TN_Task, 7);//寮傚父澶勭悊
                                         }
-                                        else if(TN_Task.S_TYPE == "婊℃墭鍑哄簱涓婄嚎")
-                                        {
-                                            WCSHelper.Fail(TN_Task);//浠诲姟鐘舵�鏀规垚閿欒
-                                            LocationHelper.UnLockLoc(TN_Task.S_END_LOC);
-                                            if (!WCSHelper.CheckActionRecordExist(TN_Task.S_CODE, 4))
-                                            {
-                                                LocationHelper.UnLockLoc(TN_Task.S_START_LOC);
-                                            }
-                                        }
-                                    });
-                                   
-                                    break;
-                                case 8:
-                                    
-                                    Task task11 = Task.Run(() =>
-                                    {
-                                        if (TN_Task.S_TYPE == "婊℃墭涓嬬嚎鍏ュ簱")
-                                        {
-                                            var res = NDCApi.CancelOrder(TN_Task.S_CODE);
-                                            if (res != null && (res.err_code ==50002 || res.err_code == 0))
-                                            {
-                                                TaskProcess.OperateStatus(TN_Task, 7);//寮傚父澶勭悊
-                                            }
-                                            else
-                                            {
-                                                LogHelper.Info($"寮傚父鍜屽彇娑堟搷浣�璇锋眰缁撴灉澶辫触{res}");
-                                            }
-                                        }
                                         else
                                         {
-                                            var res = NDCApi.CancelOrder(TN_Task.S_CODE);
-                                            if (res != null && (res.err_code == 50002 || res.err_code == 0))
+                                            if (!WCSHelper.CheckActionRecordExist(TN_Task.S_CODE, 4))//鏈彇璐у畬鎴�                                             {
                                                 WCSHelper.Fail(TN_Task);//浠诲姟鐘舵�鏀规垚閿欒
-                                                LocationHelper.UnLockLoc(TN_Task.S_END_LOC);
-                                                if (!WCSHelper.CheckActionRecordExist(TN_Task.S_CODE, 4))
+
+                                                var db = new SqlHelper<object>().GetInstance();
+                                                var cginfo = db.Queryable<TN_CG_Detail>().First(a => a.S_CNTR_CODE == TN_Task.S_CNTR_CODE);
+                                                if (cginfo != null)
                                                 {
-                                                    LocationHelper.UnLockLoc(TN_Task.S_START_LOC);
+                                                    db.Deleteable<TN_InventoryM>().Where(it => it.S_ID == cginfo.S_ID || it.RFID == TN_Task.S_CNTR_CODE).ExecuteCommand();
+                                                }
+                                                else
+                                                {
+                                                    db.Deleteable<TN_InventoryM>().Where(it => it.RFID == TN_Task.S_CNTR_CODE).ExecuteCommand();
                                                 }
                                             }
                                             else
                                             {
-                                                LogHelper.Info($"寮傚父鍜屽彇娑堟搷浣�璇锋眰缁撴灉澶辫触{res}");
+                                                WCSHelper.End(TN_Task);//浠诲姟鐘舵�鏀规垚缁撴潫
+                                                LocationHelper.BindingLoc(TN_Task.S_END_LOC, TN_Task.S_CNTR_CODE.Split(',').ToList());
                                             }
+                                            LocationHelper.UnLockLoc(TN_Task.S_END_LOC);
+                                            LocationHelper.UnLockLoc(TN_Task.S_START_LOC);//瑙i攣璧风偣缁堢偣
                                            
                                         }
+                                        
                                     });
                                     break;
+
+                                case 8:
+
+                                    var res = NDCApi.CancelOrder(TN_Task.S_CODE);
+                                    if (res != null && (res.err_code == 50002 || res.err_code == 0))
+                                    {
+                                        LogHelper.Info($"寮傚父鍜屽彇娑堟搷浣�璇锋眰缁撴灉鎴愬姛{res}");
+                                    }
+                                    else
+                                    {
+                                        LogHelper.Info($"寮傚父鍜屽彇娑堟搷浣�璇锋眰缁撴灉澶辫触{res}");
+                                    }
+
+                                    break;
                             }
                             WCSHelper.AddActionRecord(model.task_no, model.state, model.forklift_no, model.ext_data);
                             //璋冪敤绗笁鏂规帴鍙o紙濡傛灉鏈夛級TaskProcess.ReportStatus锛屾坊鍔犱换鍔″姩浣滃叧绯昏〃

--
Gitblit v1.9.1