后台:获取邮件记录
This commit is contained in:
@@ -85,6 +85,7 @@ export class GmHandler {
|
||||
}
|
||||
|
||||
async sendMail(msg: { id: string, mailType: number, roleIds?: string[], serverIds?: number[] }, session: BackendSession) {
|
||||
const uid: number = session.get('uid')
|
||||
let { id, mailType, roleIds, serverIds } = msg;
|
||||
let f = new SendMailFun();
|
||||
await f.setWithGmMail(id);
|
||||
@@ -93,6 +94,7 @@ export class GmHandler {
|
||||
} else {
|
||||
await f.sendToServer(serverIds);
|
||||
}
|
||||
await f.saveRecord(uid);
|
||||
return resResult(STATUS.SUCCESS);
|
||||
}
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@ import { GM_MAIL_TYPE, MAIL_STATUS, MAIL_TYPE, SEND_NAME } from "../consts";
|
||||
import { MailParam } from '../domain/roleField/mail';
|
||||
import { GMMailType, GMMailModel } from "../db/GMMail";
|
||||
import { getGuildChannelSid, getWorldChannelSid } from "./chatChannelService";
|
||||
import { GMMailRecordModel } from "../db/GMMailRecord";
|
||||
|
||||
/**
|
||||
* 获取邮件信息
|
||||
@@ -69,6 +70,9 @@ export class SendMailFun {
|
||||
private sendTime: number;
|
||||
private endTime: number;
|
||||
private notPush: boolean = false;
|
||||
private mails: MailType[] = [];
|
||||
private groupMails: GroupMailType[] = [];
|
||||
private serverMails: ServerMailType[] = [];
|
||||
|
||||
// 从dicMail读取数据
|
||||
public setWithContentId(contentId: MAIL_TYPE, params: { sendName?: string, endTime?: number, params?: string[], goods?: RewardInter[] }) {
|
||||
@@ -126,6 +130,7 @@ export class SendMailFun {
|
||||
let mails = new Map<string, MailParam>();
|
||||
for(let roleId of roleIds) {
|
||||
let originMail = await MailModel.addMail({ roleId, ...this.getCreateMailParams() });
|
||||
this.mails.push(originMail);
|
||||
let mail = new MailParam(this.mailType, originMail);
|
||||
mails.set(roleId, mail);
|
||||
}
|
||||
@@ -139,6 +144,7 @@ export class SendMailFun {
|
||||
return { roleId, status: MAIL_STATUS.CREATE }
|
||||
})
|
||||
let originMail = await GroupMailModel.addMail({ roleStatus, ...this.getCreateMailParams() });
|
||||
this.groupMails.push(originMail);
|
||||
return new MailParam(this.mailType, originMail);
|
||||
}
|
||||
|
||||
@@ -148,6 +154,7 @@ export class SendMailFun {
|
||||
for(let serverId of serverIds) {
|
||||
let originMail = await ServerMailModel.addMail({ serverId, ...this.getCreateMailParams() });
|
||||
mails.set(serverId, new MailParam(this.mailType, originMail));
|
||||
this.serverMails.push(originMail);
|
||||
}
|
||||
return mails
|
||||
}
|
||||
@@ -206,4 +213,16 @@ export class SendMailFun {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public async saveRecord(createUid: number) {
|
||||
for(let mail of this.mails) {
|
||||
await GMMailRecordModel.createRecord(GM_MAIL_TYPE.SINGLE, mail, createUid);
|
||||
}
|
||||
for(let mail of this.groupMails) {
|
||||
await GMMailRecordModel.createRecord(GM_MAIL_TYPE.GROUP, mail, createUid);
|
||||
}
|
||||
for(let mail of this.serverMails) {
|
||||
await GMMailRecordModel.createRecord(GM_MAIL_TYPE.SERVER, mail, createUid);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user