From 428c09cb12be9c1d9f803681f34d9a33dfa8a8f3 Mon Sep 17 00:00:00 2001 From: czw <selecti@yeah.net> Date: 星期二, 03 六月 2025 15:33:53 +0800 Subject: [PATCH] wms mes --- S7/Scripts/Custom.json | 35 +++ S7/Net/Conn.json | 85 +++++++++ S7/Scripts/Script.json | 77 ++++++++ S7/RunTime/Code/自定义类.cs | 183 ++++++++++++++++++++ S7/S7.json | 6 S7/Static/config.json | 106 ++++++----- 6 files changed, 427 insertions(+), 65 deletions(-) diff --git a/S7/Net/Conn.json b/S7/Net/Conn.json index 6737914..4fcd363 100644 --- a/S7/Net/Conn.json +++ b/S7/Net/Conn.json @@ -12,7 +12,8 @@ "Password": "aux!123", "Timeout": 3, "IsDefault": true, - "Type": "SqlServer" + "Type": "SqlServer", + "Special": [] } ], "Redis": [ @@ -224,10 +225,90 @@ "ContentType": "application/json", "ReqParamStr": "System.String requestJson", "ReqParamTypeStr": "System.String" + }, + { + "ID": "20250531151614198", + "Name": "CreateTask", + "Desc": "MES 浠诲姟涓嬪彂", + "Method": "POST", + "RawUrl": "/api/Wcs/CreateTask", + "Response": "System.String", + "Request": [ + { + "ID": "1", + "Name": "requestJson", + "Desc": "璇锋眰鎶ユ枃json", + "Type": "System.String" + } + ], + "Content": "\r\n LogHelper.Info(\"/api/Wcs/CreateTask锛歕" + requestJson);\r\n var model = JsonConvert.DeserializeObject<ToWMSMES.CreateTask>(requestJson);\r\n var res = ToWMSMES.CreateTask.CreatemesTask(model);\r\n return JsonConvert.SerializeObject(res);", + "ContentType": "application/json", + "ReqParamStr": "System.String requestJson", + "ReqParamTypeStr": "System.String" + }, + { + "ID": "20250531151746358", + "Name": "TestRequestTask", + "Desc": "鏈烘鍙h姹備换鍔℃帴鍙�, + "Method": "POST", + "RawUrl": "/api/Wcs/TestRequestTask", + "Response": "System.String", + "Request": [ + { + "ID": "1", + "Name": "requestJson", + "Desc": "璇锋眰鎶ユ枃json", + "Type": "System.String" + } + ], + "Content": "LogHelper.Info(\"/api/Wcs/TestRequestTask锛歕" + requestJson);\r\nvar str = Settings.apiHelper.Post(Settings.WMSbaseUrl + \"mom-basic/dataTransmission/json/service/200\", requestJson);\r\nreturn str;", + "ContentType": "application/json", + "ReqParamStr": "System.String requestJson", + "ReqParamTypeStr": "System.String" + }, + { + "ID": "20250531151956740", + "Name": "updateStatus", + "Desc": "浠诲姟鐘舵�涓婃姤鎺ュ彛", + "Method": "POST", + "RawUrl": "/api/Wcs/updateStatus", + "Response": "System.String", + "Request": [ + { + "ID": "1", + "Name": "requestJson", + "Desc": "璇锋眰鎶ユ枃json", + "Type": "System.String" + } + ], + "Content": "LogHelper.Info(\"/api/Wcs/updateStatus锛歕" + requestJson);\r\nvar str = Settings.apiHelper.Post(Settings.WMSbaseUrl + \"mom-basic/dataTransmission/json/service/200\", requestJson);\r\nreturn str;", + "ContentType": "application/json", + "ReqParamStr": "System.String requestJson", + "ReqParamTypeStr": "System.String" + }, + { + "ID": "20250531152110369", + "Name": "toMes", + "Desc": "鎵樼洏涓婃姤鏍¢獙鎺ュ彛锛堝寘鍚墭鐩樻牎楠屻�缁戞嫋鍜岃繃璐︼級", + "Method": "POST", + "RawUrl": "/api/Wcs/toMes", + "Response": "System.String", + "Request": [ + { + "ID": "1", + "Name": "requestJson", + "Desc": "璇锋眰鎶ユ枃json", + "Type": "System.String" + } + ], + "Content": "\r\n LogHelper.Info(\"/api/Wcs/toMes锛歕" + requestJson);\r\n var str = Settings.apiHelper.Post(Settings.MESbaseUrl + \"mom-basic/dataTransmission/json/service/202\", requestJson);\r\n return str;", + "ContentType": "application/json", + "ReqParamStr": "System.String requestJson", + "ReqParamTypeStr": "System.String" } ] } ], "CreationTime": "2025-02-26 15:31:23", - "LastWriteTime": "2025-04-18 10:41:51" + "LastWriteTime": "2025-05-31 16:36:28" } \ No newline at end of file diff --git "a/S7/RunTime/Code/\350\207\252\345\256\232\344\271\211\347\261\273.cs" "b/S7/RunTime/Code/\350\207\252\345\256\232\344\271\211\347\261\273.cs" index 265d273..9a1363e 100644 --- "a/S7/RunTime/Code/\350\207\252\345\256\232\344\271\211\347\261\273.cs" +++ "b/S7/RunTime/Code/\350\207\252\345\256\232\344\271\211\347\261\273.cs" @@ -38,6 +38,8 @@ public static List<deviceInfo> deviceInfos { get; set; } = new List<deviceInfo>(); public static string HKbaseUrl { get; set; } + public static string MESbaseUrl { get; set; } + public static string WMSbaseUrl { get; set; } public static readonly HttpHelper apiHelper = new HttpHelper(); public static string GetTimeStamp(DateTime? time = null) @@ -430,6 +432,9 @@ if (sessionId != "") { request.Headers.Set("ASP.NET_SessionId", sessionId); } + + //Authorization: UApGP6WW9FsBUqAlzxRGOw == + request.Headers.Set("Authorization", "UApGP6WW9FsBUqAlzxRGOw=="); StreamReader reader = null; Stream stream = null; WebResponse rsp = null; @@ -608,4 +613,182 @@ #endregion [鑷畾涔夌被][20250417094750211][Utils] } +public class ToWMSMES +{ +#region [鑷畾涔夌被][20250531152402452][ToWMSMES] + //2 wms mes + + + public class CreateTask + { + public string taskType { get; set; } + public string startBit { get; set; } + public string endBit { get; set; } + public string reqCode { get; set; } + public string cntrCode { get; set; } + + internal static ReturnMsg CreatemesTask(CreateTask model) + { + ITaskRepository taskservice = new TaskRepository(); + var task = taskservice.FindEntity(x => x.S_TASK_NO == model.reqCode); + if (task == null) + { + //var i = TaskProcess.CreateTask("", model.startBit, model.endBit, string.IsNullOrEmpty(model.taskType) ? "Mes涓嬪彂" : model.taskType, 5, new List<string> { model.cntrCode }); + TaskEntity wmsTask = new TaskEntity() + { + S_ID = Guid.NewGuid().ToString(), + S_STATE = "缂栬緫", + T_CREATE = DateTime.Now, + T_MODIFY = DateTime.Now, + + S_TASK_NO = model.reqCode, + S_START_LAREA = "", + S_END_LAREA = "", + S_DEPART_NAME = "", + S_START_LOC = model.startBit, + S_END_LOC = model.endBit, + S_TYPE = model.reqCode, + S_SRC_NO = "",// + N_PRIORITY = -1, + S_WORK_MODE = "agv", + S_B_STATE = "MES", + S_CNTRS = model.cntrCode, + N_START_LAYER = 1, + N_END_LAYER = 1, + N_CNTR_COUNT = 1 + }; + ITaskRepository taskserice = new TaskRepository(); + var i = taskserice.Insert(wmsTask) > 0; + return new ReturnMsg { resultCode = (i ? 0 : -1), resultMsg = i ? "" : "浠诲姟鐢熸垚澶辫触銆� }; + } + else + { + return new ReturnMsg { resultCode = -1, resultMsg = "浠诲姟閲嶅涓嬪彂銆� }; + } + } + } + public class ReturnMsg + { + public int resultCode { get; set; } + public string resultMsg { get; set; } + } + + + public static void ResMesTask() + { + ///1. + TaskRepository taskservice = new TaskRepository(); + var tasks = taskservice.FindList(x => x.S_B_STATE == "MES" && x.N_PRIORITY == -88); + var VERXs = Settings.deviceInfos?.FindAll(x => x.deviceName.Contains("鎹风灛鎶撹噦")); + if (VERXs.Any()) + foreach (var task in tasks) + { + var sx = VERXs?.Find(x => x.location.Contains(task.S_END_LOC)); + if (sx == null) + { + //鐩存帴鐢熸垚瀵瑰簲浠诲姟銆�+ var res = TaskProcess.CreateTask(task.S_TASK_NO, task.S_START_LOC, task.S_END_LOC, task.S_TYPE, 6, task.S_CNTRS.Split(',').ToList()); + if (res) + { + //task.N_PRIORITY = 0; + taskservice.dbcontext.Set<TaskEntity>().Attach(task); + taskservice.dbcontext.Entry(task).Property(x => x.N_PRIORITY).CurrentValue = 0; + taskservice.dbcontext.Entry(task).Property(x => x.N_PRIORITY).IsModified = true; + taskservice.dbcontext.SaveChanges(); + } + } + else + { + LocRepository locRepository = new LocRepository(); + //鐢熸垚璺宠穬浠诲姟銆� -- 鎵樼洏璐т綅琛ㄣ� + var t1s = taskservice.FindList(x => x.S_SRC_NO == task.S_TASK_NO); + if (t1s.Any()) + { + var t1 = t1s.OrderBy(x => x.T_CREATE).LastOrDefault(); + if (t1.S_END_LOC == task.S_END_LOC) + { + task.N_PRIORITY = 0; + task.S_B_STATE = "MES_瀹屾垚"; + taskservice.Update(task); + } + if (t1.S_B_STATE == "瀹屾垚") + { + //1.缁堢偣鏄惁鏈夋墭鐩樸� 渚濇嵁鏄粓鐐圭殑浠诲姟鏄�浣滀负缁堢偣锛岃繕鏄捣鐐广� + var ec = taskservice.FindList(x => (x.S_START_LOC == task.S_START_LOC || x.S_END_LOC == task.S_END_LOC) /*&& DateTime.Now.Subtract(x.T_CREATE).TotalHours < 5*/).OrderByDescending(x => x.T_CREATE).FirstOrDefault();//($"select top 1 * from TN_TASK WHERE S_START_LOC='{task.S_END_LOC}' OR S_END_LOC='{task.S_END_LOC}' ORDER BY T_CREATE DESC"); + + if (ec != null && ec.S_END_LOC == task.S_END_LOC) + { + //涓婃鏄叆搴撲换鍔°� 鍒欏嚭搴撱� 鍚﹀垯杩涜浜屾銆� + LocEntity endLoc = null; + var di = sx; + if (di != null) + { + foreach (var ssloc in di.deviceNo) + { + var endloc = locRepository.FindEntity(x => x.S_LOC_CODE == ssloc); + if (endloc != null && endloc.N_CURRENT_NUM == 0 && endloc.S_LOCK_STATE == "鏃�) + { + endLoc = endloc; + break; + } + } + if (endLoc != null) + { + var res = TaskProcess.CreateTask("", task.S_END_LOC, endLoc.S_LOC_CODE, task.S_TYPE + "涓嬬┖", 7, t1.S_CNTRS.Split(',').ToList()); + if (res) + { + task.N_PRIORITY = 0; taskservice.Update(task); + } + } + } + } + else + { + var res = TaskProcess.CreateTask(task.S_TASK_NO, t1.S_END_LOC, task.S_END_LOC, task.S_TYPE + "琛ユ弧", 6, task.S_CNTRS.Split(',').ToList()); + if (res) + { + task.N_PRIORITY = 0; taskservice.Update(task); + } + } + } + } + else + { + //鐢熸垚绗竴娈点� + LocEntity endLoc = null; + var di = sx; + if (di != null) + { + foreach (var ssloc in di.deviceNo) + { + var endloc = locRepository.FindEntity(x => x.S_LOC_CODE == ssloc); + if (endloc != null && endloc.N_CURRENT_NUM == 0 && endloc.S_LOCK_STATE == "鏃�) + { + endLoc = endloc; + break; + } + } + if (endLoc != null) + { + var res = TaskProcess.CreateTask("", task.S_START_LOC, endLoc.S_LOC_CODE, task.S_TYPE + "婊¤浆", 8, task.S_CNTRS.Split(',').ToList()); + if (res) + { + task.N_PRIORITY = 0; taskservice.Update(task); + } + } + } + } + + } + } + //var VERX = Settings.deviceInfos?.FindAll(x => x.deviceName.Contains("鎹风灛鎶撹噦")); + //if () + ///2 鐪嬬紦瀛樺尯銆�娌℃弧鐨勩� + + + } + + +#endregion [鑷畾涔夌被][20250531152402452][ToWMSMES] +} } \ No newline at end of file diff --git a/S7/S7.json b/S7/S7.json index b711f97..f8148c1 100644 --- a/S7/S7.json +++ b/S7/S7.json @@ -2,12 +2,12 @@ "Name": "S7", "Desc": "", "SN": "03d560ed-fd80-4d8a-a514-d992e07894b0", - "Directory": "C:\\Users\\Administrator\\Desktop\\S7", + "Directory": "G:\\1AGIT\\HH-0167_WuHuAoKeSi\\S7", "UpdateTime": "2025-02-26 15:31:01", "Version": "1.0.0.0", - "PlatformVersion": "1.0.4.1", + "PlatformVersion": "1.0.4.2", "DevelopVersion": "1.0.2.0", "Encode": "Ij/zvOgkqNT5SmHrFKCAVQ==", "CreationTime": "0001-01-01 00:00:00", - "LastWriteTime": "2025-04-18 10:45:51" + "LastWriteTime": "2025-05-31 16:38:12" } \ No newline at end of file diff --git a/S7/Scripts/Custom.json b/S7/Scripts/Custom.json index e411d64..52bc184 100644 --- a/S7/Scripts/Custom.json +++ b/S7/Scripts/Custom.json @@ -36,8 +36,8 @@ "Type": "ClassCode", "Level": "Item", "Statement": "public class Settings", - "EditCode": "\t\tpublic static bool FirstG {get;set;}=false;\r\n public static string HostToAgvServerUrl { get; set; }\r\n \r\n public static List<deviceInfo> deviceInfos { get; set; } = new List<deviceInfo>();\r\n public static string HKbaseUrl { get; set; }\r\n public static readonly HttpHelper apiHelper = new HttpHelper();\r\n \r\n public static string GetTimeStamp(DateTime? time = null)\r\n\t\t{\r\n\t\t TimeSpan ts = DateTime.UtcNow - (time ?? new DateTime(1970, 1, 1, 0, 0, 0, 0));\r\n\t\t return Convert.ToInt64(ts.TotalMilliseconds).ToString();\r\n\t\t}", - "Code": "public class Settings\r\n{\t\tpublic static bool FirstG {get;set;}=false;\r\n public static string HostToAgvServerUrl { get; set; }\r\n \r\n public static List<deviceInfo> deviceInfos { get; set; } = new List<deviceInfo>();\r\n public static string HKbaseUrl { get; set; }\r\n public static readonly HttpHelper apiHelper = new HttpHelper();\r\n \r\n public static string GetTimeStamp(DateTime? time = null)\r\n\t\t{\r\n\t\t TimeSpan ts = DateTime.UtcNow - (time ?? new DateTime(1970, 1, 1, 0, 0, 0, 0));\r\n\t\t return Convert.ToInt64(ts.TotalMilliseconds).ToString();\r\n\t\t}\r\n}", + "EditCode": "\t\tpublic static bool FirstG {get;set;}=false;\r\n public static string HostToAgvServerUrl { get; set; }\r\n \r\n public static List<deviceInfo> deviceInfos { get; set; } = new List<deviceInfo>();\r\n public static string HKbaseUrl { get; set; }\r\n public static string MESbaseUrl { get; set; }\r\n public static string WMSbaseUrl { get; set; }\r\n public static readonly HttpHelper apiHelper = new HttpHelper();\r\n \r\n public static string GetTimeStamp(DateTime? time = null)\r\n\t\t{\r\n\t\t TimeSpan ts = DateTime.UtcNow - (time ?? new DateTime(1970, 1, 1, 0, 0, 0, 0));\r\n\t\t return Convert.ToInt64(ts.TotalMilliseconds).ToString();\r\n\t\t}", + "Code": "public class Settings\r\n{\t\tpublic static bool FirstG {get;set;}=false;\r\n public static string HostToAgvServerUrl { get; set; }\r\n \r\n public static List<deviceInfo> deviceInfos { get; set; } = new List<deviceInfo>();\r\n public static string HKbaseUrl { get; set; }\r\n public static string MESbaseUrl { get; set; }\r\n public static string WMSbaseUrl { get; set; }\r\n public static readonly HttpHelper apiHelper = new HttpHelper();\r\n \r\n public static string GetTimeStamp(DateTime? time = null)\r\n\t\t{\r\n\t\t TimeSpan ts = DateTime.UtcNow - (time ?? new DateTime(1970, 1, 1, 0, 0, 0, 0));\r\n\t\t return Convert.ToInt64(ts.TotalMilliseconds).ToString();\r\n\t\t}\r\n}", "CusMethod": { "Name": "", "Params": [], @@ -57,8 +57,8 @@ "Type": "MethodCode", "Level": "Item", "Statement": "public void SettingInit()", - "EditCode": "try\r\n{\r\n var jsonFile = System.AppDomain.CurrentDomain.BaseDirectory + \"/Static/config.json\";\r\n using (System.IO.StreamReader file = System.IO.File.OpenText(jsonFile))\r\n {\r\n using (JsonTextReader reader = new JsonTextReader(file))\r\n {\r\n JObject o = (JObject)JToken.ReadFrom(reader);\r\n foreach (Newtonsoft.Json.Linq.JProperty keyValue in o.Properties())\r\n {\r\n Console.WriteLine(keyValue.Name);\r\n if (keyValue.Name == \"HostToAgvServerUrl\")\r\n {\r\n Settings.HostToAgvServerUrl = keyValue.Value.ToString();\r\n }\r\n if (keyValue.Name == \"deviceInfo\") {\r\n Settings.deviceInfos = JsonConvert.DeserializeObject<List<deviceInfo>>(keyValue.Value.ToString());\r\n }\r\n if (keyValue.Name == \"HKbaseUrl\") {\r\n Settings.HKbaseUrl = keyValue.Value.ToString();\r\n }\r\n }\r\n }\r\n }\r\n //if(!Settings.FirstG)\r\n \t//LogHelper.Info(\"鍔犺浇閰嶇疆鏂囦欢淇℃伅 瀹屾垚\");\r\n}\r\ncatch (Exception ex)\r\n{\r\n LogHelper.Error(\"鍔犺浇閰嶇疆鏂囦欢澶辫触锛乗" + ex.Message, ex);\r\n}", - "Code": "public void SettingInit()\r\n{try\r\n{\r\n var jsonFile = System.AppDomain.CurrentDomain.BaseDirectory + \"/Static/config.json\";\r\n using (System.IO.StreamReader file = System.IO.File.OpenText(jsonFile))\r\n {\r\n using (JsonTextReader reader = new JsonTextReader(file))\r\n {\r\n JObject o = (JObject)JToken.ReadFrom(reader);\r\n foreach (Newtonsoft.Json.Linq.JProperty keyValue in o.Properties())\r\n {\r\n Console.WriteLine(keyValue.Name);\r\n if (keyValue.Name == \"HostToAgvServerUrl\")\r\n {\r\n Settings.HostToAgvServerUrl = keyValue.Value.ToString();\r\n }\r\n if (keyValue.Name == \"deviceInfo\") {\r\n Settings.deviceInfos = JsonConvert.DeserializeObject<List<deviceInfo>>(keyValue.Value.ToString());\r\n }\r\n if (keyValue.Name == \"HKbaseUrl\") {\r\n Settings.HKbaseUrl = keyValue.Value.ToString();\r\n }\r\n }\r\n }\r\n }\r\n //if(!Settings.FirstG)\r\n \t//LogHelper.Info(\"鍔犺浇閰嶇疆鏂囦欢淇℃伅 瀹屾垚\");\r\n}\r\ncatch (Exception ex)\r\n{\r\n LogHelper.Error(\"鍔犺浇閰嶇疆鏂囦欢澶辫触锛乗" + ex.Message, ex);\r\n}\r\n}", + "EditCode": "try\r\n{\r\n var jsonFile = System.AppDomain.CurrentDomain.BaseDirectory + \"/Static/config.json\";\r\n using (System.IO.StreamReader file = System.IO.File.OpenText(jsonFile))\r\n {\r\n using (JsonTextReader reader = new JsonTextReader(file))\r\n {\r\n JObject o = (JObject)JToken.ReadFrom(reader);\r\n foreach (Newtonsoft.Json.Linq.JProperty keyValue in o.Properties())\r\n {\r\n Console.WriteLine(keyValue.Name);\r\n if (keyValue.Name == \"HostToAgvServerUrl\")\r\n {\r\n Settings.HostToAgvServerUrl = keyValue.Value.ToString();\r\n }\r\n if (keyValue.Name == \"deviceInfo\") {\r\n Settings.deviceInfos = JsonConvert.DeserializeObject<List<deviceInfo>>(keyValue.Value.ToString());\r\n }\r\n if (keyValue.Name == \"HKbaseUrl\") {\r\n Settings.HKbaseUrl = keyValue.Value.ToString();\r\n }\r\n if (keyValue.Name == \"MESbaseUrl\")\r\n {\r\n Settings.MESbaseUrl = keyValue.Value.ToString();\r\n }\r\n if (keyValue.Name == \"WMSbaseUrl\")\r\n {\r\n Settings.WMSbaseUrl = keyValue.Value.ToString();\r\n }\r\n }\r\n }\r\n }\r\n //if(!Settings.FirstG)\r\n \t//LogHelper.Info(\"鍔犺浇閰嶇疆鏂囦欢淇℃伅 瀹屾垚\");\r\n}\r\ncatch (Exception ex)\r\n{\r\n LogHelper.Error(\"鍔犺浇閰嶇疆鏂囦欢澶辫触锛乗" + ex.Message, ex);\r\n}", + "Code": "public void SettingInit()\r\n{try\r\n{\r\n var jsonFile = System.AppDomain.CurrentDomain.BaseDirectory + \"/Static/config.json\";\r\n using (System.IO.StreamReader file = System.IO.File.OpenText(jsonFile))\r\n {\r\n using (JsonTextReader reader = new JsonTextReader(file))\r\n {\r\n JObject o = (JObject)JToken.ReadFrom(reader);\r\n foreach (Newtonsoft.Json.Linq.JProperty keyValue in o.Properties())\r\n {\r\n Console.WriteLine(keyValue.Name);\r\n if (keyValue.Name == \"HostToAgvServerUrl\")\r\n {\r\n Settings.HostToAgvServerUrl = keyValue.Value.ToString();\r\n }\r\n if (keyValue.Name == \"deviceInfo\") {\r\n Settings.deviceInfos = JsonConvert.DeserializeObject<List<deviceInfo>>(keyValue.Value.ToString());\r\n }\r\n if (keyValue.Name == \"HKbaseUrl\") {\r\n Settings.HKbaseUrl = keyValue.Value.ToString();\r\n }\r\n if (keyValue.Name == \"MESbaseUrl\")\r\n {\r\n Settings.MESbaseUrl = keyValue.Value.ToString();\r\n }\r\n if (keyValue.Name == \"WMSbaseUrl\")\r\n {\r\n Settings.WMSbaseUrl = keyValue.Value.ToString();\r\n }\r\n }\r\n }\r\n }\r\n //if(!Settings.FirstG)\r\n \t//LogHelper.Info(\"鍔犺浇閰嶇疆鏂囦欢淇℃伅 瀹屾垚\");\r\n}\r\ncatch (Exception ex)\r\n{\r\n LogHelper.Error(\"鍔犺浇閰嶇疆鏂囦欢澶辫触锛乗" + ex.Message, ex);\r\n}\r\n}", "CusMethod": { "Name": "SettingInit", "Params": [], @@ -412,8 +412,8 @@ "Type": "ClassCode", "Level": "Item", "Statement": "public class HttpHelper", - "EditCode": "public string Post(string url, string postData, string contentType = \"application/json\", string sessionId = \"\") {\r\n Console.WriteLine(url);\r\n WebRequest request = WebRequest.Create(url);\r\n request.Method = \"POST\";\r\n byte[] byteArray = Encoding.UTF8.GetBytes(postData);\r\n request.ContentType = contentType;\r\n request.ContentLength = byteArray.Length;\r\n request.Timeout = 3000;\r\n if (sessionId != \"\") {\r\n request.Headers.Set(\"ASP.NET_SessionId\", sessionId);\r\n }\r\n StreamReader reader = null;\r\n Stream stream = null;\r\n WebResponse rsp = null;\r\n try {\r\n stream = request.GetRequestStream();\r\n stream.Write(byteArray, 0, byteArray.Length);\r\n stream.Close();\r\n rsp = request.GetResponse();\r\n stream = rsp.GetResponseStream();\r\n reader = new StreamReader(stream);\r\n return reader.ReadToEnd();\r\n }\r\n catch (Exception ex) {\r\n Console.WriteLine($\"{url} err={ex.Message}\");\r\n return \"\";\r\n }\r\n finally {\r\n // 閲婃斁璧勬簮\r\n if (reader != null) reader.Close();\r\n if (stream != null) stream.Close();\r\n if (rsp != null) rsp.Close();\r\n }\r\n\r\n}", - "Code": "public class HttpHelper\r\n{public string Post(string url, string postData, string contentType = \"application/json\", string sessionId = \"\") {\r\n Console.WriteLine(url);\r\n WebRequest request = WebRequest.Create(url);\r\n request.Method = \"POST\";\r\n byte[] byteArray = Encoding.UTF8.GetBytes(postData);\r\n request.ContentType = contentType;\r\n request.ContentLength = byteArray.Length;\r\n request.Timeout = 3000;\r\n if (sessionId != \"\") {\r\n request.Headers.Set(\"ASP.NET_SessionId\", sessionId);\r\n }\r\n StreamReader reader = null;\r\n Stream stream = null;\r\n WebResponse rsp = null;\r\n try {\r\n stream = request.GetRequestStream();\r\n stream.Write(byteArray, 0, byteArray.Length);\r\n stream.Close();\r\n rsp = request.GetResponse();\r\n stream = rsp.GetResponseStream();\r\n reader = new StreamReader(stream);\r\n return reader.ReadToEnd();\r\n }\r\n catch (Exception ex) {\r\n Console.WriteLine($\"{url} err={ex.Message}\");\r\n return \"\";\r\n }\r\n finally {\r\n // 閲婃斁璧勬簮\r\n if (reader != null) reader.Close();\r\n if (stream != null) stream.Close();\r\n if (rsp != null) rsp.Close();\r\n }\r\n\r\n}\r\n}", + "EditCode": "public string Post(string url, string postData, string contentType = \"application/json\", string sessionId = \"\") {\r\n Console.WriteLine(url);\r\n WebRequest request = WebRequest.Create(url);\r\n request.Method = \"POST\";\r\n byte[] byteArray = Encoding.UTF8.GetBytes(postData);\r\n request.ContentType = contentType;\r\n request.ContentLength = byteArray.Length;\r\n request.Timeout = 3000;\r\n if (sessionId != \"\") {\r\n request.Headers.Set(\"ASP.NET_SessionId\", sessionId);\r\n }\r\n \r\n //Authorization: UApGP6WW9FsBUqAlzxRGOw ==\r\n request.Headers.Set(\"Authorization\", \"UApGP6WW9FsBUqAlzxRGOw==\");\r\n StreamReader reader = null;\r\n Stream stream = null;\r\n WebResponse rsp = null;\r\n try {\r\n stream = request.GetRequestStream();\r\n stream.Write(byteArray, 0, byteArray.Length);\r\n stream.Close();\r\n rsp = request.GetResponse();\r\n stream = rsp.GetResponseStream();\r\n reader = new StreamReader(stream);\r\n return reader.ReadToEnd();\r\n }\r\n catch (Exception ex) {\r\n Console.WriteLine($\"{url} err={ex.Message}\");\r\n return \"\";\r\n }\r\n finally {\r\n // 閲婃斁璧勬簮\r\n if (reader != null) reader.Close();\r\n if (stream != null) stream.Close();\r\n if (rsp != null) rsp.Close();\r\n }\r\n\r\n}", + "Code": "public class HttpHelper\r\n{public string Post(string url, string postData, string contentType = \"application/json\", string sessionId = \"\") {\r\n Console.WriteLine(url);\r\n WebRequest request = WebRequest.Create(url);\r\n request.Method = \"POST\";\r\n byte[] byteArray = Encoding.UTF8.GetBytes(postData);\r\n request.ContentType = contentType;\r\n request.ContentLength = byteArray.Length;\r\n request.Timeout = 3000;\r\n if (sessionId != \"\") {\r\n request.Headers.Set(\"ASP.NET_SessionId\", sessionId);\r\n }\r\n \r\n //Authorization: UApGP6WW9FsBUqAlzxRGOw ==\r\n request.Headers.Set(\"Authorization\", \"UApGP6WW9FsBUqAlzxRGOw==\");\r\n StreamReader reader = null;\r\n Stream stream = null;\r\n WebResponse rsp = null;\r\n try {\r\n stream = request.GetRequestStream();\r\n stream.Write(byteArray, 0, byteArray.Length);\r\n stream.Close();\r\n rsp = request.GetResponse();\r\n stream = rsp.GetResponseStream();\r\n reader = new StreamReader(stream);\r\n return reader.ReadToEnd();\r\n }\r\n catch (Exception ex) {\r\n Console.WriteLine($\"{url} err={ex.Message}\");\r\n return \"\";\r\n }\r\n finally {\r\n // 閲婃斁璧勬簮\r\n if (reader != null) reader.Close();\r\n if (stream != null) stream.Close();\r\n if (rsp != null) rsp.Close();\r\n }\r\n\r\n}\r\n}", "CusMethod": { "Name": "", "Params": [], @@ -626,9 +626,30 @@ "InheritClass": "", "Inherits": [] } + }, + { + "ID": "20250531152402452", + "Name": "ToWMSMES", + "Desc": "", + "ParentID": "", + "Type": "ClassCode", + "Level": "Item", + "Statement": "public class ToWMSMES", + "EditCode": "//2 wms mes \r\n\r\n\r\n public class CreateTask\r\n {\r\n public string taskType { get; set; }\r\n public string startBit { get; set; }\r\n public string endBit { get; set; }\r\n public string reqCode { get; set; }\r\n public string cntrCode { get; set; }\r\n\r\n internal static ReturnMsg CreatemesTask(CreateTask model)\r\n {\r\n ITaskRepository taskservice = new TaskRepository();\r\n var task = taskservice.FindEntity(x => x.S_TASK_NO == model.reqCode);\r\n if (task == null)\r\n {\r\n //var i = TaskProcess.CreateTask(\"\", model.startBit, model.endBit, string.IsNullOrEmpty(model.taskType) ? \"Mes涓嬪彂\" : model.taskType, 5, new List<string> { model.cntrCode });\r\n TaskEntity wmsTask = new TaskEntity()\r\n {\r\n S_ID = Guid.NewGuid().ToString(),\r\n S_STATE = \"缂栬緫\",\r\n T_CREATE = DateTime.Now,\r\n T_MODIFY = DateTime.Now,\r\n\r\n S_TASK_NO = model.reqCode,\r\n S_START_LAREA = \"\",\r\n S_END_LAREA = \"\",\r\n S_DEPART_NAME = \"\",\r\n S_START_LOC = model.startBit,\r\n S_END_LOC = model.endBit,\r\n S_TYPE = model.reqCode,\r\n S_SRC_NO = \"\",//\r\n N_PRIORITY = -1,\r\n S_WORK_MODE = \"agv\",\r\n S_B_STATE = \"MES\",\r\n S_CNTRS = model.cntrCode,\r\n N_START_LAYER = 1,\r\n N_END_LAYER = 1,\r\n N_CNTR_COUNT = 1\r\n };\r\n ITaskRepository taskserice = new TaskRepository();\r\n var i = taskserice.Insert(wmsTask) > 0;\r\n return new ReturnMsg { resultCode = (i ? 0 : -1), resultMsg = i ? \"\" : \"浠诲姟鐢熸垚澶辫触銆俓" };\r\n }\r\n else\r\n {\r\n return new ReturnMsg { resultCode = -1, resultMsg = \"浠诲姟閲嶅涓嬪彂銆俓" };\r\n }\r\n }\r\n }\r\n public class ReturnMsg\r\n {\r\n public int resultCode { get; set; }\r\n public string resultMsg { get; set; }\r\n }\r\n \r\n \r\n public static void ResMesTask()\r\n {\r\n ///1.\r\n TaskRepository taskservice = new TaskRepository();\r\n var tasks = taskservice.FindList(x => x.S_B_STATE == \"MES\" && x.N_PRIORITY == -88);\r\n var VERXs = Settings.deviceInfos?.FindAll(x => x.deviceName.Contains(\"鎹风灛鎶撹噦\"));\r\n if (VERXs.Any())\r\n foreach (var task in tasks)\r\n {\r\n var sx = VERXs?.Find(x => x.location.Contains(task.S_END_LOC));\r\n if (sx == null)\r\n {\r\n //鐩存帴鐢熸垚瀵瑰簲浠诲姟銆俓r\n var res = TaskProcess.CreateTask(task.S_TASK_NO, task.S_START_LOC, task.S_END_LOC, task.S_TYPE, 6, task.S_CNTRS.Split(',').ToList());\r\n if (res)\r\n {\r\n //task.N_PRIORITY = 0;\r\n taskservice.dbcontext.Set<TaskEntity>().Attach(task);\r\n taskservice.dbcontext.Entry(task).Property(x => x.N_PRIORITY).CurrentValue = 0;\r\n taskservice.dbcontext.Entry(task).Property(x => x.N_PRIORITY).IsModified = true;\r\n taskservice.dbcontext.SaveChanges();\r\n }\r\n }\r\n else\r\n {\r\n LocRepository locRepository = new LocRepository();\r\n //鐢熸垚璺宠穬浠诲姟銆� -- 鎵樼洏璐т綅琛ㄣ� \r\n var t1s = taskservice.FindList(x => x.S_SRC_NO == task.S_TASK_NO);\r\n if (t1s.Any())\r\n {\r\n var t1 = t1s.OrderBy(x => x.T_CREATE).LastOrDefault();\r\n if (t1.S_END_LOC == task.S_END_LOC)\r\n {\r\n task.N_PRIORITY = 0;\r\n task.S_B_STATE = \"MES_瀹屾垚\";\r\n taskservice.Update(task);\r\n }\r\n if (t1.S_B_STATE == \"瀹屾垚\")\r\n {\r\n //1.缁堢偣鏄惁鏈夋墭鐩樸� 渚濇嵁鏄粓鐐圭殑浠诲姟鏄�浣滀负缁堢偣锛岃繕鏄捣鐐广�\r\n var ec = taskservice.FindList(x => (x.S_START_LOC == task.S_START_LOC || x.S_END_LOC == task.S_END_LOC) /*&& DateTime.Now.Subtract(x.T_CREATE).TotalHours < 5*/).OrderByDescending(x => x.T_CREATE).FirstOrDefault();//($\"select top 1 * from TN_TASK WHERE S_START_LOC='{task.S_END_LOC}' OR S_END_LOC='{task.S_END_LOC}' ORDER BY T_CREATE DESC\");\r\n\r\n if (ec != null && ec.S_END_LOC == task.S_END_LOC)\r\n {\r\n //涓婃鏄叆搴撲换鍔°� 鍒欏嚭搴撱� 鍚﹀垯杩涜浜屾銆�\r\n LocEntity endLoc = null;\r\n var di = sx;\r\n if (di != null)\r\n {\r\n foreach (var ssloc in di.deviceNo)\r\n {\r\n var endloc = locRepository.FindEntity(x => x.S_LOC_CODE == ssloc);\r\n if (endloc != null && endloc.N_CURRENT_NUM == 0 && endloc.S_LOCK_STATE == \"鏃燶")\r\n {\r\n endLoc = endloc;\r\n break;\r\n }\r\n }\r\n if (endLoc != null)\r\n {\r\n var res = TaskProcess.CreateTask(\"\", task.S_END_LOC, endLoc.S_LOC_CODE, task.S_TYPE + \"涓嬬┖\", 7, t1.S_CNTRS.Split(',').ToList());\r\n if (res)\r\n {\r\n task.N_PRIORITY = 0; taskservice.Update(task);\r\n }\r\n }\r\n }\r\n }\r\n else\r\n {\r\n var res = TaskProcess.CreateTask(task.S_TASK_NO, t1.S_END_LOC, task.S_END_LOC, task.S_TYPE + \"琛ユ弧\", 6, task.S_CNTRS.Split(',').ToList());\r\n if (res)\r\n {\r\n task.N_PRIORITY = 0; taskservice.Update(task);\r\n }\r\n }\r\n }\r\n }\r\n else\r\n {\r\n //鐢熸垚绗竴娈点�\r\n LocEntity endLoc = null;\r\n var di = sx;\r\n if (di != null)\r\n {\r\n foreach (var ssloc in di.deviceNo)\r\n {\r\n var endloc = locRepository.FindEntity(x => x.S_LOC_CODE == ssloc);\r\n if (endloc != null && endloc.N_CURRENT_NUM == 0 && endloc.S_LOCK_STATE == \"鏃燶")\r\n {\r\n endLoc = endloc;\r\n break;\r\n }\r\n }\r\n if (endLoc != null)\r\n {\r\n var res = TaskProcess.CreateTask(\"\", task.S_START_LOC, endLoc.S_LOC_CODE, task.S_TYPE + \"婊¤浆\", 8, task.S_CNTRS.Split(',').ToList());\r\n if (res)\r\n {\r\n task.N_PRIORITY = 0; taskservice.Update(task);\r\n }\r\n }\r\n }\r\n }\r\n\r\n }\r\n }\r\n //var VERX = Settings.deviceInfos?.FindAll(x => x.deviceName.Contains(\"鎹风灛鎶撹噦\"));\r\n //if ()\r\n ///2 鐪嬬紦瀛樺尯銆�娌℃弧鐨勩�\r\n\r\n\r\n }\r\n \r\n ", + "Code": "public class ToWMSMES\r\n{//2 wms mes \r\n\r\n\r\n public class CreateTask\r\n {\r\n public string taskType { get; set; }\r\n public string startBit { get; set; }\r\n public string endBit { get; set; }\r\n public string reqCode { get; set; }\r\n public string cntrCode { get; set; }\r\n\r\n internal static ReturnMsg CreatemesTask(CreateTask model)\r\n {\r\n ITaskRepository taskservice = new TaskRepository();\r\n var task = taskservice.FindEntity(x => x.S_TASK_NO == model.reqCode);\r\n if (task == null)\r\n {\r\n //var i = TaskProcess.CreateTask(\"\", model.startBit, model.endBit, string.IsNullOrEmpty(model.taskType) ? \"Mes涓嬪彂\" : model.taskType, 5, new List<string> { model.cntrCode });\r\n TaskEntity wmsTask = new TaskEntity()\r\n {\r\n S_ID = Guid.NewGuid().ToString(),\r\n S_STATE = \"缂栬緫\",\r\n T_CREATE = DateTime.Now,\r\n T_MODIFY = DateTime.Now,\r\n\r\n S_TASK_NO = model.reqCode,\r\n S_START_LAREA = \"\",\r\n S_END_LAREA = \"\",\r\n S_DEPART_NAME = \"\",\r\n S_START_LOC = model.startBit,\r\n S_END_LOC = model.endBit,\r\n S_TYPE = model.reqCode,\r\n S_SRC_NO = \"\",//\r\n N_PRIORITY = -1,\r\n S_WORK_MODE = \"agv\",\r\n S_B_STATE = \"MES\",\r\n S_CNTRS = model.cntrCode,\r\n N_START_LAYER = 1,\r\n N_END_LAYER = 1,\r\n N_CNTR_COUNT = 1\r\n };\r\n ITaskRepository taskserice = new TaskRepository();\r\n var i = taskserice.Insert(wmsTask) > 0;\r\n return new ReturnMsg { resultCode = (i ? 0 : -1), resultMsg = i ? \"\" : \"浠诲姟鐢熸垚澶辫触銆俓" };\r\n }\r\n else\r\n {\r\n return new ReturnMsg { resultCode = -1, resultMsg = \"浠诲姟閲嶅涓嬪彂銆俓" };\r\n }\r\n }\r\n }\r\n public class ReturnMsg\r\n {\r\n public int resultCode { get; set; }\r\n public string resultMsg { get; set; }\r\n }\r\n \r\n \r\n public static void ResMesTask()\r\n {\r\n ///1.\r\n TaskRepository taskservice = new TaskRepository();\r\n var tasks = taskservice.FindList(x => x.S_B_STATE == \"MES\" && x.N_PRIORITY == -88);\r\n var VERXs = Settings.deviceInfos?.FindAll(x => x.deviceName.Contains(\"鎹风灛鎶撹噦\"));\r\n if (VERXs.Any())\r\n foreach (var task in tasks)\r\n {\r\n var sx = VERXs?.Find(x => x.location.Contains(task.S_END_LOC));\r\n if (sx == null)\r\n {\r\n //鐩存帴鐢熸垚瀵瑰簲浠诲姟銆俓r\n var res = TaskProcess.CreateTask(task.S_TASK_NO, task.S_START_LOC, task.S_END_LOC, task.S_TYPE, 6, task.S_CNTRS.Split(',').ToList());\r\n if (res)\r\n {\r\n //task.N_PRIORITY = 0;\r\n taskservice.dbcontext.Set<TaskEntity>().Attach(task);\r\n taskservice.dbcontext.Entry(task).Property(x => x.N_PRIORITY).CurrentValue = 0;\r\n taskservice.dbcontext.Entry(task).Property(x => x.N_PRIORITY).IsModified = true;\r\n taskservice.dbcontext.SaveChanges();\r\n }\r\n }\r\n else\r\n {\r\n LocRepository locRepository = new LocRepository();\r\n //鐢熸垚璺宠穬浠诲姟銆� -- 鎵樼洏璐т綅琛ㄣ� \r\n var t1s = taskservice.FindList(x => x.S_SRC_NO == task.S_TASK_NO);\r\n if (t1s.Any())\r\n {\r\n var t1 = t1s.OrderBy(x => x.T_CREATE).LastOrDefault();\r\n if (t1.S_END_LOC == task.S_END_LOC)\r\n {\r\n task.N_PRIORITY = 0;\r\n task.S_B_STATE = \"MES_瀹屾垚\";\r\n taskservice.Update(task);\r\n }\r\n if (t1.S_B_STATE == \"瀹屾垚\")\r\n {\r\n //1.缁堢偣鏄惁鏈夋墭鐩樸� 渚濇嵁鏄粓鐐圭殑浠诲姟鏄�浣滀负缁堢偣锛岃繕鏄捣鐐广�\r\n var ec = taskservice.FindList(x => (x.S_START_LOC == task.S_START_LOC || x.S_END_LOC == task.S_END_LOC) /*&& DateTime.Now.Subtract(x.T_CREATE).TotalHours < 5*/).OrderByDescending(x => x.T_CREATE).FirstOrDefault();//($\"select top 1 * from TN_TASK WHERE S_START_LOC='{task.S_END_LOC}' OR S_END_LOC='{task.S_END_LOC}' ORDER BY T_CREATE DESC\");\r\n\r\n if (ec != null && ec.S_END_LOC == task.S_END_LOC)\r\n {\r\n //涓婃鏄叆搴撲换鍔°� 鍒欏嚭搴撱� 鍚﹀垯杩涜浜屾銆�\r\n LocEntity endLoc = null;\r\n var di = sx;\r\n if (di != null)\r\n {\r\n foreach (var ssloc in di.deviceNo)\r\n {\r\n var endloc = locRepository.FindEntity(x => x.S_LOC_CODE == ssloc);\r\n if (endloc != null && endloc.N_CURRENT_NUM == 0 && endloc.S_LOCK_STATE == \"鏃燶")\r\n {\r\n endLoc = endloc;\r\n break;\r\n }\r\n }\r\n if (endLoc != null)\r\n {\r\n var res = TaskProcess.CreateTask(\"\", task.S_END_LOC, endLoc.S_LOC_CODE, task.S_TYPE + \"涓嬬┖\", 7, t1.S_CNTRS.Split(',').ToList());\r\n if (res)\r\n {\r\n task.N_PRIORITY = 0; taskservice.Update(task);\r\n }\r\n }\r\n }\r\n }\r\n else\r\n {\r\n var res = TaskProcess.CreateTask(task.S_TASK_NO, t1.S_END_LOC, task.S_END_LOC, task.S_TYPE + \"琛ユ弧\", 6, task.S_CNTRS.Split(',').ToList());\r\n if (res)\r\n {\r\n task.N_PRIORITY = 0; taskservice.Update(task);\r\n }\r\n }\r\n }\r\n }\r\n else\r\n {\r\n //鐢熸垚绗竴娈点�\r\n LocEntity endLoc = null;\r\n var di = sx;\r\n if (di != null)\r\n {\r\n foreach (var ssloc in di.deviceNo)\r\n {\r\n var endloc = locRepository.FindEntity(x => x.S_LOC_CODE == ssloc);\r\n if (endloc != null && endloc.N_CURRENT_NUM == 0 && endloc.S_LOCK_STATE == \"鏃燶")\r\n {\r\n endLoc = endloc;\r\n break;\r\n }\r\n }\r\n if (endLoc != null)\r\n {\r\n var res = TaskProcess.CreateTask(\"\", task.S_START_LOC, endLoc.S_LOC_CODE, task.S_TYPE + \"婊¤浆\", 8, task.S_CNTRS.Split(',').ToList());\r\n if (res)\r\n {\r\n task.N_PRIORITY = 0; taskservice.Update(task);\r\n }\r\n }\r\n }\r\n }\r\n\r\n }\r\n }\r\n //var VERX = Settings.deviceInfos?.FindAll(x => x.deviceName.Contains(\"鎹风灛鎶撹噦\"));\r\n //if ()\r\n ///2 鐪嬬紦瀛樺尯銆�娌℃弧鐨勩�\r\n\r\n\r\n }\r\n \r\n \r\n}", + "CusMethod": { + "Name": "", + "Params": [], + "ReturnType": "" + }, + "CusClass": { + "Name": "ToWMSMES", + "InheritClass": "", + "Inherits": [] + } } ], "CreationTime": "2025-02-26 15:31:23", - "LastWriteTime": "2025-04-18 10:41:31", + "LastWriteTime": "2025-05-31 17:56:35", "HasSaved": true } \ No newline at end of file diff --git a/S7/Scripts/Script.json b/S7/Scripts/Script.json index 1e2e745..5585981 100644 --- a/S7/Scripts/Script.json +++ b/S7/Scripts/Script.json @@ -966,6 +966,81 @@ "FullName": "涓氬姟閫昏緫.浠诲姟涓嬪彂", "ParentFullName": "涓氬姟閫昏緫", "Enabled": "Enabled" + }, + { + "ID": "20250531163653189", + "Name": "澶勭悊绾跨▼", + "Desc": "", + "Content": "", + "ContentCopy": "", + "ParentID": "20250226153120175", + "Children": [ + { + "ID": "20250531163716255", + "Name": "ResolveMesTask", + "Desc": "", + "Content": "", + "ContentCopy": "", + "ParentID": "20250531163653189", + "Children": [], + "Type": "Program", + "Property": { + "SyncExec": "False", + "RepeatExec": "Until", + "ExceCount": 1, + "ExceInternal": 3000, + "StartCondition": { + "Type": "View", + "Event": "", + "Expression": "", + "Judge": "", + "Command": {}, + "HmiEvent": { + "20250306140515428": [ + "Open" + ] + } + }, + "EndCondition": { + "Type": "None", + "Event": "", + "Expression": "", + "Judge": "", + "Command": {}, + "HmiEvent": {} + } + }, + "FullName": "涓氬姟閫昏緫.澶勭悊绾跨▼.ResolveMesTask", + "ParentFullName": "涓氬姟閫昏緫.澶勭悊绾跨▼", + "Enabled": "Enabled" + } + ], + "Type": "Group", + "Property": { + "SyncExec": "False", + "RepeatExec": "None", + "ExceCount": 1, + "ExceInternal": 3000, + "StartCondition": { + "Type": "None", + "Event": "", + "Expression": "", + "Judge": "", + "Command": {}, + "HmiEvent": {} + }, + "EndCondition": { + "Type": "None", + "Event": "", + "Expression": "", + "Judge": "", + "Command": {}, + "HmiEvent": {} + } + }, + "FullName": "涓氬姟閫昏緫.澶勭悊绾跨▼", + "ParentFullName": "涓氬姟閫昏緫", + "Enabled": "Enabled" } ], "Type": "Group", @@ -1032,6 +1107,6 @@ } ], "CreationTime": "2025-02-26 15:31:20", - "LastWriteTime": "2025-04-17 09:48:04", + "LastWriteTime": "2025-05-31 16:38:12", "HasSaved": true } \ No newline at end of file diff --git a/S7/Static/config.json b/S7/Static/config.json index a41a6d8..4b5077b 100644 --- a/S7/Static/config.json +++ b/S7/Static/config.json @@ -1,54 +1,56 @@ { - "HostToAgvServerUrl": "vvvvvvvvvvvv", - "HKbaseUrl": "http://10.221.55.249:8181/", - "deviceInfo": [ - { - "address": "0", - "deviceName": "缁村笇灏旀姄鑷�", - "deviceNo": [], - "location": [ "VXR1L", "VXR1R" ], - "deviceType": 1, - "enable": 1 - }, - { - "address": "0", - "deviceName": "缁村笇灏旀姄鑷�", - "deviceNo": [], - "location": [ "韪㈣涪韪� ], - "deviceType": 1, - "enable": 1 - }, - { - "address": "0", - "deviceName": "鎹风灛杈撻�1", - "deviceNo": [], - "location": [ "韪㈣涪韪� ], - "deviceType": 3, - "enable": 1 - }, - { - "address": "0", - "deviceName": "鎹风灛杈撻�2", - "deviceNo": [], - "location": [ "韪㈣涪韪� ], - "deviceType": 3, - "enable": 1 - }, - { - "address": "0", - "deviceName": "鎹风灛鎶撹噦1", - "deviceNo": [], - "location": [ "韪㈣涪韪� ], - "deviceType": 2, - "enable": 1 - }, - { - "address": "0", - "deviceName": "鎹风灛鎶撹噦2", - "deviceNo": [], - "location": [ "韪㈣涪韪� ], - "deviceType": 2, - "enable": 1 - } - ] + "HostToAgvServerUrl": "vvvvvvvvvvvv", + "HKbaseUrl": "http://10.221.55.249:8181/", + "MESbaseUrl": "http://10.80.2.45:32630/", + "WMESbaseUrl": "http://10.80.2.45:32630/", + "deviceInfo": [ + { + "address": "0", + "deviceName": "缁村笇灏旀姄鑷�", + "deviceNo": [], + "location": [ "VXR1L", "VXR1R" ], + "deviceType": 1, + "enable": 1 + }, + { + "address": "0", + "deviceName": "缁村笇灏旀姄鑷�", + "deviceNo": [], + "location": [ "韪㈣涪韪� ], + "deviceType": 1, + "enable": 1 + }, + { + "address": "0", + "deviceName": "鎹风灛杈撻�1", + "deviceNo": [], + "location": [ "韪㈣涪韪� ], + "deviceType": 3, + "enable": 1 + }, + { + "address": "0", + "deviceName": "鎹风灛杈撻�2", + "deviceNo": [], + "location": [ "韪㈣涪韪� ], + "deviceType": 3, + "enable": 1 + }, + { + "address": "0", + "deviceName": "鎹风灛鎶撹噦1", + "deviceNo": [], + "location": [ "韪㈣涪韪� ], + "deviceType": 2, + "enable": 1 + }, + { + "address": "0", + "deviceName": "鎹风灛鎶撹噦2", + "deviceNo": [], + "location": [ "韪㈣涪韪� ], + "deviceType": 2, + "enable": 1 + } + ] } \ No newline at end of file -- Gitblit v1.9.1