From 3e870a218efe18db4eeb099632aac12a947a9e92 Mon Sep 17 00:00:00 2001
From: lss <Lss@HanInfo>
Date: 星期二, 24 六月 2025 17:41:21 +0800
Subject: [PATCH] 优化

---
 HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/.vs/HH.WCS.JiaTong/v17/DocumentLayout.backup.json |   22 ++++------
 HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/api/ApiHelper.cs                                  |   53 ++++++++++++++++++++++++++
 HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/.vs/HH.WCS.JiaTong/v17/DocumentLayout.json        |    6 +-
 3 files changed, 64 insertions(+), 17 deletions(-)

diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/.vs/HH.WCS.JiaTong/v17/DocumentLayout.backup.json b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/.vs/HH.WCS.JiaTong/v17/DocumentLayout.backup.json
index 8dd7e98..0919562 100644
--- a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/.vs/HH.WCS.JiaTong/v17/DocumentLayout.backup.json
+++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/.vs/HH.WCS.JiaTong/v17/DocumentLayout.backup.json
@@ -3,7 +3,7 @@
   "WorkspaceRootPath": "D:\\01-\u6C49\u548C\u667A\u80FD\\007-\u5408\u80A5\u4F73\u901A\\HH-0035_HeFeiLiaoTongAGV\\HH.WCS.Mobox3\\HH.WCS.Mobox3.JiaTong\\",
   "Documents": [
     {
-      "AbsoluteMoniker": "D:0:0:{EBE15A59-A43A-43BE-8B4B-A6EC42E11111}|HH.WCS.JiaTong.csproj|D:\\01-\u6C49\u548C\u667A\u80FD\\007-\u5408\u80A5\u4F73\u901A\\HH-0035_HeFeiLiaoTongAGV\\HH.WCS.Mobox3\\HH.WCS.Mobox3.JiaTong\\api\\apihelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "AbsoluteMoniker": "D:0:0:{EBE15A59-A43A-43BE-8B4B-A6EC42E11111}|HH.WCS.JiaTong.csproj|d:\\01-\u6C49\u548C\u667A\u80FD\\007-\u5408\u80A5\u4F73\u901A\\hh-0035_hefeiliaotongagv\\hh.wcs.mobox3\\hh.wcs.mobox3.jiatong\\api\\apihelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EBE15A59-A43A-43BE-8B4B-A6EC42E11111}|HH.WCS.JiaTong.csproj|solutionrelative:api\\apihelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
@@ -19,7 +19,7 @@
       "RelativeMoniker": "D:0:0:{EBE15A59-A43A-43BE-8B4B-A6EC42E11111}|HH.WCS.JiaTong.csproj|solutionrelative:process\\taskprocess.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{EBE15A59-A43A-43BE-8B4B-A6EC42E11111}|HH.WCS.JiaTong.csproj|d:\\01-\u6C49\u548C\u667A\u80FD\\007-\u5408\u80A5\u4F73\u901A\\hh-0035_hefeiliaotongagv\\hh.wcs.mobox3\\hh.wcs.mobox3.jiatong\\device\\modbushelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "AbsoluteMoniker": "D:0:0:{EBE15A59-A43A-43BE-8B4B-A6EC42E11111}|HH.WCS.JiaTong.csproj|D:\\01-\u6C49\u548C\u667A\u80FD\\007-\u5408\u80A5\u4F73\u901A\\HH-0035_HeFeiLiaoTongAGV\\HH.WCS.Mobox3\\HH.WCS.Mobox3.JiaTong\\device\\modbushelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
       "RelativeMoniker": "D:0:0:{EBE15A59-A43A-43BE-8B4B-A6EC42E11111}|HH.WCS.JiaTong.csproj|solutionrelative:device\\modbushelper.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
@@ -234,8 +234,7 @@
               "RelativeToolTip": "process\\TaskProcess.cs",
               "ViewState": "AgIAADsCAAAAAAAAAAAAAE4CAAAsAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-05-16T02:47:02.633Z",
-              "EditorCaption": ""
+              "WhenOpened": "2025-05-16T02:47:02.633Z"
             },
             {
               "$type": "Document",
@@ -247,8 +246,7 @@
               "RelativeToolTip": "config\\config.json",
               "ViewState": "AgIAAAAAAAAAAAAAAAAAAH4AAAAXAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
-              "WhenOpened": "2025-05-20T03:38:30.131Z",
-              "EditorCaption": ""
+              "WhenOpened": "2025-05-20T03:38:30.131Z"
             },
             {
               "$type": "Document",
@@ -268,9 +266,9 @@
               "Title": "ApiHelper.cs",
               "DocumentMoniker": "D:\\01-\u6C49\u548C\u667A\u80FD\\007-\u5408\u80A5\u4F73\u901A\\HH-0035_HeFeiLiaoTongAGV\\HH.WCS.Mobox3\\HH.WCS.Mobox3.JiaTong\\api\\ApiHelper.cs",
               "RelativeDocumentMoniker": "api\\ApiHelper.cs",
-              "ToolTip": "D:\\01-\u6C49\u548C\u667A\u80FD\\007-\u5408\u80A5\u4F73\u901A\\HH-0035_HeFeiLiaoTongAGV\\HH.WCS.Mobox3\\HH.WCS.Mobox3.JiaTong\\api\\ApiHelper.cs",
-              "RelativeToolTip": "api\\ApiHelper.cs",
-              "ViewState": "AgIAAFoGAAAAAAAAAAD4v4sGAABHAAAAAAAAAA==",
+              "ToolTip": "D:\\01-\u6C49\u548C\u667A\u80FD\\007-\u5408\u80A5\u4F73\u901A\\HH-0035_HeFeiLiaoTongAGV\\HH.WCS.Mobox3\\HH.WCS.Mobox3.JiaTong\\api\\ApiHelper.cs*",
+              "RelativeToolTip": "api\\ApiHelper.cs*",
+              "ViewState": "AgIAANgKAAAAAAAAAIAzwAoLAAAVAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
               "WhenOpened": "2025-05-16T00:57:25.72Z",
               "EditorCaption": ""
@@ -309,8 +307,7 @@
               "RelativeToolTip": "device\\ModbusHelper.cs",
               "ViewState": "AgIAAMMAAAAAAAAAAAASwJsAAAAlAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-06-03T02:53:27.594Z",
-              "EditorCaption": ""
+              "WhenOpened": "2025-06-03T02:53:27.594Z"
             },
             {
               "$type": "Document",
@@ -322,8 +319,7 @@
               "RelativeToolTip": "api\\MesController.cs",
               "ViewState": "AgIAACEAAAAAAAAAAAAywJUAAAAnAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-05-15T08:45:16.362Z",
-              "EditorCaption": ""
+              "WhenOpened": "2025-05-15T08:45:16.362Z"
             },
             {
               "$type": "Document",
diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/.vs/HH.WCS.JiaTong/v17/DocumentLayout.json b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/.vs/HH.WCS.JiaTong/v17/DocumentLayout.json
index 0919562..8994923 100644
--- a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/.vs/HH.WCS.JiaTong/v17/DocumentLayout.json
+++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/.vs/HH.WCS.JiaTong/v17/DocumentLayout.json
@@ -266,9 +266,9 @@
               "Title": "ApiHelper.cs",
               "DocumentMoniker": "D:\\01-\u6C49\u548C\u667A\u80FD\\007-\u5408\u80A5\u4F73\u901A\\HH-0035_HeFeiLiaoTongAGV\\HH.WCS.Mobox3\\HH.WCS.Mobox3.JiaTong\\api\\ApiHelper.cs",
               "RelativeDocumentMoniker": "api\\ApiHelper.cs",
-              "ToolTip": "D:\\01-\u6C49\u548C\u667A\u80FD\\007-\u5408\u80A5\u4F73\u901A\\HH-0035_HeFeiLiaoTongAGV\\HH.WCS.Mobox3\\HH.WCS.Mobox3.JiaTong\\api\\ApiHelper.cs*",
-              "RelativeToolTip": "api\\ApiHelper.cs*",
-              "ViewState": "AgIAANgKAAAAAAAAAIAzwAoLAAAVAAAAAAAAAA==",
+              "ToolTip": "D:\\01-\u6C49\u548C\u667A\u80FD\\007-\u5408\u80A5\u4F73\u901A\\HH-0035_HeFeiLiaoTongAGV\\HH.WCS.Mobox3\\HH.WCS.Mobox3.JiaTong\\api\\ApiHelper.cs",
+              "RelativeToolTip": "api\\ApiHelper.cs",
+              "ViewState": "AgIAAC4LAAAAAAAAAAASwDQLAAAhAAAAAAAAAA==",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
               "WhenOpened": "2025-05-16T00:57:25.72Z",
               "EditorCaption": ""
diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/api/ApiHelper.cs b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/api/ApiHelper.cs
index 9f74766..dfba0f1 100644
--- a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/api/ApiHelper.cs
+++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/api/ApiHelper.cs
@@ -2550,7 +2550,7 @@
             var list = db.Queryable<Location>().Where(a => a.N_CURRENT_NUM == 0 && a.S_AREA_CODE.Trim() == areacode && a.N_LOCK_STATE == 0).ToList();
             if (list.Count > 0)
             {
-                FindEndcolByLocList(list);
+                FindEndcolByLocListLock(list);
 
             }
             //鏌ヨ鎵�湁鏈夋墭鐩樼殑鎺掓病閿佺殑鎺�@@ -2862,6 +2862,57 @@
         }
 
         /// <summary>
