From f6e624ccbea24503d0a77e839eeb2af13038d8ac Mon Sep 17 00:00:00 2001
From: cjs <2216046164@qq.com>
Date: 星期一, 30 六月 2025 17:31:46 +0800
Subject: [PATCH] 111

---
 HH.WCS.Mobox3.NongFuLinZhi/api/ApiHelper.cs |   62 +++++++++++++++++++++++++-----
 1 files changed, 51 insertions(+), 11 deletions(-)

diff --git a/HH.WCS.Mobox3.NongFuLinZhi/api/ApiHelper.cs b/HH.WCS.Mobox3.NongFuLinZhi/api/ApiHelper.cs
index fb94dfa..5e3f3fa 100644
--- a/HH.WCS.Mobox3.NongFuLinZhi/api/ApiHelper.cs
+++ b/HH.WCS.Mobox3.NongFuLinZhi/api/ApiHelper.cs
@@ -294,17 +294,11 @@
             db.Updateable(task).UpdateColumns(it => new { it.S_NOTE }).ExecuteCommand();
         }
 
-
-        
-
-     
-
-        
         internal static WeiLiResult CancelOrder(CancelOrderModel model)
         {
             WeiLiResult result = new WeiLiResult();
             var db = new SqlHelper<object>().GetInstance();
-            var tasks = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.orderNo).ToList();
+            var tasks = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.task_no).ToList();
             if (tasks.Count >= 1)
             {
                 //娴佺▼浠诲姟鏁伴噺鎵ц瓒呰繃涓�潯 浠诲姟涓嶅厑璁稿彇娑�@@ -312,7 +306,7 @@
                 result.msg = "娴佺▼浠诲姟鎵ц涓�涓嶅厑璁稿彇娑�;
                 return result;
             }
-            var task = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.orderNo).OrderByDescending(a => a.T_CREATE).First();
+            var task = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.task_no).OrderByDescending(a => a.T_CREATE).First();
             if (task != null)
             {
                 if (WCSHelper.CheckActionRecordExist(task.S_CODE, 4))
@@ -324,7 +318,7 @@
                 if (task.N_B_STATE == 0)
                 {
                     //绛夊緟鐩存帴淇敼鐘舵�涓哄彇娑�-                    WCSHelper.UpdateStatus(model.orderNo, 5);
+                    WCSHelper.UpdateStatus(model.task_no, 5);
                     //result.msg = "浠诲姟绛夊緟锛岀洿鎺ュ彇娑�;
                 }
                 else if (task.N_B_STATE != 3 && task.N_B_STATE != 4)
@@ -336,7 +330,8 @@
                     else
                     {
                         //宸叉帹閫佷絾鏄病鏈夊畬鎴愭垨鑰呭彇娑堬紝閫氱煡hosttoagv
-                        NDCHelper.Cancel(task.S_CODE.Trim());
+                        //NDCHelper.Cancel(task.S_CODE.Trim());
+                        NDCApi.CancelOrder(task.S_CODE.Trim());
                         //result.msg = "浠诲姟鍙栨秷宸茬粡鍙戦�缁欏皬杞�;
                     }
                 }
@@ -379,7 +374,8 @@
                     else
                     {
                         //閫氱煡鏉弶淇敼浼樺厛绾�-                        NDCHelper.Cancel(task.S_CODE.Trim());
+                        //NDCHelper.Cancel(task.S_CODE.Trim());
+                        NDCApi.CancelOrder(task.S_CODE.Trim());
                         result.msg = "淇敼浼樺厛绾ф垚鍔�;
                     }
                 }
@@ -677,6 +673,50 @@
             return result;
         }
 
+        internal static ReturnResult bindCntr(bindModel model)
+        {
+            ReturnResult result = new ReturnResult() {ResultCode = -1 };
+            var db = new SqlHelper<object>().GetInstance();
+
+            if (TaskProcess.BindLocCntr(model.S_LOC_CODE, model.S_CNTR_CODE, model.S_ITEM_CODE, model.S_BATCH_CODE))
+            {
+                int num = model.S_CNTR_CODE.Split(',').Count();
+                var locInfo = db.Queryable<Location>().Where(a => a.S_CODE == model.S_LOC_CODE).First();
+                if(locInfo != null)
+                {
+                    locInfo.N_CURRENT_NUM = locInfo.N_CURRENT_NUM + num > locInfo.N_CAPACITY ? locInfo.N_CAPACITY : locInfo.N_CURRENT_NUM + num;
+                    db.Updateable(locInfo).UpdateColumns(a => new { a.N_CURRENT_NUM }).ExecuteCommand();
+                    result.ResultCode = 0;
+                }
+            }
+            return result;
+        }
+
+        internal static ReturnResult unBindCntr(unBindModel model)
+        {
+            ReturnResult result = new ReturnResult() { ResultCode = -1 };
+            var db = new SqlHelper<object>().GetInstance();
+            var locInfo = db.Queryable<Location>().Where(a => a.S_CODE == model.S_LOC_CODE).First();
+            if(locInfo != null)
+            {
+                var cntrList = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE == model.S_LOC_CODE).ToList();
+                if(cntrList.Count > 0)
+                {
+                    for (int i = cntrList.Count - 1; i >= 0; i --)
+                    {
+                        string cntrCode = cntrList[i].S_CNTR_CODE;
+                        db.Deleteable<CntrItemRel>().Where(a => a.S_CNTR_CODE == cntrCode).ExecuteCommand();
+                        db.Deleteable<LocCntrRel>().Where(a => a.S_CNTR_CODE == cntrCode).ExecuteCommand();
+                    }
+                }
+                locInfo.N_CURRENT_NUM = locInfo.N_CURRENT_NUM - 1;
+                if (locInfo.N_CURRENT_NUM < 0) locInfo.N_CURRENT_NUM = 0;
+                db.Updateable(locInfo).UpdateColumns(a => new { a.N_CURRENT_NUM }).ExecuteCommand();
+                result.ResultCode = 0;
+            }
+            return result;
+        }
+
 
         //public class AddTaskModel
         //{

--
Gitblit v1.9.1