diff --git a/src/api/device/product.ts b/src/api/device/product.ts index dca448a4..f6a31e9d 100644 --- a/src/api/device/product.ts +++ b/src/api/device/product.ts @@ -184,4 +184,13 @@ export const getOperator = () => server.get('/property-calculate-r /** * 获取聚合函数列表 */ -export const getStreamingAggType = () => server.get[]>('/dictionary/streaming-agg-type/items') \ No newline at end of file +export const getStreamingAggType = () => server.get[]>('/dictionary/streaming-agg-type/items') + +export const getMetadataConfig = (params: { + deviceId: string; + metadata: { + type: MetadataType | 'property'; + id: string; + dataType: string; + }; +}) => server.get[]>(`/device/product/${params.deviceId}/config-metadata/${params.metadata.type}/${params.metadata.id}/${params.metadata.dataType}`) \ No newline at end of file diff --git a/src/components/JIndicators/index.vue b/src/components/JIndicators/index.vue new file mode 100644 index 00000000..6d2c744d --- /dev/null +++ b/src/components/JIndicators/index.vue @@ -0,0 +1,115 @@ + + + \ No newline at end of file diff --git a/src/components/Metadata/BooleanParam/index.vue b/src/components/Metadata/BooleanParam/index.vue index 4e14a89a..4b93bf4d 100644 --- a/src/components/Metadata/BooleanParam/index.vue +++ b/src/components/Metadata/BooleanParam/index.vue @@ -77,5 +77,8 @@ onMounted(() => { } } } + :deep(input) { + height: 22px; + } } \ No newline at end of file diff --git a/src/components/Metadata/ConfigParam/index.vue b/src/components/Metadata/ConfigParam/index.vue new file mode 100644 index 00000000..802d3c99 --- /dev/null +++ b/src/components/Metadata/ConfigParam/index.vue @@ -0,0 +1,74 @@ + + + \ No newline at end of file diff --git a/src/components/Metadata/EnumParam/index.vue b/src/components/Metadata/EnumParam/index.vue index bb9daf5d..a67eac0b 100644 --- a/src/components/Metadata/EnumParam/index.vue +++ b/src/components/Metadata/EnumParam/index.vue @@ -157,4 +157,8 @@ const handleAdd = () => { :deep(.ant-select) { font-size: 12px; } + +:deep(input) { + height: 22px; +} \ No newline at end of file diff --git a/src/components/Metadata/JsonParam/index.vue b/src/components/Metadata/JsonParam/index.vue index 868b44fa..f28dc516 100644 --- a/src/components/Metadata/JsonParam/index.vue +++ b/src/components/Metadata/JsonParam/index.vue @@ -19,8 +19,8 @@ { required: true, message: '请输入标识' }, { max: 64, message: '最多可输入64个字符' }, { - pattern: /^[a-zA-Z0-9_]+$/, - message: '请输入英文或者数字或者-或者_', + pattern: /^[a-zA-Z0-9_\-]+$/, + message: 'ID只能由数字、字母、下划线、中划线组成', }, ]"> @@ -169,4 +169,8 @@ const handleAdd = () => { :deep(.ant-select) { font-size: 12px; } + +:deep(input) { + height: 22px; +} \ No newline at end of file diff --git a/src/components/Metadata/MetricsParam/index.vue b/src/components/Metadata/MetricsParam/index.vue new file mode 100644 index 00000000..954e6be9 --- /dev/null +++ b/src/components/Metadata/MetricsParam/index.vue @@ -0,0 +1,202 @@ + + + \ No newline at end of file diff --git a/src/views/device/components/Metadata/Base/Edit/index.vue b/src/views/device/components/Metadata/Base/Edit/index.vue index 81111112..2ae6b5ff 100644 --- a/src/views/device/components/Metadata/Base/Edit/index.vue +++ b/src/views/device/components/Metadata/Base/Edit/index.vue @@ -33,6 +33,11 @@ const props = defineProps({ type: String } }) +interface Emits { + (e: 'refresh'): void; +} +const emit = defineEmits() + const route = useRoute() const instanceStore = useInstanceStore() @@ -95,6 +100,7 @@ const save = reactive({ detail.metadata = metadata productStore.setCurrent(detail) } + emit('refresh') } const _data = updateMetadata(type, [formValue], _detail, updateStore) const result = await asyncUpdateMetadata(props.type, _data) diff --git a/src/views/device/components/Metadata/Base/index.vue b/src/views/device/components/Metadata/Base/index.vue index 0671faf0..04be78d2 100644 --- a/src/views/device/components/Metadata/Base/index.vue +++ b/src/views/device/components/Metadata/Base/index.vue @@ -13,7 +13,7 @@ 新增 - +