【功能完善】IoT: 规则场景触发器相关组件

This commit is contained in:
puhui999
2025-03-21 14:03:05 +08:00
parent 73d2c2005c
commit 6745594e3a
2 changed files with 37 additions and 21 deletions

View File

@ -27,7 +27,9 @@
</div>
<!-- 删除触发器 -->
<div class="device-listener-delete">
<slot></slot>
<el-tooltip content="删除触发器" placement="top">
<slot></slot>
</el-tooltip>
</div>
</div>
<!-- 触发器条件 -->
@ -54,26 +56,37 @@
@update:model-value="(val) => (condition.parameters[index2] = val)"
class="mb-10px last:mb-0"
>
<!-- 删除规则 -->
<el-button
class="device-listener-delete"
type="danger"
circle
:icon="Delete"
size="small"
@click="removeConditionParameter(condition.parameters, index2)"
/>
<el-tooltip content="删除参数" placement="top">
<el-button
class="device-listener-delete"
type="danger"
circle
:icon="Delete"
size="small"
@click="removeConditionParameter(condition.parameters, index2)"
/>
</el-tooltip>
</DeviceListenerCondition>
</div>
<div class="flex flex-1 flex-col items-center justify-center w-a h-a">
<!-- 添加规则 -->
<el-button
type="primary"
circle
:icon="Plus"
size="small"
@click="addConditionParameter(condition.parameters)"
/>
<!-- 添加参数 -->
<div class="flex flex-1 flex-col items-center justify-center w-60px h-a">
<el-tooltip content="添加参数" placement="top">
<el-button
type="primary"
circle
:icon="Plus"
size="small"
@click="addConditionParameter(condition.parameters)"
/>
</el-tooltip>
</div>
<!-- 删除条件 -->
<div
class="device-listener-condition flex flex-1 flex-col items-center justify-center w-a h-a"
>
<el-tooltip content="删除条件" placement="top">
<el-button type="danger" :icon="Delete" size="small" @click="removeCondition(index)" />
</el-tooltip>
</div>
</div>
<el-text class="ml-10px!" type="primary" @click="addCondition">添加触发条件</el-text>
@ -104,7 +117,10 @@ const addCondition = () => {
parameters: []
})
}
/** 移除触发条件 */
const removeCondition = (index: number) => {
triggerConfig.value.conditions.splice(index, 1)
}
/** 添加参数 */
const addConditionParameter = (conditionParameters: IotRuleSceneTriggerConditionParameter[]) => {
conditionParameters.push({} as IotRuleSceneTriggerConditionParameter)

View File

@ -15,7 +15,7 @@
</el-select>
<el-select
v-model="conditionParameter.operator"
class="!w-240px mr-10px"
class="!w-180px mr-10px"
clearable
placeholder="请选择条件"
>