From eadf26dc3b25e52b6d7d874bf028871eaccd8fba Mon Sep 17 00:00:00 2001 From: puhui999 Date: Fri, 28 Mar 2025 15:54:12 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E5=8A=9F=E8=83=BD=E5=AE=8C=E5=96=84?= =?UTF-8?q?=E3=80=91IoT:=20=E5=9C=BA=E6=99=AF=E8=81=94=E5=8A=A8=E6=89=A7?= =?UTF-8?q?=E8=A1=8C=E5=99=A8=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/dict.ts | 3 +- src/views/iot/rule/scene/RuleSceneForm.vue | 43 +++- .../components/action/ActionExecutor.vue | 180 +++++++++++++ .../scene/components/action/AlertAction.vue | 83 ++++++ .../components/action/DataBridgeAction.vue | 51 ++++ .../components/action/DeviceActionControl.vue | 95 +++++++ .../components/action/DeviceControlAction.vue | 162 ++++++++++++ .../components/action/PropertyValueInput.vue | 238 ++++++++++++++++++ .../{ => listener}/ConditionSelector.vue | 0 .../{ => listener}/DeviceListener.vue | 0 .../DeviceListenerCondition.vue | 0 11 files changed, 847 insertions(+), 8 deletions(-) create mode 100644 src/views/iot/rule/scene/components/action/ActionExecutor.vue create mode 100644 src/views/iot/rule/scene/components/action/AlertAction.vue create mode 100644 src/views/iot/rule/scene/components/action/DataBridgeAction.vue create mode 100644 src/views/iot/rule/scene/components/action/DeviceActionControl.vue create mode 100644 src/views/iot/rule/scene/components/action/DeviceControlAction.vue create mode 100644 src/views/iot/rule/scene/components/action/PropertyValueInput.vue rename src/views/iot/rule/scene/components/{ => listener}/ConditionSelector.vue (100%) rename src/views/iot/rule/scene/components/{ => listener}/DeviceListener.vue (100%) rename src/views/iot/rule/scene/components/{ => listener}/DeviceListenerCondition.vue (100%) diff --git a/src/utils/dict.ts b/src/utils/dict.ts index e6c1babd0..653160bfe 100644 --- a/src/utils/dict.ts +++ b/src/utils/dict.ts @@ -247,5 +247,6 @@ export enum DICT_TYPE { IOT_DATA_BRIDGE_DIRECTION_ENUM = 'iot_data_bridge_direction_enum', // 桥梁方向 IOT_DATA_BRIDGE_TYPE_ENUM = 'iot_data_bridge_type_enum', // 桥梁类型 IOT_DEVICE_MESSAGE_TYPE_ENUM = 'iot_device_message_type_enum', // IoT 设备消息类型枚举 - IOT_RULE_SCENE_TRIGGER_TYPE_ENUM = 'iot_rule_scene_trigger_type_enum' // IoT 场景流转的触发类型枚举 + IOT_RULE_SCENE_TRIGGER_TYPE_ENUM = 'iot_rule_scene_trigger_type_enum', // IoT 场景流转的触发类型枚举 + IOT_RULE_SCENE_ACTION_TYPE_ENUM = 'iot_rule_scene_action_type_enum' // IoT 规则场景的触发类型枚举 } diff --git a/src/views/iot/rule/scene/RuleSceneForm.vue b/src/views/iot/rule/scene/RuleSceneForm.vue index 034c52549..5104a6693 100644 --- a/src/views/iot/rule/scene/RuleSceneForm.vue +++ b/src/views/iot/rule/scene/RuleSceneForm.vue @@ -49,10 +49,21 @@ - 执行动作配置 - - - + 执行器配置 + + + + + + + 添加执行器 + @@ -65,15 +76,18 @@ diff --git a/src/views/iot/rule/scene/components/action/AlertAction.vue b/src/views/iot/rule/scene/components/action/AlertAction.vue new file mode 100644 index 000000000..5e4d7695d --- /dev/null +++ b/src/views/iot/rule/scene/components/action/AlertAction.vue @@ -0,0 +1,83 @@ + + + diff --git a/src/views/iot/rule/scene/components/action/DataBridgeAction.vue b/src/views/iot/rule/scene/components/action/DataBridgeAction.vue new file mode 100644 index 000000000..ffca12fd7 --- /dev/null +++ b/src/views/iot/rule/scene/components/action/DataBridgeAction.vue @@ -0,0 +1,51 @@ + + + diff --git a/src/views/iot/rule/scene/components/action/DeviceActionControl.vue b/src/views/iot/rule/scene/components/action/DeviceActionControl.vue new file mode 100644 index 000000000..a1d29cb58 --- /dev/null +++ b/src/views/iot/rule/scene/components/action/DeviceActionControl.vue @@ -0,0 +1,95 @@ + + + + + diff --git a/src/views/iot/rule/scene/components/action/DeviceControlAction.vue b/src/views/iot/rule/scene/components/action/DeviceControlAction.vue new file mode 100644 index 000000000..52adf7fd3 --- /dev/null +++ b/src/views/iot/rule/scene/components/action/DeviceControlAction.vue @@ -0,0 +1,162 @@ + + + diff --git a/src/views/iot/rule/scene/components/action/PropertyValueInput.vue b/src/views/iot/rule/scene/components/action/PropertyValueInput.vue new file mode 100644 index 000000000..5b03db09e --- /dev/null +++ b/src/views/iot/rule/scene/components/action/PropertyValueInput.vue @@ -0,0 +1,238 @@ + + + + + diff --git a/src/views/iot/rule/scene/components/ConditionSelector.vue b/src/views/iot/rule/scene/components/listener/ConditionSelector.vue similarity index 100% rename from src/views/iot/rule/scene/components/ConditionSelector.vue rename to src/views/iot/rule/scene/components/listener/ConditionSelector.vue diff --git a/src/views/iot/rule/scene/components/DeviceListener.vue b/src/views/iot/rule/scene/components/listener/DeviceListener.vue similarity index 100% rename from src/views/iot/rule/scene/components/DeviceListener.vue rename to src/views/iot/rule/scene/components/listener/DeviceListener.vue diff --git a/src/views/iot/rule/scene/components/DeviceListenerCondition.vue b/src/views/iot/rule/scene/components/listener/DeviceListenerCondition.vue similarity index 100% rename from src/views/iot/rule/scene/components/DeviceListenerCondition.vue rename to src/views/iot/rule/scene/components/listener/DeviceListenerCondition.vue