feat: unify invite flow with referral ref

This commit is contained in:
kate522 committed 2026-08-17 13:49:59 +08:00
1 parent f1d6809109
commit b501cf4611
47 files changed
+1083 -2548

No files matched your search

+27 -56
View File
@@ -26,39 +26,19 @@ trait CreditsPaymentGroups {
return CreditsRuntime::get_signin_reward_settings();
}
/**
* Normalized runtime settings for invite rewards and registration gating.
*
* @return array{
* enabled:bool,
* inviter_amount:int,
* invitee_amount:int,
* require_verify:bool,
* ip_daily_cap:int,
* register_field:string,
* reject_invalid:bool,
* registration_enabled:bool
* }
*/
public static function get_invite_reward_settings(): array {
return CreditsRuntime::get_invite_reward_settings();
/** @return array{code_length:int,window_days:int} */
public static function get_referral_settings(): array {
return CreditsRuntime::get_referral_settings();
}
/**
* Canonical invite registration config derived from users.invite fields.
*
* @return array{
* enabled:bool,
* mode:string,
* register_field:string,
* reject_invalid:bool,
* code_length:int,
* open_desc:string,
* must_desc:string
* }
*/
public static function get_invite_registration_config(): array {
return CreditsRuntime::get_invite_registration_config();
/** @return array<string,mixed> */
public static function get_referral_reward_settings(): array {
return CreditsRuntime::get_referral_reward_settings();
}
/** @return array<string,mixed> */
public static function get_referral_registration_settings(): array {
return CreditsRuntime::get_referral_registration_settings();
}
/**
@@ -75,39 +55,30 @@ trait CreditsPaymentGroups {
return CreditsRuntime::get_currency_name();
}
/**
* 邀请系统是否启用(=积分系统启用 && invite_reward.enabled)。
* 用于 UI 入口(个人中心邀请 Tab)的展示门禁。
*/
public static function invite_enabled(): bool {
return CreditsRuntime::invite_enabled();
public static function referral_reward_enabled(): bool {
return CreditsRuntime::referral_reward_enabled();
}
/**
* 邀请注册功能总开关(独立于积分系统)。
* 控制邀请链接、注册页邀请码字段、用户中心邀请卡片的显示。
* 存储在 aksrt_settings(invit_code_s / invite_registration_enabled)。
*/
public static function invite_registration_enabled(): bool {
return CreditsRuntime::invite_registration_enabled();
public static function referral_registration_enabled(): bool {
return CreditsRuntime::referral_registration_enabled();
}
/**
* 注册页邀请码字段模式:'hidden' | 'optional' | 'required'
*/
public static function invite_register_field_mode(): string {
return CreditsRuntime::invite_register_field_mode();
public static function referral_register_field_mode(): string {
return CreditsRuntime::referral_register_field_mode();
}
/**
* 必填模式下邀请码无效是否拒绝注册。
*/
public static function invite_reject_invalid(): bool {
return CreditsRuntime::invite_reject_invalid();
public static function referral_reject_invalid(): bool {
return CreditsRuntime::referral_reject_invalid();
}
public static function invite_code_length(): int {
return CreditsRuntime::invite_code_length();
public static function referral_code_length(): int {
return CreditsRuntime::referral_code_length();
}
public static function referral_enabled(): bool {
return self::referral_registration_enabled()
|| self::referral_reward_enabled()
|| PaymentRuntime::affiliate_enabled();
}
/**