import { Service } from 'egg'; import { GMMailModel } from '@db/GMMail'; import { STATUS } from '@consts'; import { GMMailRecordModel } from '@db/GMMailRecord'; import { RewardInter } from '@pubUtils/interface'; export default class Mail extends Service { public async getGMMailList(page: number, pageSize: number, sortField: string, sortOrder: string, form: {}) { const { ctx } = this; const list = await GMMailModel.findByCondition(page, pageSize, sortField, sortOrder, form); const total = await GMMailModel.countByCondition( form ) return ctx.service.utils.resResult(STATUS.SUCCESS, { list, total }); } public async updateGMMail(_id: string, content: string, sendName: string, useTempTime: boolean, sendTime: number, endTime: number, continueHour: number, goods: RewardInter[]) { const { ctx } = this; if(_id == 'new') { await GMMailModel.addMail({ content, sendName, useTempTime, sendTime, endTime, continueHour, goods }); } else { await GMMailModel.updateMailById(_id, { content, sendName, useTempTime, sendTime, endTime, continueHour, goods }); } return ctx.service.utils.resResult(STATUS.SUCCESS); } public async getGMMailRecords(page: number, pageSize: number, sortField: string, sortOrder: string, form: {}) { const { ctx } = this; const list = await GMMailRecordModel.findByCondition(page, pageSize, sortField, sortOrder, form); return ctx.service.utils.resResult(STATUS.SUCCESS, { list }); } }