问卷
This commit is contained in:
@@ -7,7 +7,7 @@ import { SkinUpdate } from '../../../db/Skin';
|
||||
import { RankFirstModel, RankFirstType } from '../../../db/RankFirst';
|
||||
import { Figure } from '../../../domain/dbGeneral';
|
||||
import { PVPConfigModel, PVPConfigType } from '../../../db/SystemConfig';
|
||||
import { treatRoleName, taflush } from '../../../services/sdkService';
|
||||
import { treatRoleName, taflush, sendSurveyMail } from '../../../services/sdkService';
|
||||
import { getServerMainten, setServerMainten, stopServerMainten } from '../../../services/gmService';
|
||||
import { errlogger } from '../../../util/logger';
|
||||
|
||||
@@ -132,4 +132,13 @@ export class RoleRemote {
|
||||
errlogger.error(`remote ${__filename} \n ${e.stack}`);
|
||||
}
|
||||
}
|
||||
|
||||
public async sendSurveyMail(code: string) {
|
||||
try {
|
||||
await sendSurveyMail(code);
|
||||
} catch(e) {
|
||||
errlogger.error(`remote ${__filename} \n ${e.stack}`);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -545,7 +545,8 @@ export async function redisSubScribe() {
|
||||
let refundChannel = getRedisSubChannel(REDIS_KEY.REFUND_CHANNEL, env);
|
||||
let treatRoleChannel = getRedisSubChannel(REDIS_KEY.TREAT_ROLE_CHANNEL, env);
|
||||
let treatGuildChannel = getRedisSubChannel(REDIS_KEY.TREAT_GUILD_CHANNEL, env);
|
||||
await redisClientPub().subscribeAsync(payChannel, treatRoleChannel, treatGuildChannel, refundChannel);
|
||||
let surveyChannel = getRedisSubChannel(REDIS_KEY.SURVEY_CHANNEL, env);
|
||||
await redisClientPub().subscribeAsync(payChannel, treatRoleChannel, treatGuildChannel, refundChannel, surveyChannel);
|
||||
redisClientPub().on('message', (channel, message) => {
|
||||
console.log('**********redisSubScribe*******')
|
||||
console.log('channel: ', channel, payChannel);
|
||||
@@ -566,7 +567,10 @@ export async function redisSubScribe() {
|
||||
let servers = pinus.app.getServersByType('order');
|
||||
let server = getRandSingleEelm(servers);
|
||||
pinus.app.rpc.order.orderRemote.refundOrderFromRedisPub.toServer(server.id, message);
|
||||
|
||||
} else if (channel == surveyChannel) {
|
||||
let servers = pinus.app.getServersByType('role');
|
||||
let server = getRandSingleEelm(servers);
|
||||
pinus.app.rpc.role.roleRemote.sendSurveyMail.toServer(server.id, message);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -11,11 +11,13 @@ import { GuildModel } from "../db/Guild";
|
||||
import { getRoleOnlineInfo, updateUserInfo } from "./redisService";
|
||||
import { Application, pinus } from "pinus";
|
||||
import { getGuildChannelSid } from "./chatService";
|
||||
import { getRandSingleEelm, readWordTxt, resResult, writeWordTxt } from "../pubUtils/util";
|
||||
import { getRandSingleEelm, parseGoodStr, readWordTxt, resResult, writeWordTxt } from "../pubUtils/util";
|
||||
const ThinkingAnalytics = require("thinkingdata-node");
|
||||
import Trie from '../pubUtils/trie';
|
||||
import _ = require("underscore");
|
||||
import { getGoldObject } from "./role/rewardService";
|
||||
import { SurveyRecModel } from "../db/SurveyRec";
|
||||
import { SurveyModel } from "../db/Survery";
|
||||
|
||||
// 检查私聊是否合法
|
||||
|
||||
@@ -283,4 +285,17 @@ export async function checkFilterWords(word: string) {
|
||||
let server = getRandSingleEelm(servers);
|
||||
return await pinus.app.rpc.chat.chatRemote.checkFilterWords.toServer(server.id, word);
|
||||
}
|
||||
}
|
||||
|
||||
export async function sendSurveyMail(code: string) {
|
||||
let rec = await SurveyRecModel.findByCode(code);
|
||||
if(!rec || rec.hasSentMail) return false;
|
||||
|
||||
let survey = await SurveyModel.findBySurveyId(rec.surveyId);
|
||||
if(!survey) return false;
|
||||
|
||||
let reward = parseGoodStr(survey.reward);
|
||||
|
||||
await sendMailByContent(MAIL_TYPE.SEND_MAIL, rec.roleId, { goods: reward, params: [survey.mailContent] });
|
||||
rec = await SurveyRecModel.send(rec.code);
|
||||
}
|
||||
Reference in New Issue
Block a user