From 7680ff83d072308240b7ff835fddbf1cd068c895 Mon Sep 17 00:00:00 2001 From: puhui999 Date: Fri, 21 Mar 2025 18:12:35 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E5=8A=9F=E8=83=BD=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E3=80=91IoT:=20=E8=8E=B7=E5=8F=96=E4=BA=A7=E5=93=81=E7=89=A9?= =?UTF-8?q?=E6=A8=A1=E5=9E=8B=20TSL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scene/components/ConditionSelector.vue | 1 + .../rule/scene/components/DeviceListener.vue | 17 +++++++++++++--- .../components/DeviceListenerCondition.vue | 20 ++++++++++++++----- 3 files changed, 30 insertions(+), 8 deletions(-) diff --git a/src/views/iot/rule/scene/components/ConditionSelector.vue b/src/views/iot/rule/scene/components/ConditionSelector.vue index 4271ecf48..18e19affa 100644 --- a/src/views/iot/rule/scene/components/ConditionSelector.vue +++ b/src/views/iot/rule/scene/components/ConditionSelector.vue @@ -5,6 +5,7 @@ clearable :placeholder="placeholder" > + diff --git a/src/views/iot/rule/scene/components/DeviceListener.vue b/src/views/iot/rule/scene/components/DeviceListener.vue index dbca1c9ee..960189aba 100644 --- a/src/views/iot/rule/scene/components/DeviceListener.vue +++ b/src/views/iot/rule/scene/components/DeviceListener.vue @@ -43,7 +43,13 @@ :key="index" >
- + @@ -148,6 +154,10 @@ const removeCondition = (index: number) => { } /** 添加参数 */ const addConditionParameter = (conditionParameters: IotRuleSceneTriggerConditionParameter[]) => { + if (!product.value) { + message.warning('请先选择一个产品') + return + } conditionParameters.push({} as IotRuleSceneTriggerConditionParameter) } /** 移除参数 */ @@ -189,10 +199,11 @@ const thingModels = computed(() => (condition: IotRuleSceneTriggerCondition) => switch (condition.type) { case 'property': return thingModelTSL.value.properties + // TODO puhui999: 服务和事件后续考虑 case 'service': - return thingModelTSL.value.service + return thingModelTSL.value.services case 'event': - return thingModelTSL.value.event + return thingModelTSL.value.events } return [] }) diff --git a/src/views/iot/rule/scene/components/DeviceListenerCondition.vue b/src/views/iot/rule/scene/components/DeviceListenerCondition.vue index 14f95ccba..7942b6463 100644 --- a/src/views/iot/rule/scene/components/DeviceListenerCondition.vue +++ b/src/views/iot/rule/scene/components/DeviceListenerCondition.vue @@ -14,6 +14,7 @@ /> + @@ -37,11 +38,20 @@ const conditionParameter = useVModel( ) as Ref /** 获得属性单位 */ -const getUnitName = computed( - () => - props.thingModels.find((item: any) => item.identifier === conditionParameter.value.identifier) - ?.dataSpecs?.unitName || '单位' -) +const getUnitName = computed(() => { + const model = props.thingModels?.find( + (item: any) => item.identifier === conditionParameter.value.identifier + ) + // 属性 + if (model?.dataSpecs) { + return model.dataSpecs.unitName + } + // 服务和事件 + // if (model?.outputParams) { + // return model.dataSpecs.unitName + // } + return '单位' +})