From 2550084b660b1801e680167f88813c242017a1fc Mon Sep 17 00:00:00 2001 From: nxiaoxiao <3247747442@qq.com> Date: Sun, 18 Aug 2024 21:49:33 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=B6=E4=BB=96=E6=8C=87=E4=BB=A4=E4=B9=9F?= =?UTF-8?q?=E4=B8=80=E6=AC=A1=E6=80=A7=E6=B7=BB=E5=8A=A0=E4=B8=8A=E5=8E=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Instructs/BatchDeleteElementInstruct.cs | 31 +++++++++++++++++++++++ Instructs/DeleteLayerAndMembersInstuct.cs | 31 +++++++++++++++++++++++ Instructs/ForceUpdateDataInstruct.cs | 31 +++++++++++++++++++++++ Instructs/Instruct.cs | 11 +++++++- Instructs/RenameLayerInstruct.cs | 31 +++++++++++++++++++++++ Instructs/UpdateTemplateDataInstruct.cs | 31 +++++++++++++++++++++++ 6 files changed, 165 insertions(+), 1 deletion(-) create mode 100644 Instructs/BatchDeleteElementInstruct.cs create mode 100644 Instructs/DeleteLayerAndMembersInstuct.cs create mode 100644 Instructs/ForceUpdateDataInstruct.cs create mode 100644 Instructs/RenameLayerInstruct.cs create mode 100644 Instructs/UpdateTemplateDataInstruct.cs diff --git a/Instructs/BatchDeleteElementInstruct.cs b/Instructs/BatchDeleteElementInstruct.cs new file mode 100644 index 0000000..bd3b8f8 --- /dev/null +++ b/Instructs/BatchDeleteElementInstruct.cs @@ -0,0 +1,31 @@ +using System.Text.Json; + +namespace OMS.NET.Instructs +{ + public class BatchDeleteElementInstruct : Instruct + { + public BatchDeleteElementInstruct() + { + Type = "broadcast"; + Class = "batchDeleteElement"; + } + + public override Task Handler(string wsid) + { + return Task.Run(() => + { + if (!GlobalArea.LoginCheckByID(wsid)) return;//登录检查不通过则直接退出 + if (Data?.GetType() != typeof(JsonElement)) return;//Data 非空和JsonElement类型检查 + try + { + //string conveyor = GlobalArea.GetLoginEmailByID(wsid); + string time = GlobalArea.GetCurrentTime(); + } + catch (Exception ex) + { + GlobalArea.Log.Warn($"处理{Class}广播指令出错:" + ex.Message); + } + }); + } + } +} \ No newline at end of file diff --git a/Instructs/DeleteLayerAndMembersInstuct.cs b/Instructs/DeleteLayerAndMembersInstuct.cs new file mode 100644 index 0000000..7ef5946 --- /dev/null +++ b/Instructs/DeleteLayerAndMembersInstuct.cs @@ -0,0 +1,31 @@ +using System.Text.Json; + +namespace OMS.NET.Instructs +{ + public class DeleteLayerAndMembersInstuct : Instruct + { + public DeleteLayerAndMembersInstuct() + { + Type = "broadcast"; + Class = "deleteLayerAndMembers"; + } + + public override Task Handler(string wsid) + { + return Task.Run(() => + { + if (!GlobalArea.LoginCheckByID(wsid)) return;//登录检查不通过则直接退出 + if (Data?.GetType() != typeof(JsonElement)) return;//Data 非空和JsonElement类型检查 + try + { + //string conveyor = GlobalArea.GetLoginEmailByID(wsid); + string time = GlobalArea.GetCurrentTime(); + } + catch (Exception ex) + { + GlobalArea.Log.Warn($"处理{Class}广播指令出错:" + ex.Message); + } + }); + } + } +} \ No newline at end of file diff --git a/Instructs/ForceUpdateDataInstruct.cs b/Instructs/ForceUpdateDataInstruct.cs new file mode 100644 index 0000000..c4f943c --- /dev/null +++ b/Instructs/ForceUpdateDataInstruct.cs @@ -0,0 +1,31 @@ +using System.Text.Json; + +namespace OMS.NET.Instructs +{ + public class ForceUpdateDataInstruct : Instruct + { + public ForceUpdateDataInstruct() + { + Type = "broadcast"; + Class = "forceUpdate"; + } + + public override Task Handler(string wsid) + { + return Task.Run(() => + { + if (!GlobalArea.LoginCheckByID(wsid)) return;//登录检查不通过则直接退出 + if (Data?.GetType() != typeof(JsonElement)) return;//Data 非空和JsonElement类型检查 + try + { + //string conveyor = GlobalArea.GetLoginEmailByID(wsid); + string time = GlobalArea.GetCurrentTime(); + } + catch (Exception ex) + { + GlobalArea.Log.Warn($"处理{Class}广播指令出错:" + ex.Message); + } + }); + } + } +} \ No newline at end of file diff --git a/Instructs/Instruct.cs b/Instructs/Instruct.cs index 3582c7c..0d3951d 100644 --- a/Instructs/Instruct.cs +++ b/Instructs/Instruct.cs @@ -55,7 +55,6 @@ namespace OMS.NET.Instructs "get_mapLayer" => JsonSerializer.Deserialize(root.GetRawText(), options), "get_activeData" => JsonSerializer.Deserialize(root.GetRawText(), options), "ping" => JsonSerializer.Deserialize(root.GetRawText(), options), - //广播指令 "broadcast" => classValue switch { @@ -66,10 +65,20 @@ namespace OMS.NET.Instructs "curve" => JsonSerializer.Deserialize(root.GetRawText(), options), "deleteElement" => JsonSerializer.Deserialize(root.GetRawText(), options), "textMessage" => JsonSerializer.Deserialize(root.GetRawText(), options), + "updateElement" => JsonSerializer.Deserialize(root.GetRawText(), options), + "updateElementNode" => JsonSerializer.Deserialize(root.GetRawText(), options), "selectIngElement" => JsonSerializer.Deserialize(root.GetRawText(), options), "selectEndElement" => JsonSerializer.Deserialize(root.GetRawText(), options), "pickIngElement" => JsonSerializer.Deserialize(root.GetRawText(), options), "pickEndElement" => JsonSerializer.Deserialize(root.GetRawText(), options), + "restoreElement" => JsonSerializer.Deserialize(root.GetRawText(), options), + "adjustElementOrder" => JsonSerializer.Deserialize(root.GetRawText(), options), + "updateLayerOrder" => JsonSerializer.Deserialize(root.GetRawText(), options), + "createGroupLayer" => JsonSerializer.Deserialize(root.GetRawText(), options), + "deleteLayerAndMembers" => JsonSerializer.Deserialize(root.GetRawText(), options), + "batchDeleteElement" => JsonSerializer.Deserialize(root.GetRawText(), options), + "renameLayer" => JsonSerializer.Deserialize(root.GetRawText(), options), + "updateTemplateData" => JsonSerializer.Deserialize(root.GetRawText(), options), _ => JsonSerializer.Deserialize(root.GetRawText(), options) }, _ => null diff --git a/Instructs/RenameLayerInstruct.cs b/Instructs/RenameLayerInstruct.cs new file mode 100644 index 0000000..178c788 --- /dev/null +++ b/Instructs/RenameLayerInstruct.cs @@ -0,0 +1,31 @@ +using System.Text.Json; + +namespace OMS.NET.Instructs +{ + public class RenameLayerInstruct : Instruct + { + public RenameLayerInstruct() + { + Type = "broadcast"; + Class = "renameLayer"; + } + + public override Task Handler(string wsid) + { + return Task.Run(() => + { + if (!GlobalArea.LoginCheckByID(wsid)) return;//登录检查不通过则直接退出 + if (Data?.GetType() != typeof(JsonElement)) return;//Data 非空和JsonElement类型检查 + try + { + //string conveyor = GlobalArea.GetLoginEmailByID(wsid); + string time = GlobalArea.GetCurrentTime(); + } + catch (Exception ex) + { + GlobalArea.Log.Warn($"处理{Class}广播指令出错:" + ex.Message); + } + }); + } + } +} \ No newline at end of file diff --git a/Instructs/UpdateTemplateDataInstruct.cs b/Instructs/UpdateTemplateDataInstruct.cs new file mode 100644 index 0000000..75d33ff --- /dev/null +++ b/Instructs/UpdateTemplateDataInstruct.cs @@ -0,0 +1,31 @@ +using System.Text.Json; + +namespace OMS.NET.Instructs +{ + public class UpdateTemplateDataInstruct : Instruct + { + public UpdateTemplateDataInstruct() + { + Type = "broadcast"; + Class = "updateTemplateData"; + } + + public override Task Handler(string wsid) + { + return Task.Run(() => + { + if (!GlobalArea.LoginCheckByID(wsid)) return;//登录检查不通过则直接退出 + if (Data?.GetType() != typeof(JsonElement)) return;//Data 非空和JsonElement类型检查 + try + { + //string conveyor = GlobalArea.GetLoginEmailByID(wsid); + string time = GlobalArea.GetCurrentTime(); + } + catch (Exception ex) + { + GlobalArea.Log.Warn($"处理{Class}广播指令出错:" + ex.Message); + } + }); + } + } +} \ No newline at end of file