feat(api): 新增节点月流量限额强制下线

新增节点级月流量限额配置、重置调度和运行状态持久化
下发 traffic_limit 给 mi-node,并在超额后停止内核、到期后恢复
管理端支持编辑限额参数并展示额度进度、状态和下次重置
手动与定时重置会同步清理限额状态并通知节点刷新配置
This commit is contained in:
yinjianm
2026-04-29 00:46:12 +08:00
parent 52529d1f58
commit 922e86070d
26 changed files with 1127 additions and 11 deletions
+9
View File
@@ -141,6 +141,10 @@ class ServerSave extends FormRequest
'rate_time_ranges.*.rate' => 'required_with:rate_time_ranges|numeric|min:0',
'protocol_settings' => 'array',
'transfer_enable' => 'nullable|integer|min:0',
'traffic_limit_enabled' => 'nullable|boolean',
'traffic_limit_reset_day' => 'nullable|integer|min:1|max:31',
'traffic_limit_reset_time' => 'nullable|string|date_format:H:i',
'traffic_limit_timezone' => 'nullable|string|max:64',
];
}
@@ -304,6 +308,11 @@ class ServerSave extends FormRequest
'protocol_settings.*.in' => ':attribute 的值不合法',
'transfer_enable.integer' => '流量上限必须是整数',
'transfer_enable.min' => '流量上限不能小于0',
'traffic_limit_reset_day.integer' => '重置日期必须是整数',
'traffic_limit_reset_day.min' => '重置日期不能小于1',
'traffic_limit_reset_day.max' => '重置日期不能大于31',
'traffic_limit_reset_time.date_format' => '重置时间格式必须为HH:mm',
'traffic_limit_timezone.max' => '重置时区长度不能超过64个字符',
];
}
}