From 7b3b60e8e01a1cf2fb97af695639b18210a160c0 Mon Sep 17 00:00:00 2001
From: 杨张扬 <634643841@qq.com>
Date: 星期日, 20 七月 2025 14:39:16 +0800
Subject: [PATCH] 去线边的,取消任务收到4后直接删除物料容器

---
 process/TaskProcess.cs |   37 ++++++++++++++++++++++++++++++-------
 1 files changed, 30 insertions(+), 7 deletions(-)

diff --git a/process/TaskProcess.cs b/process/TaskProcess.cs
index aaa7228..749ed00 100644
--- a/process/TaskProcess.cs
+++ b/process/TaskProcess.cs
@@ -12,6 +12,7 @@
 using static HH.WCS.Mobox3.DoubleCoin.api.ApiModel;
 using Org.BouncyCastle.Crypto;
 using HH.WCS.Mobox3.DoubleCoin.device;
+using HH.WCS.Mobox3.DoubleCoin.models;
 
 namespace HH.WCS.Mobox3.DoubleCoin.process {
     internal class TaskProcess {
@@ -50,12 +51,24 @@
                 CacheBitUpdate(mst, false);
                 WCSHelper.End(mst);//浠诲姟鐘舵�鏀规垚缁撴潫
             }
-            else {
-                //璧风偣瑙i攣
-                LocationHelper.ErrorLocCntReset(new ErrorLocCntResetInfo() { locID = mst.S_START_LOC,reqCode =1});
+            else   // 娌℃湁寮�鍗歌揣
+            {
+              
                 WCSHelper.Fail(mst);//浠诲姟鐘舵�鏀规垚閿欒
+                var db = new SqlHelper<object>().GetInstance();
+                db.Deleteable<TN_CG_Detail>().Where(it => it.S_CNTR_CODE == mst.S_CNTR_CODE).ExecuteCommand();
+                db.Deleteable<TN_InventoryM>().Where(it => it.RFID == mst.S_CNTR_CODE).ExecuteCommand();
+                db.Deleteable<TN_Loc_Container>().Where(it => it.S_CNTR_CODE == mst.S_CNTR_CODE).ExecuteCommand();
+                db.Deleteable<TN_Container>().Where(it => it.S_CODE == mst.S_CNTR_CODE).ExecuteCommand();
+                //蹇呴』鍒犳帀
             }
-            LocationHelper.UnLockLoc(mst.S_END_LOC);
+            if (!WCSHelper.CheckActionRecordExist(mst.S_CODE, 4))
+            {
+                LocationHelper.UnLockLoc(mst.S_START_LOC);//瑙i攣璧风偣
+                LocationHelper.ErrorLocCntReset(new ErrorLocCntResetInfo() { locID = mst.S_START_LOC, reqCode = 1 });
+            }
+           
+            LocationHelper.UnLockLoc(mst.S_END_LOC);//瑙i攣缁堢偣
         }
 
         
@@ -141,13 +154,21 @@
                     var dic = new List<param>();
                     dic.Add(new param() { name = "IKey", value = "IKey" });
                     dic.Add(new param() { name = "From", value = start.ToString() });
-                    dic.Add(new param() { name = "To", value = end.ToString() });
-                    dic.Add(new param() { name = "FUNC", value = startLoc.N_LAYER.ToString() });
 
+                    if (mst.S_TYPE.Contains("鐐瑰鐐�) || mst.S_TYPE.Contains("婊℃墭鍑哄簱涓婄嚎") || mst.S_TYPE.Contains("婊℃墭鍑哄簱澶嶆"))
+                    {
+                        dic.Add(new param() { name = "FUNC", value = "0" });
+                    }
+                    else
+                    {
+                        dic.Add(new param() { name = "FUNC", value = startLoc.N_LAYER.ToString() });
+                    }
+
+                    dic.Add(new param() { name = "To", value = end.ToString() });
                     dic.Add(new param() { name = "Ctype", value = "0" });
 
                     
-                    if (mst.S_TYPE == "浣欐枡涓嬬嚎鍏ュ簱" || mst.S_TYPE == "浜哄伐鎷嗙洏鍏ュ簱")
+                    if (mst.S_TYPE.Contains("浣欐枡涓嬬嚎鍏ュ簱") || mst.S_TYPE.Contains("浜哄伐鎷嗙洏鍏ュ簱"))
                     {
                         dic.Add(new param() { name = "DATA", value = "1024" });
                     }
@@ -156,6 +177,8 @@
                         dic.Add(new param() { name = "DATA", value = "0" });
                     }
 
+                    
+
                     var res = NDCApi.AddOrderNew(1, 1, mst.S_CODE, dic);//娣诲姞鏂板懡浠�                     if (res != null && (res.err_code == 0 || res.err_code == 50009))
                     {

--
Gitblit v1.9.1