From 20f9d82c65c5199afacc493886af60dab1f1423b Mon Sep 17 00:00:00 2001 From: czw <selecti@yeah.net> Date: 星期四, 19 六月 2025 08:23:44 +0800 Subject: [PATCH] 1 --- 2025年6月12日/AuxAllWCS/Scripts/Custom.json | 6 +- 2025年6月12日/AuxAllWCS/RunTime/Code/自定义类.cs | 17 ++++++-- S7/Static/NetAssist.exe | 0 S7/Static/NetAssist.cfg | 2 + 2025年6月12日/AuxAllWCS/Devices/PlcConfig | 60 +++++++++++++++--------------- 2025年6月12日/AuxAllWCS/AuxAllWCS.json | 2 2025年6月12日/AuxAllWCS/Net/Conn.json | 2 2025年6月12日/AuxAllWCS/Scripts/Script.json | 22 +++++----- 2025年6月12日/AuxAllWCS/Devices/设备通信.json | 2 9 files changed, 61 insertions(+), 52 deletions(-) diff --git "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/AuxAllWCS.json" "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/AuxAllWCS.json" index 0552aae..a2809ca 100644 --- "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/AuxAllWCS.json" +++ "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/AuxAllWCS.json" @@ -9,5 +9,5 @@ "DevelopVersion": "1.0.2.0", "Encode": "Ij/zvOgkqNT5SmHrFKCAVQ==", "CreationTime": "0001-01-01 00:00:00", - "LastWriteTime": "2025-06-17 09:30:15" + "LastWriteTime": "2025-06-18 23:06:58" } \ No newline at end of file diff --git "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Devices/PlcConfig" "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Devices/PlcConfig" index 5bbc16d..e7d0346 100644 --- "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Devices/PlcConfig" +++ "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Devices/PlcConfig" @@ -1781,7 +1781,7 @@ "Comm": "MXComponent", "IP": "1", "RedisQueueName": "p鍙戦偅绉�涓嬬嚎Queue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -1934,7 +1934,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "A1025鏀捐揣浜や簰Queue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -2087,7 +2087,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "A1022鏀捐揣浜や簰Queue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -2240,7 +2240,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "A1019鍙栬揣浜や簰Queue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -2393,7 +2393,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "A1030鍙栬揣浜や簰Queue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -2546,7 +2546,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "SSXReadTempQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -2699,7 +2699,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1019ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -2852,7 +2852,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1022ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -3005,7 +3005,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1025ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -3158,7 +3158,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1017ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -3311,7 +3311,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1023ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -3464,7 +3464,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1020ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -3617,7 +3617,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1002ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -3668,7 +3668,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1004ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -3719,7 +3719,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1006ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -3872,7 +3872,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1008ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -4025,7 +4025,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1010ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -4178,7 +4178,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1012ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -4229,7 +4229,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1014ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -4382,7 +4382,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1016ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -4569,7 +4569,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "FNK1003051113Queue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -4654,7 +4654,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "SSX1003051113Queue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -4807,7 +4807,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1026ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -4960,7 +4960,7 @@ "Comm": "S7Net", "IP": "10.221.55.160:102[0,1][v1.0]", "RedisQueueName": "S1030ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -5028,7 +5028,7 @@ "Comm": "S7Net", "IP": "10.221.55.150:102[0,1][v1.0]", "RedisQueueName": "S2001ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -5181,7 +5181,7 @@ "Comm": "S7Net", "IP": "10.221.55.150:102[0,1][v1.0]", "RedisQueueName": "S2030ReadQueue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -5334,7 +5334,7 @@ "Comm": "S7Net", "IP": "10.221.55.150:102[0,1][v1.0]", "RedisQueueName": "A2001鏀捐揣浜や簰Queue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -5487,7 +5487,7 @@ "Comm": "S7Net", "IP": "10.221.55.150:102[0,1][v1.0]", "RedisQueueName": "A2030鍙栬揣浜や簰Queue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -6439,7 +6439,7 @@ "Comm": "MXComponent", "IP": "2", "RedisQueueName": "p鍙戦偅绉�涓嬬嚎Queue", - "IsSimulate": true, + "IsSimulate": false, "Reserve1": "", "Reserve2": "", "Reserve3": "" @@ -6769,5 +6769,5 @@ } ], "CreationTime": "2025-02-26 15:31:23", - "LastWriteTime": "2025-06-16 10:45:37" + "LastWriteTime": "2025-06-18 08:31:50" } \ No newline at end of file diff --git "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Devices/\350\256\276\345\244\207\351\200\232\344\277\241.json" "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Devices/\350\256\276\345\244\207\351\200\232\344\277\241.json" index 0ec5928..08fed37 100644 --- "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Devices/\350\256\276\345\244\207\351\200\232\344\277\241.json" +++ "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Devices/\350\256\276\345\244\207\351\200\232\344\277\241.json" @@ -2,5 +2,5 @@ "ProjectSn": "1", "DeviceList": [], "CreationTime": "2025-02-26 15:31:23", - "LastWriteTime": "2025-06-16 10:45:40" + "LastWriteTime": "2025-06-18 08:31:50" } \ No newline at end of file diff --git "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Net/Conn.json" "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Net/Conn.json" index 7aa359c..3449a48 100644 --- "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Net/Conn.json" +++ "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Net/Conn.json" @@ -340,5 +340,5 @@ } ], "CreationTime": "2025-02-26 15:31:23", - "LastWriteTime": "2025-06-17 09:00:35" + "LastWriteTime": "2025-06-18 08:32:12" } \ No newline at end of file diff --git "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/RunTime/Code/\350\207\252\345\256\232\344\271\211\347\261\273.cs" "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/RunTime/Code/\350\207\252\345\256\232\344\271\211\347\261\273.cs" index 707ac26..ee13809 100644 --- "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/RunTime/Code/\350\207\252\345\256\232\344\271\211\347\261\273.cs" +++ "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/RunTime/Code/\350\207\252\345\256\232\344\271\211\347\261\273.cs" @@ -535,6 +535,8 @@ #region [鑷畾涔夌被][20250325152141671][TaskProcess] internal static bool CreateTask(string no, string from, string to, string taskType, int pri, List<string> cntrs, string workMode = "AGV", int cntrCount = 1, int startLayer = 1, int endLayer = 1) { + + LogHelper.Debug($"杈撻�绾縍GV绌烘墭浠诲姟 from:{from}>to {to}寮�鍒涘缓>"); var cntrInfo = string.Join(",", cntrs); ILocRepository locc = new LocRepository(); var fromLoc = locc.FindEntity(x => x.S_LOC_CODE == from); @@ -575,11 +577,16 @@ }; ITaskRepository taskserice = new TaskRepository(); taskserice.Insert(wmsTask); - fromLoc.S_LOCK_STATE = "鍑哄簱閿�; - endLoc.S_LOCK_STATE = "鍏ュ簱閿�; - locc.Update(fromLoc); - locc.Update(endLoc); - return true; + + if (workMode == "AGV") + { + fromLoc.S_LOCK_STATE = "鍑哄簱閿�; + endLoc.S_LOCK_STATE = "鍏ュ簱閿�; + locc.Update(fromLoc); + locc.Update(endLoc); + } + + LogHelper.Debug($"杈撻�绾縍GV绌烘墭浠诲姟 from:{from}>to {to} 鍒涘缓{wmsTask.S_TASK_NO}鎴愬姛"); } catch (Exception ex) { diff --git "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Scripts/Custom.json" "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Scripts/Custom.json" index 3230d18..47cbbd7 100644 --- "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Scripts/Custom.json" +++ "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Scripts/Custom.json" @@ -593,8 +593,8 @@ "Type": "ClassCode", "Level": "Item", "Statement": "public class TaskProcess", - "EditCode": "internal static bool CreateTask(string no, string from, string to, string taskType, int pri, List<string> cntrs, string workMode = \"AGV\", int cntrCount = 1, int startLayer = 1, int endLayer = 1)\r\n{\r\n var cntrInfo = string.Join(\",\", cntrs);\r\n ILocRepository locc = new LocRepository();\r\n var fromLoc = locc.FindEntity(x => x.S_LOC_CODE == from);\r\n var endLoc = locc.FindEntity(x => x.S_LOC_CODE == to);\r\n \r\n var s = Settings.deviceInfos.Find(x => x.location.Contains(from)) != null;\r\n var e = Settings.deviceInfos.Find(x => x.location.Contains(to)) != null;\r\n string t = \"F01\";\r\n if (s && !e) t = \"A002\";\r\n if (!s && e) t = \"A003\";\r\n if (s && e) t = \"A004\";\r\n try\r\n {\r\n\r\n TaskEntity wmsTask = new TaskEntity()\r\n {\r\n \tS_ID = Guid.NewGuid().ToString(),\r\n\t\tS_STATE = \"缂栬緫\",\r\n\t\tT_CREATE = DateTime.Now,\r\n\t\tT_MODIFY = DateTime.Now,\r\n\r\n S_TASK_NO = GenerateTaskNo(),\r\n S_START_LAREA = fromLoc.S_AREA_CODE,\r\n S_END_LAREA = endLoc.S_AREA_CODE,\r\n S_DEPART_NAME = \"\",\r\n S_START_LOC = from,\r\n S_END_LOC = to,\r\n S_TYPE = taskType,\r\n S_SRC_NO = no,//\r\n N_PRIORITY = pri,\r\n S_WORK_MODE = workMode,\r\n S_B_STATE = \"鏈墽琛孿",\r\n S_CNTRS = cntrInfo,\r\n N_START_LAYER = startLayer,\r\n N_END_LAYER = endLayer,\r\n N_CNTR_COUNT = cntrCount,\r\n S_INDEX=t,\r\n };\r\n ITaskRepository taskserice = new TaskRepository();\r\n taskserice.Insert(wmsTask);\r\n fromLoc.S_LOCK_STATE = \"鍑哄簱閿乗";\r\n endLoc.S_LOCK_STATE = \"鍏ュ簱閿乗";\r\n locc.Update(fromLoc);\r\n locc.Update(endLoc);\r\n return true;\r\n }\r\n catch (Exception ex)\r\n {\r\n LogHelper.Error(\"CreateTask\" + ex.Message, ex);\r\n return false;\r\n }\r\n}\r\n\r\n\r\n internal static void AddActionRecord(string no, string state, string forkliftNo, string extData,string strloc,string endloc)\r\n {\r\n var action = new TaskActEntity()\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 S_START_LOC= strloc,\r\n S_END_LOC= endloc,\r\n S_ACTION_CODE = state,\r\n S_TASK_NO = no,\r\n S_EQ_NO = forkliftNo,\r\n S_EQ_TYPE = \"agv\",\r\n S_DATA = extData,\r\n N_CREATEMETHOD = 0\r\n };\r\n TaskActRepository taskserice = new TaskActRepository();\r\n taskserice.Insert(action);\r\n }\r\n\r\n public static System.String GenerateTaskNo()\r\n {\r\n var id = SYSHelper.GetSerialNumber(\"浠诲姟鍙穃", \"TN\", \"1\");\r\n var date = DateTime.Now.ToString(\"yyMMdd\");\r\n return $\"TN{date}{id.ToString().PadLeft(4, '0')}\";\r\n }", - "Code": "public class TaskProcess\r\n{internal static bool CreateTask(string no, string from, string to, string taskType, int pri, List<string> cntrs, string workMode = \"AGV\", int cntrCount = 1, int startLayer = 1, int endLayer = 1)\r\n{\r\n var cntrInfo = string.Join(\",\", cntrs);\r\n ILocRepository locc = new LocRepository();\r\n var fromLoc = locc.FindEntity(x => x.S_LOC_CODE == from);\r\n var endLoc = locc.FindEntity(x => x.S_LOC_CODE == to);\r\n \r\n var s = Settings.deviceInfos.Find(x => x.location.Contains(from)) != null;\r\n var e = Settings.deviceInfos.Find(x => x.location.Contains(to)) != null;\r\n string t = \"F01\";\r\n if (s && !e) t = \"A002\";\r\n if (!s && e) t = \"A003\";\r\n if (s && e) t = \"A004\";\r\n try\r\n {\r\n\r\n TaskEntity wmsTask = new TaskEntity()\r\n {\r\n \tS_ID = Guid.NewGuid().ToString(),\r\n\t\tS_STATE = \"缂栬緫\",\r\n\t\tT_CREATE = DateTime.Now,\r\n\t\tT_MODIFY = DateTime.Now,\r\n\r\n S_TASK_NO = GenerateTaskNo(),\r\n S_START_LAREA = fromLoc.S_AREA_CODE,\r\n S_END_LAREA = endLoc.S_AREA_CODE,\r\n S_DEPART_NAME = \"\",\r\n S_START_LOC = from,\r\n S_END_LOC = to,\r\n S_TYPE = taskType,\r\n S_SRC_NO = no,//\r\n N_PRIORITY = pri,\r\n S_WORK_MODE = workMode,\r\n S_B_STATE = \"鏈墽琛孿",\r\n S_CNTRS = cntrInfo,\r\n N_START_LAYER = startLayer,\r\n N_END_LAYER = endLayer,\r\n N_CNTR_COUNT = cntrCount,\r\n S_INDEX=t,\r\n };\r\n ITaskRepository taskserice = new TaskRepository();\r\n taskserice.Insert(wmsTask);\r\n fromLoc.S_LOCK_STATE = \"鍑哄簱閿乗";\r\n endLoc.S_LOCK_STATE = \"鍏ュ簱閿乗";\r\n locc.Update(fromLoc);\r\n locc.Update(endLoc);\r\n return true;\r\n }\r\n catch (Exception ex)\r\n {\r\n LogHelper.Error(\"CreateTask\" + ex.Message, ex);\r\n return false;\r\n }\r\n}\r\n\r\n\r\n internal static void AddActionRecord(string no, string state, string forkliftNo, string extData,string strloc,string endloc)\r\n {\r\n var action = new TaskActEntity()\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 S_START_LOC= strloc,\r\n S_END_LOC= endloc,\r\n S_ACTION_CODE = state,\r\n S_TASK_NO = no,\r\n S_EQ_NO = forkliftNo,\r\n S_EQ_TYPE = \"agv\",\r\n S_DATA = extData,\r\n N_CREATEMETHOD = 0\r\n };\r\n TaskActRepository taskserice = new TaskActRepository();\r\n taskserice.Insert(action);\r\n }\r\n\r\n public static System.String GenerateTaskNo()\r\n {\r\n var id = SYSHelper.GetSerialNumber(\"浠诲姟鍙穃", \"TN\", \"1\");\r\n var date = DateTime.Now.ToString(\"yyMMdd\");\r\n return $\"TN{date}{id.ToString().PadLeft(4, '0')}\";\r\n }\r\n}", + "EditCode": "internal static bool CreateTask(string no, string from, string to, string taskType, int pri, List<string> cntrs, string workMode = \"AGV\", int cntrCount = 1, int startLayer = 1, int endLayer = 1)\r\n{\r\n\t\r\n LogHelper.Debug($\"杈撻�绾縍GV绌烘墭浠诲姟 from:{from}>to {to}寮�鍒涘缓>\");\r\n var cntrInfo = string.Join(\",\", cntrs);\r\n ILocRepository locc = new LocRepository();\r\n var fromLoc = locc.FindEntity(x => x.S_LOC_CODE == from);\r\n var endLoc = locc.FindEntity(x => x.S_LOC_CODE == to);\r\n \r\n var s = Settings.deviceInfos.Find(x => x.location.Contains(from)) != null;\r\n var e = Settings.deviceInfos.Find(x => x.location.Contains(to)) != null;\r\n string t = \"F01\";\r\n if (s && !e) t = \"A002\";\r\n if (!s && e) t = \"A003\";\r\n if (s && e) t = \"A004\";\r\n try\r\n {\r\n\r\n TaskEntity wmsTask = new TaskEntity()\r\n {\r\n \tS_ID = Guid.NewGuid().ToString(),\r\n\t\tS_STATE = \"缂栬緫\",\r\n\t\tT_CREATE = DateTime.Now,\r\n\t\tT_MODIFY = DateTime.Now,\r\n\r\n S_TASK_NO = GenerateTaskNo(),\r\n S_START_LAREA = fromLoc.S_AREA_CODE,\r\n S_END_LAREA = endLoc.S_AREA_CODE,\r\n S_DEPART_NAME = \"\",\r\n S_START_LOC = from,\r\n S_END_LOC = to,\r\n S_TYPE = taskType,\r\n S_SRC_NO = no,//\r\n N_PRIORITY = pri,\r\n S_WORK_MODE = workMode,\r\n S_B_STATE = \"鏈墽琛孿",\r\n S_CNTRS = cntrInfo,\r\n N_START_LAYER = startLayer,\r\n N_END_LAYER = endLayer,\r\n N_CNTR_COUNT = cntrCount,\r\n S_INDEX=t,\r\n };\r\n ITaskRepository taskserice = new TaskRepository();\r\n taskserice.Insert(wmsTask);\r\n \r\n if (workMode == \"AGV\")\r\n {\r\n fromLoc.S_LOCK_STATE = \"鍑哄簱閿乗";\r\n endLoc.S_LOCK_STATE = \"鍏ュ簱閿乗";\r\n locc.Update(fromLoc);\r\n locc.Update(endLoc);\r\n }\r\n \r\n LogHelper.Debug($\"杈撻�绾縍GV绌烘墭浠诲姟 from:{from}>to {to} 鍒涘缓{wmsTask.S_TASK_NO}鎴愬姛\");\r\n }\r\n catch (Exception ex)\r\n {\r\n LogHelper.Error(\"CreateTask\" + ex.Message, ex);\r\n return false;\r\n }\r\n}\r\n\r\n\r\n internal static void AddActionRecord(string no, string state, string forkliftNo, string extData,string strloc,string endloc)\r\n {\r\n var action = new TaskActEntity()\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 S_START_LOC= strloc,\r\n S_END_LOC= endloc,\r\n S_ACTION_CODE = state,\r\n S_TASK_NO = no,\r\n S_EQ_NO = forkliftNo,\r\n S_EQ_TYPE = \"agv\",\r\n S_DATA = extData,\r\n N_CREATEMETHOD = 0\r\n };\r\n TaskActRepository taskserice = new TaskActRepository();\r\n taskserice.Insert(action);\r\n }\r\n\r\n public static System.String GenerateTaskNo()\r\n {\r\n var id = SYSHelper.GetSerialNumber(\"浠诲姟鍙穃", \"TN\", \"1\");\r\n var date = DateTime.Now.ToString(\"yyMMdd\");\r\n return $\"TN{date}{id.ToString().PadLeft(4, '0')}\";\r\n }", + "Code": "public class TaskProcess\r\n{internal static bool CreateTask(string no, string from, string to, string taskType, int pri, List<string> cntrs, string workMode = \"AGV\", int cntrCount = 1, int startLayer = 1, int endLayer = 1)\r\n{\r\n\t\r\n LogHelper.Debug($\"杈撻�绾縍GV绌烘墭浠诲姟 from:{from}>to {to}寮�鍒涘缓>\");\r\n var cntrInfo = string.Join(\",\", cntrs);\r\n ILocRepository locc = new LocRepository();\r\n var fromLoc = locc.FindEntity(x => x.S_LOC_CODE == from);\r\n var endLoc = locc.FindEntity(x => x.S_LOC_CODE == to);\r\n \r\n var s = Settings.deviceInfos.Find(x => x.location.Contains(from)) != null;\r\n var e = Settings.deviceInfos.Find(x => x.location.Contains(to)) != null;\r\n string t = \"F01\";\r\n if (s && !e) t = \"A002\";\r\n if (!s && e) t = \"A003\";\r\n if (s && e) t = \"A004\";\r\n try\r\n {\r\n\r\n TaskEntity wmsTask = new TaskEntity()\r\n {\r\n \tS_ID = Guid.NewGuid().ToString(),\r\n\t\tS_STATE = \"缂栬緫\",\r\n\t\tT_CREATE = DateTime.Now,\r\n\t\tT_MODIFY = DateTime.Now,\r\n\r\n S_TASK_NO = GenerateTaskNo(),\r\n S_START_LAREA = fromLoc.S_AREA_CODE,\r\n S_END_LAREA = endLoc.S_AREA_CODE,\r\n S_DEPART_NAME = \"\",\r\n S_START_LOC = from,\r\n S_END_LOC = to,\r\n S_TYPE = taskType,\r\n S_SRC_NO = no,//\r\n N_PRIORITY = pri,\r\n S_WORK_MODE = workMode,\r\n S_B_STATE = \"鏈墽琛孿",\r\n S_CNTRS = cntrInfo,\r\n N_START_LAYER = startLayer,\r\n N_END_LAYER = endLayer,\r\n N_CNTR_COUNT = cntrCount,\r\n S_INDEX=t,\r\n };\r\n ITaskRepository taskserice = new TaskRepository();\r\n taskserice.Insert(wmsTask);\r\n \r\n if (workMode == \"AGV\")\r\n {\r\n fromLoc.S_LOCK_STATE = \"鍑哄簱閿乗";\r\n endLoc.S_LOCK_STATE = \"鍏ュ簱閿乗";\r\n locc.Update(fromLoc);\r\n locc.Update(endLoc);\r\n }\r\n \r\n LogHelper.Debug($\"杈撻�绾縍GV绌烘墭浠诲姟 from:{from}>to {to} 鍒涘缓{wmsTask.S_TASK_NO}鎴愬姛\");\r\n }\r\n catch (Exception ex)\r\n {\r\n LogHelper.Error(\"CreateTask\" + ex.Message, ex);\r\n return false;\r\n }\r\n}\r\n\r\n\r\n internal static void AddActionRecord(string no, string state, string forkliftNo, string extData,string strloc,string endloc)\r\n {\r\n var action = new TaskActEntity()\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 S_START_LOC= strloc,\r\n S_END_LOC= endloc,\r\n S_ACTION_CODE = state,\r\n S_TASK_NO = no,\r\n S_EQ_NO = forkliftNo,\r\n S_EQ_TYPE = \"agv\",\r\n S_DATA = extData,\r\n N_CREATEMETHOD = 0\r\n };\r\n TaskActRepository taskserice = new TaskActRepository();\r\n taskserice.Insert(action);\r\n }\r\n\r\n public static System.String GenerateTaskNo()\r\n {\r\n var id = SYSHelper.GetSerialNumber(\"浠诲姟鍙穃", \"TN\", \"1\");\r\n var date = DateTime.Now.ToString(\"yyMMdd\");\r\n return $\"TN{date}{id.ToString().PadLeft(4, '0')}\";\r\n }\r\n}", "CusMethod": { "Name": "", "Params": [], @@ -671,6 +671,6 @@ } ], "CreationTime": "2025-02-26 15:31:23", - "LastWriteTime": "2025-06-17 09:30:15", + "LastWriteTime": "2025-06-18 23:06:58", "HasSaved": true } \ No newline at end of file diff --git "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Scripts/Script.json" "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Scripts/Script.json" index 66547f9..11efd81 100644 --- "a/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Scripts/Script.json" +++ "b/2025\345\271\2646\346\234\21012\346\227\245/AuxAllWCS/Scripts/Script.json" @@ -473,8 +473,8 @@ "ID": "20250325085542733", "Name": "浠诲姟涓嬪彂", "Desc": "", - "Content": "ITaskRepository taskservice = new TaskRepository();\r\nvar tklist = taskservice.FindList(x => x.S_B_STATE == \"鏈墽琛孿" && x.S_WORK_MODE == \"AGV\");\r\nif(tklist.Any())\r\nforeach (var tk in tklist.GroupBy(item =>\r\n{\r\n var ticks = item.T_CREATE.Ticks;\r\n return new DateTime(ticks - ticks % (10 * TimeSpan.TicksPerMinute));\r\n}).OrderBy(x => x.Key))\r\n{\r\n var ts = tk.OrderByDescending(x => x.N_PRIORITY).ToList();\r\n foreach (var t in ts)\r\n {\r\n var b = false;\r\n b = RunTask(t);\r\n\r\n if (b)\r\n {\r\n t.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t);\r\n }\r\n }\r\n break;\r\n}\r\n//foreach (var tk in tklist.GroupBy(item =>\r\n//{\r\n// var ticks = item.T_CREATE.Ticks;\r\n// return new DateTime(ticks - ticks % (10 * TimeSpan.TicksPerMinute));\r\n//}).OrderBy(x => x.Key))\r\n//if (tklist.Any())\r\n//{\r\nvar task1Isrun = false;\r\nif (tag.RGV.ReadTask1No > 0 && tag.RGV.bit1taskOver != 1)\r\n{\r\n task1Isrun = true;\r\n if (tag.RGV.bit1taskOver_LAST == 1)\r\n tag.RGV.bit1taskOver_LAST = 0;\r\n}\r\nvar task2Isrun = false;\r\nif (tag.RGV.ReadTask2No > 0 && tag.RGV.bit2taskOver != 1)\r\n{\r\n task2Isrun = true;\r\n if (tag.RGV.bit2taskOver_LAST == 1)\r\n tag.RGV.bit2taskOver_LAST = 0;\r\n}\r\nif (task1Isrun || task2Isrun)\r\n{\r\n string mes = \"\";\r\n if (task1Isrun)\r\n mes += tag.RGV.ReadTask1No + \"鎵ц涓�..\";\r\n if (task2Isrun)\r\n mes += tag.RGV.ReadTask2No + \"鎵ц涓�..\";\r\n LogHelper.Info($\"{mes} 涓嶈兘涓嬪彂鏂颁换鍔°�\");\r\n throw new Exception($\"{mes} 涓嶈兘涓嬪彂鏂颁换鍔°�\");\r\n //continue;\r\n}\r\nvar thisOver = 0;\r\n\r\nTaskEntity task1 = null;\r\nTaskEntity task2 = null;\r\nif (tag.RGV.ReadTask1No > 0 && tag.RGV.bit1taskOver == 1)\r\n{\r\n task1 = taskservice.FindEntity(x => x.S_TASK_NO == \"TN\" + tag.RGV.ReadTask1No || x.S_TASK_NO == \"TN0\" + tag.RGV.ReadTask1No);\r\n if (tag.RGV.bit1taskOver_LAST == 0)\r\n {\r\n thisOver = 1;\r\n if (task1.S_B_STATE == \"鍙栬揣瀹屾垚\")\r\n {\r\n task1.S_B_STATE = \"瀹屾垚\";\r\n }\r\n else\r\n {\r\n task1.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n }\r\n taskservice.Update(task1);\r\n tag.RGV.bit1taskOver_LAST = 1;\r\n }\r\n}\r\n\r\nif (tag.RGV.ReadTask2No > 0 && tag.RGV.bit2taskOver == 1)\r\n{\r\n task2 = taskservice.FindEntity(x => x.S_TASK_NO == \"TN\" + tag.RGV.ReadTask2No || x.S_TASK_NO == \"TN0\" + tag.RGV.ReadTask2No);\r\n if (tag.RGV.bit2taskOver_LAST == 0)\r\n {\r\n thisOver = 2;\r\n if (task2.S_B_STATE == \"鍙栬揣瀹屾垚\")\r\n {\r\n task2.S_B_STATE = \"瀹屾垚\";\r\n }\r\n else\r\n {\r\n task2.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n }\r\n taskservice.Update(task2);\r\n tag.RGV.bit2taskOver_LAST = 1;\r\n }\r\n}\r\n\r\n///1 鏈夎揣 灏� 鍙栥� 1 娌¤揣 灏� 鍗歌揣锛�閮芥湁璐� 灏�鍗歌揣銆�閮芥病璐�灏�鍗竆r\ntklist = taskservice.FindList(x => x.S_B_STATE == \"鏈墽琛孿" && x.S_WORK_MODE == \"RGV\").OrderBy(x => x.T_CREATE).ToList();\r\nif (task1 != null && task1.S_B_STATE != \"瀹屾垚\") //1鏈変换鍔r\n{\r\n if (task2 != null && task2.S_B_STATE != \"瀹屾垚\")// 1 鏈変换鍔� 2 鏈変换鍔°� \r\n {\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno1 = Convert.ToUInt32(task1.S_TASK_NO.Substring(2));\r\n tag.RGV.task1do = Convert.ToUInt16(task1.S_END_LOC);\r\n tag.RGV.taskend = 125;\r\n }\r\n else //1鏈変换鍔� 2 娌′换鍔°�\r\n {\r\n //1 濡傛灉鏈夊悓渚у彇璐т换鍔°�灏卞彇銆傛病鏈塡r\n var leftSide = new List<string> { \"1023\", \"1020\" };\r\n var RightSide = new List<string> { \"1002\", \"1008\", \"1010\", \"1016\" };\r\n bool creT2 = false;\r\n if (leftSide.Contains(task1.S_START_LOC))\r\n {\r\n leftSide.Remove(task1.S_START_LOC);\r\n var lsde = leftSide.FirstOrDefault();\r\n var t2 = tklist.Find(x => x.S_START_LOC == lsde && x.S_END_LOC != \"1017\");\r\n if (t2 != null) //鍚屼晶鍙栬揣浠诲姟銆俓r\n {\r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 1;\r\n tag.RGV.taskno2 = Convert.ToUInt32(t2.S_TASK_NO.Substring(2));\r\n tag.RGV.task2do = Convert.ToUInt16(t2.S_START_LOC);\r\n tag.RGV.taskend = 125;\r\n t2.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t2);\r\n creT2 = true;\r\n }\r\n }\r\n else if (RightSide.Contains(task1.S_START_LOC))\r\n {\r\n RightSide.Remove(task1.S_START_LOC);\r\n var t2 = tklist.Find(x => RightSide.Contains(x.S_START_LOC) && x.S_END_LOC != \"1017\");\r\n if (t2 != null) //鍚屼晶鍙栬揣浠诲姟銆俓r\n {\r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 1;\r\n tag.RGV.taskno2 = Convert.ToUInt32(t2.S_TASK_NO.Substring(2));\r\n tag.RGV.task2do = Convert.ToUInt16(t2.S_START_LOC);\r\n tag.RGV.taskend = 125;\r\n t2.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t2);\r\n creT2 = true;\r\n }\r\n }\r\n //else //1 鐩存帴鍗歌揣銆�\r\n if (!creT2)\r\n {\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno1 = Convert.ToUInt32(task1.S_TASK_NO.Substring(2));\r\n tag.RGV.task1do = Convert.ToUInt16(task1.S_END_LOC);\r\n tag.RGV.taskend = 125;\r\n }\r\n }\r\n}\r\nelse\r\n{\r\n if (task2 != null && task2.S_B_STATE != \"瀹屾垚\")// 1 娌′换鍔� 2 鏈変换鍔°� \r\n {\r\n //2 鍗歌揣銆俓r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno2 = Convert.ToUInt32(task2.S_TASK_NO.Substring(2));\r\n tag.RGV.task2do = Convert.ToUInt16(task2.S_END_LOC);\r\n tag.RGV.taskend = 125;\r\n }\r\n else //1mei 浠诲姟 2 娌′换鍔°�\r\n {\r\n //銆佷笅 1017浠诲姟 缁�鍙峰伐浣嶃�\r\n var lss = tklist.Take(2).ToList();\r\n var e1017first = lss.Find(x => x.S_END_LOC == \"1017\");\r\n if (e1017first == null)\r\n {\r\n e1017first = lss.FirstOrDefault();\r\n }\r\n if (e1017first != null)\r\n {\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 1;\r\n tag.RGV.taskno1 = Convert.ToUInt32(e1017first.S_TASK_NO.Substring(2));\r\n tag.RGV.task1do = Convert.ToUInt16(task1.S_START_LOC);\r\n tag.RGV.taskend = 125;\r\n }\r\n }\r\n\r\n}", - "ContentCopy": "ITaskRepository taskservice = new TaskRepository();\r\nvar tklist = taskservice.FindList(x => x.S_B_STATE == \"鏈墽琛孿" && x.S_WORK_MODE == \"AGV\");\r\nif(tklist.Any())\r\nforeach (var tk in tklist.GroupBy(item =>\r\n{\r\n var ticks = item.T_CREATE.Ticks;\r\n return new DateTime(ticks - ticks % (10 * TimeSpan.TicksPerMinute));\r\n}).OrderBy(x => x.Key))\r\n{\r\n var ts = tk.OrderByDescending(x => x.N_PRIORITY).ToList();\r\n foreach (var t in ts)\r\n {\r\n var b = false;\r\n b = RunTask(t);\r\n\r\n if (b)\r\n {\r\n t.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t);\r\n }\r\n }\r\n break;\r\n}\r\n//foreach (var tk in tklist.GroupBy(item =>\r\n//{\r\n// var ticks = item.T_CREATE.Ticks;\r\n// return new DateTime(ticks - ticks % (10 * TimeSpan.TicksPerMinute));\r\n//}).OrderBy(x => x.Key))\r\n//if (tklist.Any())\r\n//{\r\nvar task1Isrun = false;\r\nif (tag.RGV.ReadTask1No > 0 && tag.RGV.bit1taskOver != 1)\r\n{\r\n task1Isrun = true;\r\n if (tag.RGV.bit1taskOver_LAST == 1)\r\n tag.RGV.bit1taskOver_LAST = 0;\r\n}\r\nvar task2Isrun = false;\r\nif (tag.RGV.ReadTask2No > 0 && tag.RGV.bit2taskOver != 1)\r\n{\r\n task2Isrun = true;\r\n if (tag.RGV.bit2taskOver_LAST == 1)\r\n tag.RGV.bit2taskOver_LAST = 0;\r\n}\r\nif (task1Isrun || task2Isrun)\r\n{\r\n string mes = \"\";\r\n if (task1Isrun)\r\n mes += tag.RGV.ReadTask1No + \"鎵ц涓�..\";\r\n if (task2Isrun)\r\n mes += tag.RGV.ReadTask2No + \"鎵ц涓�..\";\r\n LogHelper.Info($\"{mes} 涓嶈兘涓嬪彂鏂颁换鍔°�\");\r\n throw new Exception($\"{mes} 涓嶈兘涓嬪彂鏂颁换鍔°�\");\r\n //continue;\r\n}\r\nvar thisOver = 0;\r\n\r\nTaskEntity task1 = null;\r\nTaskEntity task2 = null;\r\nif (tag.RGV.ReadTask1No > 0 && tag.RGV.bit1taskOver == 1)\r\n{\r\n task1 = taskservice.FindEntity(x => x.S_TASK_NO == \"TN\" + tag.RGV.ReadTask1No || x.S_TASK_NO == \"TN0\" + tag.RGV.ReadTask1No);\r\n if (tag.RGV.bit1taskOver_LAST == 0)\r\n {\r\n thisOver = 1;\r\n if (task1.S_B_STATE == \"鍙栬揣瀹屾垚\")\r\n {\r\n task1.S_B_STATE = \"瀹屾垚\";\r\n }\r\n else\r\n {\r\n task1.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n }\r\n taskservice.Update(task1);\r\n tag.RGV.bit1taskOver_LAST = 1;\r\n }\r\n}\r\n\r\nif (tag.RGV.ReadTask2No > 0 && tag.RGV.bit2taskOver == 1)\r\n{\r\n task2 = taskservice.FindEntity(x => x.S_TASK_NO == \"TN\" + tag.RGV.ReadTask2No || x.S_TASK_NO == \"TN0\" + tag.RGV.ReadTask2No);\r\n if (tag.RGV.bit2taskOver_LAST == 0)\r\n {\r\n thisOver = 2;\r\n if (task2.S_B_STATE == \"鍙栬揣瀹屾垚\")\r\n {\r\n task2.S_B_STATE = \"瀹屾垚\";\r\n }\r\n else\r\n {\r\n task2.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n }\r\n taskservice.Update(task2);\r\n tag.RGV.bit2taskOver_LAST = 1;\r\n }\r\n}\r\n\r\n///1 鏈夎揣 灏� 鍙栥� 1 娌¤揣 灏� 鍗歌揣锛�閮芥湁璐� 灏�鍗歌揣銆�閮芥病璐�灏�鍗竆r\ntklist = taskservice.FindList(x => x.S_B_STATE == \"鏈墽琛孿" && x.S_WORK_MODE == \"RGV\").OrderBy(x => x.T_CREATE).ToList();\r\nif (task1 != null && task1.S_B_STATE != \"瀹屾垚\") //1鏈変换鍔r\n{\r\n if (task2 != null && task2.S_B_STATE != \"瀹屾垚\")// 1 鏈変换鍔� 2 鏈変换鍔°� \r\n {\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno1 = Convert.ToUInt32(task1.S_TASK_NO.Substring(2));\r\n tag.RGV.task1do = Convert.ToUInt16(task1.S_END_LOC);\r\n tag.RGV.taskend = 125;\r\n }\r\n else //1鏈変换鍔� 2 娌′换鍔°�\r\n {\r\n //1 濡傛灉鏈夊悓渚у彇璐т换鍔°�灏卞彇銆傛病鏈塡r\n var leftSide = new List<string> { \"1023\", \"1020\" };\r\n var RightSide = new List<string> { \"1002\", \"1008\", \"1010\", \"1016\" };\r\n bool creT2 = false;\r\n if (leftSide.Contains(task1.S_START_LOC))\r\n {\r\n leftSide.Remove(task1.S_START_LOC);\r\n var lsde = leftSide.FirstOrDefault();\r\n var t2 = tklist.Find(x => x.S_START_LOC == lsde && x.S_END_LOC != \"1017\");\r\n if (t2 != null) //鍚屼晶鍙栬揣浠诲姟銆俓r\n {\r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 1;\r\n tag.RGV.taskno2 = Convert.ToUInt32(t2.S_TASK_NO.Substring(2));\r\n tag.RGV.task2do = Convert.ToUInt16(t2.S_START_LOC);\r\n tag.RGV.taskend = 125;\r\n t2.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t2);\r\n creT2 = true;\r\n }\r\n }\r\n else if (RightSide.Contains(task1.S_START_LOC))\r\n {\r\n RightSide.Remove(task1.S_START_LOC);\r\n var t2 = tklist.Find(x => RightSide.Contains(x.S_START_LOC) && x.S_END_LOC != \"1017\");\r\n if (t2 != null) //鍚屼晶鍙栬揣浠诲姟銆俓r\n {\r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 1;\r\n tag.RGV.taskno2 = Convert.ToUInt32(t2.S_TASK_NO.Substring(2));\r\n tag.RGV.task2do = Convert.ToUInt16(t2.S_START_LOC);\r\n tag.RGV.taskend = 125;\r\n t2.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t2);\r\n creT2 = true;\r\n }\r\n }\r\n //else //1 鐩存帴鍗歌揣銆�\r\n if (!creT2)\r\n {\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno1 = Convert.ToUInt32(task1.S_TASK_NO.Substring(2));\r\n tag.RGV.task1do = Convert.ToUInt16(task1.S_END_LOC);\r\n tag.RGV.taskend = 125;\r\n }\r\n }\r\n}\r\nelse\r\n{\r\n if (task2 != null && task2.S_B_STATE != \"瀹屾垚\")// 1 娌′换鍔� 2 鏈変换鍔°� \r\n {\r\n //2 鍗歌揣銆俓r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno2 = Convert.ToUInt32(task2.S_TASK_NO.Substring(2));\r\n tag.RGV.task2do = Convert.ToUInt16(task2.S_END_LOC);\r\n tag.RGV.taskend = 125;\r\n }\r\n else //1mei 浠诲姟 2 娌′换鍔°�\r\n {\r\n //銆佷笅 1017浠诲姟 缁�鍙峰伐浣嶃�\r\n var lss = tklist.Take(2).ToList();\r\n var e1017first = lss.Find(x => x.S_END_LOC == \"1017\");\r\n if (e1017first == null)\r\n {\r\n e1017first = lss.FirstOrDefault();\r\n }\r\n if (e1017first != null)\r\n {\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 1;\r\n tag.RGV.taskno1 = Convert.ToUInt32(e1017first.S_TASK_NO.Substring(2));\r\n tag.RGV.task1do = Convert.ToUInt16(task1.S_START_LOC);\r\n tag.RGV.taskend = 125;\r\n }\r\n }\r\n\r\n}", + "Content": "ITaskRepository taskservice = new TaskRepository();\r\nvar tklist = taskservice.FindList(x => x.S_B_STATE == \"鏈墽琛孿" && x.S_WORK_MODE == \"AGV\");\r\nif(tklist.Any())\r\nforeach (var tk in tklist.GroupBy(item =>\r\n{\r\n var ticks = item.T_CREATE.Ticks;\r\n return new DateTime(ticks - ticks % (10 * TimeSpan.TicksPerMinute));\r\n}).OrderBy(x => x.Key))\r\n{\r\n var ts = tk.OrderByDescending(x => x.N_PRIORITY).ToList();\r\n foreach (var t in ts)\r\n {\r\n var b = false;\r\n b = RunTask(t);\r\n\r\n if (b)\r\n {\r\n t.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t);\r\n }\r\n }\r\n break;\r\n}\r\n#region Rgv\r\n\r\nvar task1Isrun = false;\r\nif (tag.RGV.ReadTask1No > 0 && tag.RGV.bit1taskOver != 1)\r\n{\r\n task1Isrun = true;\r\n if (tag.RGV.bit1taskOver_LAST == 1)\r\n RedisHelper.Add($\"RGV.bit1taskOver_LAST\", \"0\", out string msg);\r\n}\r\nvar task2Isrun = false;\r\nif (tag.RGV.ReadTask2No > 0 && tag.RGV.bit2taskOver != 1)\r\n{\r\n task2Isrun = true;\r\n if (tag.RGV.bit2taskOver_LAST == 1)\r\n RedisHelper.Add($\"RGV.bit2taskOver_LAST\", \"0\", out string msg);\r\n}\r\nif (task1Isrun || task2Isrun)\r\n{\r\n string mes = \"\";\r\n if (task1Isrun)\r\n mes += tag.RGV.ReadTask1No + \"鎵ц涓�..\";\r\n if (task2Isrun)\r\n mes += tag.RGV.ReadTask2No + \"鎵ц涓�..\";\r\n LogHelper.Info($\"{mes} 涓嶈兘涓嬪彂鏂颁换鍔°�\");\r\n throw new Exception($\"{mes} 涓嶈兘涓嬪彂鏂颁换鍔°�\");\r\n //continue;\r\n}\r\nvar thisOver = 0;\r\n\r\nTaskEntity task1 = null;\r\nTaskEntity task2 = null;\r\n\r\nLogHelper.Info($\"鏌ョ湅RGV 1宸ヤ綅浠诲姟銆媆");\r\nif (tag.RGV.ReadTask1No > 0 && tag.RGV.bit1taskOver == 1)\r\n{\r\n var taskno = tag.RGV.ReadTask1No;\r\n LogHelper.Info($\"RGV 1宸ヤ綅浠诲姟{tag.RGV.ReadTask1No}\");\r\n string tno = \"TN\" + (DateTime.Now.ToString(\"yy\")) + ((taskno.ToString()).PadLeft(8, '0'));\r\n task1 = taskservice.FindEntity(x => x.S_TASK_NO == tno);\r\n\r\n LogHelper.Info($\"RGV 1宸ヤ綅浠诲姟{JsonConvert.SerializeObject(task1)}.bit1taskOver_LAST锛歿tag.RGV.bit1taskOver_LAST}\");\r\n if (tag.RGV.bit1taskOver_LAST == 0 && task1 != null)\r\n {\r\n if (task1.S_B_STATE != \"瀹屾垚\")\r\n {\r\n if (task1.S_B_STATE == \"鍙栬揣瀹屾垚\")\r\n {\r\n task1.S_B_STATE = \"瀹屾垚\";\r\n }\r\n else\r\n {\r\n task1.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n }\r\n LogHelper.Info($\"RGV 1宸ヤ綅浠诲姟{task1.S_TASK_NO} 鐘舵�鍒囨崲涓簕task1.S_B_STATE}\");\r\n //tag.RGV.bit1taskOver_LAST = 1;\r\n RedisHelper.Add($\"RGV.bit1taskOver_LAST\", \"1\", out string msg);\r\n LogHelper.Info($\"RGV 1宸ヤ綅浠诲姟鍐欏鐞哱");\r\n taskservice.Update(task1);\r\n LogHelper.Info($\"RGV 1宸ヤ綅浠诲姟鏇存柊銆俓");\r\n }\r\n }\r\n}\r\nelse if (tag.RGV.ReadTask1No == 0)\r\n{\r\n LogHelper.Info($\"RGV 1宸ヤ綅娌℃湁浠诲姟銆媆");\r\n}\r\n\r\nLogHelper.Info($\"鏌ョ湅RGV 2宸ヤ綅浠诲姟銆媆");\r\nif (tag.RGV.ReadTask2No > 0 && tag.RGV.bit2taskOver == 1)\r\n{\r\n var taskno = tag.RGV.ReadTask2No;\r\n LogHelper.Info($\"RGV 2宸ヤ綅浠诲姟{tag.RGV.ReadTask2No}\");\r\n string tno = \"TN\" + (DateTime.Now.ToString(\"yy\")) + ((taskno.ToString()).PadLeft(8, '0'));\r\n task2 = taskservice.FindEntity(x => x.S_TASK_NO == tno);\r\n\r\n LogHelper.Info($\"RGV2宸ヤ綅浠诲姟{JsonConvert.SerializeObject(task2)}.bit1taskOver_LAST锛歿tag.RGV.bit2taskOver_LAST}\");\r\n if (tag.RGV.bit2taskOver_LAST == 0 && task2 != null)\r\n {\r\n if (task2.S_B_STATE != \"瀹屾垚\")\r\n {\r\n if (task2.S_B_STATE == \"鍙栬揣瀹屾垚\")\r\n {\r\n task2.S_B_STATE = \"瀹屾垚\";\r\n }\r\n else\r\n {\r\n task2.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n }\r\n LogHelper.Info($\"RGV 2宸ヤ綅浠诲姟{task2.S_TASK_NO} 鐘舵�鍒囨崲涓簕task2.S_B_STATE}\");\r\n RedisHelper.Add($\"RGV.bit2taskOver_LAST\", \"1\", out string msg);\r\n LogHelper.Info($\"RGV 2宸ヤ綅浠诲姟鍐欏鐞哱");\r\n taskservice.Update(task2);\r\n LogHelper.Info($\"RGV 2宸ヤ綅浠诲姟鏇存柊銆俓");\r\n }\r\n }\r\n}\r\nelse if (tag.RGV.ReadTask2No == 0)\r\n{\r\n LogHelper.Info($\"RGV 2宸ヤ綅娌℃湁浠诲姟銆媆");\r\n}\r\n\r\n\r\n///1 鏈夎揣 灏� 鍙栥� 1 娌¤揣 灏� 鍗歌揣锛�閮芥湁璐� 灏�鍗歌揣銆�閮芥病璐�灏�鍗竆r\ntklist = taskservice.FindList(x => x.S_B_STATE == \"鏈墽琛孿" && x.S_WORK_MODE == \"RGV\").OrderBy(x => x.T_CREATE).ToList();\r\nif (task1 != null && task1.S_B_STATE != \"瀹屾垚\") //1鏈変换鍔r\n{\r\n if (task2 != null && task2.S_B_STATE != \"瀹屾垚\")// 1 鏈変换鍔� 2 鏈変换鍔°� \r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 涔熸湁浠诲姟{task2.S_TASK_NO}銆�寮�宸ヤ綅1 鍗歌揣銆俓");\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno1 = Convert.ToUInt32(task1.S_TASK_NO.Substring(4));\r\n tag.RGV.task1do = Convert.ToUInt16(task1.S_END_LOC);\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n }\r\n else //1鏈変换鍔� 2 娌′换鍔°�\r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 鎵惧悓渚у彇璐т换鍔°�\");\r\n //1 濡傛灉鏈夊悓渚у彇璐т换鍔°�灏卞彇銆傛病鏈塡r\n var leftSide = new List<string> { \"1023\", \"1020\" };\r\n var RightSide = new List<string> { \"1002\", \"1008\", \"1010\", \"1016\" };\r\n bool creT2 = false;\r\n if (leftSide.Contains(task1.S_START_LOC))\r\n {\r\n leftSide.Remove(task1.S_START_LOC);\r\n var lsde = leftSide.FirstOrDefault();\r\n var t2 = tklist.Find(x => x.S_START_LOC == lsde && x.S_END_LOC != \"1017\");\r\n if (t2 != null) //鍚屼晶鍙栬揣浠诲姟銆俓r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 鎵惧悓渚у彇璐т换鍔t2.S_TASK_NO}銆俓");\r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 1;\r\n tag.RGV.taskno2 = Convert.ToUInt32(t2.S_TASK_NO.Substring(4));\r\n tag.RGV.task2do = Convert.ToUInt16(t2.S_START_LOC);\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n t2.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t2);\r\n creT2 = true;\r\n }\r\n }\r\n else if (RightSide.Contains(task1.S_START_LOC))\r\n {\r\n RightSide.Remove(task1.S_START_LOC);\r\n var t2 = tklist.Find(x => RightSide.Contains(x.S_START_LOC) && x.S_END_LOC != \"1017\");\r\n if (t2 != null) //鍚屼晶鍙栬揣浠诲姟銆俓r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 鎵惧悓渚у彇璐т换鍔t2.S_TASK_NO}銆俓");\r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 1;\r\n tag.RGV.taskno2 = Convert.ToUInt32(t2.S_TASK_NO.Substring(4));\r\n tag.RGV.task2do = Convert.ToUInt16(t2.S_START_LOC);\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n t2.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t2);\r\n creT2 = true;\r\n }\r\n }\r\n //else //1 鐩存帴鍗歌揣銆�\r\n if (!creT2)\r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 娌℃湁鍚屼晶鍙栬揣浠诲姟 1宸ヤ綅鍗歌揣銆俓");\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno1 = Convert.ToUInt32(task1.S_TASK_NO.Substring(4));\r\n tag.RGV.task1do = Convert.ToUInt16(task1.S_END_LOC);\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n }\r\n }\r\n}\r\nelse\r\n{\r\n if (task2 != null && task2.S_B_STATE != \"瀹屾垚\")// 1 娌′换鍔� 2 鏈変换鍔°� \r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV 1宸ヤ綅娌′换鍔�宸ヤ綅2 鏈変换鍔task2.S_TASK_NO}銆傚伐浣�鍗歌揣銆傘�\");\r\n //2 鍗歌揣銆俓r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno2 = Convert.ToUInt32(task2.S_TASK_NO.Substring(4));\r\n tag.RGV.task2do = Convert.ToUInt16(task2.S_END_LOC);\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n }\r\n else //1mei 浠诲姟 2 娌′换鍔°�\r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV 1宸ヤ綅娌′换鍔�宸ヤ綅2 涔熸病浠诲姟銆備紭鍏�宸ヤ綅缁堢偣1017浠诲姟銆傘�\");\r\n //銆佷笅 1017浠诲姟 缁�鍙峰伐浣嶃�\r\n var lss = tklist.Take(2).ToList();\r\n var e1017first = lss.Find(x => x.S_END_LOC == \"1017\");\r\n if (e1017first == null)\r\n {\r\n e1017first = lss.FirstOrDefault();\r\n }\r\n if (e1017first != null)\r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV 1宸ヤ綅娌′换鍔�宸ヤ綅2 涔熸病浠诲姟銆�宸ヤ綅涓嬩换鍔e1017first.S_TASK_NO}> 缁堢偣{e1017first.S_END_LOC}銆俓");\r\n try\r\n {\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 1;\r\n uint tno = Convert.ToUInt32(e1017first.S_TASK_NO.Substring(4));\r\n LogHelper.Info($\"{e1017first.S_TASK_NO}> 杞崲鍚庝换鍔″彿{tno} 寮�鍐欏叆銆俓");\r\n tag.RGV.taskno1 = tno;\r\n LogHelper.Info($\"{e1017first.S_TASK_NO}>寮�鍐欏叆 task1do>>{e1017first.S_START_LOC}銆俓");\r\n tag.RGV.task1do = Convert.ToUInt16(e1017first.S_START_LOC);\r\n }\r\n catch (Exception ex)\r\n {\r\n LogHelper.Error(ex.Message, ex);\r\n throw ex;\r\n }\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n LogHelper.Info($\"{e1017first.S_TASK_NO}> taskend 125\");\r\n e1017first.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(e1017first);\r\n }\r\n }\r\n}\r\n\r\n#endregion", + "ContentCopy": "ITaskRepository taskservice = new TaskRepository();\r\nvar tklist = taskservice.FindList(x => x.S_B_STATE == \"鏈墽琛孿" && x.S_WORK_MODE == \"AGV\");\r\nif(tklist.Any())\r\nforeach (var tk in tklist.GroupBy(item =>\r\n{\r\n var ticks = item.T_CREATE.Ticks;\r\n return new DateTime(ticks - ticks % (10 * TimeSpan.TicksPerMinute));\r\n}).OrderBy(x => x.Key))\r\n{\r\n var ts = tk.OrderByDescending(x => x.N_PRIORITY).ToList();\r\n foreach (var t in ts)\r\n {\r\n var b = false;\r\n b = RunTask(t);\r\n\r\n if (b)\r\n {\r\n t.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t);\r\n }\r\n }\r\n break;\r\n}\r\n#region Rgv\r\n\r\nvar task1Isrun = false;\r\nif (tag.RGV.ReadTask1No > 0 && tag.RGV.bit1taskOver != 1)\r\n{\r\n task1Isrun = true;\r\n if (tag.RGV.bit1taskOver_LAST == 1)\r\n RedisHelper.Add($\"RGV.bit1taskOver_LAST\", \"0\", out string msg);\r\n}\r\nvar task2Isrun = false;\r\nif (tag.RGV.ReadTask2No > 0 && tag.RGV.bit2taskOver != 1)\r\n{\r\n task2Isrun = true;\r\n if (tag.RGV.bit2taskOver_LAST == 1)\r\n RedisHelper.Add($\"RGV.bit2taskOver_LAST\", \"0\", out string msg);\r\n}\r\nif (task1Isrun || task2Isrun)\r\n{\r\n string mes = \"\";\r\n if (task1Isrun)\r\n mes += tag.RGV.ReadTask1No + \"鎵ц涓�..\";\r\n if (task2Isrun)\r\n mes += tag.RGV.ReadTask2No + \"鎵ц涓�..\";\r\n LogHelper.Info($\"{mes} 涓嶈兘涓嬪彂鏂颁换鍔°�\");\r\n throw new Exception($\"{mes} 涓嶈兘涓嬪彂鏂颁换鍔°�\");\r\n //continue;\r\n}\r\nvar thisOver = 0;\r\n\r\nTaskEntity task1 = null;\r\nTaskEntity task2 = null;\r\n\r\nLogHelper.Info($\"鏌ョ湅RGV 1宸ヤ綅浠诲姟銆媆");\r\nif (tag.RGV.ReadTask1No > 0 && tag.RGV.bit1taskOver == 1)\r\n{\r\n var taskno = tag.RGV.ReadTask1No;\r\n LogHelper.Info($\"RGV 1宸ヤ綅浠诲姟{tag.RGV.ReadTask1No}\");\r\n string tno = \"TN\" + (DateTime.Now.ToString(\"yy\")) + ((taskno.ToString()).PadLeft(8, '0'));\r\n task1 = taskservice.FindEntity(x => x.S_TASK_NO == tno);\r\n\r\n LogHelper.Info($\"RGV 1宸ヤ綅浠诲姟{JsonConvert.SerializeObject(task1)}.bit1taskOver_LAST锛歿tag.RGV.bit1taskOver_LAST}\");\r\n if (tag.RGV.bit1taskOver_LAST == 0 && task1 != null)\r\n {\r\n if (task1.S_B_STATE != \"瀹屾垚\")\r\n {\r\n if (task1.S_B_STATE == \"鍙栬揣瀹屾垚\")\r\n {\r\n task1.S_B_STATE = \"瀹屾垚\";\r\n }\r\n else\r\n {\r\n task1.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n }\r\n LogHelper.Info($\"RGV 1宸ヤ綅浠诲姟{task1.S_TASK_NO} 鐘舵�鍒囨崲涓簕task1.S_B_STATE}\");\r\n //tag.RGV.bit1taskOver_LAST = 1;\r\n RedisHelper.Add($\"RGV.bit1taskOver_LAST\", \"1\", out string msg);\r\n LogHelper.Info($\"RGV 1宸ヤ綅浠诲姟鍐欏鐞哱");\r\n taskservice.Update(task1);\r\n LogHelper.Info($\"RGV 1宸ヤ綅浠诲姟鏇存柊銆俓");\r\n }\r\n }\r\n}\r\nelse if (tag.RGV.ReadTask1No == 0)\r\n{\r\n LogHelper.Info($\"RGV 1宸ヤ綅娌℃湁浠诲姟銆媆");\r\n}\r\n\r\nLogHelper.Info($\"鏌ョ湅RGV 2宸ヤ綅浠诲姟銆媆");\r\nif (tag.RGV.ReadTask2No > 0 && tag.RGV.bit2taskOver == 1)\r\n{\r\n var taskno = tag.RGV.ReadTask2No;\r\n LogHelper.Info($\"RGV 2宸ヤ綅浠诲姟{tag.RGV.ReadTask2No}\");\r\n string tno = \"TN\" + (DateTime.Now.ToString(\"yy\")) + ((taskno.ToString()).PadLeft(8, '0'));\r\n task2 = taskservice.FindEntity(x => x.S_TASK_NO == tno);\r\n\r\n LogHelper.Info($\"RGV2宸ヤ綅浠诲姟{JsonConvert.SerializeObject(task2)}.bit1taskOver_LAST锛歿tag.RGV.bit2taskOver_LAST}\");\r\n if (tag.RGV.bit2taskOver_LAST == 0 && task2 != null)\r\n {\r\n if (task2.S_B_STATE != \"瀹屾垚\")\r\n {\r\n if (task2.S_B_STATE == \"鍙栬揣瀹屾垚\")\r\n {\r\n task2.S_B_STATE = \"瀹屾垚\";\r\n }\r\n else\r\n {\r\n task2.S_B_STATE = \"鍙栬揣瀹屾垚\";\r\n }\r\n LogHelper.Info($\"RGV 2宸ヤ綅浠诲姟{task2.S_TASK_NO} 鐘舵�鍒囨崲涓簕task2.S_B_STATE}\");\r\n RedisHelper.Add($\"RGV.bit2taskOver_LAST\", \"1\", out string msg);\r\n LogHelper.Info($\"RGV 2宸ヤ綅浠诲姟鍐欏鐞哱");\r\n taskservice.Update(task2);\r\n LogHelper.Info($\"RGV 2宸ヤ綅浠诲姟鏇存柊銆俓");\r\n }\r\n }\r\n}\r\nelse if (tag.RGV.ReadTask2No == 0)\r\n{\r\n LogHelper.Info($\"RGV 2宸ヤ綅娌℃湁浠诲姟銆媆");\r\n}\r\n\r\n\r\n///1 鏈夎揣 灏� 鍙栥� 1 娌¤揣 灏� 鍗歌揣锛�閮芥湁璐� 灏�鍗歌揣銆�閮芥病璐�灏�鍗竆r\ntklist = taskservice.FindList(x => x.S_B_STATE == \"鏈墽琛孿" && x.S_WORK_MODE == \"RGV\").OrderBy(x => x.T_CREATE).ToList();\r\nif (task1 != null && task1.S_B_STATE != \"瀹屾垚\") //1鏈変换鍔r\n{\r\n if (task2 != null && task2.S_B_STATE != \"瀹屾垚\")// 1 鏈変换鍔� 2 鏈変换鍔°� \r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 涔熸湁浠诲姟{task2.S_TASK_NO}銆�寮�宸ヤ綅1 鍗歌揣銆俓");\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno1 = Convert.ToUInt32(task1.S_TASK_NO.Substring(4));\r\n tag.RGV.task1do = Convert.ToUInt16(task1.S_END_LOC);\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n }\r\n else //1鏈変换鍔� 2 娌′换鍔°�\r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 鎵惧悓渚у彇璐т换鍔°�\");\r\n //1 濡傛灉鏈夊悓渚у彇璐т换鍔°�灏卞彇銆傛病鏈塡r\n var leftSide = new List<string> { \"1023\", \"1020\" };\r\n var RightSide = new List<string> { \"1002\", \"1008\", \"1010\", \"1016\" };\r\n bool creT2 = false;\r\n if (leftSide.Contains(task1.S_START_LOC))\r\n {\r\n leftSide.Remove(task1.S_START_LOC);\r\n var lsde = leftSide.FirstOrDefault();\r\n var t2 = tklist.Find(x => x.S_START_LOC == lsde && x.S_END_LOC != \"1017\");\r\n if (t2 != null) //鍚屼晶鍙栬揣浠诲姟銆俓r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 鎵惧悓渚у彇璐т换鍔t2.S_TASK_NO}銆俓");\r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 1;\r\n tag.RGV.taskno2 = Convert.ToUInt32(t2.S_TASK_NO.Substring(4));\r\n tag.RGV.task2do = Convert.ToUInt16(t2.S_START_LOC);\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n t2.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t2);\r\n creT2 = true;\r\n }\r\n }\r\n else if (RightSide.Contains(task1.S_START_LOC))\r\n {\r\n RightSide.Remove(task1.S_START_LOC);\r\n var t2 = tklist.Find(x => RightSide.Contains(x.S_START_LOC) && x.S_END_LOC != \"1017\");\r\n if (t2 != null) //鍚屼晶鍙栬揣浠诲姟銆俓r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 鎵惧悓渚у彇璐т换鍔t2.S_TASK_NO}銆俓");\r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 1;\r\n tag.RGV.taskno2 = Convert.ToUInt32(t2.S_TASK_NO.Substring(4));\r\n tag.RGV.task2do = Convert.ToUInt16(t2.S_START_LOC);\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n t2.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(t2);\r\n creT2 = true;\r\n }\r\n }\r\n //else //1 鐩存帴鍗歌揣銆�\r\n if (!creT2)\r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV1 鏈変换鍔task1.S_TASK_NO},宸ヤ綅2 娌′换鍔°� 娌℃湁鍚屼晶鍙栬揣浠诲姟 1宸ヤ綅鍗歌揣銆俓");\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno1 = Convert.ToUInt32(task1.S_TASK_NO.Substring(4));\r\n tag.RGV.task1do = Convert.ToUInt16(task1.S_END_LOC);\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n }\r\n }\r\n}\r\nelse\r\n{\r\n if (task2 != null && task2.S_B_STATE != \"瀹屾垚\")// 1 娌′换鍔� 2 鏈変换鍔°� \r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV 1宸ヤ綅娌′换鍔�宸ヤ綅2 鏈変换鍔task2.S_TASK_NO}銆傚伐浣�鍗歌揣銆傘�\");\r\n //2 鍗歌揣銆俓r\n tag.RGV.workMod = 2;\r\n tag.RGV.taskmod = 2;\r\n tag.RGV.taskno2 = Convert.ToUInt32(task2.S_TASK_NO.Substring(4));\r\n tag.RGV.task2do = Convert.ToUInt16(task2.S_END_LOC);\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n }\r\n else //1mei 浠诲姟 2 娌′换鍔°�\r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV 1宸ヤ綅娌′换鍔�宸ヤ綅2 涔熸病浠诲姟銆備紭鍏�宸ヤ綅缁堢偣1017浠诲姟銆傘�\");\r\n //銆佷笅 1017浠诲姟 缁�鍙峰伐浣嶃�\r\n var lss = tklist.Take(2).ToList();\r\n var e1017first = lss.Find(x => x.S_END_LOC == \"1017\");\r\n if (e1017first == null)\r\n {\r\n e1017first = lss.FirstOrDefault();\r\n }\r\n if (e1017first != null)\r\n {\r\n LogHelper.Info($\"鏌ョ湅RGV 1宸ヤ綅娌′换鍔�宸ヤ綅2 涔熸病浠诲姟銆�宸ヤ綅涓嬩换鍔e1017first.S_TASK_NO}> 缁堢偣{e1017first.S_END_LOC}銆俓");\r\n try\r\n {\r\n tag.RGV.workMod = 1;\r\n tag.RGV.taskmod = 1;\r\n uint tno = Convert.ToUInt32(e1017first.S_TASK_NO.Substring(4));\r\n LogHelper.Info($\"{e1017first.S_TASK_NO}> 杞崲鍚庝换鍔″彿{tno} 寮�鍐欏叆銆俓");\r\n tag.RGV.taskno1 = tno;\r\n LogHelper.Info($\"{e1017first.S_TASK_NO}>寮�鍐欏叆 task1do>>{e1017first.S_START_LOC}銆俓");\r\n tag.RGV.task1do = Convert.ToUInt16(e1017first.S_START_LOC);\r\n }\r\n catch (Exception ex)\r\n {\r\n LogHelper.Error(ex.Message, ex);\r\n throw ex;\r\n }\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n System.Threading.Thread.Sleep(750);\r\n tag.RGV.taskend = 125;\r\n LogHelper.Info($\"{e1017first.S_TASK_NO}> taskend 125\");\r\n e1017first.S_B_STATE = \"宸叉帹閫乗";\r\n taskservice.Update(e1017first);\r\n }\r\n }\r\n}\r\n\r\n#endregion", "ParentID": "20250226153120175", "Children": [], "Type": "Program", @@ -673,8 +673,8 @@ "ID": "20250616094224396", "Name": "1020绌烘涓嬬嚎", "Desc": "", - "Content": "//1020 1023 绌烘涓嬬嚎\r\nforeach (var Bssx in new string[] { \"1020\", \"1023\" })\r\n{\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 绌轰笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n foreach (var item in new string[] { \"1004\", \"1006\", \"1012\", \"1014\" })\r\n {\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"绌轰笂RGV\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"0\", $\"S{item}ReadQueue\");\r\n }\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"0\", $\"S{Bssx}ReadQueue\");\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n}", - "ContentCopy": "//1020 1023 绌烘涓嬬嚎\r\nforeach (var Bssx in new string[] { \"1020\", \"1023\" })\r\n{\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 绌轰笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n foreach (var item in new string[] { \"1004\", \"1006\", \"1012\", \"1014\" })\r\n {\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"绌轰笂RGV\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"0\", $\"S{item}ReadQueue\");\r\n }\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"0\", $\"S{Bssx}ReadQueue\");\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n}", + "Content": "foreach (var Bssx in new string[] { \"1020\", \"1023\" })\r\n{\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 绌轰笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n try\r\n {\r\n foreach (var item in new string[] { \"1004\", \"1006\", \"1012\", \"1014\" })\r\n {\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"绌轰笂RGV\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n LogHelper.Debug($\"杈撻�绾縍GV绌烘墭浠诲姟 from:{Bssx}>to {item}寮�鍒涘缓鎴愬姛\");\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"1\", out string msg);\r\n //Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"1\", $\"S{Bssx}ReadQueue\");\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"1\", out string msg1);\r\n //Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"0\", out string msg);\r\n //Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"0\", $\"S{item}ReadQueue\");\r\n }\r\n }\r\n System.Threading.Thread.Sleep(1000);\r\n }\r\n catch (Exception ex)\r\n {\r\n LogHelper.Error(ex.Message, ex);\r\n Console.WriteLine(ex.Message + ex.StackTrace);\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"0\", out string msg);\r\n //Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"0\", $\"S{Bssx}ReadQueue\");\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n}", + "ContentCopy": "foreach (var Bssx in new string[] { \"1020\", \"1023\" })\r\n{\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 绌轰笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n try\r\n {\r\n foreach (var item in new string[] { \"1004\", \"1006\", \"1012\", \"1014\" })\r\n {\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"绌轰笂RGV\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n LogHelper.Debug($\"杈撻�绾縍GV绌烘墭浠诲姟 from:{Bssx}>to {item}寮�鍒涘缓鎴愬姛\");\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"1\", out string msg);\r\n //Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"1\", $\"S{Bssx}ReadQueue\");\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"1\", out string msg1);\r\n //Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"0\", out string msg);\r\n //Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"0\", $\"S{item}ReadQueue\");\r\n }\r\n }\r\n System.Threading.Thread.Sleep(1000);\r\n }\r\n catch (Exception ex)\r\n {\r\n LogHelper.Error(ex.Message, ex);\r\n Console.WriteLine(ex.Message + ex.StackTrace);\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"0\", out string msg);\r\n //Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"0\", $\"S{Bssx}ReadQueue\");\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n}", "ParentID": "20250614173821058", "Children": [], "Type": "Program", @@ -751,8 +751,8 @@ "ID": "20250616094632985", "Name": "瀹氬瓙婊′笅绾�, "Desc": "", - "Content": "//瀹氬瓙婊′笅绾� 1008 1016 -> 1026\r\nforeach (var Bssx in new string[] { \"1008\", \"1016\" })\r\n{\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 婊′笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n var item = \"1026\";\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"婊¤浆1026\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"1\", $\"S{Bssx}ReadQueue\");\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"0\", $\"S{item}ReadQueue\");\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"0\", $\"S{Bssx}ReadQueue\");\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n}", - "ContentCopy": "//瀹氬瓙婊′笅绾� 1008 1016 -> 1026\r\nforeach (var Bssx in new string[] { \"1008\", \"1016\" })\r\n{\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 婊′笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n var item = \"1026\";\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"婊¤浆1026\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"1\", $\"S{Bssx}ReadQueue\");\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"0\", $\"S{item}ReadQueue\");\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"0\", $\"S{Bssx}ReadQueue\");\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n}", + "Content": "foreach (var Bssx in new string[] { \"1008\", \"1016\" })\r\n{\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 婊′笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n var item = \"1026\";\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"婊¤浆1026\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"1\", out string msg);\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"1\", out string msg2);\r\n //Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"1\", $\"S{Bssx}ReadQueue\");\r\n //Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"0\", out string msg2);\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"0\", out string msg);\r\n //Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"0\", $\"S{Bssx}ReadQueue\");\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n}", + "ContentCopy": "foreach (var Bssx in new string[] { \"1008\", \"1016\" })\r\n{\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 婊′笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n var item = \"1026\";\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"婊¤浆1026\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"1\", out string msg);\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"1\", out string msg2);\r\n //Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"1\", $\"S{Bssx}ReadQueue\");\r\n //Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"0\", out string msg2);\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"0\", out string msg);\r\n //Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"0\", $\"S{Bssx}ReadQueue\");\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n}", "ParentID": "20250614173821058", "Children": [], "Type": "Program", @@ -790,8 +790,8 @@ "ID": "20250616094511322", "Name": "杞瓙婊′笅绾�, "Desc": "", - "Content": "//杞瓙婊′笅绾� 1002 1010 - RGV2宸ヤ綅涓嶅彲鍒�1017 涓嶅彲涓嬪彂2宸ヤ綅浠诲姟銆俓r\n foreach (var Bssx in new string[] { \"1002\", \"1010\" })\r\n {\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 婊′笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n var item = \"1017\";\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"婊¤浆1017\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"1\", $\"S{Bssx}ReadQueue\");\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"0\", $\"S{item}ReadQueue\");\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"0\", $\"S{Bssx}ReadQueue\");\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n }", - "ContentCopy": "//杞瓙婊′笅绾� 1002 1010 - RGV2宸ヤ綅涓嶅彲鍒�1017 涓嶅彲涓嬪彂2宸ヤ綅浠诲姟銆俓r\n foreach (var Bssx in new string[] { \"1002\", \"1010\" })\r\n {\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 婊′笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n var item = \"1017\";\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"婊¤浆1017\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"1\", $\"S{Bssx}ReadQueue\");\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"0\", $\"S{item}ReadQueue\");\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"0\", $\"S{Bssx}ReadQueue\");\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n }", + "Content": "//杞瓙婊′笅绾� 1002 1010 - RGV2宸ヤ綅涓嶅彲鍒�1017 涓嶅彲涓嬪彂2宸ヤ綅浠诲姟銆俓r\nforeach (var Bssx in new string[] { \"1002\", \"1010\" })\r\n{\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 婊′笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n var item = \"1017\";\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"婊¤浆1017\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"1\", out string msg);\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"1\", out string msg1);\r\n //Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"1\", $\"S{Bssx}ReadQueue\");\r\n //Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"0\", out string msg1);\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"0\", out string msg);\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n}", + "ContentCopy": "//杞瓙婊′笅绾� 1002 1010 - RGV2宸ヤ綅涓嶅彲鍒�1017 涓嶅彲涓嬪彂2宸ヤ綅浠诲姟銆俓r\nforeach (var Bssx in new string[] { \"1002\", \"1010\" })\r\n{\r\n var RtaskState = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState\"), typeof(System.UInt16));\r\n var RtaskState_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.RtaskState_LAST\"), typeof(System.UInt16));\r\n var R鎵樼洏鐮�= (System.String)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{Bssx}Read.R鎵樼洏鐮乗"), typeof(System.String));\r\n Console.WriteLine($\"{Bssx} 婊′笅妫�祴锛氫换鍔$敵璇凤細{RtaskState}- 鏄惁宸插鐞嗭細{RtaskState_LAST}- 鎵樼洏鐮侊細{R鎵樼洏鐮亇\");\r\n if (RtaskState == 3 && RtaskState_LAST == 0)\r\n {\r\n var item = \"1017\";\r\n var R5 = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽\"), typeof(System.UInt16));\r\n var R5绌洪棽_LAST = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"S{item}Read.R5绌洪棽_LAST\"), typeof(System.UInt16));\r\n if (R5 == 5 && R5绌洪棽_LAST == 0)\r\n {\r\n var b = TaskProcess.CreateTask(\"\", Bssx, item, \"婊¤浆1017\", 5, new List<string> { R鎵樼洏鐮�}, \"RGV\");\r\n if (b)\r\n {\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"1\", out string msg);\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"1\", out string msg1);\r\n //Conn.榛樿Redis.SetValue($\"S{Bssx}Read.RtaskState_LAST\", \"1\", $\"S{Bssx}ReadQueue\");\r\n //Conn.榛樿Redis.SetValue($\"S{item}Read.R5绌洪棽_LAST\", \"1\", $\"S{item}ReadQueue\");\r\n break;\r\n }\r\n }\r\n else if (R5 != 5 && R5绌洪棽_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{item}Read.R5绌洪棽_LAST\", \"0\", out string msg1);\r\n }\r\n }\r\n else if (RtaskState != 3 && RtaskState_LAST == 1)\r\n {\r\n RedisHelper.Add($\"S{Bssx}Read.RtaskState_LAST\", \"0\", out string msg);\r\n }\r\n System.Threading.Thread.Sleep(2000);\r\n}", "ParentID": "20250614173821058", "Children": [], "Type": "Program", @@ -829,8 +829,8 @@ "ID": "20250616095605911", "Name": "涓嬫枡浣嶆娴�, "Desc": "", - "Content": "//涓嬫枡浣嶆娴嬨� 1003 鍒颁綅鏃�鍐�鏍囪瘑淇″彿 骞�缁欐満姊版墜淇″彿銆� \r\nforeach (var ssx in new string[] { \"1003\", \"1005\", \"1011\", \"1013\" })\r\n{\r\n var RArrive = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"FNK1003051113.RArrive{ssx}\"), typeof(System.UInt16));\r\n var RArriveLast = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"FNK1003051113.RArrive{ssx}_LAST\"), typeof(System.UInt16));\r\n if (RArrive == 1 && RArriveLast == 0)\r\n {\r\n if (ssx == \"1005\")\r\n {\r\n tag.FNK1.D2210 = 1;\r\n tag.SF涓嬫枡浣�RArrive1005_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1005 = 0;\r\n tag.SF涓嬫枡浣�WSafe0305 = 0;\r\n }\r\n else if (ssx == \"1003\")\r\n {\r\n tag.FNK2.D2215 = 1;\r\n tag.SF涓嬫枡浣�RArrive1003_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1003 = 0;\r\n tag.SF涓嬫枡浣�WSafe0305 = 0;\r\n }\r\n else if (ssx == \"1013\")\r\n {\r\n tag.FNK2.D2210 = 1;\r\n tag.SF涓嬫枡浣�RArrive1013_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1013 = 0;\r\n tag.SF涓嬫枡浣�WSafe1113 = 0;\r\n }\r\n else if (ssx == \"1011\")\r\n {\r\n tag.FNK2.D2215 = 1;\r\n tag.SF涓嬫枡浣�RArrive1011_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1011 = 0;\r\n tag.SF涓嬫枡浣�WSafe1113 = 0;\r\n }\r\n }\r\n else if (RArrive == 0 && RArriveLast == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"FNK1003051113.RArrive{ssx}_LAST\", \"0\", $\"FNK1003051113Queue\");\r\n }\r\n}", - "ContentCopy": "//涓嬫枡浣嶆娴嬨� 1003 鍒颁綅鏃�鍐�鏍囪瘑淇″彿 骞�缁欐満姊版墜淇″彿銆� \r\nforeach (var ssx in new string[] { \"1003\", \"1005\", \"1011\", \"1013\" })\r\n{\r\n var RArrive = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"FNK1003051113.RArrive{ssx}\"), typeof(System.UInt16));\r\n var RArriveLast = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"FNK1003051113.RArrive{ssx}_LAST\"), typeof(System.UInt16));\r\n if (RArrive == 1 && RArriveLast == 0)\r\n {\r\n if (ssx == \"1005\")\r\n {\r\n tag.FNK1.D2210 = 1;\r\n tag.SF涓嬫枡浣�RArrive1005_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1005 = 0;\r\n tag.SF涓嬫枡浣�WSafe0305 = 0;\r\n }\r\n else if (ssx == \"1003\")\r\n {\r\n tag.FNK2.D2215 = 1;\r\n tag.SF涓嬫枡浣�RArrive1003_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1003 = 0;\r\n tag.SF涓嬫枡浣�WSafe0305 = 0;\r\n }\r\n else if (ssx == \"1013\")\r\n {\r\n tag.FNK2.D2210 = 1;\r\n tag.SF涓嬫枡浣�RArrive1013_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1013 = 0;\r\n tag.SF涓嬫枡浣�WSafe1113 = 0;\r\n }\r\n else if (ssx == \"1011\")\r\n {\r\n tag.FNK2.D2215 = 1;\r\n tag.SF涓嬫枡浣�RArrive1011_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1011 = 0;\r\n tag.SF涓嬫枡浣�WSafe1113 = 0;\r\n }\r\n }\r\n else if (RArrive == 0 && RArriveLast == 1)\r\n {\r\n Conn.榛樿Redis.SetValue($\"FNK1003051113.RArrive{ssx}_LAST\", \"0\", $\"FNK1003051113Queue\");\r\n }\r\n}", + "Content": "//涓嬫枡浣嶆娴嬨� 1003 鍒颁綅鏃�鍐�鏍囪瘑淇″彿 骞�缁欐満姊版墜淇″彿銆� \r\nforeach (var ssx in new string[] { \"1003\", \"1005\", \"1011\", \"1013\" })\r\n{\r\n var RArrive = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"FNK1003051113.RArrive{ssx}\"), typeof(System.UInt16));\r\n var RArriveLast = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"FNK1003051113.RArrive{ssx}_LAST\"), typeof(System.UInt16));\r\n if (RArrive == 1 && RArriveLast == 0)\r\n {\r\n if (ssx == \"1005\")\r\n {\r\n tag.FNK1.D2210 = 1;\r\n tag.SF涓嬫枡浣�RArrive1005_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1005 = 0;\r\n tag.SF涓嬫枡浣�WSafe0305 = 0;\r\n }\r\n else if (ssx == \"1003\")\r\n {\r\n tag.FNK2.D2215 = 1;\r\n tag.SF涓嬫枡浣�RArrive1003_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1003 = 0;\r\n tag.SF涓嬫枡浣�WSafe0305 = 0;\r\n }\r\n else if (ssx == \"1013\")\r\n {\r\n tag.FNK2.D2210 = 1;\r\n tag.SF涓嬫枡浣�RArrive1013_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1013 = 0;\r\n tag.SF涓嬫枡浣�WSafe1113 = 0;\r\n }\r\n else if (ssx == \"1011\")\r\n {\r\n tag.FNK2.D2215 = 1;\r\n tag.SF涓嬫枡浣�RArrive1011_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1011 = 0;\r\n tag.SF涓嬫枡浣�WSafe1113 = 0;\r\n }\r\n }\r\n else if (RArrive == 0 && RArriveLast == 1)\r\n {\r\n RedisHelper.Add($\"FNK1003051113.RArrive{ssx}_LAST\", \"0\", out string msg);\r\n }\r\n}", + "ContentCopy": "//涓嬫枡浣嶆娴嬨� 1003 鍒颁綅鏃�鍐�鏍囪瘑淇″彿 骞�缁欐満姊版墜淇″彿銆� \r\nforeach (var ssx in new string[] { \"1003\", \"1005\", \"1011\", \"1013\" })\r\n{\r\n var RArrive = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"FNK1003051113.RArrive{ssx}\"), typeof(System.UInt16));\r\n var RArriveLast = (System.UInt16)System.Convert.ChangeType(Conn.榛樿Redis.GetValue($\"FNK1003051113.RArrive{ssx}_LAST\"), typeof(System.UInt16));\r\n if (RArrive == 1 && RArriveLast == 0)\r\n {\r\n if (ssx == \"1005\")\r\n {\r\n tag.FNK1.D2210 = 1;\r\n tag.SF涓嬫枡浣�RArrive1005_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1005 = 0;\r\n tag.SF涓嬫枡浣�WSafe0305 = 0;\r\n }\r\n else if (ssx == \"1003\")\r\n {\r\n tag.FNK2.D2215 = 1;\r\n tag.SF涓嬫枡浣�RArrive1003_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1003 = 0;\r\n tag.SF涓嬫枡浣�WSafe0305 = 0;\r\n }\r\n else if (ssx == \"1013\")\r\n {\r\n tag.FNK2.D2210 = 1;\r\n tag.SF涓嬫枡浣�RArrive1013_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1013 = 0;\r\n tag.SF涓嬫枡浣�WSafe1113 = 0;\r\n }\r\n else if (ssx == \"1011\")\r\n {\r\n tag.FNK2.D2215 = 1;\r\n tag.SF涓嬫枡浣�RArrive1011_LAST = 1;\r\n\r\n tag.SF涓嬫枡浣�WRelease1011 = 0;\r\n tag.SF涓嬫枡浣�WSafe1113 = 0;\r\n }\r\n }\r\n else if (RArrive == 0 && RArriveLast == 1)\r\n {\r\n RedisHelper.Add($\"FNK1003051113.RArrive{ssx}_LAST\", \"0\", out string msg);\r\n }\r\n}", "ParentID": "20250614173821058", "Children": [], "Type": "Program", @@ -1410,6 +1410,6 @@ } ], "CreationTime": "2025-02-26 15:31:20", - "LastWriteTime": "2025-06-17 09:30:15", + "LastWriteTime": "2025-06-18 23:06:58", "HasSaved": true } \ No newline at end of file diff --git a/S7/Static/NetAssist.cfg b/S7/Static/NetAssist.cfg new file mode 100644 index 0000000..d0b4bdb --- /dev/null +++ b/S7/Static/NetAssist.cfg @@ -0,0 +1,2 @@ +[OPTIONS] +upgrade=I3ZlcnNpb249NTAwMTQKI3VybD1odHRwOi8vZnJlZS5jbXNvZnQuY24vZG93bmxvYWQvY21zb2Z0L2Fzc2lzdGFudC9uZXRhc3Npc3Q1LjAuMTQuemlwCiNtZXNzYWdlPXs1LjAuMTQNCiAoMSkg1Pa800NTVrW8yOsvtbyz9ii/7L3d1rjB7i/F+sG/t6LLzS/X1Lavu9i4tCkNCiAoMikgzsS8/rSryuTU9rzTt9aw/L3hyvi3+9Ghz+4NCiAoMykguaS+38PmsOXU9rzTR1NNtffK1LmmxNwNCiAoNCkguaS+38PmsOXU9rzT19a3+7HgwuvXqru7uabE3A0KICg1KSDG5Mv80N64tNPFu68gDQo1LjAuMTMNCiAoMSkg08W7r7bPzfi71ri0uvO1xM2o0MXW0LbP1tjBrLmmxNwNCiAoMikg0N64tFVEUNfpsqXU2rbgzfi/qLu3vrPW0MK308nS7LOjzsrM4g0KICgzKSDF+sG/t6LLzS+/7L3dt6LLzdT2vNPOxLz+t6LLzdGhz+4NCiAoNCkgwPrKt7zHwrwvxfrBv7eiy80vv+y93beiy83U9rzTudi8/NfWy9HL9w0KICg1KSDF+sG/t6LLzdans9a009a4tqjP7r+qyrwNCiAoNikg08W7r73Fsb7S/cfmL9fUtq/TprTw1Pa801VURjix4MLr1qez1g0KNS4wLjEwDQogKDEpINDC1PZNUVRUv827p7bL0K3S6dans9YNCiAoMikg0MLU9lRDUL/Nu6e2y7bPv6rW2MGsyejWw8/uDQogKDMpINDC1PbF+sG/t6LLzdGtu7e0zsr9yejWw8/uDQogKDQpINDC1PbK/b7dzbyx7dfUtq+xo7Tmtb1FWENFTLHtuPENCjUuMC4xDQogKDEpINT2vNPX1Lav06a08C/X1Lao0uW9xbG+DQogKDIpINT2vNNKVDgwONCt0unW1bbLxKPE4g0KICgzKSDU9rzTTW9kYnVz0K3S6dbVtsu198rUfSM= diff --git a/S7/Static/NetAssist.exe b/S7/Static/NetAssist.exe new file mode 100644 index 0000000..163f4cb --- /dev/null +++ b/S7/Static/NetAssist.exe Binary files differ -- Gitblit v1.9.1