fix(iot): 修复源端 IoT 对齐基线问题

- 收紧物模型标识符前端校验规则
- 修复场景联动设备状态触发器校验
- 修正设备列表状态字段展示
master
YunaiV 2026-05-25 00:11:19 +08:00
parent dd009a1de0
commit dc1a582fbd
3 changed files with 6 additions and 5 deletions

View File

@ -215,8 +215,8 @@ export const ThingModelFormRules = {
identifier: [ identifier: [
{ required: true, message: '标识符不能为空', trigger: 'blur' }, { required: true, message: '标识符不能为空', trigger: 'blur' },
{ {
pattern: /^[a-zA-Z0-9_]{1,50}$/, pattern: /^[a-zA-Z][a-zA-Z0-9_]{0,31}$/,
message: '支持大小写字母、数字和下划线,不超过 50 个字符', message: '支持大小写字母、数字和下划线,必须以字母开头,不超过 32 个字符',
trigger: 'blur' trigger: 'blur'
}, },
{ {

View File

@ -308,9 +308,9 @@
</template> </template>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="设备状态" align="center" prop="status"> <el-table-column label="设备状态" align="center" prop="state">
<template #default="scope"> <template #default="scope">
<dict-tag :type="DICT_TYPE.IOT_DEVICE_STATE" :value="scope.row.status" /> <dict-tag :type="DICT_TYPE.IOT_DEVICE_STATE" :value="scope.row.state" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column

View File

@ -124,7 +124,8 @@ const validateTriggers = (_rule: any, value: any, callback: any) => {
callback(new Error(`触发器 ${i + 1}: 设备不能为空`)) callback(new Error(`触发器 ${i + 1}: 设备不能为空`))
return return
} }
if (!trigger.identifier) { const isStateUpdate = trigger.type === IotRuleSceneTriggerTypeEnum.DEVICE_STATE_UPDATE
if (!isStateUpdate && !trigger.identifier) {
callback(new Error(`触发器 ${i + 1}: 物模型标识符不能为空`)) callback(new Error(`触发器 ${i + 1}: 物模型标识符不能为空`))
return return
} }