From d0c1502a17c8d945e16b498792bd8e50ea9fea9f Mon Sep 17 00:00:00 2001
From: jinxin <1013386558@qq.com>
Date: 星期二, 03 六月 2025 14:11:04 +0800
Subject: [PATCH] 111

---
 HH.WCS.Mobox3.WeiLi/models/TN_Material.cs   |    1 
 HH.WCS.Mobox3.WeiLi/core/WMSCore.cs         |    6 +
 HH.WCS.Mobox3.WeiLi/wms/WMSHelper.cs        |   32 ++++-
 HH.WCS.Mobox3.WeiLi/core/WCSCore.cs         |   10 +
 HH.WCS.Mobox3.WeiLi/wms/WCSHelper.cs        |   22 ++-
 .vs/VSWorkspaceState.json                   |    7 +
 HH.WCS.Mobox3.WeiLi/api/ApiHelper.cs        |  181 +++++++++++++++++++++--------
 HH.WCS.Mobox3.WeiLi/api/MoboxController.cs  |   21 ++
 .vs/slnx.sqlite                             |    0 
 HH.WCS.Mobox3.WeiLi/HH.WCS.Mobox3.WeiLi.sln |   25 ++++
 10 files changed, 233 insertions(+), 72 deletions(-)

diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json
new file mode 100644
index 0000000..392a46e
--- /dev/null
+++ b/.vs/VSWorkspaceState.json
@@ -0,0 +1,7 @@
+{
+  "ExpandedNodes": [
+    ""
+  ],
+  "SelectedNode": "\\E:\\椤圭洰\\Weili",
+  "PreviewInSolutionExplorer": false
+}
\ No newline at end of file
diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite
index e80b9e3..1e8f44a 100644
--- a/.vs/slnx.sqlite
+++ b/.vs/slnx.sqlite
Binary files differ
diff --git a/HH.WCS.Mobox3.WeiLi/HH.WCS.Mobox3.WeiLi.sln b/HH.WCS.Mobox3.WeiLi/HH.WCS.Mobox3.WeiLi.sln
new file mode 100644
index 0000000..6488a73
--- /dev/null
+++ b/HH.WCS.Mobox3.WeiLi/HH.WCS.Mobox3.WeiLi.sln
@@ -0,0 +1,25 @@
+锘�+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.33529.622
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HH.WCS.Mobox3.WeiLi", "HH.WCS.Mobox3.WeiLi.csproj", "{E98DD345-9B0E-46C8-B0AB-20B9915ACAEA}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{E98DD345-9B0E-46C8-B0AB-20B9915ACAEA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{E98DD345-9B0E-46C8-B0AB-20B9915ACAEA}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{E98DD345-9B0E-46C8-B0AB-20B9915ACAEA}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{E98DD345-9B0E-46C8-B0AB-20B9915ACAEA}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {D73F8D67-E77E-493C-A8A2-A6CFB6FDDE06}
+	EndGlobalSection
+EndGlobal
diff --git a/HH.WCS.Mobox3.WeiLi/api/ApiHelper.cs b/HH.WCS.Mobox3.WeiLi/api/ApiHelper.cs
index 4836fee..7522ccb 100644
--- a/HH.WCS.Mobox3.WeiLi/api/ApiHelper.cs
+++ b/HH.WCS.Mobox3.WeiLi/api/ApiHelper.cs
@@ -207,6 +207,30 @@
             return result;
         }
 
