feat: 修改了bug
This commit is contained in:
@@ -88,33 +88,29 @@ router.post('/config', async (req, res) => {
|
||||
try {
|
||||
const fieldConfigs = req.body;
|
||||
|
||||
// 验证输入
|
||||
if (!Array.isArray(fieldConfigs)) {
|
||||
return res.status(400).json({ error: '输入必须是数组' });
|
||||
}
|
||||
|
||||
// 批量更新字段配置
|
||||
const updatedFields = [];
|
||||
for (const config of fieldConfigs) {
|
||||
// 检查字段是否存在
|
||||
const existingField = await DeviceField.findOne({ where: { fieldName: config.fieldName } });
|
||||
|
||||
if (existingField) {
|
||||
// 更新现有字段
|
||||
await existingField.update({
|
||||
visible: config.visible,
|
||||
displayName: config.displayName // 同时更新显示名称,以防变化
|
||||
visible: config.visible !== undefined ? config.visible : existingField.visible,
|
||||
required: config.required !== undefined ? config.required : existingField.required,
|
||||
displayName: config.displayName || existingField.displayName,
|
||||
});
|
||||
updatedFields.push(existingField);
|
||||
} else {
|
||||
// 创建新字段
|
||||
const newField = await DeviceField.create({
|
||||
fieldName: config.fieldName,
|
||||
visible: config.visible,
|
||||
displayName: config.displayName,
|
||||
fieldType: config.fieldType || 'text',
|
||||
required: false, // 默认为非必填
|
||||
order: 0 // 默认顺序
|
||||
fieldName: config.fieldName,
|
||||
visible: config.visible !== undefined ? config.visible : true,
|
||||
required: config.required !== undefined ? config.required : false,
|
||||
displayName: config.displayName || config.fieldName,
|
||||
fieldType: config.fieldType || 'text',
|
||||
order: config.order || 0,
|
||||
});
|
||||
updatedFields.push(newField);
|
||||
}
|
||||
|
||||
@@ -14,8 +14,8 @@ const initDefaultSettings = async () => {
|
||||
{ settingKey: 'timezone', settingValue: JSON.stringify('Asia/Shanghai'), settingType: 'string', category: 'general', description: '时区设置', isEditable: true },
|
||||
{ settingKey: 'date_format', settingValue: JSON.stringify('YYYY-MM-DD'), settingType: 'string', category: 'general', description: '日期格式', isEditable: true },
|
||||
{ settingKey: 'session_timeout', settingValue: JSON.stringify(30), settingType: 'number', category: 'general', description: '登录有效期(分钟)', isEditable: true },
|
||||
{ settingKey: 'idle_timeout', settingValue: JSON.stringify(10), settingType: 'number', category: 'general', description: '用户空闲超时时间(分钟)', isEditable: true },
|
||||
{ settingKey: 'idle_warning_time', settingValue: JSON.stringify(10), settingType: 'number', category: 'general', description: '空闲超时前警告时间(秒)', isEditable: false },
|
||||
{ settingKey: 'idle_timeout', settingValue: JSON.stringify(30), settingType: 'number', category: 'general', description: '用户空闲超时时间(分钟)', isEditable: true },
|
||||
{ settingKey: 'idle_warning_time', settingValue: JSON.stringify(60), settingType: 'number', category: 'general', description: '空闲超时前警告时间(秒)', isEditable: false },
|
||||
{ settingKey: 'max_login_attempts', settingValue: JSON.stringify(5), settingType: 'number', category: 'general', description: '最大登录尝试次数', isEditable: true },
|
||||
{ settingKey: 'maintenance_mode', settingValue: JSON.stringify(false), settingType: 'boolean', category: 'general', description: '维护模式', isEditable: true },
|
||||
|
||||
@@ -106,8 +106,8 @@ router.get('/idle-timeout', async (req, res) => {
|
||||
const timeoutSetting = await SystemSetting.findByPk('idle_timeout');
|
||||
|
||||
// 默认配置
|
||||
const defaultTimeout = 10; // 10分钟
|
||||
const fixedWarningTime = 10; // 固定10秒警告时间
|
||||
const defaultTimeout = 30; // 30分钟
|
||||
const fixedWarningTime = 60; // 固定60秒警告时间
|
||||
|
||||
const timeout = timeoutSetting ? JSON.parse(timeoutSetting.settingValue) : defaultTimeout;
|
||||
|
||||
@@ -263,8 +263,8 @@ router.post('/reset/:key', async (req, res) => {
|
||||
timezone: 'Asia/Shanghai',
|
||||
date_format: 'YYYY-MM-DD',
|
||||
session_timeout: 30,
|
||||
idle_timeout: 10,
|
||||
idle_warning_time: 10,
|
||||
idle_timeout: 30,
|
||||
idle_warning_time: 60,
|
||||
max_login_attempts: 5,
|
||||
maintenance_mode: false,
|
||||
frontend_port: 3000,
|
||||
|
||||
Reference in New Issue
Block a user