fix: 【IoT 物联网】场景联动修复产品切换时监控项没触发更新的问题

pull/812/head
puhui999 2025-08-14 18:21:27 +08:00
parent d6f3c511b8
commit 6bfd888b54
3 changed files with 63 additions and 70 deletions

View File

@ -65,7 +65,6 @@
:model-value="condition.operator" :model-value="condition.operator"
@update:model-value="(value) => updateConditionField('operator', value)" @update:model-value="(value) => updateConditionField('operator', value)"
:property-type="propertyType" :property-type="propertyType"
@change="handleOperatorChange"
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -326,12 +325,4 @@ const handlePropertyChange = (propertyInfo: any) => {
} }
} }
} }
// TODO @puhui999
/**
* 处理操作符变化事件
*/
const handleOperatorChange = () => {
//
}
</script> </script>

View File

@ -222,7 +222,9 @@ const availableOperators = computed(() => {
if (!props.propertyType) { if (!props.propertyType) {
return allOperators return allOperators
} }
return allOperators.filter((op) => op.supportedTypes.includes(props.propertyType!)) return allOperators.filter((op) =>
(op.supportedTypes as any[]).includes(props.propertyType || '')
)
}) })
// //
@ -243,12 +245,14 @@ watch(
() => props.propertyType, () => props.propertyType,
() => { () => {
// //
if (localValue.value && selectedOperator.value) { if (
if (!selectedOperator.value.supportedTypes.includes(props.propertyType || '')) { localValue.value &&
selectedOperator.value &&
!(selectedOperator.value.supportedTypes as any[]).includes(props.propertyType || '')
) {
localValue.value = '' localValue.value = ''
} }
} }
}
) )
</script> </script>

View File

@ -262,7 +262,6 @@ const handleChange = (value: string) => {
} }
} }
// TODO @puhui999
/** /**
* 获取物模型TSL数据 * 获取物模型TSL数据
*/ */
@ -297,8 +296,10 @@ const parseThingModelData = () => {
const tsl = thingModelTSL.value const tsl = thingModelTSL.value
const properties: PropertySelectorItem[] = [] const properties: PropertySelectorItem[] = []
// TODO @puhui999if return if (!tsl) {
if (tsl) { propertyList.value = properties
return
}
// //
if (tsl.properties && Array.isArray(tsl.properties)) { if (tsl.properties && Array.isArray(tsl.properties)) {
tsl.properties.forEach((prop) => { tsl.properties.forEach((prop) => {
@ -351,8 +352,6 @@ const parseThingModelData = () => {
}) })
}) })
} }
}
propertyList.value = properties propertyList.value = properties
} }
@ -396,7 +395,7 @@ const getPropertyRange = (property: any) => {
return undefined return undefined
} }
/** * /** 监听产品变化 */
watch( watch(
() => props.productId, () => props.productId,
() => { () => {
@ -410,7 +409,6 @@ watch(
() => props.triggerType, () => props.triggerType,
() => { () => {
localValue.value = '' localValue.value = ''
// el-popover
} }
) )
</script> </script>