后台:邮件查询

This commit is contained in:
luying
2021-11-29 20:33:36 +08:00
parent 7e46663868
commit c4e4e472d1
13 changed files with 236 additions and 44 deletions

View File

@@ -24,6 +24,13 @@ export default class GameController extends Controller {
return
}
public async getServers() {
const { ctx } = this;
ctx.body = await ctx.service.game.getServers();
return
}
public async getMaintenanceList() {
const { ctx } = this;
const {page, pageSize, sortField, sortOrder, form} = ctx.request.body;

View File

@@ -1,7 +1,56 @@
import { Controller } from 'egg';
import { STATUS } from '@consts';
import { GM_MAIL_STATUS, GM_MAIL_TYPE, STATUS } from '@consts';
export default class MailController extends Controller {
public async getCreateSingleMail() {
const { ctx } = this;
const { page, pageSize, sortField, sortOrder, form } = ctx.request.body;
ctx.body = await ctx.service.mail.getGMMailList(page, pageSize, sortField, sortOrder, {...form, mailType: GM_MAIL_TYPE.SINGLE, status: GM_MAIL_STATUS.CREATE, hasGoods: true });
return
}
public async getCreateSingleMailTxt() {
const { ctx } = this;
const { page, pageSize, sortField, sortOrder, form } = ctx.request.body;
ctx.body = await ctx.service.mail.getGMMailList(page, pageSize, sortField, sortOrder, {...form, mailType: GM_MAIL_TYPE.SINGLE, status: GM_MAIL_STATUS.CREATE, hasGoods: false });
return
}
public async getCreateServerMail() {
const { ctx } = this;
const { page, pageSize, sortField, sortOrder, form } = ctx.request.body;
ctx.body = await ctx.service.mail.getGMMailList(page, pageSize, sortField, sortOrder, {...form, mailType: GM_MAIL_TYPE.SERVER, status: GM_MAIL_STATUS.CREATE, hasGoods: true });
return
}
public async getCreateServerMailTxt() {
const { ctx } = this;
const { page, pageSize, sortField, sortOrder, form } = ctx.request.body;
ctx.body = await ctx.service.mail.getGMMailList(page, pageSize, sortField, sortOrder, {...form, mailType: GM_MAIL_TYPE.SERVER, status: GM_MAIL_STATUS.CREATE, hasGoods: false });
return
}
public async getViewSingleMail() {
const { ctx } = this;
const { page, pageSize, sortField, sortOrder, form } = ctx.request.body;
ctx.body = await ctx.service.mail.getGMMailList(page, pageSize, sortField, sortOrder, {...form, mailType: GM_MAIL_TYPE.SINGLE, hasGoods: true });
return
}
public async getViewSingleMailTxt() {
const { ctx } = this;
const { page, pageSize, sortField, sortOrder, form } = ctx.request.body;
ctx.body = await ctx.service.mail.getGMMailList(page, pageSize, sortField, sortOrder, {...form, mailType: GM_MAIL_TYPE.SINGLE, hasGoods: false });
return
}
public async getViewServerMail() {
const { ctx } = this;
const { page, pageSize, sortField, sortOrder, form } = ctx.request.body;
ctx.body = await ctx.service.mail.getGMMailList(page, pageSize, sortField, sortOrder, {...form, mailType: GM_MAIL_TYPE.SERVER, hasGoods: true });
return
}
public async getViewServerMailTxt() {
const { ctx } = this;
const { page, pageSize, sortField, sortOrder, form } = ctx.request.body;
ctx.body = await ctx.service.mail.getGMMailList(page, pageSize, sortField, sortOrder, {...form, mailType: GM_MAIL_TYPE.SERVER, hasGoods: false });
return
}
public async getGMMailList() {
const { ctx } = this;
const { page, pageSize, sortField, sortOrder, form } = ctx.request.body;
@@ -11,7 +60,7 @@ export default class MailController extends Controller {
public async updateGMMail() {
const { ctx } = this;
const { _id, content, sendName, sendTime, endTime, useTempTime, continueHour, goods } = ctx.request.body;
const { _id, sendTime, endTime, useTempTime, continueHour, goods } = ctx.request.body;
if(!_id) return ctx.body = ctx.service.utils.resResult(STATUS.WRONG_PARMS);
if(useTempTime) {
if(!sendTime || !endTime) return ctx.body = ctx.service.utils.resResult(STATUS.WRONG_PARMS);
@@ -24,7 +73,7 @@ export default class MailController extends Controller {
} catch(e) {
return ctx.body = ctx.service.utils.resResult(STATUS.WRONG_PARMS);
}
ctx.body = await ctx.service.mail.updateGMMail(_id, content, sendName, useTempTime, sendTime, endTime, continueHour, updateGoods);
ctx.body = await ctx.service.mail.updateGMMail(_id, updateGoods);
return
}

View File

@@ -53,6 +53,7 @@ export default (app: Application) => {
router.post('/api/game/getserverlistbyenv', tokenParser, controller.game.getServerListByEnv);
router.post('/api/game/getserverlist', controller.game.getServerList);
router.post('/api/game/getregions', controller.game.getRegions);
router.post('/api/game/getservers', controller.game.getServers);
router.post('/api/game/getmaintenancelist', controller.game.getMaintenanceList);
router.post('/api/game/updatemaintenance', controller.game.updateMaintenance);
@@ -94,7 +95,14 @@ export default (app: Application) => {
router.post('/api/activity/updateactivitytaskpoint', controller.activity.updateActivityTaskPoint);
router.post('/api/activity/delactivitytaskpoint', controller.activity.delActivityTaskPoint);
router.post('/api/mail/getgmmaillist', controller.mail.getGMMailList);
router.post('/api/mail/getcreatesinglemail', controller.mail.getCreateSingleMail);
router.post('/api/mail/getcreatesinglemailtxt', controller.mail.getCreateSingleMailTxt);
router.post('/api/mail/getcreateservermail', controller.mail.getCreateServerMail);
router.post('/api/mail/getcreateservermailtxt', controller.mail.getCreateServerMailTxt);
router.post('/api/mail/getviewsinglemail', controller.mail.getViewSingleMail);
router.post('/api/mail/getviewsinglemailtxt', controller.mail.getViewSingleMailTxt);
router.post('/api/mail/getviewservermail', controller.mail.getViewServerMail);
router.post('/api/mail/getviewservermailtxt', controller.mail.getViewServerMailTxt);
router.post('/api/mail/updategmmail', controller.mail.updateGMMail);
router.post('/api/mail/getgmmailrecords', controller.mail.getGMMailRecords);
};

View File

@@ -55,6 +55,15 @@ export default class Game extends Service {
});
}
public async getServers() {
const { ctx } = this;
const list = await ServerlistModel.getAllServerList();
return ctx.service.utils.resResult(STATUS.SUCCESS, {
list
});
}
public async getMaintenanceList(page: number, pageSize: number, sortField: string, sortOrder: string, form: { isOpen?: boolean } = {}) {
const { ctx } = this;
@@ -81,7 +90,7 @@ export default class Game extends Service {
let marqueeResult = await MarqueeModel.createData({ ...marquee, serverIds: values.serverIds, type: MARQUEE_TYPE.SCHEDULE, isRunning: false }, ctx.user?.uid);
let noticeResult = await NoticeModel.updateNotice('new', { ...notice, type: 1, sort: 1000, serverType: curEnv?.serverType, isEnable: false }, ctx.user?.uid);
let mailResult = await GMMailModel.addMail({ ...mail, useTempTime: true }, ctx.user?.uid);
let mailResult = await GMMailModel.addMail({ ...mail, }, ctx.user?.uid);
await MaintenanceModel.createData(values, marqueeResult, noticeResult, mailResult);
} else {
let maintenanceResult = await MaintenanceModel.updateData(values.code, values, ctx.user?.uid);

View File

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