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