新增后台账号初始泥点配置

新增 profile_wallet_config 表和后台读写接口

注册赠送泥点改为读取后台配置并保留默认 100

后台新增账号配置页并同步数据契约文档
This commit is contained in:
2026-06-23 17:42:35 +08:00
parent 0c2c0c2c0f
commit afc2f03497
30 changed files with 1132 additions and 15 deletions
+23
View File
@@ -20,6 +20,7 @@ import type {
AdminUpsertProfileRechargeProductRequest,
AdminUpsertProfileRedeemCodeRequest,
AdminUpsertProfileTaskConfigRequest,
AdminUpsertProfileWalletConfigRequest,
AdminUpsertPublicWorkInteractionConfigRequest,
AdminWorkVisibilityListResponse,
ApiErrorEnvelope,
@@ -34,6 +35,7 @@ import type {
ProfileRedeemCodeAdminResponse,
ProfileTaskConfigAdminListResponse,
ProfileTaskConfigAdminResponse,
ProfileWalletConfigAdminResponse,
} from './adminApiTypes';
const API_RESPONSE_ENVELOPE_HEADER = 'x-genarrative-response-envelope';
@@ -359,6 +361,27 @@ export function disableProfileTaskConfig(
);
}
export function getProfileWalletConfig(token: string) {
return request<ProfileWalletConfigAdminResponse>(
'/admin/api/profile/wallet-config',
{ token },
);
}
export function upsertProfileWalletConfig(
token: string,
payload: AdminUpsertProfileWalletConfigRequest,
) {
return request<ProfileWalletConfigAdminResponse>(
'/admin/api/profile/wallet-config',
{
method: 'POST',
token,
body: payload,
},
);
}
export function listProfileRechargeProducts(token: string) {
return request<ProfileRechargeProductConfigAdminListResponse>(
'/admin/api/profile/recharge-products',
+13
View File
@@ -325,6 +325,10 @@ export interface AdminUpsertProfileRechargeProductRequest {
sortOrder: number;
}
export interface AdminUpsertProfileWalletConfigRequest {
initialMudPoints: number;
}
export interface ProfileRedeemCodeAdminResponse {
code: string;
mode: ProfileRedeemCodeMode;
@@ -401,6 +405,15 @@ export interface ProfileRechargeProductConfigAdminListResponse {
entries: ProfileRechargeProductConfigAdminResponse[];
}
export interface ProfileWalletConfigAdminResponse {
configId: string;
initialMudPoints: number;
createdBy: string;
createdAt: string;
updatedBy: string;
updatedAt: string;
}
export interface AdminTrackingEventEntryPayload {
eventId: string;
eventKey: string;