diff --git a/src/controllers/chain.controller.ts b/src/controllers/chain.controller.ts index db349dc..67ebaa3 100644 --- a/src/controllers/chain.controller.ts +++ b/src/controllers/chain.controller.ts @@ -25,6 +25,9 @@ export default class ChainController extends BaseController { async preClaimUsdt(req: FastifyRequest) { new SyncLocker().checkLock(req); let user = req.user; + if (user.address) { + throw new ZError(11, 'no address') + } const minClaimNum = +process.env.MINI_CLAIM_USDT const record = await ActivityItem.findOne({user: user.id, activity: user.activity, item: 'usdt'}) if (!record || record.amount < minClaimNum) { @@ -34,8 +37,8 @@ export default class ChainController extends BaseController { record.amount = 0; await record.save() const token = process.env.USDT_CONTRACT; - await TokenClaimHistory.addOne({user: user.id, activity: user.activity, token, amount}) - const res = await sign({user: user.address, token, amount}) + const history = await TokenClaimHistory.addOne({user: user.id, activity: user.activity, address: user.address, token, amount}) + const res = await sign({user: user.address, token, amount, saltNonce: history.id}) return res } } \ No newline at end of file diff --git a/src/models/ActivityInfo.ts b/src/models/ActivityInfo.ts index c12f057..726c04b 100644 --- a/src/models/ActivityInfo.ts +++ b/src/models/ActivityInfo.ts @@ -58,10 +58,10 @@ export class TaskCfg { if (this.end) { let end = new Date(this.end).getTime() if (now > end) { - return false + return true } } - return true + return false } public isVaild() { @@ -96,7 +96,7 @@ class ActivityInfoClass extends BaseModule { @prop() public comment?: string - public isValie() { + public isVaild() { const now = Date.now() if (this.startTime) { if (now < this.startTime) { diff --git a/src/models/TokenClaimHistory.ts b/src/models/TokenClaimHistory.ts index 17055e8..7e88758 100644 --- a/src/models/TokenClaimHistory.ts +++ b/src/models/TokenClaimHistory.ts @@ -14,6 +14,11 @@ class TokenClaimHistoryClass extends BaseModule { @prop({ required: true}) public activity: string + /** + * 冗余字段, 方便查找 + */ + @prop() + public address: string @prop() public token: string