task-svr/src/services/sign.svr.ts
2024-03-22 19:51:51 +08:00

29 lines
968 B
TypeScript

import { CheckIn } from 'models/chain/CheckIn'
const signCfg = require('../../configs/uaw_daily_sign.json')
export const totalSignCfg = signCfg.total_sign.sort((a, b) => a.days - b.days)
// 按days倒序排列
const totalSignCfg2 = signCfg.total_sign.sort((a, b) => b.days - a.days)
export const seqSignCfg = signCfg.sequential_sign.sort((a, b) => a.seq - b.seq)
let total = 0
let seqSignCfg2 = []
for (let i = 0, l = seqSignCfg.length; i < l; i++) {
total += seqSignCfg[i].reward
seqSignCfg2[l - i - 1] = { days: seqSignCfg[i].days, reward: total }
}
export const totalSignScore = (days: number) => {
const data = totalSignCfg2.find(o => days >= o.days)
return data?.reward || 0
}
export const seqSignScore = (days: number) => {
const data = seqSignCfg2.find(o => days >= o.days)
return data?.reward || 0
}
export const checkInToday = async (address: string, dateTag: string) => {
return CheckIn.findOne({ from: address.toLowerCase(), dateTag })
}