【代码评审】IoT:物模型的管理哈

pull/621/MERGE
YunaiV 2024-12-18 20:50:48 +08:00
parent c4ba7ed43e
commit 2505410b5a
5 changed files with 6 additions and 15 deletions

View File

@ -54,6 +54,7 @@ export enum ProductFunctionAccessModeEnum {
// IoT 产品物模型 API // IoT 产品物模型 API
export const ThinkModelApi = { export const ThinkModelApi = {
// 查询产品物模型分页 // 查询产品物模型分页
// TODO @puhui999product 前缀,是不是去掉哈。
getThinkModelPage: async (params: any) => { getThinkModelPage: async (params: any) => {
return await request.get({ url: `/iot/product-think-model/page`, params }) return await request.get({ url: `/iot/product-think-model/page`, params })
}, },

View File

@ -144,25 +144,23 @@ const handleChange = (dataType: any) => {
} }
} }
// TODO @puhui999 utils
/** 校验布尔值名称 */ /** 校验布尔值名称 */
const validateBoolName = (_: any, value: string, callback: any) => { const validateBoolName = (_: any, value: string, callback: any) => {
if (isEmpty(value)) { if (isEmpty(value)) {
callback(new Error('布尔值名称不能为空')) callback(new Error('布尔值名称不能为空'))
return return
} }
// //
if (!/^[\u4e00-\u9fa5a-zA-Z0-9]/.test(value)) { if (!/^[\u4e00-\u9fa5a-zA-Z0-9]/.test(value)) {
callback(new Error('布尔值名称必须以中文、英文字母或数字开头')) callback(new Error('布尔值名称必须以中文、英文字母或数字开头'))
return return
} }
// //
if (!/^[\u4e00-\u9fa5a-zA-Z0-9][a-zA-Z0-9\u4e00-\u9fa5_-]*$/.test(value)) { if (!/^[\u4e00-\u9fa5a-zA-Z0-9][a-zA-Z0-9\u4e00-\u9fa5_-]*$/.test(value)) {
callback(new Error('布尔值名称只能包含中文、英文字母、数字、下划线和短划线')) callback(new Error('布尔值名称只能包含中文、英文字母、数字、下划线和短划线'))
return return
} }
// //
if (value.length > 20) { if (value.length > 20) {
callback(new Error('布尔值名称长度不能超过20个字符')) callback(new Error('布尔值名称长度不能超过20个字符'))

View File

@ -36,6 +36,8 @@ import { useVModel } from '@vueuse/core'
import { DataSpecsDataType, dataTypeOptions } from '../config' import { DataSpecsDataType, dataTypeOptions } from '../config'
import { isEmpty } from '@/utils/is' import { isEmpty } from '@/utils/is'
// TODO @puhui999
/** 数组型的 dataSpecs 配置组件 */ /** 数组型的 dataSpecs 配置组件 */
defineOptions({ name: 'ThinkModelArrayTypeDataSpecs' }) defineOptions({ name: 'ThinkModelArrayTypeDataSpecs' })

View File

@ -98,19 +98,16 @@ const validateEnumName = (_: any, value: string, callback: any) => {
callback(new Error('枚举描述不能为空')) callback(new Error('枚举描述不能为空'))
return return
} }
// //
if (!/^[\u4e00-\u9fa5a-zA-Z0-9]/.test(value)) { if (!/^[\u4e00-\u9fa5a-zA-Z0-9]/.test(value)) {
callback(new Error('枚举描述必须以中文、英文字母或数字开头')) callback(new Error('枚举描述必须以中文、英文字母或数字开头'))
return return
} }
// //
if (!/^[\u4e00-\u9fa5a-zA-Z0-9][a-zA-Z0-9\u4e00-\u9fa5_-]*$/.test(value)) { if (!/^[\u4e00-\u9fa5a-zA-Z0-9][a-zA-Z0-9\u4e00-\u9fa5_-]*$/.test(value)) {
callback(new Error('枚举描述只能包含中文、英文字母、数字、下划线和短划线')) callback(new Error('枚举描述只能包含中文、英文字母、数字、下划线和短划线'))
return return
} }
// //
if (value.length > 20) { if (value.length > 20) {
callback(new Error('枚举描述长度不能超过20个字符')) callback(new Error('枚举描述长度不能超过20个字符'))

View File

@ -79,12 +79,10 @@ const unitChange = (UnitSpecs: string) => {
const validateMin = (_: any, __: any, callback: any) => { const validateMin = (_: any, __: any, callback: any) => {
const min = Number(dataSpecs.value.min) const min = Number(dataSpecs.value.min)
const max = Number(dataSpecs.value.max) const max = Number(dataSpecs.value.max)
if (isNaN(min)) { if (isNaN(min)) {
callback(new Error('请输入有效的数值')) callback(new Error('请输入有效的数值'))
return return
} }
if (max !== undefined && !isNaN(max) && min >= max) { if (max !== undefined && !isNaN(max) && min >= max) {
callback(new Error('最小值必须小于最大值')) callback(new Error('最小值必须小于最大值'))
return return
@ -97,12 +95,10 @@ const validateMin = (_: any, __: any, callback: any) => {
const validateMax = (_: any, __: any, callback: any) => { const validateMax = (_: any, __: any, callback: any) => {
const min = Number(dataSpecs.value.min) const min = Number(dataSpecs.value.min)
const max = Number(dataSpecs.value.max) const max = Number(dataSpecs.value.max)
if (isNaN(max)) { if (isNaN(max)) {
callback(new Error('请输入有效的数值')) callback(new Error('请输入有效的数值'))
return return
} }
if (min !== undefined && !isNaN(min) && max <= min) { if (min !== undefined && !isNaN(min) && max <= min) {
callback(new Error('最大值必须大于最小值')) callback(new Error('最大值必须大于最小值'))
return return
@ -114,19 +110,16 @@ const validateMax = (_: any, __: any, callback: any) => {
/** 校验步长 */ /** 校验步长 */
const validateStep = (_: any, __: any, callback: any) => { const validateStep = (_: any, __: any, callback: any) => {
const step = Number(dataSpecs.value.step) const step = Number(dataSpecs.value.step)
const min = Number(dataSpecs.value.min)
const max = Number(dataSpecs.value.max)
if (isNaN(step)) { if (isNaN(step)) {
callback(new Error('请输入有效的数值')) callback(new Error('请输入有效的数值'))
return return
} }
if (step <= 0) { if (step <= 0) {
callback(new Error('步长必须大于0')) callback(new Error('步长必须大于0'))
return return
} }
const min = Number(dataSpecs.value.min)
const max = Number(dataSpecs.value.max)
if (!isNaN(min) && !isNaN(max) && step > max - min) { if (!isNaN(min) && !isNaN(max) && step > max - min) {
callback(new Error('步长不能大于最大值和最小值的差值')) callback(new Error('步长不能大于最大值和最小值的差值'))
return return