根据服务端日志, 增加一些保护
This commit is contained in:
parent
dd93da8cf7
commit
a1ab3628ed
@ -11,7 +11,8 @@
|
||||
"prod:admin": "node dist/admin.js",
|
||||
"lint": "eslint --ext .ts src/**",
|
||||
"format": "eslint --ext .ts src/** --fix",
|
||||
"initdata": "ts-node src/initdata.ts"
|
||||
"initdata": "ts-node src/initdata.ts",
|
||||
"test": "ts-node -r tsconfig-paths/register src/test.ts"
|
||||
},
|
||||
"author": "zhl",
|
||||
"license": "ISC",
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit 0d231aa9ed56073c170b41a2c676696e97b1c6ce
|
||||
Subproject commit 039c07ff1ca0ddcb6e728aea6029f2144ef99d13
|
@ -88,7 +88,7 @@ class BoxController extends BaseController {
|
||||
const score = records[i].score
|
||||
result.push({
|
||||
nickname: u?.twitterName || u?.discordName || u?.address ? formatAddress(u.address) : 'unknown',
|
||||
avatar: u.twitterAvatar || '',
|
||||
avatar: u?.twitterAvatar || '',
|
||||
score: score,
|
||||
// @ts-ignore
|
||||
time: records[i].createdAt.getTime(),
|
||||
@ -113,7 +113,7 @@ class BoxController extends BaseController {
|
||||
const score = records[i].myScore || 0
|
||||
result.push({
|
||||
nickname: u?.twitterName || u?.discordName || u?.address ? formatAddress(u.address) : 'unknown',
|
||||
avatar: u.twitterAvatar || '',
|
||||
avatar: u?.twitterAvatar || '',
|
||||
score: score,
|
||||
// @ts-ignore
|
||||
time: records[i].createdAt.getTime(),
|
||||
|
@ -35,7 +35,7 @@ class GameController extends BaseController {
|
||||
}
|
||||
const record = await checkInToday(address, dateTag)
|
||||
if (!record) {
|
||||
throw new ZError(13, 'had not signed in')
|
||||
throw new ZError(13, 'had not check in')
|
||||
}
|
||||
const ticketRecord = new TicketRecord({
|
||||
user: user.id,
|
||||
@ -88,10 +88,9 @@ class GameController extends BaseController {
|
||||
if (days < 1) {
|
||||
throw new ZError(12, 'invalid days')
|
||||
}
|
||||
const dateTag = formatDate(new Date())
|
||||
const checkRecord = await checkInToday(user.address.toLowerCase(), dateTag)
|
||||
const checkRecord = await CheckIn.findOne({ from: user.address.toLowerCase() }).sort({ _id: -1 })
|
||||
if (!checkRecord) {
|
||||
throw new ZError(12, 'not signed in')
|
||||
throw new ZError(12, 'no onchain check in record')
|
||||
}
|
||||
if (days > checkRecord.total) {
|
||||
throw new ZError(13, 'invalid days')
|
||||
@ -139,10 +138,9 @@ class GameController extends BaseController {
|
||||
if (days < 1) {
|
||||
throw new ZError(12, 'invalid days')
|
||||
}
|
||||
const dateTag = formatDate(new Date())
|
||||
const checkRecord = await checkInToday(user.address.toLowerCase(), dateTag)
|
||||
const checkRecord = await CheckIn.findOne({ from: user.address.toLowerCase() }).sort({ _id: -1 })
|
||||
if (!checkRecord) {
|
||||
throw new ZError(12, 'not signed in')
|
||||
throw new ZError(12, 'no onchain check in record')
|
||||
}
|
||||
if (days > checkRecord.total) {
|
||||
throw new ZError(13, 'invalid days')
|
||||
@ -272,8 +270,8 @@ class GameController extends BaseController {
|
||||
signCfg,
|
||||
todayStat,
|
||||
todayTickets: 1,
|
||||
daysTotal: checkRecord?.total || 0,
|
||||
daysSeq: checkRecord?.count || 0,
|
||||
daysTotal: lastRecord?.total || 0,
|
||||
daysSeq: lastRecord?.count || 0,
|
||||
seqStat,
|
||||
totalStat,
|
||||
}
|
||||
|
@ -138,7 +138,7 @@ export default class TasksController extends BaseController {
|
||||
if (dateTag && currentDateTag !== dateTag) {
|
||||
throw new ZError(11, 'task date not match')
|
||||
}
|
||||
if (!activity.isVaild()) {
|
||||
if (!activity?.isVaild()) {
|
||||
throw new ZError(15, 'activity not start or end')
|
||||
}
|
||||
let cfg = activity.tasks.find((t: TaskCfg) => t.id === taskId)
|
||||
@ -173,7 +173,7 @@ export default class TasksController extends BaseController {
|
||||
const activity = req.activity
|
||||
const { task } = req.params
|
||||
const [taskId, dateTag] = task.split(':')
|
||||
if (!activity.isVaild()) {
|
||||
if (!activity?.isVaild()) {
|
||||
throw new ZError(15, 'activity not start or end')
|
||||
}
|
||||
let cfg = activity.tasks.find((t: TaskCfg) => t.id === taskId)
|
||||
|
@ -31,7 +31,9 @@ export enum ChestStatusEnum {
|
||||
timeStr = randomStr + timeStr.slice(1)
|
||||
}
|
||||
let shortId = timeStr + this.id.slice(-6)
|
||||
console.log(shortId)
|
||||
this.shareCode = convert({ numStr: shortId, base: 16, to: 52, alphabet })
|
||||
console.log(this.id, this.shareCode)
|
||||
}
|
||||
})
|
||||
export class ActivityChestClass extends BaseModule {
|
||||
|
@ -46,7 +46,7 @@ export const updateRankScore = async ({
|
||||
if (rebateLevel > 0) {
|
||||
let userMod = await ActivityUser.findById(user)
|
||||
if (userMod?.inviteUser) {
|
||||
const score1 = scoreParams.score * INVITE_REBATE
|
||||
const score1 = score * INVITE_REBATE
|
||||
let scoreParams1 = Object.assign({ fromUser: user }, scoreParams)
|
||||
const keyInvite = `${activity}:invite`
|
||||
await updateRankInvite(keyInvite, parseInt(score1 * 100 + ''), `${userMod.inviteUser}_${user}`)
|
||||
|
Loading…
x
Reference in New Issue
Block a user