计算得分时, 增加boost值的计算
This commit is contained in:
parent
b21a3d472c
commit
c8500e9654
@ -301,6 +301,7 @@ body:
|
||||
{
|
||||
"address": "钱包地址",
|
||||
"boost": 1, // 正常值为1
|
||||
"boostExpire": 0, // 计算得分时, 如果boost过期, 即使boost大于1, 也不计算boost
|
||||
"twitterId": "",
|
||||
"twitterName": "",
|
||||
"discordId": "",
|
||||
|
@ -96,6 +96,7 @@ class SignController extends BaseController {
|
||||
let result = {
|
||||
address: user.address,
|
||||
boost: user.boost || 1,
|
||||
boostExpire: user.boostExpire,
|
||||
twitterId: user.twitterId,
|
||||
twitterName: user.twitterName,
|
||||
discordId: user.discordId,
|
||||
|
@ -90,6 +90,12 @@ class ActivityUserClass extends BaseModule {
|
||||
|
||||
@prop({default: 1})
|
||||
public boost: number
|
||||
/**
|
||||
* boost过期时间
|
||||
* 计算得分时, 如果boost过期, 则不计算boost
|
||||
*/
|
||||
@prop()
|
||||
public boostExpire?: Date
|
||||
|
||||
@prop()
|
||||
public lastLogin?: Date
|
||||
|
@ -39,6 +39,7 @@ export default class ShareCode extends ITask {
|
||||
// According to configuration, add score to user who invite current user
|
||||
if (cfg.autoclaim) {
|
||||
try {
|
||||
await super.claimReward(task);
|
||||
await updateInviteScore(this.params.user, scores, 0, task.task)
|
||||
} catch(err) {
|
||||
console.log(err)
|
||||
@ -48,6 +49,7 @@ export default class ShareCode extends ITask {
|
||||
}
|
||||
|
||||
public async claimReward(task: TaskStatus) {
|
||||
await super.claimReward(task);
|
||||
let cfg = this.params.activity.tasks.find((t: TaskCfg) => t.id === task.id)
|
||||
let scores = cfg.params.score;
|
||||
await updateInviteScore(this.params.user, scores, 0, task.task)
|
||||
|
@ -21,9 +21,13 @@ export abstract class ITask {
|
||||
if (!cfg.score) {
|
||||
return;
|
||||
}
|
||||
let score = cfg.score
|
||||
if (user.boost > 1 && Date.now() < user.boostExpire) {
|
||||
score = Math.floor(score * user.boost)
|
||||
}
|
||||
await updateRankScore({
|
||||
user: user.id,
|
||||
score: cfg.score,
|
||||
score: score,
|
||||
activity: user.activity,
|
||||
scoreType: cfg.task,
|
||||
scoreParams: {
|
||||
|
@ -7,8 +7,14 @@ export const formatDate = (date: Date): string => {
|
||||
};
|
||||
|
||||
// get formated datestring of yesterday
|
||||
export const yesterday = () => {
|
||||
const date = new Date();
|
||||
export const yesterday = (date?: Date) => {
|
||||
date = date || new Date();
|
||||
date.setDate(date.getDate() - 1);
|
||||
return date;
|
||||
};
|
||||
};
|
||||
|
||||
export const nextday = (date?: Date) => {
|
||||
date = date || new Date();
|
||||
date.setDate(date.getDate() + 1);
|
||||
return date;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user