|
@@ -10,23 +10,32 @@
|
|
|
<el-form-item label="产品名称" prop="name">
|
|
|
<el-input v-model="formData.name" placeholder="请输入产品名称" />
|
|
|
</el-form-item>
|
|
|
+
|
|
|
<el-form-item label="设备类型" prop="deviceType">
|
|
|
- <el-radio-group v-model="formData.deviceType">
|
|
|
- <el-radio
|
|
|
+ <el-select
|
|
|
+ v-model="formData.deviceType"
|
|
|
+ placeholder="请选择设备类型"
|
|
|
+ :disabled="formType === 'update'"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
v-for="dict in getIntDictOptions(DICT_TYPE.IOT_PRODUCT_DEVICE_TYPE)"
|
|
|
:key="dict.value"
|
|
|
- :label="dict.value"
|
|
|
- >
|
|
|
- {{ dict.label }}
|
|
|
- </el-radio>
|
|
|
- </el-radio-group>
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
+
|
|
|
<el-form-item
|
|
|
v-if="formData.deviceType === 0 || formData.deviceType === 2"
|
|
|
label="联网方式"
|
|
|
prop="netType"
|
|
|
>
|
|
|
- <el-select v-model="formData.netType" placeholder="请选择联网方式">
|
|
|
+ <el-select
|
|
|
+ v-model="formData.netType"
|
|
|
+ placeholder="请选择联网方式"
|
|
|
+ :disabled="formType === 'update'"
|
|
|
+ >
|
|
|
<el-option
|
|
|
v-for="dict in getIntDictOptions(DICT_TYPE.IOT_NET_TYPE)"
|
|
|
:key="dict.value"
|
|
@@ -35,8 +44,13 @@
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
+
|
|
|
<el-form-item v-if="formData.deviceType === 1" label="接入网关协议" prop="protocolType">
|
|
|
- <el-select v-model="formData.protocolType" placeholder="请选择接入网关协议">
|
|
|
+ <el-select
|
|
|
+ v-model="formData.protocolType"
|
|
|
+ placeholder="请选择接入网关协议"
|
|
|
+ :disabled="formType === 'update'"
|
|
|
+ >
|
|
|
<el-option
|
|
|
v-for="dict in getIntDictOptions(DICT_TYPE.IOT_PROTOCOL_TYPE)"
|
|
|
:key="dict.value"
|
|
@@ -45,8 +59,13 @@
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
+
|
|
|
<el-form-item label="数据格式" prop="dataFormat">
|
|
|
- <el-select v-model="formData.dataFormat" placeholder="请选择接数据格式">
|
|
|
+ <el-select
|
|
|
+ v-model="formData.dataFormat"
|
|
|
+ placeholder="请选择接数据格式"
|
|
|
+ :disabled="formType === 'update'"
|
|
|
+ >
|
|
|
<el-option
|
|
|
v-for="dict in getIntDictOptions(DICT_TYPE.IOT_DATA_FORMAT)"
|
|
|
:key="dict.value"
|
|
@@ -55,8 +74,9 @@
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
+
|
|
|
<el-form-item label="数据校验级别" prop="validateType">
|
|
|
- <el-radio-group v-model="formData.validateType">
|
|
|
+ <el-radio-group v-model="formData.validateType" :disabled="formType === 'update'">
|
|
|
<el-radio
|
|
|
v-for="dict in getIntDictOptions(DICT_TYPE.IOT_VALIDATE_TYPE)"
|
|
|
:key="dict.value"
|
|
@@ -66,16 +86,19 @@
|
|
|
</el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
+
|
|
|
<el-form-item label="产品描述" prop="description">
|
|
|
<el-input type="textarea" v-model="formData.description" placeholder="请输入产品描述" />
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
+
|
|
|
<template #footer>
|
|
|
<el-button @click="submitForm" type="primary" :disabled="formLoading">确 定</el-button>
|
|
|
<el-button @click="dialogVisible = false">取 消</el-button>
|
|
|
</template>
|
|
|
</Dialog>
|
|
|
</template>
|
|
|
+
|
|
|
<script setup lang="ts">
|
|
|
import { ProductApi, ProductVO } from '@/api/iot/product'
|
|
|
import { DICT_TYPE, getIntDictOptions } from '@/utils/dict'
|