From ee4b91745630afdc875983794d0ee54a7fb6a4a8 Mon Sep 17 00:00:00 2001
From: pulg <plg@Haninfo>
Date: 星期五, 13 六月 2025 17:40:54 +0800
Subject: [PATCH] 1

---
 HH.WCS.QingXiNongfu/wms/TaskHelper.cs |   34 +++++++++++++++++++++++++---------
 1 files changed, 25 insertions(+), 9 deletions(-)

diff --git a/HH.WCS.QingXiNongfu/wms/TaskHelper.cs b/HH.WCS.QingXiNongfu/wms/TaskHelper.cs
index af8b239..8a74ab1 100644
--- a/HH.WCS.QingXiNongfu/wms/TaskHelper.cs
+++ b/HH.WCS.QingXiNongfu/wms/TaskHelper.cs
@@ -82,7 +82,7 @@
             var db = new SqlHelper<WMSTask>().GetInstance();
             return db.Queryable<WMSTask>().Where(a => a.S_TYPE.Trim() == taskType).ToList();
         }
-        internal static bool CreateTask(string no, string from, string to, string taskType, int pri, string cntrInfo, int cntrCount = 1, int startLayer = 1, int endLayer = 1, string note = "", bool lockLoc = false)
+        internal static bool CreateTask(string no, string from, string to, string taskType, int pri, string cntrInfo, int cntrCount = 1, int startLayer = 1, int endLayer = 1, string note = "", bool lockLoc = false, string TwoEndLoc = "")
         {
             var fromLoc = LocationHelper.GetLoc(from);
             var endLoc = LocationHelper.GetLoc(to);
@@ -136,6 +136,7 @@
                 S_SRC_NO = no,
                 N_PRIORITY = pri,
                 S_NOTE = note,
+                S_TWO_END_LOC = TwoEndLoc,
                 S_WORK_MODE = "agv",
                 S_B_STATE = "鏈墽琛�,
                 S_CNTRS = cntrInfo,
@@ -232,9 +233,26 @@
                 task.T_END_TIME = DateTime.Now;
                 db.Updateable(task).UpdateColumns(it => new { it.S_B_STATE, it.T_END_TIME }).ExecuteCommand();
             }
-            if (task.S_END_LAREA == "YWLWJJB")
+
+            //plg 2025骞�鏈�3鏃�10:42:24
+            if (task.S_END_LAREA == "YWLWJJB" && task.S_START_LAREA != "YWLRGDD")
             {
-                var b = TaskProcess.CreateTransport(task.S_SRC_NO, task.S_END_LOC, task.S_NOTE, "鍘熺墿鏂欐惉杩�绾哥", task.S_CNTRS.Split(',').ToList(), task.N_START_LAYER, 1, task.N_CNTR_COUNT, task.N_PRIORITY);
+                var model = db.Queryable<Location>().Where(a => a.S_LOC_CODE == task.S_TWO_END_LOC).First();
+                //鍏堣В閿佺粓鐐�鍦ㄩ攣瀹�+                db.Ado.BeginTran();
+                try
+                {
+                    model.S_LOCK_STATE = "鏃�;
+                    var res = db.Updateable(model).UpdateColumns(it => new { it.S_LOCK_STATE }).ExecuteCommand() > 0;
+                    LogHelper.Info(task.S_TWO_END_LOC + "LockLoc:閿佺粨鏋� + res);
+                    db.Ado.CommitTran();
+                }
+                catch (Exception ex)
+                {
+                    db.Ado.RollbackTran();
+                    LogHelper.Info("CreateTask 澶辫触 " + ex.Message);
+                }
+                var b = TaskProcess.CreateTransport(task.S_SRC_NO, task.S_END_LOC, task.S_TWO_END_LOC, "鍘熺墿鏂欐惉杩�绾哥", task.S_CNTRS.Split(',').ToList(), task.N_START_LAYER, 1, task.N_CNTR_COUNT, task.N_PRIORITY);
             }
         }
         internal static void Fail(WMSTask task)
@@ -283,12 +301,10 @@
                     LogHelper.Info(wmsTask.S_START_LOC + "LockLoc:閿佺粨鏋� + res);
 
                     model = db.Queryable<Location>().Where(a => a.S_LOC_CODE == wmsTask.S_END_LOC).First();
-                    if (wmsTask.S_START_LAREA != "YWLWJJB")
-                    {
-                        model.S_LOCK_STATE = "鍏ュ簱閿�;
-                        res = db.Updateable(model).UpdateColumns(it => new { it.S_LOCK_STATE }).ExecuteCommand() > 0;
-                        LogHelper.Info(wmsTask.S_END_LOC + "LockLoc:閿佺粨鏋� + res);
-                    }
+                    model.S_LOCK_STATE = "鍏ュ簱閿�;
+                    res = db.Updateable(model).UpdateColumns(it => new { it.S_LOCK_STATE }).ExecuteCommand() > 0;
+                    LogHelper.Info(wmsTask.S_END_LOC + "LockLoc:閿佺粨鏋� + res);
+
                 }
                 db.Insertable(wmsTask).ExecuteCommand();
                 db.Ado.CommitTran();

--
Gitblit v1.9.1