2 lines
3.7 KiB
JavaScript
2 lines
3.7 KiB
JavaScript
import{g as n}from"./index-yxfSHS0I.js";import{g as t}from"./index-DBa2EiS1.js";import{g as p,D as a}from"./index-CsikH8Bv.js";import{a7 as l,at as d,d2 as o,ap as r}from"./bootstrap-DsjPfOC_.js";import{D as i}from"./dict-enum-DRf9W45H.js";function h(){return[{component:"Input",fieldName:"id",dependencies:{triggerFields:[""],show:()=>!1}},{fieldName:"productId",label:"产品",component:"ApiSelect",componentProps:{api:p,labelField:"name",valueField:"id",placeholder:"请选择产品"},rules:"required"},{fieldName:"deviceName",label:"DeviceName",component:"Input",componentProps:{placeholder:"请输入 DeviceName"},rules:l().min(4,"DeviceName 长度不能少于 4 个字符").max(32,"DeviceName 长度不能超过 32 个字符").regex(/^[\w.\-:@]{4,32}$/,"支持英文字母、数字、下划线(_)、中划线(-)、点号(.)、半角冒号(:)和特殊字符@")},{fieldName:"gatewayId",label:"网关设备",component:"ApiSelect",componentProps:{api:()=>n(a.GATEWAY),labelField:"nickname",valueField:"id",placeholder:"子设备可选择父设备"},dependencies:{triggerFields:["deviceType"],show:e=>e.deviceType===1}},{fieldName:"nickname",label:"备注名称",component:"Input",componentProps:{placeholder:"请输入备注名称"},rules:l().min(4,"备注名称长度限制为 4~64 个字符").max(64,"备注名称长度限制为 4~64 个字符").regex(/^[\u4E00-\u9FA5\u3040-\u30FF\w]+$/,"备注名称只能包含中文、英文字母、日文、数字和下划线(_)").optional().or(o(""))},{fieldName:"groupIds",label:"设备分组",component:"ApiSelect",componentProps:{api:t,labelField:"name",valueField:"id",mode:"multiple",placeholder:"请选择设备分组"}},{fieldName:"serialNumber",label:"设备序列号",component:"Input",componentProps:{placeholder:"请输入设备序列号"},rules:l().regex(/^[\w-]+$/,"序列号只能包含字母、数字、中划线和下划线").optional().or(o(""))},{fieldName:"locationType",label:"定位类型",component:"RadioGroup",componentProps:{options:d(i.IOT_LOCATION_TYPE,"number"),buttonStyle:"solid",optionType:"button"}},{fieldName:"longitude",label:"设备经度",component:"InputNumber",componentProps:{placeholder:"请输入设备经度",class:"w-full"},dependencies:{triggerFields:["locationType"],show:e=>e.locationType===3}},{fieldName:"latitude",label:"设备维度",component:"InputNumber",componentProps:{placeholder:"请输入设备维度",class:"w-full"},dependencies:{triggerFields:["locationType"],show:e=>e.locationType===3}}]}function T(){return[{fieldName:"groupIds",label:"设备分组",component:"ApiSelect",componentProps:{api:t,labelField:"name",valueField:"id",mode:"multiple",placeholder:"请选择设备分组"},rules:"required"}]}function g(){return[{fieldName:"file",label:"设备数据",component:"Upload",rules:"required",help:"仅允许导入 xls、xlsx 格式文件"},{fieldName:"updateSupport",label:"是否覆盖",component:"Switch",componentProps:{checkedChildren:"是",unCheckedChildren:"否"},rules:r().default(!1),help:"是否更新已经存在的设备数据"}]}function b(){return[{type:"checkbox",width:40},{field:"deviceName",title:"DeviceName",minWidth:150},{field:"nickname",title:"备注名称",minWidth:120},{field:"productId",title:"所属产品",minWidth:120,slots:{default:"product"}},{field:"deviceType",title:"设备类型",minWidth:100,cellRender:{name:"CellDict",props:{type:i.IOT_PRODUCT_DEVICE_TYPE}}},{field:"groupIds",title:"所属分组",minWidth:150,slots:{default:"groups"}},{field:"state",title:"设备状态",minWidth:100,cellRender:{name:"CellDict",props:{type:i.IOT_DEVICE_STATE}}},{field:"onlineTime",title:"最后上线时间",minWidth:180,formatter:"formatDateTime"},{title:"操作",width:200,fixed:"right",slots:{default:"actions"}}]}export{h as a,T as b,g as c,b as u};
|