From 2d3ee03961d6cfbde70342e8a97bc7b05d0b0dc3 Mon Sep 17 00:00:00 2001
From: kazelee <1847801760@qq.com>
Date: 星期一, 21 七月 2025 17:27:34 +0800
Subject: [PATCH] 优化代码, 封装货位锁和创建任务流程, 数据库事务等

---
 util/Settings.cs |   39 +++++++++++++++++++++++++++++++--------
 1 files changed, 31 insertions(+), 8 deletions(-)

diff --git a/util/Settings.cs b/util/Settings.cs
index 9a653c9..74721a1 100644
--- a/util/Settings.cs
+++ b/util/Settings.cs
@@ -7,15 +7,19 @@
 using Newtonsoft.Json;
 using Newtonsoft.Json.Linq;
 
-namespace HH.WCS.Mobox3.DSZSH {
+namespace HH.WCS.Mobox3.DSZSH.util {
     public class Settings
     {
         public static string WebApiUrl { get; set; }
         public static string NdcApiUrl { get; set; }
         public static string ErpApiUrl { get; set; } // ERP 鍙嶉鎺ュ彛URL
-        public static string SqlServer { get; set; }
-        public static string TcpServerIp { get; set; }
+
         public static int TcpServerPort { get; set; }
+        public static Config.ErpRoute ErpRoute { get; set; }
+
+        public static string SqlServer { get; set; }
+        //public static string TcpServerIp { get; set; }
+        //public static int TcpServerPort { get; set; }
         public static List<Config.ProductionLine> ProductionLines { get; set; } = new List<Config.ProductionLine>();
 
         public static List<Config.TaskInfo> TaskInfos { get; set; } = new List<Config.TaskInfo> { };
@@ -42,13 +46,16 @@
                 WebApiUrl = root.WebApiUrl;
                 NdcApiUrl = root.NdcApiUrl;
                 ErpApiUrl = root.ErpApiUrl;
+                ErpRoute = root.ErpRoute;
+                TcpServerPort= root.TcpServerPort;
                 SqlServer = root.SqlServer;
-                TcpServerIp = root.TcpServerIp;
-                TcpServerPort = root.TcpServerPort;
+                //TcpServerIp = root.TcpServerIp;
+                //TcpServerPort = root.TcpServerPort;
                 ProductionLines = root.ProductionLines;
                 TaskInfos = root.TaskInfos;
 
                 for (var i = 0; i < ProductionLines.Count; i++) {
+                    if (ProductionLines[i].OnLoc == null) continue;
                     foreach (var onLoc in ProductionLines[i].OnLoc) {
                         LocProdIdMap.Add(onLoc, int.Parse(ProductionLines[i].Id));
                     }
@@ -85,8 +92,12 @@
     // [Convert JSON to C# Classes Online - Json2CSharp Toolkit](https://json2csharp.com/)
 
     public class Config {
-
         // Root myDeserializedClass = JsonConvert.DeserializeObject<Root>(myJsonResponse);
+        public class ErpRoute {
+            public string CreateTaskReturn { get; set; }
+            public string PickUpReturn { get; set; }
+        }
+
         public class ProductionLine {
             public string Id { get; set; }
             public string Name { get; set; }
@@ -101,9 +112,9 @@
             public string WebApiUrl { get; set; }
             public string NdcApiUrl { get; set; }
             public string ErpApiUrl { get; set; }
-            public string SqlServer { get; set; }
-            public string TcpServerIp { get; set; }
             public int TcpServerPort { get; set; }
+            public ErpRoute ErpRoute { get; set; }
+            public string SqlServer { get; set; }
             public List<TaskInfo> TaskInfos { get; set; }
             public List<ProductionLine> ProductionLines { get; set; }
         }
@@ -136,5 +147,17 @@
         public static string Name(this ETask eTask) {
             return Settings.TaskInfos[(int)eTask].TaskName;
         }
+
+        public static Config.TaskInfo Info(this ETask eTask) {
+            return Settings.TaskInfos[(int)eTask];
+        }
+
+        public static List<string> StartAreas(this ETask eTask) {
+            return Settings.TaskInfos[(int)(eTask)].StartAreas;
+        }
+
+        public static List<string> EndAreas(this ETask eTask) {
+            return Settings.TaskInfos[((int)eTask)].EndAreas;
+        }
     }
 }

--
Gitblit v1.9.1