extract score type as constant
This commit is contained in:
parent
29e586b38c
commit
9f393f9c35
@ -27,3 +27,16 @@ export const STEP_CHEST_RATE = 0.1
|
|||||||
export const STEP_CHEST_LEVEL = [70, 85, 95, 100]
|
export const STEP_CHEST_LEVEL = [70, 85, 95, 100]
|
||||||
// 低保步数
|
// 低保步数
|
||||||
export const RESET_STEP = 2
|
export const RESET_STEP = 2
|
||||||
|
|
||||||
|
// 积分类型-邀请用户
|
||||||
|
export const SCORE_INVITE_USER = 'invite_user'
|
||||||
|
// 积分类型-接受邀请
|
||||||
|
export const SCORE_INVITE_INVITEE = 'invite_invitee'
|
||||||
|
// 积分类型-开宝箱
|
||||||
|
export const SCORE_OPEN_CHEST = 'open_chest'
|
||||||
|
// 积分类型-抽奖
|
||||||
|
export const SCORE_DRAW = 'draw'
|
||||||
|
// 积分类型-探索
|
||||||
|
export const SCORE_GAME_STEP = 'game_step'
|
||||||
|
// 积分类型-社交任务
|
||||||
|
export const SCORE_SOCIAL_TASK = 'Social Tasks'
|
||||||
|
@ -5,6 +5,7 @@ import { BaseController, ROLE_ANON, SyncLocker, ZError, ZRedisClient, role, rout
|
|||||||
import { ScoreRecord } from 'models/ScoreRecord'
|
import { ScoreRecord } from 'models/ScoreRecord'
|
||||||
import { formatAddress } from 'zutils/utils/chain.util'
|
import { formatAddress } from 'zutils/utils/chain.util'
|
||||||
import { formatDate } from 'zutils/utils/date.util'
|
import { formatDate } from 'zutils/utils/date.util'
|
||||||
|
import { SCORE_INVITE_INVITEE, SCORE_INVITE_USER } from 'common/Constants'
|
||||||
const shareCfg = require('../../configs/share_cfg.json')
|
const shareCfg = require('../../configs/share_cfg.json')
|
||||||
|
|
||||||
const MAX_LIMIT = 100
|
const MAX_LIMIT = 100
|
||||||
@ -47,7 +48,7 @@ export default class ActivityController extends BaseController {
|
|||||||
user: inviteUser.id,
|
user: inviteUser.id,
|
||||||
score: shareCfg.inviter,
|
score: shareCfg.inviter,
|
||||||
activity: user.activity,
|
activity: user.activity,
|
||||||
scoreType: 'invite_user',
|
scoreType: SCORE_INVITE_USER,
|
||||||
scoreParams: {
|
scoreParams: {
|
||||||
date: dateTag,
|
date: dateTag,
|
||||||
user: user.id,
|
user: user.id,
|
||||||
@ -58,7 +59,7 @@ export default class ActivityController extends BaseController {
|
|||||||
user: user.id,
|
user: user.id,
|
||||||
score: shareCfg.invitee,
|
score: shareCfg.invitee,
|
||||||
activity: user.activity,
|
activity: user.activity,
|
||||||
scoreType: 'invite_invitee',
|
scoreType: SCORE_INVITE_INVITEE,
|
||||||
scoreParams: {
|
scoreParams: {
|
||||||
date: dateTag,
|
date: dateTag,
|
||||||
user: inviteUser.id,
|
user: inviteUser.id,
|
||||||
|
@ -6,6 +6,7 @@ import { formatDate } from 'zutils/utils/date.util'
|
|||||||
import { ScoreRecord } from 'models/ScoreRecord'
|
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'
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 宝箱相关接口
|
* 宝箱相关接口
|
||||||
@ -156,7 +157,7 @@ class BoxController extends BaseController {
|
|||||||
user: user.id,
|
user: user.id,
|
||||||
score: score,
|
score: score,
|
||||||
activity: user.activity,
|
activity: user.activity,
|
||||||
scoreType: 'open_chest',
|
scoreType: SCORE_OPEN_CHEST,
|
||||||
scoreParams: {
|
scoreParams: {
|
||||||
date: dateTag,
|
date: dateTag,
|
||||||
chestId: chest.id,
|
chestId: chest.id,
|
||||||
@ -173,7 +174,7 @@ class BoxController extends BaseController {
|
|||||||
@router('get /api/chest/open/history')
|
@router('get /api/chest/open/history')
|
||||||
async openChestHistory(req) {
|
async openChestHistory(req) {
|
||||||
const user = req.user
|
const user = req.user
|
||||||
const records = await ScoreRecord.find({ user: user.id, activity: user.activity, type: 'open_chest' }).sort({
|
const records = await ScoreRecord.find({ user: user.id, activity: user.activity, type: SCORE_OPEN_CHEST }).sort({
|
||||||
createdAt: -1,
|
createdAt: -1,
|
||||||
})
|
})
|
||||||
return records.map(record => {
|
return records.map(record => {
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import { MANUAL_OPEN_GAME, RESET_STEP } from 'common/Constants'
|
import { MANUAL_OPEN_GAME, RESET_STEP, SCORE_GAME_STEP } from 'common/Constants'
|
||||||
import { ActivityGame } from 'models/ActivityGame'
|
import { ActivityGame } from 'models/ActivityGame'
|
||||||
import { DAILY_SIGN, SIGN_TOTAL, TicketRecord, USE_TICKET } from 'models/TicketRecord'
|
import { DAILY_SIGN, SIGN_TOTAL, TicketRecord, USE_TICKET } from 'models/TicketRecord'
|
||||||
import { queryCheckInList } from 'services/chain.svr'
|
import { queryCheckInList } from 'services/chain.svr'
|
||||||
@ -231,7 +231,7 @@ class GameController extends BaseController {
|
|||||||
user: user.id,
|
user: user.id,
|
||||||
score: score,
|
score: score,
|
||||||
activity: user.activity,
|
activity: user.activity,
|
||||||
scoreType: 'game_step',
|
scoreType: SCORE_GAME_STEP,
|
||||||
scoreParams: {
|
scoreParams: {
|
||||||
step: step,
|
step: step,
|
||||||
},
|
},
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import { EMPTY_REWARD } from 'common/Constants'
|
import { EMPTY_REWARD, SCORE_DRAW } from 'common/Constants'
|
||||||
import { LotteryCache } from 'common/LotteryCache'
|
import { LotteryCache } from 'common/LotteryCache'
|
||||||
import { ZError, SyncLocker, BaseController, router } from 'zutils'
|
import { ZError, SyncLocker, BaseController, router } from 'zutils'
|
||||||
import { FUSION_CFG } from 'configs/fusion'
|
import { FUSION_CFG } from 'configs/fusion'
|
||||||
@ -122,7 +122,7 @@ export default class LotteryController extends BaseController {
|
|||||||
user: user.id,
|
user: user.id,
|
||||||
score,
|
score,
|
||||||
activity: user.activity,
|
activity: user.activity,
|
||||||
scoreType: 'draw',
|
scoreType: SCORE_DRAW,
|
||||||
scoreParams: {
|
scoreParams: {
|
||||||
date: dateTag,
|
date: dateTag,
|
||||||
},
|
},
|
||||||
|
@ -11,6 +11,7 @@ import { checkParamsNeeded } from 'zutils/utils/net.util'
|
|||||||
import { aesDecrypt } from 'zutils/utils/security.util'
|
import { aesDecrypt } from 'zutils/utils/security.util'
|
||||||
import { base58ToHex } from 'zutils/utils/string.util'
|
import { base58ToHex } from 'zutils/utils/string.util'
|
||||||
import { ActivityGame } from 'models/ActivityGame'
|
import { ActivityGame } from 'models/ActivityGame'
|
||||||
|
import { SCORE_INVITE_USER, SCORE_SOCIAL_TASK } from 'common/Constants'
|
||||||
|
|
||||||
const LOGIN_TIP = 'This signature is just to verify your identity'
|
const LOGIN_TIP = 'This signature is just to verify your identity'
|
||||||
|
|
||||||
@ -111,10 +112,10 @@ class SignController extends BaseController {
|
|||||||
invite = inviteUser.address.toLowerCase()
|
invite = inviteUser.address.toLowerCase()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const records = await ScoreRecord.find({ user: user.id, activity: user.activity, type: 'invite' })
|
const records = await ScoreRecord.find({ user: user.id, activity: user.activity, type: SCORE_INVITE_USER })
|
||||||
const gameRecord = await ActivityGame.insertOrUpdate({ user: user.id, activity: user.activity }, {})
|
const gameRecord = await ActivityGame.insertOrUpdate({ user: user.id, activity: user.activity }, {})
|
||||||
let inviteScore = records.reduce((acc, record) => acc + record.score, 0)
|
let inviteScore = records.reduce((acc, record) => acc + record.score, 0)
|
||||||
const recordSocial = await ScoreRecord.find({ user: user.id, activity: user.activity, type: 'Social Tasks' })
|
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)
|
let scoreSocial = recordSocial.reduce((acc, record) => acc + record.score, 0)
|
||||||
let result = {
|
let result = {
|
||||||
address: user.address.toLowerCase(),
|
address: user.address.toLowerCase(),
|
||||||
|
@ -73,7 +73,7 @@ export default class DailyCheckIn extends ITask {
|
|||||||
user: this.user.id,
|
user: this.user.id,
|
||||||
score: score,
|
score: score,
|
||||||
activity: this.user.activity,
|
activity: this.user.activity,
|
||||||
scoreType: cfg.task,
|
scoreType: cfg.category,
|
||||||
scoreParams: {
|
scoreParams: {
|
||||||
taskId: task.id,
|
taskId: task.id,
|
||||||
date: dateTag,
|
date: dateTag,
|
||||||
|
@ -6,6 +6,7 @@ import { ActivityItem } from 'models/ActivityItem'
|
|||||||
import { LotteryCache } from 'common/LotteryCache'
|
import { LotteryCache } from 'common/LotteryCache'
|
||||||
import { checkHadGacha } from 'services/chain.svr'
|
import { checkHadGacha } from 'services/chain.svr'
|
||||||
import { DocumentType } from '@typegoose/typegoose'
|
import { DocumentType } from '@typegoose/typegoose'
|
||||||
|
import { SCORE_INVITE_USER } from 'common/Constants'
|
||||||
|
|
||||||
const updateInviteScore = async (
|
const updateInviteScore = async (
|
||||||
user: DocumentType<ActivityUserClass>,
|
user: DocumentType<ActivityUserClass>,
|
||||||
@ -81,6 +82,6 @@ export default class ShareCode extends ITask {
|
|||||||
let cfg = this.activity.tasks.find((t: TaskCfg) => t.id === task.id)
|
let cfg = this.activity.tasks.find((t: TaskCfg) => t.id === task.id)
|
||||||
let scores = cfg.params.score
|
let scores = cfg.params.score
|
||||||
const items = cfg.params.inviteItems || []
|
const items = cfg.params.inviteItems || []
|
||||||
await updateInviteScore(this.user, scores, items, 0, 'invite')
|
await updateInviteScore(this.user, scores, items, 0, SCORE_INVITE_USER)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user