+        internal static SimpleResult ErrorOperation(MoboxOperationBase model)
+        {
+            var result = new SimpleResult();
+            var db = new SqlHelper<object>().GetInstance();
+            var wmsTask = db.Queryable<WMSTask>().Where(a => a.S_CODE == model.OperationNo).First();
+            if (wmsTask != null) 
+            {
+                LogHelper.Info($"娓呴櫎閿欒浣滀笟 瑙g粦鎵樼洏 鎵樼洏{wmsTask.S_CNTR_CODE}");
+                db.Deleteable<LocCntrRel>().Where(a => a.S_CNTR_CODE == wmsTask.S_CNTR_CODE).ExecuteCommand();
+                db.Deleteable<CntrItemRel>().Where(a => a.S_CNTR_CODE == wmsTask.S_CNTR_CODE).ExecuteCommand();
+                var locInfo = db.Queryable<Location>().Where(a => a.S_CODE == wmsTask.S_START_LOC).First();
+                if (locInfo != null) 
+                {
+                    LogHelper.Info($"娓呴櫎閿欒浣滀笟 閲嶇疆璐т綅鐘舵� 璐т綅{locInfo.S_CODE}");
+                    locInfo.N_CURRENT_NUM = 0;
+                    locInfo.N_LOCK_STATE = 0;
+                    locInfo.S_LOCK_STATE = "鏃�;
+                    db.Updateable(locInfo).UpdateColumns(it => new { it.N_CURRENT_NUM, it.S_LOCK_STATE, it.N_LOCK_STATE }).ExecuteCommand();
+                }
+            }
+
+            return result;
+        }
+
         internal static TaskStateresutl GetTaskState(GetTaskStateModel model)
         {
             var db = new SqlHelper<object>().GetInstance();
@@ -785,9 +809,13 @@
                             //if (task.S_B_STATE != "鍙栨秷" && task.S_B_STATE != "瀹屾垚" && task.S_B_STATE != "鍏抽棴" && task.S_B_STATE != "寮哄埗瀹屾垚")
                             //{
                             TaskProcess.OperateStatus(task, 6);
-                            if (task.S_TYPE.Contains("鍏ュ簱"))
+                            if (task.S_OP_NAME =="鍏ュ簱")
                             {
                                 WMSHelper.AddChange(task);
+                            }
+                            if (task.S_OP_NAME == "鍑哄簱")
+                            {
+                                WMSHelper.DeleteChange(task);
                             }
                             if (task.S_TYPE == "鍒嗘嫞鍥�)
                             {
@@ -849,28 +877,28 @@
                 }
 
             }
-            else
-            {
-                LogHelper.Info($"{locinfo.N_ROADWAY} 宸烽亾鎵句笉鍒板彲鍏ヨ揣浣�闅忔満鍒嗛厤璐т綅");
-                endbit = WMSHelper.GetLiKuLocationIn(locinfo.S_AREA_CODE, 0, locinfo.S_TYPE);
-                if (endbit != null)
-                {
-                    LogHelper.Info($"鏌ユ壘鍒版敼閬撹揣浣嶄负{endbit.S_CODE}");
-                    //淇敼浠诲姟鏁版嵁 缁堢偣 澶囨敞:鏀逛綅
-                    LocationHelper.LockLoc(endbit.S_CODE, 1);
-                    wmstask.S_END_LOC = endbit.S_CODE;
-                    db.Updateable(wmstask).UpdateColumns(it => new { it.S_END_LOC }).ExecuteCommand();
-                    task.S_END_LOC = endbit.S_CODE;
-                    task.S_NOTE = "鏀逛綅";
-                    db.Updateable(task).UpdateColumns(it => new { it.S_END_LOC, it.S_NOTE }).ExecuteCommand();
-
-                    var agvBit = db.Queryable<PeiZhi>().Where(it => it.BitCode == endbit.S_CODE).First();
-                    if (agvBit != null)
-                    {
-                        result.new_locate_no = agvBit.PlcLocation;
-                    }
-                }
-            }
+            //else
+            //{
+            //    LogHelper.Info($"{locinfo.N_ROADWAY} 宸烽亾鎵句笉鍒板彲鍏ヨ揣浣�闅忔満鍒嗛厤璐т綅");
+            //    endbit = WMSHelper.GetLiKuLocationIn(locinfo.S_AREA_CODE, 0, locinfo.S_TYPE);
+            //    if (endbit != null)
+            //    {
+            //        LogHelper.Info($"鏌ユ壘鍒版敼閬撹揣浣嶄负{endbit.S_CODE}");
+            //        //淇敼浠诲姟鏁版嵁 缁堢偣 澶囨敞:鏀逛綅
+            //        LocationHelper.LockLoc(endbit.S_CODE, 1);
+            //        wmstask.S_END_LOC = endbit.S_CODE;
+            //        db.Updateable(wmstask).UpdateColumns(it => new { it.S_END_LOC }).ExecuteCommand();
+            //        task.S_END_LOC = endbit.S_CODE;
+            //        task.S_NOTE = "鏀逛綅";
+            //        db.Updateable(task).UpdateColumns(it => new { it.S_END_LOC, it.S_NOTE }).ExecuteCommand();
+            //
+            //        var agvBit = db.Queryable<PeiZhi>().Where(it => it.BitCode == endbit.S_CODE).First();
+            //        if (agvBit != null)
+            //        {
+            //            result.new_locate_no = agvBit.PlcLocation;
+            //        }
+            //    }
+            //}
         }
         internal static SimpleResult OutboundOrderExecute(OutboundOrderCheck model)
         {
@@ -1631,46 +1659,98 @@
         {
             WeiLiResult result = new WeiLiResult();
             var db = new SqlHelper<object>().GetInstance();
-            var tasks = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.orderNo).ToList();
-            if (tasks.Count >= 1)
-            {
-                //娴佺▼浠诲姟鏁伴噺鎵ц瓒呰繃涓�潯 浠诲姟涓嶅厑璁稿彇娑�-                result.code = 500;
-                result.msg = "娴佺▼浠诲姟鎵ц涓�涓嶅厑璁稿彇娑�;
-                return result;
-            }
+            //var tasks = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.orderNo).ToList();
+            //if (tasks.Count >= 1)
+            //{
+            //    //娴佺▼浠诲姟鏁伴噺鎵ц瓒呰繃涓�潯 浠诲姟涓嶅厑璁稿彇娑�+            //    result.code = 500;
+            //    result.msg = "娴佺▼浠诲姟鎵ц涓�涓嶅厑璁稿彇娑�;
+            //    return result;
+            //}
+            //var task = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.orderNo).OrderByDescending(a => a.T_CREATE).First();
+            //if (task != null)
+            //{
+            //    if (WCSHelper.CheckActionRecordExist(task.S_CODE, 4))
+            //    {
+            //        result.code = 500;
+            //        result.msg = "浠诲姟宸插彇璐у畬鎴�涓嶅厑璁稿彇娑�;
+            //        return result;
+            //    }
+            //    if (task.N_B_STATE == 0)
+            //    {
+            //        //绛夊緟鐩存帴淇敼鐘舵�涓哄彇娑�+            //        WCSHelper.UpdateStatus(model.orderNo, 5);
+            //        //result.msg = "浠诲姟绛夊緟锛岀洿鎺ュ彇娑�;
+            //    }
+            //    else if (task.N_B_STATE != 3 && task.N_B_STATE != 4)
+            //    {
+            //        if (task.S_TYPE == "鏉ゥ")
+            //        {
+            //            //閫氱煡绔嬪簱鍙栨秷浠诲姟
+            //        }
+            //        else
+            //        {
+            //            //宸叉帹閫佷絾鏄病鏈夊畬鎴愭垨鑰呭彇娑堬紝閫氱煡hosttoagv
+            //            NDCHelper.Cancel(task.S_CODE.Trim());
+            //            //result.msg = "浠诲姟鍙栨秷宸茬粡鍙戦�缁欏皬杞�;
+            //        }
+            //    }
+            //    else
+            //    {
+            //        result.code = 500;
+            //        result.msg = "浠诲姟宸茬粨鏉�;
+            //    }
+            //}
+            //else
+            //{
+            //    result.code = 500;
+            //    result.msg = "浠诲姟涓嶅瓨鍦�;
+            //}
+
             var task = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.orderNo).OrderByDescending(a => a.T_CREATE).First();
             if (task != null)
             {
-                if (WCSHelper.CheckActionRecordExist(task.S_CODE, 4))
+                var wmsTask = WMSHelper.GetWmsTask(task.S_OP_CODE);
+                if (wmsTask != null)
                 {
-                    result.code = 500;
-                    result.msg = "浠诲姟宸插彇璐у畬鎴�涓嶅厑璁稿彇娑�;
-                    return result;
-                }
-                if (task.N_B_STATE == 0)
-                {
-                    //绛夊緟鐩存帴淇敼鐘舵�涓哄彇娑�-                    WCSHelper.UpdateStatus(model.orderNo, 5);
-                    //result.msg = "浠诲姟绛夊緟锛岀洿鎺ュ彇娑�;
-                }
-                else if (task.N_B_STATE != 3 && task.N_B_STATE != 4)
-                {
-                    if (task.S_TYPE == "鏉ゥ")
+                    if (task.N_B_STATE == 0)
                     {
-                        //閫氱煡绔嬪簱鍙栨秷浠诲姟
+                        //绛夊緟鐩存帴淇敼鐘舵�涓哄彇娑�+                        WCSHelper.UpdateStatus(task.S_CODE, 4);
+                        wmsTask.N_B_STATE = 6;
+                        WMSHelper.UpdateTaskState(wmsTask);
+                        LocationHelper.UnLockLoc(task.S_START_LOC);
+                        LocationHelper.UnLockLoc(task.S_END_LOC);
+                        LocationHelper.UnLockLoc(wmsTask.S_END_LOC);
+
+                        result.msg = "浠诲姟绛夊緟锛岀洿鎺ュ彇娑�;
+                    }
+                    else if (task.N_B_STATE != 3 && task.N_B_STATE != 4)
+                    {
+                        if (task.S_SCHEDULE_TYPE == "NDC")
+                        {
+                            //宸叉帹閫佷絾鏄病鏈夊畬鎴愭垨鑰呭彇娑堬紝閫氱煡hosttoagv
+                            NDCApi.CancelOrder(task.S_CODE.Trim());
+                        }
+                        else
+                        {
+                            TaskProcess.Cancel(task);
+                            TaskProcess.OperateStatus(task, 7);
+                            WCSHelper.Fail(task);
+                            WMSHelper.Fail(task);
+                        }
+
+                        result.msg = "浠诲姟鍙栨秷宸茬粡鍙戦�缁欏皬杞�;
                     }
                     else
                     {
-                        //宸叉帹閫佷絾鏄病鏈夊畬鎴愭垨鑰呭彇娑堬紝閫氱煡hosttoagv
-                        NDCHelper.Cancel(task.S_CODE.Trim());
-                        //result.msg = "浠诲姟鍙栨秷宸茬粡鍙戦�缁欏皬杞�;
+                        result.msg = "浠诲姟宸茬粨鏉�;
                     }
                 }
                 else
                 {
                     result.code = 500;
-                    result.msg = "浠诲姟宸茬粨鏉�;
+                    result.msg = "浠诲姟鎵�鐨勪綔涓氫笉瀛樺湪";
                 }
             }
             else
