fix bug in enhance chest
This commit is contained in:
parent
b44faefbbb
commit
563e12ef0a
@ -7,6 +7,7 @@ import { ScoreRecord } from 'models/ScoreRecord'
|
|||||||
import { ChestRecord } from 'models/chain/ChestRecord'
|
import { ChestRecord } from 'models/chain/ChestRecord'
|
||||||
import { generateNewChest } from 'services/game.svr'
|
import { generateNewChest } from 'services/game.svr'
|
||||||
import { SCORE_OPEN_CHEST } from 'common/Constants'
|
import { SCORE_OPEN_CHEST } from 'common/Constants'
|
||||||
|
import { formatAddress } from 'zutils/utils/chain.util'
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 宝箱相关接口
|
* 宝箱相关接口
|
||||||
@ -61,16 +62,13 @@ class BoxController extends BaseController {
|
|||||||
const users = await ActivityUser.find({ _id: { $in: chest.bonusUsers } })
|
const users = await ActivityUser.find({ _id: { $in: chest.bonusUsers } })
|
||||||
const userMap = new Map()
|
const userMap = new Map()
|
||||||
const totalKey = rankKey(user.activity)
|
const totalKey = rankKey(user.activity)
|
||||||
for (let user of users) {
|
users.forEach(u => userMap.set(u.id, u))
|
||||||
// get score from redis
|
|
||||||
userMap.set(user.id, user)
|
|
||||||
}
|
|
||||||
for (let i = 0; i < chest.bonusUsers.length; i++) {
|
for (let i = 0; i < chest.bonusUsers.length; i++) {
|
||||||
const user = userMap.get(chest.bonusUsers[i])
|
const u = userMap.get(chest.bonusUsers[i])
|
||||||
const totalScore = await new ZRedisClient().zscore(totalKey, user.id)
|
const totalScore = await new ZRedisClient().zscore(totalKey, u.id)
|
||||||
const score = totalScore ? parseInt(totalScore + '') : 0
|
const score = totalScore ? parseInt(totalScore + '') : 0
|
||||||
result.push({
|
result.push({
|
||||||
nickname: user.twitterName || user.discordName,
|
nickname: u?.twitterName || u?.discordName || u?.address ? formatAddress(u.address) : 'unknown',
|
||||||
level: rankLevel(score),
|
level: rankLevel(score),
|
||||||
score: score,
|
score: score,
|
||||||
})
|
})
|
||||||
@ -85,7 +83,7 @@ class BoxController extends BaseController {
|
|||||||
new SyncLocker().checkLock(req)
|
new SyncLocker().checkLock(req)
|
||||||
const { code } = req.params
|
const { code } = req.params
|
||||||
const user = req.user
|
const user = req.user
|
||||||
const uid = user.uid
|
const uid = user.id
|
||||||
|
|
||||||
// TODO:: 待规则确定后, 检查用户是否符合助力条件
|
// TODO:: 待规则确定后, 检查用户是否符合助力条件
|
||||||
const chest = await ActivityChest.findOne({ shareCode: code, activity: user.activity })
|
const chest = await ActivityChest.findOne({ shareCode: code, activity: user.activity })
|
||||||
|
Loading…
x
Reference in New Issue
Block a user