修改一些字段读取的方式

This commit is contained in:
CounterFire2023 2024-04-15 13:45:30 +08:00
parent 004bd3c81c
commit ea8dae5ae7
6 changed files with 27 additions and 14 deletions

View File

@ -8,9 +8,9 @@
{
"id": "e2yhq2lj30vwcpedv7p",
"task": "TwitterConnect",
"title": "Connect Twitter Account",
"title": "Connect X",
"type": 1,
"desc": "Connect Twitter Account",
"desc": "Please connect your X account",
"score": 100,
"category": "Social Tasks",
"autoclaim": false,
@ -22,13 +22,13 @@
}, {
"id": "e2fclylj30vwcpe0szl",
"task": "TwitterFollow",
"title": "Follow Counter Fires official X account",
"title": "Follow @playCounterFire on X",
"type": 1,
"desc": "Follow Counter Fires official X account",
"category": "Social Tasks",
"score": 100,
"autoclaim": false,
"pretasks": ["e2yhq2lj30vwcpedv7p"],
"pretasks": [],
"cfg": {"account": "playCounterFire", "icon": "twitter"},
"start": "2024-01-01 00:00",
"end": "2025-01-01 00:00",
@ -37,9 +37,9 @@
}, {
"id": "e2far3lj30vwcpe0mh7",
"task": "DiscordConnect",
"title": "Connect discord",
"title": "Connect Discord",
"type": 1,
"desc": "Connect your discord account",
"desc": "Connect your Discord account",
"category": "",
"score": 100,
"autoclaim": false,
@ -57,7 +57,7 @@
"category": "Social Tasks",
"score": 100,
"autoclaim": false,
"pretasks": ["e2far3lj30vwcpe0mh7"],
"pretasks": [],
"cfg": {"icon": "discord", "account": "counterfire"},
"start": "2024-01-01 00:00",
"end": "2025-01-01 00:00",
@ -66,13 +66,13 @@
}, {
"id": "e2fuah0j30vwcpe0my7",
"task": "TwitterRetweet",
"title": "Repost on X",
"title": "Repost and like on X",
"type": 1,
"desc": "Show your friends Counter Fire.",
"category": "Social Tasks",
"score": 150,
"autoclaim": false,
"pretasks": ["e2yhq2lj30vwcpedv7p"],
"pretasks": [],
"cfg": {"icon": "twitter", "content": "Just joined Counter Fire! 🎮 Excited about the endless opportunities ahead. 🔥 Let's team up and conquer together! Come in with me #CounterFire #GamingAdventures"},
"start": "2024-01-01 00:00",
"end": "2025-01-01 00:00",

View File

@ -117,9 +117,9 @@ class SignController extends BaseController {
invite = inviteUser.address.toLowerCase()
}
}
const records = await ScoreRecord.find({ user: user.id, activity: user.activity, type: SCORE_INVITE_USER })
const records = await ActivityUser.find({ inviteUser: user.id })
const gameRecord = await ActivityGame.insertOrUpdate({ user: user.id, activity: user.activity }, {})
let inviteScore = records.reduce((acc, record) => acc + record.score, 0)
let inviteScore = 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

View File

@ -5,6 +5,8 @@ import { join } from 'path'
import { formatDate } from 'utils/utcdate.util'
import { GeneralScription } from 'models/chain/GeneralScription'
import { BASE_TASK_TICKET } from 'common/Constants'
import { BASE_TASK_REWARD, SIGN_SEQ, TicketRecord } from 'models/TicketRecord'
import { ActivityGame } from 'models/ActivityGame'
const fs = require('fs')
const prod = process.env.NODE_ENV === 'production'
@ -215,9 +217,18 @@ export default class TasksController extends BaseController {
}
}
let ticket = 0
if (count === baseTaskSet.size) {
if (count === baseTaskSet.size && baseTaskSet.has(taskId)) {
// all base task finished, give ticket
ticket = BASE_TASK_TICKET
const ticketRecord = new TicketRecord({
user: user.id,
activity: user.activity,
type: BASE_TASK_REWARD,
data: { task: currentTask.task },
score: ticket,
})
await ActivityGame.updateOne({ user: user.id, activity: user.activity }, { $inc: { tickets: ticket } })
await ticketRecord.save()
}
return { status: currentTask.status, score, ticket }
}

View File

@ -9,6 +9,8 @@ export const SIGN_TOTAL = 'sign_total'
export const SIGN_SEQ = 'sign_seq'
// 使用门票
export const USE_TICKET = 'use_ticket'
// 基础任务完成奖励
export const BASE_TASK_REWARD = 'base_task_reward'
@dbconn()
@index({ user: 1 }, { unique: false })

View File

@ -19,7 +19,7 @@ export const totalSignScore = (days: number) => {
}
export const seqSignScore = (days: number) => {
const data = seqSignCfg2.find(o => days === o.days)
const data = seqSignCfg.find(o => days === o.days)
return data?.reward || 0
}

View File

@ -26,7 +26,7 @@ export default class DiscordConnect extends ITask {
try {
await this.user.save()
} catch (err) {
throw new ZError(100, 'discord already binded')
throw new ZError(100, 'discord already binded to another account')
}
if (cfg.autoclaim) {
try {