用户状态接口增加返回剩余助力次数

This commit is contained in:
CounterFire2023 2024-04-08 20:17:38 +08:00
parent 4c1a059ee0
commit 208731dfd3
2 changed files with 15 additions and 4 deletions

View File

@ -26,6 +26,7 @@
#### 20240408
1. 增加宝箱助力状态查询(26), 用于助力上链前查询是否符合条件
1. 用户状态接口(10)增加返回当日可助力次数
### 1. 钱包预登录
@ -211,7 +212,7 @@ body:
```json
{
"status": 1, // 任务状态, 0: 未开始, 1: 进行中, 2: 成功, 9: 失败
"status": 1, // 任务状态, 0: 未开始, 1: 进行中, 2: 成功, 3: 已领取 9: 失败
"id": "TwitterFollow", // 任务id
"timeStart": 1703150294051, // 任务开始时间
"timeFinish": 1703151338598
@ -240,7 +241,7 @@ body:
```json
{
"status": 1, // 任务状态, 0: 未开始, 1: 进行中, 2: 成功, 9: 失败
"status": 1, // 任务状态, 0: 未开始, 1: 进行中, 2: 成功, 3: 已领取 9: 失败
"id": "TwitterFollow", // 任务id
"timeStart": 1703150294051, // 任务开始时间
"timeFinish": 1703151338598
@ -330,6 +331,7 @@ body:
"scoreSocial": 0, // 社交任务获得的分数
"code": "自己的邀请码",
"mapopen": 0, // 地图开启状态, 0: 未开启, 1: 已开启
"enhanceCount": 1 // 当日剩余助力次数
}
```

View File

@ -6,13 +6,14 @@ import { ScoreRecord } from 'models/ScoreRecord'
import { LoginRecordQueue } from 'queue/loginrecord.queue'
import { rankKey } from 'services/rank.svr'
import { SiweMessage } from 'siwe'
import { nextday } from 'zutils/utils/date.util'
import { formatDate, nextday } from 'zutils/utils/date.util'
import { checkParamsNeeded } from 'zutils/utils/net.util'
import { aesDecrypt } from 'zutils/utils/security.util'
import { base58ToHex } from 'zutils/utils/string.util'
import { ActivityGame } from 'models/ActivityGame'
import { SCORE_INVITE_USER, SCORE_SOCIAL_TASK } from 'common/Constants'
import { MAX_ENHANCE_COUNT_ADV, MAX_ENHANCE_COUNT_BASE, SCORE_INVITE_USER, SCORE_SOCIAL_TASK } from 'common/Constants'
import { isObjectIdString } from 'common/Utils'
import { ChestEnhanceRecord } from 'models/ChestEnhanceRecord'
const LOGIN_TIP = 'This signature is just to verify your identity'
@ -121,6 +122,13 @@ class SignController extends BaseController {
let inviteScore = records.reduce((acc, record) => acc + record.score, 0)
const recordSocial = await ScoreRecord.find({ user: user.id, activity: user.activity, type: SCORE_SOCIAL_TASK })
let scoreSocial = recordSocial.reduce((acc, record) => acc + record.score, 0)
const userMax = user.twitterId && user.discordId ? MAX_ENHANCE_COUNT_ADV : MAX_ENHANCE_COUNT_BASE
const dateTag = formatDate(new Date())
const userCurrent = await ChestEnhanceRecord.countDocuments({ user: user.id, activity: user.activity, dateTag })
let enhanceCount = userMax - userCurrent
if (enhanceCount < 0) {
enhanceCount = 0
}
let result = {
address: user.address.toLowerCase(),
boost: user.boost || 1,
@ -139,6 +147,7 @@ class SignController extends BaseController {
scoreSocial,
code: user.inviteCode,
mapopen: gameRecord.status,
enhanceCount,
}
return result
}