feat(设备管理): 实现设备ID自动生成功能
- 修改后端验证逻辑,允许设备ID为空或null - 添加自动生成设备ID功能,格式为DEV+三位数字 - 前端移除设备ID必填校验并隐藏该字段 - 更新设备导入逻辑,支持自动生成设备ID
This commit is contained in:
@@ -167,7 +167,7 @@ const formatDate = (date, fieldName) => {
|
||||
|
||||
// 默认设备字段配置
|
||||
const defaultDeviceFields = [
|
||||
{ fieldName: 'deviceId', displayName: '设备ID', fieldType: 'string', required: true, order: 1, visible: true },
|
||||
{ fieldName: 'deviceId', displayName: '设备ID', fieldType: 'string', required: false, order: 1, visible: false },
|
||||
{ fieldName: 'name', displayName: '设备名称', fieldType: 'string', required: true, order: 2, visible: true },
|
||||
{ fieldName: 'type', displayName: '设备类型', fieldType: 'select', required: true, order: 3, visible: true,
|
||||
options: [{ value: 'server', label: '服务器' }, { value: 'switch', label: '交换机' }, { value: 'router', label: '路由器' }, { value: 'storage', label: '存储设备' }, { value: 'other', label: '其他设备' }] },
|
||||
@@ -1770,7 +1770,7 @@ function DeviceManagement() {
|
||||
layout="vertical"
|
||||
onFinish={handleSubmit}
|
||||
>
|
||||
{deviceFields.map(field => {
|
||||
{deviceFields.filter(field => field.fieldName !== 'deviceId').map(field => {
|
||||
let control = null;
|
||||
|
||||
switch (field.fieldType) {
|
||||
@@ -1822,7 +1822,7 @@ function DeviceManagement() {
|
||||
key={field.fieldName}
|
||||
name={field.fieldName}
|
||||
label={field.displayName}
|
||||
rules={field.required ? [{ required: true, message: `请输入${field.displayName}` }] : []}
|
||||
rules={field.required && field.fieldName !== 'deviceId' ? [{ required: true, message: `请输入${field.displayName}` }] : []}
|
||||
>
|
||||
{control}
|
||||
</Form.Item>
|
||||
@@ -1861,7 +1861,7 @@ function DeviceManagement() {
|
||||
>
|
||||
<div style={{ maxHeight: 400, overflowY: 'auto' }}>
|
||||
<div style={{ display: 'grid', gridTemplateColumns: 'repeat(3, 1fr)', gap: '12px' }}>
|
||||
{deviceFields.map(field => (
|
||||
{deviceFields.filter(field => field.fieldName !== 'deviceId').map(field => (
|
||||
<Form.Item
|
||||
key={field.fieldName}
|
||||
name={field.fieldName}
|
||||
|
||||
Reference in New Issue
Block a user