@@ -1678,6 +1758,7 @@
                 result.code = 500;
                 result.msg = "浠诲姟涓嶅瓨鍦�;
             }
+
             return result;
         }
 
diff --git a/HH.WCS.Mobox3.WeiLi/api/MoboxController.cs b/HH.WCS.Mobox3.WeiLi/api/MoboxController.cs
index ae3abf2..ece8c93 100644
--- a/HH.WCS.Mobox3.WeiLi/api/MoboxController.cs
+++ b/HH.WCS.Mobox3.WeiLi/api/MoboxController.cs
@@ -30,6 +30,7 @@
                 var wmsTask = WMSHelper.GetWmsTask(task.S_OP_CODE);
                 if (wmsTask != null)
                 {
+
                     if (task.N_B_STATE == 0)
                     {
                         //绛夊緟鐩存帴淇敼鐘舵�涓哄彇娑�@@ -49,7 +50,7 @@
                             //宸叉帹閫佷絾鏄病鏈夊畬鎴愭垨鑰呭彇娑堬紝閫氱煡hosttoagv
                             NDCApi.CancelOrder(task.S_CODE.Trim());
                         }
-                        else 
+                        else
                         {
                             TaskProcess.Cancel(task);
                             TaskProcess.OperateStatus(task, 7);
@@ -64,8 +65,9 @@
                         result.resultCode = 1;
                         result.resultMsg = "浠诲姟宸茬粨鏉�;
                     }
+
                 }
