From 9db9cd04a1a9971220438ccb856a6896b4a399ac Mon Sep 17 00:00:00 2001
From: pulg <plg@Haninfo>
Date: 星期二, 01 七月 2025 14:32:11 +0800
Subject: [PATCH] 1

---
 HH.WCS.QingXiNongfu/dispatch/NDC.cs        |   22 +++++++++++
 HH.WCS.QingXiNongfu/wms/TaskHelper.cs      |   74 +++++++++++++++++++++---------------
 HH.WCS.QingXiNongfu/core/Monitor.cs        |   12 +++++
 HH.WCS.QingXiNongfu/process/TaskProcess.cs |    2 
 4 files changed, 77 insertions(+), 33 deletions(-)

diff --git a/HH.WCS.QingXiNongfu/core/Monitor.cs b/HH.WCS.QingXiNongfu/core/Monitor.cs
index dd45dcf..daf39e8 100644
--- a/HH.WCS.QingXiNongfu/core/Monitor.cs
+++ b/HH.WCS.QingXiNongfu/core/Monitor.cs
@@ -1135,6 +1135,17 @@
                                                 continue;
                                             }
                                         }
+                                        if (CDlist.Contains(EdnRarea))
+                                        {
+                                            var ls = LocationHelper.GetList<Location>(x => x.S_AREA_CODE == EdnRarea && x.S_LOCK_STATE == "鍏ュ簱閿�);
+                                            //var ls = LocationHelper.GetList<Location>(x => x.S_AREA_CODE == EdnRarea && (x.S_LOCK_STATE == "鍏ュ簱閿�));
+                                            if (ls.Count() > 2)
+                                            {
+                                                LogHelper.Info($"{EdnRarea}浠诲姟鏁�绠″埗3");
+                                                continue;
+                                            }
+                                        }
+
                                         //else if (CDlist.Contains(EdnRarea))
                                         //{
                                         //    var ls = LocationHelper.GetList<Location>(x => x.S_AREA_CODE == EdnRarea && (x.S_LOCK_STATE == "鍏ュ簱閿�)).ToList();
@@ -1487,7 +1498,6 @@
                     if (tklist.Count() > 0)
                     {
                         var tk = tklist.FirstOrDefault();
-
                         var loc = LocationHelper.GetLoc(plc.location[0]);
                         if (loc.N_CURRENT_NUM > 0 && loc.S_LOCK_STATE == "鏃�)
                         {
diff --git a/HH.WCS.QingXiNongfu/dispatch/NDC.cs b/HH.WCS.QingXiNongfu/dispatch/NDC.cs
index 77eca17..e85ea83 100644
--- a/HH.WCS.QingXiNongfu/dispatch/NDC.cs
+++ b/HH.WCS.QingXiNongfu/dispatch/NDC.cs
@@ -82,6 +82,28 @@
                 return false;
             }
         }
+
+        /// <summary>
+        /// 淇敼浼樺厛绾�+        /// </summary>
+        /// <param name="taskNo">浠诲姟鍙�/param>
+        /// <param name="paramNo">浼樺厛绾�/param>
+        /// <returns></returns>
+        public static bool ChangeParamPri(string taskNo, int paramNo = 0)
+        {
+            bool bResult = false;
+            var dic = new Dictionary<string, string>();
+            dic.Add("No", taskNo);
+            if (paramNo >= 0)
+            {
+                dic.Add("Pri", paramNo.ToString());
+            }
+            dic.Add("IKey", "");
+            var result = ChangeOrder(dic);
+            if (result.Res.ErrCode == 0) { bResult = true; }
+            return bResult;
+        }
+
         public static AGVResult AddNewOrderNew(int ts, int pri, string taskNo, Dictionary<string, string> param)
         {
             //< Req >< Order TS = '1' Pri = '1' No = 'TN2302020001' Ext1 = '' Ext2 = '' N_CNTR_COUNT = '' >< Param Name = 'From' Value = '2' />< Param Name = 'To' Value = '1' /></ Order ></ Req >
diff --git a/HH.WCS.QingXiNongfu/process/TaskProcess.cs b/HH.WCS.QingXiNongfu/process/TaskProcess.cs
index 9636f3c..48f649f 100644
--- a/HH.WCS.QingXiNongfu/process/TaskProcess.cs
+++ b/HH.WCS.QingXiNongfu/process/TaskProcess.cs
@@ -1114,9 +1114,9 @@
             }
             if (state == 9)
             {
+                CacheBitUpdate(mst, load: true);
                 var g = LocationHelper.UnLockLoc(mst.S_END_LOC.Trim());
                 var T = LocationHelper.UnLockLoc(mst.S_START_LOC.Trim());
-                CacheBitUpdate(mst, load: true);
             }
             return r;
         }
diff --git a/HH.WCS.QingXiNongfu/wms/TaskHelper.cs b/HH.WCS.QingXiNongfu/wms/TaskHelper.cs
index c314fd7..fb28716 100644
--- a/HH.WCS.QingXiNongfu/wms/TaskHelper.cs
+++ b/HH.WCS.QingXiNongfu/wms/TaskHelper.cs
@@ -1,4 +1,4 @@
-锘縰sing HH.WCS.QingXigongchang.process;
+锘縰sing HH.WCS.QingXigongchang.dispatch;
 using HH.WCS.QingXigongchang.util;
 using Newtonsoft.Json;
 using SqlSugar;
@@ -239,43 +239,55 @@
         }
         internal static void End(WMSTask task)
         {
-            var db = new SqlHelper<WMSTask>().GetInstance();
+            var db = new SqlHelper<object>().GetInstance();
 
-
-            //plg 2025骞�鏈�3鏃�10:42:24
-            if (task.S_END_LAREA == "YWLWJJB" && task.S_START_LAREA != "YWLRGDD" && !string.IsNullOrEmpty(task.S_TWO_END_LOC))
+            if (task.S_END_LAREA == "YWLYLTKQ" || task.S_END_LAREA == "YWLTKKTQ")
             {
-                var model = db.Queryable<Location>().Where(a => a.S_LOC_CODE == task.S_TWO_END_LOC).First();
-                if (model != null)
+                //鏌ヨ鍑哄簱閿乊WLWJJB
+                var ls = LocationHelper.GetList<Location>(x => x.S_AREA_CODE == "YWLWJJB" && x.S_LOCK_STATE == "鍑哄簱閿�);
+                if (ls.Any())
                 {
-                    //鍏堣В閿佺粓鐐�鍦ㄩ攣瀹�-                    db.Ado.BeginTran();
-                    try
+                    var tas = db.Queryable<WMSTask>().Where(a => a.S_START_LOC == ls.First().S_LOC_CODE).ToList().FirstOrDefault();
+                    if (tas.S_B_STATE == "宸叉帹閫�)
                     {
-                        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();
+                        NDC.ChangeParamPri(tas.S_TASK_NO, 70);
                     }
-                    catch (Exception ex)
-                    {
-                        db.Ado.RollbackTran();
-                        LogHelper.Info("CreateTask 澶辫触 " + ex.Message);
-                    }
-
-                    LogHelper.Info(task.S_TWO_END_LOC + "浜屾浠诲姟 寮�銆�");
-                    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);
-                    //if (b)
-                    //{
-                    //    if (task != null)
-                    //    {
-                    //        task.S_B_STATE = "瀹屾垚";
-                    //        task.T_END_TIME = DateTime.Now;
-                    //        db.Updateable(task).UpdateColumns(it => new { it.S_B_STATE, it.T_END_TIME }).ExecuteCommand();
-                    //    }
-                    //}
                 }
             }
+            ////plg 2025骞�鏈�3鏃�10:42:24
+            //if (task.S_END_LAREA == "YWLWJJB" && task.S_START_LAREA != "YWLRGDD" && !string.IsNullOrEmpty(task.S_TWO_END_LOC))
+            //{
+            //    var model = db.Queryable<Location>().Where(a => a.S_LOC_CODE == task.S_TWO_END_LOC).First();
+            //    if (model != null)
+            //    {
+            //        //鍏堣В閿佺粓鐐�鍦ㄩ攣瀹�+            //        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);
+            //        }
+
+            //        LogHelper.Info(task.S_TWO_END_LOC + "浜屾浠诲姟 寮�銆�");
+            //        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);
+            //        //if (b)
+            //        //{
+            //        //    if (task != null)
+            //        //    {
+            //        //        task.S_B_STATE = "瀹屾垚";
+            //        //        task.T_END_TIME = DateTime.Now;
+            //        //        db.Updateable(task).UpdateColumns(it => new { it.S_B_STATE, it.T_END_TIME }).ExecuteCommand();
+            //        //    }
+            //        //}
+            //    }
+            //}
             if (task != null)
             {
                 task.S_B_STATE = "瀹屾垚";

--
Gitblit v1.9.1