fix bug in enhance chest

This commit is contained in:
CounterFire2023 2024-03-27 13:55:37 +08:00
parent b44faefbbb
commit 563e12ef0a

View File

@ -7,6 +7,7 @@ import { ScoreRecord } from 'models/ScoreRecord'
import { ChestRecord } from 'models/chain/ChestRecord'
import { generateNewChest } from 'services/game.svr'
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 userMap = new Map()
const totalKey = rankKey(user.activity)
for (let user of users) {
// get score from redis
userMap.set(user.id, user)
}
users.forEach(u => userMap.set(u.id, u))
for (let i = 0; i < chest.bonusUsers.length; i++) {
const user = userMap.get(chest.bonusUsers[i])
const totalScore = await new ZRedisClient().zscore(totalKey, user.id)
const u = userMap.get(chest.bonusUsers[i])
const totalScore = await new ZRedisClient().zscore(totalKey, u.id)
const score = totalScore ? parseInt(totalScore + '') : 0
result.push({
nickname: user.twitterName || user.discordName,
nickname: u?.twitterName || u?.discordName || u?.address ? formatAddress(u.address) : 'unknown',
level: rankLevel(score),
score: score,
})
@ -85,7 +83,7 @@ class BoxController extends BaseController {
new SyncLocker().checkLock(req)
const { code } = req.params
const user = req.user
const uid = user.uid
const uid = user.id
// TODO:: 待规则确定后, 检查用户是否符合助力条件
const chest = await ActivityChest.findOne({ shareCode: code, activity: user.activity })