From 802fc04c2d744d08c3e577dd4d91d60a3071e3d7 Mon Sep 17 00:00:00 2001
From: user <user@DESKTOP-SM1UI64>
Date: 星期二, 15 七月 2025 23:08:35 +0800
Subject: [PATCH] 111

---
 HH.WCS.Mobox3.NongFuLinZhi/.vs/HH.WCS.Mobox3.NFLZ/FileContentIndex/84e1ac29-6f81-4f45-9cdf-cbea30cc0011.vsidx |    0 
 HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs                                                                    |   42 ++++++++++++++++++++++++++----------------
 HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs                                                             |    8 +++++++-
 .vs/农夫林芝/v17/.wsuo                                                                                            |    0 
 4 files changed, 33 insertions(+), 17 deletions(-)

diff --git "a/.vs/\345\206\234\345\244\253\346\236\227\350\212\235/v17/.wsuo" "b/.vs/\345\206\234\345\244\253\346\236\227\350\212\235/v17/.wsuo"
index 60a9dc1..f6e9b5c 100644
--- "a/.vs/\345\206\234\345\244\253\346\236\227\350\212\235/v17/.wsuo"
+++ "b/.vs/\345\206\234\345\244\253\346\236\227\350\212\235/v17/.wsuo"
Binary files differ
diff --git a/HH.WCS.Mobox3.NongFuLinZhi/.vs/HH.WCS.Mobox3.NFLZ/FileContentIndex/84e1ac29-6f81-4f45-9cdf-cbea30cc0011.vsidx b/HH.WCS.Mobox3.NongFuLinZhi/.vs/HH.WCS.Mobox3.NFLZ/FileContentIndex/84e1ac29-6f81-4f45-9cdf-cbea30cc0011.vsidx
new file mode 100644
index 0000000..bc0ec51
--- /dev/null
+++ b/HH.WCS.Mobox3.NongFuLinZhi/.vs/HH.WCS.Mobox3.NFLZ/FileContentIndex/84e1ac29-6f81-4f45-9cdf-cbea30cc0011.vsidx
Binary files differ
diff --git a/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs b/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs
index df8a2a7..db1ab3f 100644
--- a/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs
+++ b/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs
@@ -297,14 +297,18 @@
                     var taskInfo = db.Queryable<WCSTask>().Where(a => a.S_TYPE == "鐡跺澂闈炲嵆浜цˉ绌烘" && a.S_B_STATE != "瀹屾垚" && a.S_B_STATE != "鍙栨秷").First();
                     if(taskInfo == null)
                     {
-                        //闇�浠庡簱鍖鸿ˉ鍏呯┖鎵�-                        Location location = TaskProcess.FJCKTLoc();
-                        var locInfo = db.Queryable<Location>().Where(a => a.S_AREA_CODE == areaInfo.areaCode && a.N_CURRENT_NUM < a.N_CAPACITY && a.S_LOCK_STATE == "鏃�).OrderBy(a => a.N_ROW).First();
-                        if (location != null && locInfo != null)
+                        var wmsTask = db.Queryable<WMSTask>().Where(a => a.S_OP_DEF_NAME == "鐡跺澂闈炲嵆浜цˉ绌烘" && (a.N_B_STATE == 0 || a.N_B_STATE == 1)).First();
+                        if(wmsTask == null)
                         {
-                            string cntrCode = getCntrCode(db, location);
-                            //鍒涘缓浣滀笟
-                            WMSHelper.CreateOpTask(location.S_CODE, locInfo.S_CODE, "鍏ュ簱", "鐡跺澂闈炲嵆浜цˉ绌烘", cntrCode, "鐡跺澂");
+                            //闇�浠庡簱鍖鸿ˉ鍏呯┖鎵�+                            Location location = TaskProcess.FJCKTLoc();
+                            var locInfo = db.Queryable<Location>().Where(a => a.S_AREA_CODE == areaInfo.areaCode && a.N_CURRENT_NUM < a.N_CAPACITY && a.S_LOCK_STATE == "鏃�).OrderBy(a => a.N_ROW).First();
+                            if (location != null && locInfo != null)
+                            {
+                                string cntrCode = getCntrCode(db, location);
+                                //鍒涘缓浣滀笟
+                                WMSHelper.CreateOpTask(location.S_CODE, locInfo.S_CODE, "鍏ュ簱", "鐡跺澂闈炲嵆浜цˉ绌烘", cntrCode, "鐡跺澂");
+                            }
                         }
                     }
                 }
@@ -312,20 +316,26 @@
                 LocList = db.Queryable<Location>().Where(a => a.S_AREA_CODE == areaInfo.areaCode && a.N_CURRENT_NUM == a.N_CAPACITY).ToList();
                 if (LocList.Count > 2)
                 {
+                    //鍒ゆ柇浠诲姟鏄惁瀛樺湪
                     LogHelper.Info($"鐡跺澂闈炲嵆浜х┖鎵樺叆搴�{JsonConvert.SerializeObject(LocList)}");
                     var taskInfo = db.Queryable<WCSTask>().Where(a => a.S_TYPE == "鐡跺澂闈炲嵆浜х┖妗嗗叆搴� && a.S_B_STATE != "瀹屾垚" && a.S_B_STATE != "鍙栨秷" && a.S_B_STATE != "鍗歌揣瀹屾垚" && a.S_B_STATE != "寮�鍗歌揣" && a.S_B_STATE != "鍙栬揣瀹屾垚").First();
                     if(taskInfo == null)
                     {
-                        //闇�灏嗙┖鎵樿浆杩愬埌搴撳尯
-                        foreach (var a in LocList)
+                        //鍒ゆ柇浣滀笟鏄惁瀛樺湪
+                        var wmsTask = db.Queryable<WMSTask>().Where(a => a.S_OP_DEF_NAME == "鐡跺澂闈炲嵆浜х┖妗嗗叆搴� && (a.N_B_STATE == 0 || a.N_B_STATE == 1)).First();
+                        if(wmsTask == null)
                         {
-                            if (a.S_LOCK_STATE == "鏃�)
+                            //闇�灏嗙┖鎵樿浆杩愬埌搴撳尯
+                            foreach (var a in LocList)
                             {
-                                //鐢熸垚浠诲姟
-                                string cntrCode = getCntrCode(db, a);
-                                //鍒涘缓浣滀笟
-                                WMSHelper.CreateOpTask(a.S_CODE, "", "鍏ュ簱", "鐡跺澂闈炲嵆浜х┖妗嗗叆搴�, cntrCode, "鐡跺澂");
-                                break;
+                                if (a.S_LOCK_STATE == "鏃�)
+                                {
+                                    //鐢熸垚浠诲姟
+                                    string cntrCode = getCntrCode(db, a);
+                                    //鍒涘缓浣滀笟
+                                    WMSHelper.CreateOpTask(a.S_CODE, "", "鍏ュ簱", "鐡跺澂闈炲嵆浜х┖妗嗗叆搴�, cntrCode, "鐡跺澂");
+                                    break;
+                                }
                             }
                         }
                     }
@@ -436,7 +446,7 @@
                             {
                                 var rowInfo = db.Queryable<RowLock>().Where(a => a.S_AREA_CODE == endloc.S_AREA_CODE && a.S_ROW == endloc.S_ROW).First();
                                 LogHelper.Info($"鐡剁洊灏忓寘瑁呯洊杞繍锛氭煡璇㈤攣淇℃伅锛岃揣浣嶉攣锛歿endloc.S_LOCK_STATE},鎺掗攣锛歿JsonConvert.SerializeObject(rowInfo)}");
-                                if(rowInfo!=null && rowInfo.S_LOCK_STATE == "鏃� && endloc.S_LOCK_STATE == "鏃�)
+                                if(rowInfo != null && rowInfo.S_LOCK_STATE == "鏃� && endloc.S_LOCK_STATE == "鏃�)
                                 {
                                     endLoca = endloc;
                                     break;
diff --git a/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs b/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs
index 5659dd1..4f5c61f 100644
--- a/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs
+++ b/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs
@@ -43,6 +43,12 @@
                 Console.WriteLine($"浠诲姟{mst.S_CODE} 璐т綅{mst.S_END_LOC}鍗歌揣瀹屾垚锛岀粓鐐圭粦瀹氬鍣▄mst.S_CNTR_CODE}");
                 LogHelper.Info($"浠诲姟{mst.S_CODE} 璐т綅{mst.S_END_LOC}鍗歌揣瀹屾垚锛岀粓鐐圭粦瀹氬鍣▄mst.S_CNTR_CODE}");
                 LocationHelper.BindingLoc(mst.S_END_LOC, mst.S_CNTR_CODE.Split(',').ToList(),mst.S_TYPE);
+                if (mst.S_TYPE.Contains("婊℃墭涓婄嚎"))
+                {
+                    //瑙g粦鐗╂枡
+                    new SqlHelper<object>().GetInstance().Deleteable<CntrItemRel>().Where(a => mst.S_CNTR_CODE.Contains(a.S_CNTR_CODE)).ExecuteCommand();
+                    new SqlHelper<object>().GetInstance().Updateable<Container>().SetColumns(a => a.N_DETAIL_COUNT == 0).Where(a => mst.S_CNTR_CODE.Contains(a.S_CODE)).ExecuteCommand();
+                }
             }
 
         }
@@ -1359,7 +1365,7 @@
                                                     else
                                                     {
                                                         //鏌ヨ鍚庨潰褰撳墠璐т綅鍚庝竴涓�-                                                        result = db.Queryable<Location>().Where(b => b.S_AREA_CODE == a.S_AREA_CODE && b.N_ROW == a.N_ROW && b.N_COL > a.N_COL && a.N_CURRENT_NUM < a.N_CAPACITY && b.S_LOCK_STATE == "鏃�).OrderBy(b => b.N_COL).First();
+                                                        result = db.Queryable<Location>().Where(b => b.S_AREA_CODE == a.S_AREA_CODE && b.N_ROW == a.N_ROW && b.N_COL > a.N_COL && b.N_CURRENT_NUM < b.N_CAPACITY && b.S_LOCK_STATE == "鏃�).OrderBy(b => b.N_COL).First();
                                                     }
                                                     if (result != null)
                                                     {

--
Gitblit v1.9.1