+        /// 鎵剧粓鐐圭┖璐т綅璁$畻鎺掗攣
+        /// </summary>
+        /// <param name="locations"></param>
+        /// <returns></returns>
+        internal static Location FindEndcolByLocListLock(List<Location> locations)
+        {
+            try
+            {
+                var db = new SqlHelper<object>().GetInstance();
+                Location end = null;
+                //鏍规嵁缁堢偣璐т綅鎵剧┖闂茶揣浣�+                var rows = locations.Select(a => a.N_ROW).Distinct().ToList();
+                for (int i = 0; i < rows.Count; i++)
+                {
+                    var rowList = locations.Where(r => r.N_ROW == rows[i]).ToList();
+                    if (rowList.Count(a => a.S_LOCK_STATE != "鏃�) == 0 && rowList.Count(a => a.N_CURRENT_NUM == 0) > 0)
+                    {
+                        Location other = null;
+                        //褰撳墠鎺掓病鏈夐攣骞朵笖鏈夌┖浣嶇疆
+                        //鍏堟壘婊′綅锛岀劧鍚庡悗闈竴浣嶈涔堟槸绌猴紝瑕佷箞涓嶅瓨鍦�+                        var full = rowList.OrderByDescending(a => a.N_COL).Where(a => a.N_CURRENT_NUM == 1).FirstOrDefault();
+                        if (full == null)
+                        {
+                            //娌℃湁婊′綅锛岄偅灏辨壘鏈�皬鐨勭┖浣�+                            other = rowList.OrderBy(a => a.N_COL).FirstOrDefault();
+                        }
+                        else
+                        {
+                            other = rowList.OrderBy(a => a.N_COL).Where(a => a.N_COL > full.N_COL).FirstOrDefault();
+                        }
+                    
+                        if (other != null)
+                        {
+                            end = other;
+                            break;
+
+                        }
+
+                    }
+                }
+                return end;
+            }
+            catch (Exception)
+            {
+
+                throw;
+            }
+
+        }
+
+        /// <summary>
         /// 鎵捐捣鐐规弧璐т綅
         /// </summary>
         /// <param name="locations"></param>

--
Gitblit v1.9.1