diff --git a/laf-cloud/functions/SignInActivity.ts b/laf-cloud/functions/SignInActivity.ts index b813cee..3f707d4 100644 --- a/laf-cloud/functions/SignInActivity.ts +++ b/laf-cloud/functions/SignInActivity.ts @@ -46,7 +46,7 @@ export function getChinaDateKey(now = Date.now()) { } export function getUserSignInLevel(user: any) { - const level = Number(user?.endLevelNum); + const level = Number(user?.levelAmount); return Number.isFinite(level) && level > 0 ? level : 0; } diff --git a/laf-cloud/signInActivity.API.md b/laf-cloud/signInActivity.API.md index 78a2846..2258a9b 100644 --- a/laf-cloud/signInActivity.API.md +++ b/laf-cloud/signInActivity.API.md @@ -23,7 +23,7 @@ 5. 领取成功后,前端先检查本地是否处理过 `claimId`,未处理过才发放 `rewards`。 6. 发奖完成后保存 `claimId`,并重新请求 `signInActivityInfo` 刷新页面状态。 -活动只在达到目标关卡且没有活动状态的用户首次调用 `signInActivityInfo` 时创建。`login` 和 `setUserLevel` 均不读取签到配置、不判断签到资格,也不创建签到活动。 +活动只在 `users.levelAmount` 达到目标关卡且没有活动状态的用户首次调用 `signInActivityInfo` 时创建。`login` 和 `setUserLevel` 均不读取签到配置、不判断签到资格,也不创建签到活动。 ## 3. 查询签到活动信息 @@ -98,7 +98,7 @@ interface SignInActivityInfoRequest { | `activityId` | string | 用户参与的活动配置 ID | | `status` | string | `active`、`completed` 或 `expired` | | `triggerLevel` | number | 活动开启目标关卡,当前配置为 23 | -| `triggerReached` | boolean | 服务端确认的关卡是否达标 | +| `triggerReached` | boolean | 服务端根据 `users.levelAmount` 确认的关卡是否达标 | | `startAt` | number | 活动第 1 天 UTC+8 零点时间戳 | | `endAt` | number | 活动结束时间戳,不包含该时刻 | | `claimedCount` | number | 已领取奖励天数,范围 0~7 | @@ -254,7 +254,7 @@ interface SignInActivityState { ## 8. 前端接入注意事项 -- 不要根据客户端本地关卡自行判定资格,以 `signInActivityInfo` 返回值为准。 +- 不要根据客户端本地关卡自行判定资格;服务端使用 `users.levelAmount` 判断,以 `signInActivityInfo` 返回值为准。 - `data: false` 是正常成功响应,不应作为网络或服务器错误处理。 - 领取成功不代表后端已经增加资产;前端负责发奖。 - 前端必须保存已处理的 `claimId`,避免重复回调造成重复发奖。 diff --git a/laf-cloud/signInActivity.README.md b/laf-cloud/signInActivity.README.md index 7c3ceb0..592ddb9 100644 --- a/laf-cloud/signInActivity.README.md +++ b/laf-cloud/signInActivity.README.md @@ -2,7 +2,7 @@ 部署云函数前,需要在 `sign_in_activity_config` 集合中创建且只创建一条 `enabled: true` 的有效配置。 活动中的用户通过 `activityId` 读取配置,因此旧配置不能在仍有用户参与时删除。 -`login` 不判断或开启签到活动;前端调用 `signInActivityInfo` 时,未达到目标关卡返回 `data: false`,达到目标关卡则创建活动并返回完整奖励与领取状态。 +`login` 不判断或开启签到活动;前端调用 `signInActivityInfo` 时,后端使用 `users.levelAmount` 判断资格:未达到目标关卡返回 `data: false`,达到目标关卡则创建活动并返回完整奖励与领取状态。 ```js {