优化task的加载
This commit is contained in:
parent
c6e18b63c3
commit
efe3592fdc
@ -6,15 +6,12 @@ import { join } from 'path'
|
|||||||
import { formatDate } from 'utils/utcdate.util'
|
import { formatDate } from 'utils/utcdate.util'
|
||||||
import { GeneralScription } from 'models/chain/GeneralScription'
|
import { GeneralScription } from 'models/chain/GeneralScription'
|
||||||
import { BASE_TASK_TICKET } from 'common/Constants'
|
import { BASE_TASK_TICKET } from 'common/Constants'
|
||||||
import { BASE_TASK_REWARD, SIGN_SEQ, TicketRecord } from 'models/TicketRecord'
|
import { BASE_TASK_REWARD, TicketRecord } from 'models/TicketRecord'
|
||||||
import { ActivityGame } from 'models/ActivityGame'
|
import { ActivityGame } from 'models/ActivityGame'
|
||||||
import { formatNumShow } from 'common/Utils'
|
import { formatNumShow } from 'common/Utils'
|
||||||
import { fetchClaimStatus } from 'services/chain.svr'
|
|
||||||
import logger from 'logger/logger'
|
import logger from 'logger/logger'
|
||||||
const fs = require('fs')
|
const fs = require('fs')
|
||||||
|
|
||||||
const prod = process.env.NODE_ENV === 'production'
|
|
||||||
|
|
||||||
const initTasks = () => {
|
const initTasks = () => {
|
||||||
const tasks = join(__dirname, '../tasks')
|
const tasks = join(__dirname, '../tasks')
|
||||||
const list = new Map()
|
const list = new Map()
|
||||||
@ -22,11 +19,7 @@ const initTasks = () => {
|
|||||||
.filter((file: string) => ~file.search(/^[^.].*\.(ts|js)$/))
|
.filter((file: string) => ~file.search(/^[^.].*\.(ts|js)$/))
|
||||||
.forEach((file: any) => {
|
.forEach((file: any) => {
|
||||||
const Task = require('../tasks/' + file)
|
const Task = require('../tasks/' + file)
|
||||||
list.set(Task.default.name, {
|
list.set(Task.default.name, Task)
|
||||||
name: Task.default.name,
|
|
||||||
desc: Task.default.desc,
|
|
||||||
show: Task.default.show,
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
return list
|
return list
|
||||||
}
|
}
|
||||||
@ -166,8 +159,11 @@ export default class TasksController extends BaseController {
|
|||||||
if (currentTask.status === TaskStatusEnum.NOT_START) {
|
if (currentTask.status === TaskStatusEnum.NOT_START) {
|
||||||
throw new ZError(11, 'task not begin')
|
throw new ZError(11, 'task not begin')
|
||||||
}
|
}
|
||||||
|
if (!allTasks.has(currentTask.task)) {
|
||||||
|
throw new ZError(14, 'task not found')
|
||||||
|
}
|
||||||
if (currentTask.status === TaskStatusEnum.RUNNING || currentTask.status === TaskStatusEnum.PART_SUCCESS) {
|
if (currentTask.status === TaskStatusEnum.RUNNING || currentTask.status === TaskStatusEnum.PART_SUCCESS) {
|
||||||
let Task = require('../tasks/' + currentTask.task)
|
const Task = allTasks.get(currentTask.task)
|
||||||
let taskInstance = new Task.default({ user, activity })
|
let taskInstance = new Task.default({ user, activity })
|
||||||
await taskInstance.execute({ task: currentTask })
|
await taskInstance.execute({ task: currentTask })
|
||||||
}
|
}
|
||||||
@ -202,6 +198,9 @@ export default class TasksController extends BaseController {
|
|||||||
if (currentTask.status !== TaskStatusEnum.SUCCESS && currentTask.status !== TaskStatusEnum.PART_SUCCESS) {
|
if (currentTask.status !== TaskStatusEnum.SUCCESS && currentTask.status !== TaskStatusEnum.PART_SUCCESS) {
|
||||||
throw new ZError(13, 'task not end')
|
throw new ZError(13, 'task not end')
|
||||||
}
|
}
|
||||||
|
if (!allTasks.has(currentTask.task)) {
|
||||||
|
throw new ZError(14, 'task not found')
|
||||||
|
}
|
||||||
if (cfg.checkChain) {
|
if (cfg.checkChain) {
|
||||||
const chainRecord = await GeneralScription.findOne({
|
const chainRecord = await GeneralScription.findOne({
|
||||||
from: user.address.toLowerCase(),
|
from: user.address.toLowerCase(),
|
||||||
@ -217,7 +216,7 @@ export default class TasksController extends BaseController {
|
|||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
const Task = require('../tasks/' + currentTask.task)
|
const Task = allTasks.get(currentTask.task)
|
||||||
const taskInstance = new Task.default({ user, activity })
|
const taskInstance = new Task.default({ user, activity })
|
||||||
const { score } = await taskInstance.claimReward(currentTask)
|
const { score } = await taskInstance.claimReward(currentTask)
|
||||||
const baseTaskSet = new Set(activity.baseTasks)
|
const baseTaskSet = new Set(activity.baseTasks)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user