-                else 
+                else
                 {
                     result.resultCode = 1;
                     result.resultMsg = "浠诲姟鎵�鐨勪綔涓氫笉瀛樺湪";
@@ -98,7 +100,7 @@
                     WMSHelper.UpdateTaskState(op);
                     result.resultMsg = "浠诲姟绛夊緟锛岀洿鎺ュ彇娑�;
                 }
-                else if (op.N_B_STATE ==1)
+                else if (op.N_B_STATE == 1)
                 {
                     //宸叉帹閫佷絾鏄病鏈夊畬鎴愭垨鑰呭彇娑堬紝閫氱煡hosttoagv
                     //NDCHelper.Cancel(task.S_CODE.Trim());
@@ -270,7 +272,18 @@
             return ApiHelper.WeiLiDisbutionIn(model);
         }
 
-
+        /// <summary>
+        /// PDA鍒嗘嫞鍥�+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [Route("ErrorOperation")]
+        public SimpleResult ErrorOperation(MoboxOperationBase model)
+        {
+            LogHelper.Info($"娓呴櫎閿欒浣滀笟 鍏ュ弬={JsonConvert.SerializeObject(model)}");
+            return ApiHelper.ErrorOperation(model);
+        }
 
         ///// <summary>
         ///// 鍛煎彨绌烘
