|
|
|
|
@ -64,13 +64,6 @@
|
|
|
|
|
:disabled="!ratioEnabled"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item :label="t('DataCollection.Device.attributeSort')" prop="sort">
|
|
|
|
|
<el-input
|
|
|
|
|
v-model="formData.sort"
|
|
|
|
|
:placeholder="t('DataCollection.Device.attributePlaceholderSort')"
|
|
|
|
|
@input="handleSortInput"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item :label="t('DataCollection.Device.remark')" prop="remark">
|
|
|
|
|
<el-input
|
|
|
|
|
v-model="formData.remark"
|
|
|
|
|
@ -124,7 +117,6 @@ const formData = ref({
|
|
|
|
|
address: undefined as string | undefined,
|
|
|
|
|
dataUnit: undefined as string | undefined,
|
|
|
|
|
ratio: undefined as string | undefined,
|
|
|
|
|
sort: undefined as string | undefined,
|
|
|
|
|
remark: undefined as string | undefined,
|
|
|
|
|
deviceId: undefined as number | undefined
|
|
|
|
|
})
|
|
|
|
|
@ -160,9 +152,6 @@ const handleAttributeCodeInput = (val: string) => {
|
|
|
|
|
formData.value.attributeCode = val?.replace(/[\u4e00-\u9fa5]/g, '')
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const handleSortInput = (val: string) => {
|
|
|
|
|
formData.value.sort = val?.replace(/\D/g, '')
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const handleAttributeTypeChange = (val: number | string) => {
|
|
|
|
|
const matched = typeList.value.find(
|
|
|
|
|
@ -190,22 +179,6 @@ const formRules = reactive({
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
attributeName: [{ required: true, message: t('DataCollection.Device.attributeValidatorNameRequired'), trigger: 'blur' }],
|
|
|
|
|
sort: [
|
|
|
|
|
{
|
|
|
|
|
validator: (_rule: any, value: string, callback: any) => {
|
|
|
|
|
if (!value) {
|
|
|
|
|
callback()
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if (!/^\d+$/.test(value)) {
|
|
|
|
|
callback(new Error(t('DataCollection.Device.attributeValidatorSortNumber')))
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
callback()
|
|
|
|
|
},
|
|
|
|
|
trigger: ['blur', 'change']
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
remark: [
|
|
|
|
|
{
|
|
|
|
|
validator: (_rule: any, value: string, callback: any) => {
|
|
|
|
|
@ -232,17 +205,10 @@ const buildSubmitData = () => {
|
|
|
|
|
address,
|
|
|
|
|
dataUnit,
|
|
|
|
|
ratio,
|
|
|
|
|
sort,
|
|
|
|
|
remark,
|
|
|
|
|
deviceId
|
|
|
|
|
} = formData.value
|
|
|
|
|
|
|
|
|
|
const parsedSort =
|
|
|
|
|
sort === undefined || sort === null || sort === ''
|
|
|
|
|
? undefined
|
|
|
|
|
: Number.isNaN(Number(sort))
|
|
|
|
|
? undefined
|
|
|
|
|
: Number(sort)
|
|
|
|
|
const data: any = {
|
|
|
|
|
attributeCode,
|
|
|
|
|
attributeName,
|
|
|
|
|
@ -252,7 +218,6 @@ const buildSubmitData = () => {
|
|
|
|
|
address,
|
|
|
|
|
dataUnit,
|
|
|
|
|
ratio: ratioEnabled.value ? ratio : undefined,
|
|
|
|
|
sort: parsedSort,
|
|
|
|
|
remark,
|
|
|
|
|
deviceId
|
|
|
|
|
}
|
|
|
|
|
@ -279,11 +244,6 @@ const open = async (type: string, id?: number, deviceId: number) => {
|
|
|
|
|
;(formData.value as any).deviceId = deviceId
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const currentSort = (formData.value as any)?.sort
|
|
|
|
|
if (currentSort !== undefined && currentSort !== null) {
|
|
|
|
|
;(formData.value as any).sort = String(currentSort)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const currentType = (formData.value as any)?.attributeType
|
|
|
|
|
if (currentType !== undefined && currentType !== null && currentType !== '') {
|
|
|
|
|
const matched = typeList.value.find(
|
|
|
|
|
@ -341,7 +301,6 @@ const resetForm = () => {
|
|
|
|
|
address: undefined,
|
|
|
|
|
dataUnit: undefined,
|
|
|
|
|
ratio: undefined,
|
|
|
|
|
sort: undefined,
|
|
|
|
|
remark: undefined,
|
|
|
|
|
deviceId: undefined
|
|
|
|
|
}
|
|
|
|
|
|