邮件:GM后台发送邮件逻辑修改
This commit is contained in:
@@ -8,7 +8,7 @@ import { getAllOnlineRoles, getAllServers, delGuildActivityRank, getServerCreate
|
||||
import { GUILD_ACTIVITY_TYPE, REFRESH_TIME, COUNTER, AUCTION_TIME, GM_MAIL_TYPE, SERVER_TIMER, ACTIVITY_TYPE, PUSH_ROUTE, STATUS } from '../consts';
|
||||
import { pinus } from 'pinus';
|
||||
import { settleGuildWeekly } from './guildService';
|
||||
import { SendMailFun, } from './mailService';
|
||||
import { SendMailFun, sendMailsByGmMail, } from './mailService';
|
||||
import { sendEndMsgToAllServer, autoDeclare, sendGuildActivityStatus } from './guildActivity/guildActivityService';
|
||||
import { sendUngotDividendJob, startGuildAuction, startWorldAuction, stopAuction } from './auctionService';
|
||||
import { DicGuildActivity } from '../pubUtils/dictionary/DicGuildActivity';
|
||||
@@ -20,7 +20,7 @@ import { CounterModel } from '../db/Counter';
|
||||
import { reportOneOnline } from './authenticateService';
|
||||
import { PVP } from '../pubUtils/dicParam';
|
||||
import { fetch37Words } from './sdkService';
|
||||
import { GMMailModel } from '../db/GMMail';
|
||||
import { GMMailModel, GMMailType } from '../db/GMMail';
|
||||
import { Maintenance, ServerlistModel, ServerlistType } from '../db/Serverlist';
|
||||
import { getWorldChannelSid } from './chatService';
|
||||
import { createMarqueeMsg, pushMarqueeMsg } from './sysChatService';
|
||||
@@ -419,31 +419,16 @@ async function checkCircleMail() {
|
||||
if(circleMailJob) {
|
||||
circleMailJob.cancel();
|
||||
}
|
||||
circleMailJob = scheduleJob('circleMail', '0 0 20 * * ?', sendCircleMail);
|
||||
sendCircleMail();
|
||||
circleMailJob = scheduleJob('circleMail', '0 0 20 * * ?', scheduleSendCircleMail);
|
||||
scheduleSendCircleMail();
|
||||
}
|
||||
|
||||
async function sendCircleMail() {
|
||||
async function scheduleSendCircleMail() {
|
||||
let gmmails = await GMMailModel.findCircleMails(pinus.app.get('env'));
|
||||
let f = new SendMailFun();
|
||||
for(let gmmail of gmmails) {
|
||||
let { receivers, mailType, sendTimes, circleStart, circleEnd } = gmmail;
|
||||
let code = await f.setWithGmMail(gmmail);
|
||||
if(!code) continue;
|
||||
let mapTemp = f.getMailTemp(code);
|
||||
if(sendTimes.indexOf(mapTemp.sendTime) == -1 && circleStart <= mapTemp.sendTime && circleEnd >= mapTemp.sendTime) {
|
||||
if(mailType == GM_MAIL_TYPE.SINGLE) {
|
||||
await f.createSingleMails(code, receivers.map(cur => cur.roleId));
|
||||
} else if (mailType == GM_MAIL_TYPE.GROUP) {
|
||||
await f.createGroupMails(code, receivers.map(cur => cur.roleId));
|
||||
} else if (mailType == GM_MAIL_TYPE.SERVER) {
|
||||
await f.createServerMails(code, receivers.map(cur => cur.serverId));
|
||||
}
|
||||
}
|
||||
}
|
||||
await f.pushToUsers();
|
||||
await sendMailsByGmMail(gmmails);
|
||||
}
|
||||
|
||||
|
||||
let mailByHourJob: Job;
|
||||
async function checkMailByHour() {
|
||||
if(mailByHourJob) {
|
||||
|
||||
Reference in New Issue
Block a user