diff --git a/HH.WCS.Mobox3.WeiLi/core/WCSCore.cs b/HH.WCS.Mobox3.WeiLi/core/WCSCore.cs
index 83e84c7..c95fbe2 100644
--- a/HH.WCS.Mobox3.WeiLi/core/WCSCore.cs
+++ b/HH.WCS.Mobox3.WeiLi/core/WCSCore.cs
@@ -46,10 +46,10 @@
                                 case 4:
                                     WCSHelper.UpdateStatus(TN_Task, "鍙栬揣瀹屾垚");
                                     TaskProcess.OperateStatus(TN_Task, 4);
-                                    if (TN_Task.S_OP_NAME == "鍑哄簱")
-                                    {
-                                        WMSHelper.DeleteChange(TN_Task);
-                                    }
+                                    //if (TN_Task.S_OP_NAME == "鍑哄簱")
+                                    //{
+                                    //    WMSHelper.DeleteChange(TN_Task);
+                                    //}
                                     break;
                                 case 5:
                                     WCSHelper.UpdateStatus(TN_Task, "寮�鍗歌揣");
@@ -86,6 +86,8 @@
                         {
                             //瀹夊叏璇锋眰绛�                             TaskProcess.AddTaskAction(model);
+
+                            WCSHelper.AddActionRecord(model.task_no, model.State, model.forklift_no, model.ext_data);
                             //TaskProcess.OperateReq(TN_Task, model.State, model.forklift_no, model.ext_data);
                         }
                     }
diff --git a/HH.WCS.Mobox3.WeiLi/core/WMSCore.cs b/HH.WCS.Mobox3.WeiLi/core/WMSCore.cs
index 2009b8f..09b0caa 100644
--- a/HH.WCS.Mobox3.WeiLi/core/WMSCore.cs
+++ b/HH.WCS.Mobox3.WeiLi/core/WMSCore.cs
@@ -359,10 +359,15 @@
                                         };
                                         if (WCSHelper.CreateTask(wcsTask))
                                         {
+                                            LogHelper.Info($"浣滀笟{a.S_CODE} 鍒涘缓浠诲姟鎴愬姛 淇敼浣滀笟鐘舵�");
                                             //鏇存柊浣滀笟鐘舵�涓烘墽琛�                                             a.N_B_STATE = 1;
                                             a.S_B_STATE = "鎵ц";
                                             WMSHelper.UpdateTaskState(a);
+                                        }
+                                        else 
+                                        {
+                                            LogHelper.Info($"浣滀笟{a.S_CODE} 鍒涘缓浠诲姟澶辫触");
                                         }
                                     }
                                     else
