From d63486f13c7bf7844180ca0b7277a3386cddbf9d Mon Sep 17 00:00:00 2001 From: czw <selecti@yeah.net> Date: 星期三, 02 七月 2025 10:15:33 +0800 Subject: [PATCH] 1 --- S7/Scripts/Custom.json | 68 +++++++++++++++++++++++++++------ 1 files changed, 55 insertions(+), 13 deletions(-) diff --git a/S7/Scripts/Custom.json b/S7/Scripts/Custom.json index f58aa65..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 \tLogHelper.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 \tLogHelper.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": [], @@ -120,8 +120,8 @@ "Type": "MethodCode", "Level": "Item", "Statement": "public void OperateHKTaskStatus(System.Object param1)", - "EditCode": "HaiKangOrderInfo model = (HaiKangOrderInfo)param1;\r\nif (string.IsNullOrEmpty(model.taskCode))\r\n\treturn;\r\n// 鏌ヨ浠诲姟锛氭牴鎹换鍔″彿\r\n//var wcsTask = WCSHelper.GetTask(model.taskCode);\r\nITaskRepository MainMissionService = new TaskRepository();\r\nvar wcsTask = MainMissionService.FindEntity(x => model.taskCode == x.S_TASK_NO);\r\nif (wcsTask != null)\r\n{\r\n if (!string.IsNullOrWhiteSpace(model.method))\r\n {\r\n ILocRepository locrep = new LocRepository();\r\n var startloc = locrep.FindEntity(x => x.S_LOC_CODE == wcsTask.S_START_LOC);\r\n var endLoc = locrep.FindEntity(x => x.S_LOC_CODE == wcsTask.S_END_LOC);\r\n\r\n switch (model.method)\r\n {\r\n case \"start\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鎵ц锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n if (wcsTask.S_B_STATE.Trim() == \"宸叉帹閫乗")\r\n {\r\n wcsTask.S_B_STATE = \"鎵ц涓璡";\r\n wcsTask.T_START_TIME = DateTime.Now;\r\n MainMissionService.Update(wcsTask);\r\n }\r\n break;\r\n case \"outbin\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鍙栬揣瀹屾垚锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n startloc.S_LOCK_STATE = \"鏃燶";\r\n startloc.T_MODIFY = DateTime.Now;\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(startloc);\r\n //LocationHelper.UnLockLoc(wcsTask.S_START_LOC);\r\n break;\r\n case \"end\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负瀹屾垚锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"瀹屾垚\";\r\n wcsTask.T_END_TIME = DateTime.Now;\r\n endLoc.S_LOCK_STATE = \"鏃燶";\r\n endLoc.T_MODIFY = DateTime.Now;\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(endLoc);\r\n //LocationMethod.JudgeLocation(wcsTask);\r\n break;\r\n case \"cancel\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鍙栨秷锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"鍙栨秷\";\r\n startloc.S_LOCK_STATE = \"鏃燶";\r\n endLoc.S_LOCK_STATE = \"鏃燶";\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(startloc);\r\n locrep.Update(endLoc);\r\n //TaskProcess.OperateStatus(wcsTask, 7);\r\n //WCSHelper.Fail(wcsTask);\r\n break;\r\n case \"apply\":\r\n // 鍒ゆ柇璇ヤ换鍔$殑鎺ラ┏浣嶆槸鍚︽湁鍏朵粬鍏ュ簱鎴栧嚭搴撲换鍔★紝濡傛灉鏈夛紝鍒欏湪绛変綅绛夊緟锛屽鏋滄病鏈夛紝鍒欏叆\r\n TaskisOk(wcsTask);\r\n break;\r\n }\r\n\r\n TaskProcess.AddActionRecord(model.taskCode, model.method, model.eqpCode, model.data);\r\n //WCSHelper.AddActionRecord(model.taskCode, wcsTask.N_B_STATE, model.eqpCode, model.data);\r\n //璋冪敤绗笁鏂规帴鍙o紙濡傛灉鏈夛級TaskProcess.ReportStatus\r\n }\r\n else\r\n {\r\n // 鏆傛椂璁惧畾涓�\r\n wcsTask.S_B_STATE = \"涓婃姤鐘舵�绌篭";\r\n MainMissionService.Update(wcsTask);\r\n //瀹夊叏璇锋眰绛塡r\n //TaskProcess.OperateReq(model.taskCode, wcsTask.N_B_STATE, model.eqpCode, model.data);\r\n }\r\n}\r\nelse\r\n{\r\n LogHelper.Info($\"褰撳墠浠诲姟鍙蜂换鍔′笉瀛樺湪{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n}", - "Code": "public void OperateHKTaskStatus(System.Object param1)\r\n{HaiKangOrderInfo model = (HaiKangOrderInfo)param1;\r\nif (string.IsNullOrEmpty(model.taskCode))\r\n\treturn;\r\n// 鏌ヨ浠诲姟锛氭牴鎹换鍔″彿\r\n//var wcsTask = WCSHelper.GetTask(model.taskCode);\r\nITaskRepository MainMissionService = new TaskRepository();\r\nvar wcsTask = MainMissionService.FindEntity(x => model.taskCode == x.S_TASK_NO);\r\nif (wcsTask != null)\r\n{\r\n if (!string.IsNullOrWhiteSpace(model.method))\r\n {\r\n ILocRepository locrep = new LocRepository();\r\n var startloc = locrep.FindEntity(x => x.S_LOC_CODE == wcsTask.S_START_LOC);\r\n var endLoc = locrep.FindEntity(x => x.S_LOC_CODE == wcsTask.S_END_LOC);\r\n\r\n switch (model.method)\r\n {\r\n case \"start\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鎵ц锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n if (wcsTask.S_B_STATE.Trim() == \"宸叉帹閫乗")\r\n {\r\n wcsTask.S_B_STATE = \"鎵ц涓璡";\r\n wcsTask.T_START_TIME = DateTime.Now;\r\n MainMissionService.Update(wcsTask);\r\n }\r\n break;\r\n case \"outbin\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鍙栬揣瀹屾垚锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n startloc.S_LOCK_STATE = \"鏃燶";\r\n startloc.T_MODIFY = DateTime.Now;\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(startloc);\r\n //LocationHelper.UnLockLoc(wcsTask.S_START_LOC);\r\n break;\r\n case \"end\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负瀹屾垚锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"瀹屾垚\";\r\n wcsTask.T_END_TIME = DateTime.Now;\r\n endLoc.S_LOCK_STATE = \"鏃燶";\r\n endLoc.T_MODIFY = DateTime.Now;\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(endLoc);\r\n //LocationMethod.JudgeLocation(wcsTask);\r\n break;\r\n case \"cancel\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鍙栨秷锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"鍙栨秷\";\r\n startloc.S_LOCK_STATE = \"鏃燶";\r\n endLoc.S_LOCK_STATE = \"鏃燶";\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(startloc);\r\n locrep.Update(endLoc);\r\n //TaskProcess.OperateStatus(wcsTask, 7);\r\n //WCSHelper.Fail(wcsTask);\r\n break;\r\n case \"apply\":\r\n // 鍒ゆ柇璇ヤ换鍔$殑鎺ラ┏浣嶆槸鍚︽湁鍏朵粬鍏ュ簱鎴栧嚭搴撲换鍔★紝濡傛灉鏈夛紝鍒欏湪绛変綅绛夊緟锛屽鏋滄病鏈夛紝鍒欏叆\r\n TaskisOk(wcsTask);\r\n break;\r\n }\r\n\r\n TaskProcess.AddActionRecord(model.taskCode, model.method, model.eqpCode, model.data);\r\n //WCSHelper.AddActionRecord(model.taskCode, wcsTask.N_B_STATE, model.eqpCode, model.data);\r\n //璋冪敤绗笁鏂规帴鍙o紙濡傛灉鏈夛級TaskProcess.ReportStatus\r\n }\r\n else\r\n {\r\n // 鏆傛椂璁惧畾涓�\r\n wcsTask.S_B_STATE = \"涓婃姤鐘舵�绌篭";\r\n MainMissionService.Update(wcsTask);\r\n //瀹夊叏璇锋眰绛塡r\n //TaskProcess.OperateReq(model.taskCode, wcsTask.N_B_STATE, model.eqpCode, model.data);\r\n }\r\n}\r\nelse\r\n{\r\n LogHelper.Info($\"褰撳墠浠诲姟鍙蜂换鍔′笉瀛樺湪{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n}\r\n}", + "EditCode": "HaiKangOrderInfo model = (HaiKangOrderInfo)param1;\r\nif (string.IsNullOrEmpty(model.taskCode))\r\n return;\r\n// 鏌ヨ浠诲姟锛氭牴鎹换鍔″彿\r\n//var wcsTask = WCSHelper.GetTask(model.taskCode);\r\nITaskRepository MainMissionService = new TaskRepository();\r\nvar wcsTask = MainMissionService.FindEntity(x => model.taskCode == x.S_TASK_NO);\r\nif (wcsTask != null)\r\n{\r\n if (!string.IsNullOrWhiteSpace(model.method))\r\n {\r\n ILocRepository locrep = new LocRepository();\r\n var startloc = locrep.FindEntity(x => x.S_LOC_CODE == wcsTask.S_START_LOC);\r\n var endLoc = locrep.FindEntity(x => x.S_LOC_CODE == wcsTask.S_END_LOC);\r\n\r\n List<string> cntrs = wcsTask.S_CNTRS.Split(',').ToList();\r\n switch (model.method)\r\n {\r\n case \"start\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鎵ц锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n if (wcsTask.S_B_STATE.Trim() == \"宸叉帹閫乗")\r\n {\r\n wcsTask.S_B_STATE = \"鎵ц涓璡";\r\n wcsTask.T_START_TIME = DateTime.Now;\r\n MainMissionService.Update(wcsTask);\r\n }\r\n break;\r\n case \"outbin\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鍙栬揣瀹屾垚锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n\r\n startloc.N_CURRENT_NUM = 0;\r\n startloc.S_LOCK_STATE = \"鏃燶";\r\n startloc.T_MODIFY = DateTime.Now;\r\n ILocContainerRepository locContainerRepository = new LocContainerRepository();\r\n //var cnr = locContainerRepository.FindList(x => cntrs.Contains(x.S_CNTR_CODE.Trim()) && x.S_LOC_CODE == wcsTask.S_START_LOC);\r\n locContainerRepository.Delete(x => cntrs.Contains(x.S_CNTR_CODE.Trim()) && x.S_LOC_CODE == wcsTask.S_START_LOC);\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(startloc);\r\n\r\n var device = Settings.deviceInfos.Find(x => x.location.Contains(wcsTask.S_START_LOC));\r\n if (device != null)\r\n {\r\n if (device.deviceType == 1)\r\n {\r\n if (device.deviceName.Contains(\"缁村笇灏旀姄鑷俓"))\r\n {\r\n string V = device.location.ToList().FindIndex(x => x == wcsTask.S_START_LOC) == 0 ? \"R05\" : \"R06\";\r\n Conn.榛樿Redis.SetValue(device.deviceName + \".\" + V, \"true\", device.deviceName + \"Queue\");\r\n }\r\n }\r\n //else if(device.deviceType == 2)\r\n // if (device.deviceName.Contains(\"鎹风灛鎶撹噦\"))\r\n // Conn.榛樿Redis.SetValue(device.deviceName + \".R10\", \"true\", device.deviceName + \"Queue\");\r\n }\r\n //LocationHelper.UnLockLoc(wcsTask.S_START_LOC);\r\n break;\r\n case \"end\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负瀹屾垚锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"瀹屾垚\";\r\n wcsTask.T_END_TIME = DateTime.Now;\r\n\r\n ILocContainerRepository locContainerRepository2 = new LocContainerRepository();\r\n List<LocContainerEntity> llls = new List<LocContainerEntity>();\r\n foreach (var c in cntrs)\r\n {\r\n var action = new LocContainerEntity()\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_LOC_CODE = endLoc.S_LOC_CODE,\r\n S_CNTR_CODE = c,\r\n S_TYPE = \"\",\r\n };\r\n llls.Add(action);\r\n }\r\n\r\n endLoc.S_LOCK_STATE = \"鏃燶";\r\n startloc.N_CURRENT_NUM = 1;\r\n endLoc.T_MODIFY = DateTime.Now;\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(endLoc);\r\n locContainerRepository2.Insert(llls);\r\n\r\n var device2 = Settings.deviceInfos.Find(x => x.location.Contains(wcsTask.S_END_LOC));\r\n if (device2 != null)\r\n {\r\n if (device2.deviceType == 1)\r\n {\r\n if (device2.deviceName.Contains(\"缁村笇灏旀姄鑷俓"))\r\n {\r\n string V = device2.location.ToList().FindIndex(x => x == wcsTask.S_START_LOC) == 0 ? \"R10\" : \"R11\";\r\n Conn.榛樿Redis.SetValue(device2.deviceName + \".\" + V, \"true\", device2.deviceName + \"Queue\");\r\n }\r\n }\r\n //else if(device.deviceType == 2)\r\n // if (device.deviceName.Contains(\"鎹风灛鎶撹噦\"))\r\n // Conn.榛樿Redis.SetValue(device.deviceName + \".R10\", \"true\", device.deviceName + \"Queue\");\r\n }\r\n\r\n //LocationMethod.JudgeLocation(wcsTask);\r\n break;\r\n case \"cancel\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鍙栨秷锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"鍙栨秷\";\r\n startloc.S_LOCK_STATE = \"鏃燶";\r\n endLoc.S_LOCK_STATE = \"鏃燶";\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(startloc);\r\n locrep.Update(endLoc);\r\n //TaskProcess.OperateStatus(wcsTask, 7);\r\n //WCSHelper.Fail(wcsTask);\r\n break;\r\n case \"apply\":\r\n // 鍒ゆ柇璇ヤ换鍔$殑鎺ラ┏浣嶆槸鍚︽湁鍏朵粬鍏ュ簱鎴栧嚭搴撲换鍔★紝濡傛灉鏈夛紝鍒欏湪绛変綅绛夊緟锛屽鏋滄病鏈夛紝鍒欏叆\r\n TaskisOk(wcsTask);\r\n break;\r\n }\r\n\r\n TaskProcess.AddActionRecord(model.taskCode, model.method, model.eqpCode, model.data);\r\n //璋冪敤绗笁鏂规帴鍙o紙濡傛灉鏈夛級TaskProcess.ReportStatus\r\n }\r\n else\r\n {\r\n // 鏆傛椂璁惧畾涓�\r\n wcsTask.S_B_STATE = \"涓婃姤鐘舵�绌篭";\r\n //瀹夊叏璇锋眰绛塡r\n //TaskProcess.OperateReq(model.taskCode, wcsTask.N_B_STATE, model.eqpCode, model.data);\r\n }\r\n}\r\nelse\r\n{\r\n LogHelper.Info($\"褰撳墠浠诲姟鍙蜂换鍔′笉瀛樺湪{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n}", + "Code": "public void OperateHKTaskStatus(System.Object param1)\r\n{HaiKangOrderInfo model = (HaiKangOrderInfo)param1;\r\nif (string.IsNullOrEmpty(model.taskCode))\r\n return;\r\n// 鏌ヨ浠诲姟锛氭牴鎹换鍔″彿\r\n//var wcsTask = WCSHelper.GetTask(model.taskCode);\r\nITaskRepository MainMissionService = new TaskRepository();\r\nvar wcsTask = MainMissionService.FindEntity(x => model.taskCode == x.S_TASK_NO);\r\nif (wcsTask != null)\r\n{\r\n if (!string.IsNullOrWhiteSpace(model.method))\r\n {\r\n ILocRepository locrep = new LocRepository();\r\n var startloc = locrep.FindEntity(x => x.S_LOC_CODE == wcsTask.S_START_LOC);\r\n var endLoc = locrep.FindEntity(x => x.S_LOC_CODE == wcsTask.S_END_LOC);\r\n\r\n List<string> cntrs = wcsTask.S_CNTRS.Split(',').ToList();\r\n switch (model.method)\r\n {\r\n case \"start\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鎵ц锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n if (wcsTask.S_B_STATE.Trim() == \"宸叉帹閫乗")\r\n {\r\n wcsTask.S_B_STATE = \"鎵ц涓璡";\r\n wcsTask.T_START_TIME = DateTime.Now;\r\n MainMissionService.Update(wcsTask);\r\n }\r\n break;\r\n case \"outbin\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鍙栬揣瀹屾垚锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n\r\n startloc.N_CURRENT_NUM = 0;\r\n startloc.S_LOCK_STATE = \"鏃燶";\r\n startloc.T_MODIFY = DateTime.Now;\r\n ILocContainerRepository locContainerRepository = new LocContainerRepository();\r\n //var cnr = locContainerRepository.FindList(x => cntrs.Contains(x.S_CNTR_CODE.Trim()) && x.S_LOC_CODE == wcsTask.S_START_LOC);\r\n locContainerRepository.Delete(x => cntrs.Contains(x.S_CNTR_CODE.Trim()) && x.S_LOC_CODE == wcsTask.S_START_LOC);\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(startloc);\r\n\r\n var device = Settings.deviceInfos.Find(x => x.location.Contains(wcsTask.S_START_LOC));\r\n if (device != null)\r\n {\r\n if (device.deviceType == 1)\r\n {\r\n if (device.deviceName.Contains(\"缁村笇灏旀姄鑷俓"))\r\n {\r\n string V = device.location.ToList().FindIndex(x => x == wcsTask.S_START_LOC) == 0 ? \"R05\" : \"R06\";\r\n Conn.榛樿Redis.SetValue(device.deviceName + \".\" + V, \"true\", device.deviceName + \"Queue\");\r\n }\r\n }\r\n //else if(device.deviceType == 2)\r\n // if (device.deviceName.Contains(\"鎹风灛鎶撹噦\"))\r\n // Conn.榛樿Redis.SetValue(device.deviceName + \".R10\", \"true\", device.deviceName + \"Queue\");\r\n }\r\n //LocationHelper.UnLockLoc(wcsTask.S_START_LOC);\r\n break;\r\n case \"end\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负瀹屾垚锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"瀹屾垚\";\r\n wcsTask.T_END_TIME = DateTime.Now;\r\n\r\n ILocContainerRepository locContainerRepository2 = new LocContainerRepository();\r\n List<LocContainerEntity> llls = new List<LocContainerEntity>();\r\n foreach (var c in cntrs)\r\n {\r\n var action = new LocContainerEntity()\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_LOC_CODE = endLoc.S_LOC_CODE,\r\n S_CNTR_CODE = c,\r\n S_TYPE = \"\",\r\n };\r\n llls.Add(action);\r\n }\r\n\r\n endLoc.S_LOCK_STATE = \"鏃燶";\r\n startloc.N_CURRENT_NUM = 1;\r\n endLoc.T_MODIFY = DateTime.Now;\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(endLoc);\r\n locContainerRepository2.Insert(llls);\r\n\r\n var device2 = Settings.deviceInfos.Find(x => x.location.Contains(wcsTask.S_END_LOC));\r\n if (device2 != null)\r\n {\r\n if (device2.deviceType == 1)\r\n {\r\n if (device2.deviceName.Contains(\"缁村笇灏旀姄鑷俓"))\r\n {\r\n string V = device2.location.ToList().FindIndex(x => x == wcsTask.S_START_LOC) == 0 ? \"R10\" : \"R11\";\r\n Conn.榛樿Redis.SetValue(device2.deviceName + \".\" + V, \"true\", device2.deviceName + \"Queue\");\r\n }\r\n }\r\n //else if(device.deviceType == 2)\r\n // if (device.deviceName.Contains(\"鎹风灛鎶撹噦\"))\r\n // Conn.榛樿Redis.SetValue(device.deviceName + \".R10\", \"true\", device.deviceName + \"Queue\");\r\n }\r\n\r\n //LocationMethod.JudgeLocation(wcsTask);\r\n break;\r\n case \"cancel\":\r\n LogHelper.Info($\"娴峰悍杞︿换鍔$姸鎬佸彉鏇翠负鍙栨秷锛屼换鍔″彿涓猴細{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n wcsTask.S_B_STATE = \"鍙栨秷\";\r\n startloc.S_LOCK_STATE = \"鏃燶";\r\n endLoc.S_LOCK_STATE = \"鏃燶";\r\n MainMissionService.Update(wcsTask);\r\n locrep.Update(startloc);\r\n locrep.Update(endLoc);\r\n //TaskProcess.OperateStatus(wcsTask, 7);\r\n //WCSHelper.Fail(wcsTask);\r\n break;\r\n case \"apply\":\r\n // 鍒ゆ柇璇ヤ换鍔$殑鎺ラ┏浣嶆槸鍚︽湁鍏朵粬鍏ュ簱鎴栧嚭搴撲换鍔★紝濡傛灉鏈夛紝鍒欏湪绛変綅绛夊緟锛屽鏋滄病鏈夛紝鍒欏叆\r\n TaskisOk(wcsTask);\r\n break;\r\n }\r\n\r\n TaskProcess.AddActionRecord(model.taskCode, model.method, model.eqpCode, model.data);\r\n //璋冪敤绗笁鏂规帴鍙o紙濡傛灉鏈夛級TaskProcess.ReportStatus\r\n }\r\n else\r\n {\r\n // 鏆傛椂璁惧畾涓�\r\n wcsTask.S_B_STATE = \"涓婃姤鐘舵�绌篭";\r\n //瀹夊叏璇锋眰绛塡r\n //TaskProcess.OperateReq(model.taskCode, wcsTask.N_B_STATE, model.eqpCode, model.data);\r\n }\r\n}\r\nelse\r\n{\r\n LogHelper.Info($\"褰撳墠浠诲姟鍙蜂换鍔′笉瀛樺湪{model.taskCode}\", \"agv鏉弶浜や簰鏃ュ織\");\r\n}\r\n}", "CusMethod": { "Name": "OperateHKTaskStatus", "Params": [ @@ -356,8 +356,8 @@ "Type": "MethodCode", "Level": "Item", "Statement": "public System.Boolean RunTask(GZ.DB.Entity.OIDATABASE.TaskEntity task)", - "EditCode": "\r\n ILocRepository locrep = new LocRepository();\r\n var startloc = locrep.FindEntity(x => x.S_LOC_CODE == task.S_START_LOC);\r\n var endLoc = locrep.FindEntity(x => x.S_LOC_CODE == task.S_END_LOC);\r\n if (startloc == null || endLoc == null)\r\n {\r\n LogHelper.Info($\"{task.S_TASK_NO}-浠诲姟璧�缁堢偣 娌℃壘鍒版暟鎹�\");\r\n return false;\r\n }\r\n var start = startloc.S_AGV_SITE;\r\n var end = endLoc.S_AGV_SITE;\r\n\r\n // 鍒涘缓涓や釜璺緞\r\n var positions = new List<positionCodePath>(){\r\n new positionCodePath()\r\n {\r\n positionCode = start,\r\n Type = \"00\"\r\n },\r\n new positionCodePath()\r\n {\r\n positionCode = end,\r\n Type = \"00\"\r\n }\r\n };\r\n\r\n //璋冪涓夋柟鎺ュ彛\r\n var model = new HaiKangOrderInfo\r\n {\r\n taskCode = task.S_TASK_NO,\r\n ctnrCode = task.S_CNTRS,\r\n taskTyp = \"F02\",\r\n positionCodePath = positions\r\n };\r\n\r\n return CreateOrder(model);", - "Code": "public System.Boolean RunTask(GZ.DB.Entity.OIDATABASE.TaskEntity task)\r\n{\r\n ILocRepository locrep = new LocRepository();\r\n var startloc = locrep.FindEntity(x => x.S_LOC_CODE == task.S_START_LOC);\r\n var endLoc = locrep.FindEntity(x => x.S_LOC_CODE == task.S_END_LOC);\r\n if (startloc == null || endLoc == null)\r\n {\r\n LogHelper.Info($\"{task.S_TASK_NO}-浠诲姟璧�缁堢偣 娌℃壘鍒版暟鎹�\");\r\n return false;\r\n }\r\n var start = startloc.S_AGV_SITE;\r\n var end = endLoc.S_AGV_SITE;\r\n\r\n // 鍒涘缓涓や釜璺緞\r\n var positions = new List<positionCodePath>(){\r\n new positionCodePath()\r\n {\r\n positionCode = start,\r\n Type = \"00\"\r\n },\r\n new positionCodePath()\r\n {\r\n positionCode = end,\r\n Type = \"00\"\r\n }\r\n };\r\n\r\n //璋冪涓夋柟鎺ュ彛\r\n var model = new HaiKangOrderInfo\r\n {\r\n taskCode = task.S_TASK_NO,\r\n ctnrCode = task.S_CNTRS,\r\n taskTyp = \"F02\",\r\n positionCodePath = positions\r\n };\r\n\r\n return CreateOrder(model);\r\n}", + "EditCode": "\r\n ILocRepository locrep = new LocRepository();\r\n var startloc = locrep.FindEntity(x => x.S_LOC_CODE == task.S_START_LOC);\r\n var endLoc = locrep.FindEntity(x => x.S_LOC_CODE == task.S_END_LOC);\r\n if (startloc == null || endLoc == null)\r\n {\r\n LogHelper.Info($\"{task.S_TASK_NO}-浠诲姟璧�缁堢偣 娌℃壘鍒版暟鎹�\");\r\n return false;\r\n }\r\n var start = startloc.S_AGV_SITE.Trim();\r\n var end = endLoc.S_AGV_SITE.Trim();\r\n\r\n // 鍒涘缓涓や釜璺緞\r\n var positions = new List<positionCodePath>(){\r\n new positionCodePath()\r\n {\r\n positionCode = start,\r\n Type = \"00\"\r\n },\r\n new positionCodePath()\r\n {\r\n positionCode = end,\r\n Type = \"00\"\r\n }\r\n };\r\n\r\n //璋冪涓夋柟鎺ュ彛\r\n var model = new HaiKangOrderInfo\r\n {\r\n reqCode=task.S_TASK_NO.Trim(),\r\n reqTime=DateTime.Now.ToString(\"yyyy-MM-dd HH:mm:ss\"),\r\n taskCode = task.S_TASK_NO.Trim(),\r\n ctnrCode = task.S_CNTRS,\r\n taskTyp = \"F01\",\r\n positionCodePath = positions\r\n };\r\n\r\n return CreateOrder(model);", + "Code": "public System.Boolean RunTask(GZ.DB.Entity.OIDATABASE.TaskEntity task)\r\n{\r\n ILocRepository locrep = new LocRepository();\r\n var startloc = locrep.FindEntity(x => x.S_LOC_CODE == task.S_START_LOC);\r\n var endLoc = locrep.FindEntity(x => x.S_LOC_CODE == task.S_END_LOC);\r\n if (startloc == null || endLoc == null)\r\n {\r\n LogHelper.Info($\"{task.S_TASK_NO}-浠诲姟璧�缁堢偣 娌℃壘鍒版暟鎹�\");\r\n return false;\r\n }\r\n var start = startloc.S_AGV_SITE.Trim();\r\n var end = endLoc.S_AGV_SITE.Trim();\r\n\r\n // 鍒涘缓涓や釜璺緞\r\n var positions = new List<positionCodePath>(){\r\n new positionCodePath()\r\n {\r\n positionCode = start,\r\n Type = \"00\"\r\n },\r\n new positionCodePath()\r\n {\r\n positionCode = end,\r\n Type = \"00\"\r\n }\r\n };\r\n\r\n //璋冪涓夋柟鎺ュ彛\r\n var model = new HaiKangOrderInfo\r\n {\r\n reqCode=task.S_TASK_NO.Trim(),\r\n reqTime=DateTime.Now.ToString(\"yyyy-MM-dd HH:mm:ss\"),\r\n taskCode = task.S_TASK_NO.Trim(),\r\n ctnrCode = task.S_CNTRS,\r\n taskTyp = \"F01\",\r\n positionCodePath = positions\r\n };\r\n\r\n return CreateOrder(model);\r\n}", "CusMethod": { "Name": "RunTask", "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": [], @@ -572,8 +572,8 @@ "Type": "ClassCode", "Level": "Item", "Statement": "public class SYSHelper", - "EditCode": "private static object locker = new object();\r\ninternal static int GetSerialNumber(string snType, string prefix, string Vend = \"0\")\r\n{\r\n if (Vend == \"1\")\r\n Vend = DateTime.Now.ToString(\"yyMMdd\");\r\n int result = 0;\r\n lock (locker)\r\n {\r\n ISYSRepository sysservice = new SYSRepository();\r\n var sId = sysservice.FindEntity(a => a.CN_S_TYPE.Trim() == snType && a.CN_S_PRE.Trim() == prefix + Vend);\r\n\r\n if (sId != null)\r\n {\r\n sId.CN_N_MAX++;\r\n sId.CN_T_LAST = DateTime.Now;\r\n sysservice.Update(sId);\r\n result = sId.CN_N_MAX;\r\n }\r\n else\r\n {\r\n sId = new SYSEntity { CN_S_TYPE = snType, CN_T_LAST = DateTime.Now, CN_S_PRE = prefix + Vend, CN_N_MAX = 0 };\r\n sysservice.Insert(sId);\r\n }\r\n }\r\n return result;\r\n}", - "Code": "public class SYSHelper\r\n{private static object locker = new object();\r\ninternal static int GetSerialNumber(string snType, string prefix, string Vend = \"0\")\r\n{\r\n if (Vend == \"1\")\r\n Vend = DateTime.Now.ToString(\"yyMMdd\");\r\n int result = 0;\r\n lock (locker)\r\n {\r\n ISYSRepository sysservice = new SYSRepository();\r\n var sId = sysservice.FindEntity(a => a.CN_S_TYPE.Trim() == snType && a.CN_S_PRE.Trim() == prefix + Vend);\r\n\r\n if (sId != null)\r\n {\r\n sId.CN_N_MAX++;\r\n sId.CN_T_LAST = DateTime.Now;\r\n sysservice.Update(sId);\r\n result = sId.CN_N_MAX;\r\n }\r\n else\r\n {\r\n sId = new SYSEntity { CN_S_TYPE = snType, CN_T_LAST = DateTime.Now, CN_S_PRE = prefix + Vend, CN_N_MAX = 0 };\r\n sysservice.Insert(sId);\r\n }\r\n }\r\n return result;\r\n}\r\n}", + "EditCode": "private static object locker = new object();\r\ninternal static int GetSerialNumber(string snType, string prefix, string Vend = \"0\")\r\n{\r\n if (Vend == \"1\")\r\n Vend = DateTime.Now.ToString(\"yyMMdd\");\r\n int result = 0;\r\n lock (locker)\r\n {\r\n SYSRepository sysservice = new SYSRepository();\r\n var sId = sysservice.FindEntity(a => a.CN_S_TYPE.Trim() == snType && a.CN_S_PRE.Trim() == prefix + Vend);\r\n\r\n if (sId != null)\r\n {\r\n \r\n sId.CN_N_MAX++;\r\n sId.CN_T_LAST = DateTime.Now;\r\n //sysservice.Update(sId);\r\n\r\n sysservice.dbcontext.Set<SYSEntity>().Attach(sId);\r\n sysservice.dbcontext.Entry(sId).Property(x => x.CN_N_MAX).CurrentValue = sId.CN_N_MAX;\r\n\r\n sysservice.dbcontext.Entry(sId).Property(x => x.CN_N_MAX).IsModified = true;\r\n sysservice.dbcontext.Entry(sId).Property(x=>x.CN_T_LAST).CurrentValue = sId.CN_T_LAST;\r\n\r\n sysservice.dbcontext.Entry(sId).Property(x=>x.CN_T_LAST).IsModified = true;\r\n \r\n sysservice.dbcontext.SaveChanges();\r\n result = sId.CN_N_MAX;\r\n }\r\n else\r\n {\r\n sId = new SYSEntity { CN_S_TYPE = snType, CN_T_LAST = DateTime.Now, CN_S_PRE = prefix + Vend, CN_N_MAX = 0,CN_S_APP_TYPE=\"WCS\" };\r\n sysservice.Insert(sId);\r\n }\r\n }\r\n return result;\r\n}", + "Code": "public class SYSHelper\r\n{private static object locker = new object();\r\ninternal static int GetSerialNumber(string snType, string prefix, string Vend = \"0\")\r\n{\r\n if (Vend == \"1\")\r\n Vend = DateTime.Now.ToString(\"yyMMdd\");\r\n int result = 0;\r\n lock (locker)\r\n {\r\n SYSRepository sysservice = new SYSRepository();\r\n var sId = sysservice.FindEntity(a => a.CN_S_TYPE.Trim() == snType && a.CN_S_PRE.Trim() == prefix + Vend);\r\n\r\n if (sId != null)\r\n {\r\n \r\n sId.CN_N_MAX++;\r\n sId.CN_T_LAST = DateTime.Now;\r\n //sysservice.Update(sId);\r\n\r\n sysservice.dbcontext.Set<SYSEntity>().Attach(sId);\r\n sysservice.dbcontext.Entry(sId).Property(x => x.CN_N_MAX).CurrentValue = sId.CN_N_MAX;\r\n\r\n sysservice.dbcontext.Entry(sId).Property(x => x.CN_N_MAX).IsModified = true;\r\n sysservice.dbcontext.Entry(sId).Property(x=>x.CN_T_LAST).CurrentValue = sId.CN_T_LAST;\r\n\r\n sysservice.dbcontext.Entry(sId).Property(x=>x.CN_T_LAST).IsModified = true;\r\n \r\n sysservice.dbcontext.SaveChanges();\r\n result = sId.CN_N_MAX;\r\n }\r\n else\r\n {\r\n sId = new SYSEntity { CN_S_TYPE = snType, CN_T_LAST = DateTime.Now, CN_S_PRE = prefix + Vend, CN_N_MAX = 0,CN_S_APP_TYPE=\"WCS\" };\r\n sysservice.Insert(sId);\r\n }\r\n }\r\n return result;\r\n}\r\n}", "CusMethod": { "Name": "", "Params": [], @@ -605,9 +605,51 @@ "InheritClass": "", "Inherits": [] } + }, + { + "ID": "20250417094750211", + "Name": "Utils", + "Desc": "", + "ParentID": "", + "Type": "ClassCode", + "Level": "Item", + "Statement": "public class Utils", + "EditCode": "", + "Code": "public class Utils\r\n{\r\n}", + "CusMethod": { + "Name": "", + "Params": [], + "ReturnType": "" + }, + "CusClass": { + "Name": "Utils", + "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-11 20:40:37", + "LastWriteTime": "2025-05-31 17:56:35", "HasSaved": true } \ No newline at end of file -- Gitblit v1.9.1