From 466507a1963d60747558002581abe6cfe9f64adc Mon Sep 17 00:00:00 2001 From: shanshanzhong Date: Sat, 15 Aug 2026 19:52:42 -0700 Subject: [PATCH] =?UTF-8?q?fix(admin):=20=E8=B5=A0=E9=80=81=E6=B5=81?= =?UTF-8?q?=E9=87=8F=E9=85=8D=E7=BD=AE=E9=A1=B9=E8=A1=A5=E5=85=A8=E4=B8=AD?= =?UTF-8?q?=E8=8B=B1=E6=96=87=E6=A1=88=E5=B9=B6=E4=BF=AE=E6=AD=A3=E8=AF=AD?= =?UTF-8?q?=E4=B9=89=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 补提交 giftTraffic i18n key(此前仅表单落库,中文界面显示英文兜底) - 修正描述:0=时长模式(按试用时长配置),>0=流量模式不限时用完为止 (原文案「0=不限流量」与后端实际语义相反,会误导运营配置) --- .../public/assets/locales/en-US/system.json | 2 ++ .../public/assets/locales/zh-CN/system.json | 2 ++ .../system/user-security/register-form.tsx | 36 +++++++++++++++++++ 3 files changed, 40 insertions(+) diff --git a/apps/admin/public/assets/locales/en-US/system.json b/apps/admin/public/assets/locales/en-US/system.json index 36a3985..1f1cfce 100644 --- a/apps/admin/public/assets/locales/en-US/system.json +++ b/apps/admin/public/assets/locales/en-US/system.json @@ -94,6 +94,8 @@ "title": "Registration Settings", "trialConfig": "Trial Configuration", "trialConfigDescription": "Configure trial subscription, duration and time unit for new users upon registration", + "giftTraffic": "Gift Traffic", + "giftTrafficDescription": "Gift traffic for new users (GB). 0 = duration mode (uses the trial duration above); >0 = quota mode: N GB with no time limit, trial duration is ignored", "year": "Year(s)" }, "site": { diff --git a/apps/admin/public/assets/locales/zh-CN/system.json b/apps/admin/public/assets/locales/zh-CN/system.json index 3726c59..25112ec 100644 --- a/apps/admin/public/assets/locales/zh-CN/system.json +++ b/apps/admin/public/assets/locales/zh-CN/system.json @@ -94,6 +94,8 @@ "title": "注册设置", "trialConfig": "试用配置", "trialConfigDescription": "配置新用户注册时的试用订阅、时长和时间单位", + "giftTraffic": "赠送流量", + "giftTrafficDescription": "新用户赠送流量(GB)。0 = 时长模式(按上方试用时长配置);大于 0 = 流量模式:赠送 N GB、不限时长、用完为止(此时忽略试用时长配置)", "year": "年" }, "site": { diff --git a/apps/admin/src/sections/system/user-security/register-form.tsx b/apps/admin/src/sections/system/user-security/register-form.tsx index 06b5f79..08a9827 100644 --- a/apps/admin/src/sections/system/user-security/register-form.tsx +++ b/apps/admin/src/sections/system/user-security/register-form.tsx @@ -41,6 +41,7 @@ const registerSchema = z.object({ trial_subscribe: z.number().optional(), trial_time: z.number().optional(), trial_time_unit: z.string().optional(), + gift_traffic: z.number().optional(), enable_trial_email_whitelist: z.boolean().optional(), trial_email_domain_whitelist: z.string().optional(), enable_ip_register_limit: z.boolean().optional(), @@ -75,6 +76,7 @@ export default function RegisterConfig() { trial_subscribe: undefined, trial_time: 0, trial_time_unit: "day", + gift_traffic: 0, enable_trial_email_whitelist: false, trial_email_domain_whitelist: "", enable_ip_register_limit: false, @@ -449,6 +451,40 @@ export default function RegisterConfig() { )} /> + ( + + + {t("register.giftTraffic", "Gift Traffic")} + + + + field.onChange(Number(value)) + } + placeholder={t( + "register.inputPlaceholder", + "Please enter" + )} + suffix="GB" + type="number" + value={field.value} + /> + + + {t( + "register.giftTrafficDescription", + "Gift traffic for new users (GB). 0 = duration mode (uses the trial duration above); >0 = quota mode: N GB with no time limit, trial duration is ignored" + )} + + + + )} + /> +