@@ -472,6 +477,7 @@
 
                                         if (WCSHelper.CreateTask(wcsTask))
                                         {
+                                            LogHelper.Info($"浣滀笟{a.S_CODE} 鍒涘缓浠诲姟鎴愬姛 淇敼浣滀笟鐘舵�");
                                             //鏇存柊浣滀笟鐘舵�涓烘墽琛�                                             a.N_B_STATE = 1;
                                             a.S_B_STATE = "鎵ц";
diff --git a/HH.WCS.Mobox3.WeiLi/models/TN_Material.cs b/HH.WCS.Mobox3.WeiLi/models/TN_Material.cs
index 1252c35..9edfcf8 100644
--- a/HH.WCS.Mobox3.WeiLi/models/TN_Material.cs
+++ b/HH.WCS.Mobox3.WeiLi/models/TN_Material.cs
@@ -9,6 +9,7 @@
     {
         public string S_ITEM_CODE { get; set; }
         public string S_ITEM_NAME { get; set; }
+        public string S_HEIGHT { get; set; }
         public string S_MP_TYPE { get; set; }
         public Nullable<float> F_WEIGHT { get; set; }
         public string S_MATERIAL { get; set; }
diff --git a/HH.WCS.Mobox3.WeiLi/wms/WCSHelper.cs b/HH.WCS.Mobox3.WeiLi/wms/WCSHelper.cs
index 7ac9f37..f31896d 100644
--- a/HH.WCS.Mobox3.WeiLi/wms/WCSHelper.cs
+++ b/HH.WCS.Mobox3.WeiLi/wms/WCSHelper.cs
@@ -104,15 +104,21 @@
 
         internal static bool AddActionRecord(string no, int state, string forkliftNo, string extData) {
             var db = new SqlHelper<TaskAction>().GetInstance();
-            var action = new TaskAction()
+            var result = true;
+            var info = db.Queryable<TaskAction>().Where(a => a.S_TASK_CODE == no && a.N_ACTION_CODE == state).First();
+            if (info == null) 
             {
-                N_ACTION_CODE = state,
-                S_TASK_CODE = no,
-                S_EQ_CODE = forkliftNo,
-                S_EQ_TYPE = "agv",
-                S_DATA = extData
-            };
-            return db.Insertable(action).ExecuteCommand() > 0;
+                var action = new TaskAction()
+                {
+                    N_ACTION_CODE = state,
+                    S_TASK_CODE = no,
+                    S_EQ_CODE = forkliftNo,
+                    S_EQ_TYPE = "agv",
+                    S_DATA = extData
+                };
+                result= db.Insertable(action).ExecuteCommand() > 0;
+            }
+            return result;
         }
         internal static bool CheckActionRecordExist(string no, int code) {
             var db = new SqlHelper<TaskAction>().GetInstance();
diff --git a/HH.WCS.Mobox3.WeiLi/wms/WMSHelper.cs b/HH.WCS.Mobox3.WeiLi/wms/WMSHelper.cs
index 0cf5462..bdd42b9 100644
--- a/HH.WCS.Mobox3.WeiLi/wms/WMSHelper.cs
+++ b/HH.WCS.Mobox3.WeiLi/wms/WMSHelper.cs
@@ -714,12 +714,12 @@
                 db.Updateable(InventoryCntr).UpdateColumns(it => new { it.N_B_STATE }).ExecuteCommand();
             }
 
-            var InventoryCntr2 = db.Queryable<PlanInventory>().Where(a => a.S_CNTR_CODE == task.S_CNTR_CODE && a.N_B_STATE == 3).First();
-            if (InventoryCntr2 != null && task.S_TYPE == "鐩樼偣鍥�)
-            {
-                InventoryCntr2.N_B_STATE = 4;
-                db.Updateable(InventoryCntr2).UpdateColumns(it => new { it.N_B_STATE }).ExecuteCommand();
-            }
+            //var InventoryCntr2 = db.Queryable<PlanInventory>().Where(a => a.S_CNTR_CODE == task.S_CNTR_CODE && a.N_B_STATE == 3).First();
+            //if (InventoryCntr2 != null && task.S_TYPE == "鐩樼偣鍥�)
+            //{
+            //    InventoryCntr2.N_B_STATE = 4;
+            //    db.Updateable(InventoryCntr2).UpdateColumns(it => new { it.N_B_STATE }).ExecuteCommand();
+            //}
         }
 
 
@@ -1098,6 +1098,26 @@
                         {
                             LogHelper.Info($"璇ユ枡妗嗘棤鐗规畩瑙勬牸 涓嶉渶鍖哄垎楂樹綆璐т綅");
                         }
+
+                        if (a.S_END_AREA == "11TLKQ")
+                        {
+                            //鎵樼洏楂樺害浠庣墿鏂欒〃涓幏鍙�+                            var itemList = db.Queryable<CntrItemRel>().Where(it => it.S_CNTR_CODE == a.S_CNTR_CODE).ToList();
+                            foreach (var item in itemList)
+                            {
+                                var itemInfo = db.Queryable<TN_Material>().Where(it => it.S_ITEM_CODE == item.S_ITEM_CODE).First();
+                                if (itemInfo != null)
+                                {
+                                    loctype = itemInfo.S_HEIGHT;
+                                    if (loctype == "楂樿揣浣�)
+                                    {
+                                        break;
+                                    }
+                                }
+                            }
+                        }
+
+
                         //缁堢偣涓虹珛搴撶殑浠诲姟
                         result = GetLiKuLocationIn(a.S_END_AREA, 0, loctype);
                         if (result != null)

--
Gitblit v1.9.1