32 lines
939 B
TypeScript
32 lines
939 B
TypeScript
import * as dotenv from 'dotenv'
|
|
const envFile = process.env.NODE_ENV && process.env.NODE_ENV === 'production' ? `.env.production` : '.env.development'
|
|
dotenv.config({ path: envFile })
|
|
import logger from 'logger/logger'
|
|
import { ZRedisClient } from 'zutils'
|
|
import * as schedule from 'node-schedule'
|
|
|
|
const REDIS_KEY = `draw_1`
|
|
import { RewardRecord } from 'models/RewardRecrd'
|
|
|
|
const addRewards = async (type: number) => {
|
|
logger.info('schedule add rewards for type: ', type)
|
|
try {
|
|
let record = new RewardRecord({ type })
|
|
await record.save()
|
|
new ZRedisClient().pub.sadd(REDIS_KEY, record.id)
|
|
} catch (e) {
|
|
console.log(e)
|
|
}
|
|
}
|
|
|
|
;(async () => {
|
|
let opts = { url: process.env.REDIS }
|
|
new ZRedisClient(opts)
|
|
logger.info('REDIS Connected')
|
|
// 2,4,6,8,10,12,14,16,18,20 各添加一次
|
|
schedule.scheduleJob('0 2,4,6,8,10,12,14,16,18,20 * * *', async () => {
|
|
await addRewards(1)
|
|
})
|
|
// addRewards(1)
|
|
})()
|