军团:添加邮件

This commit is contained in:
luying
2021-01-24 11:58:03 +08:00
parent cd7d0c7e62
commit b5d84c03e4
10 changed files with 143 additions and 43 deletions
+5 -14
View File
@@ -1,7 +1,7 @@
import { gameData } from "../pubUtils/data";
import { GuildModel, GuildType } from "../db/Guild";
import { resResult, shouldRefreshWeek, shouldRefresh } from "../pubUtils/util";
import { STATUS } from "../consts";
import { STATUS, GUILD_OPERATE, MAIL_TYPE } from "../consts";
import { RoleModel, RoleType } from "../db/Role";
import { UserGuildModel, UserGuildType } from "../db/UserGuild";
import { UserGuildApplyModel } from "../db/UserGuildApply";
@@ -9,6 +9,9 @@ import { SystemConfigModel } from "../db/SystemConfig";
import { nowSeconds } from "../pubUtils/timeUtil";
import { pinus } from "pinus";
import { GuildRecType } from "../db/GuildRec";
import { MailModel } from "../db/Mail";
import { RewardInter } from "../pubUtils/interface";
import { getRedis } from "./redisService";
/**
* @description 检查该玩家是否有权限做操作
@@ -60,18 +63,6 @@ export async function joinGuild(code: string, lv: number, roleId: string, server
return { status: 1, guild, userGuild, roleName: role.roleName, memberCnt: guild.memberCnt }
}
/**
* 消耗军团资金
* @param code 军团唯一code
* @param cost 消耗值
* @param sid 推送channel
*/
export async function costFund(code: string, cost: number, sid: string) {
const guild = await GuildModel.costFund(code, cost);
// TODO 推送
return guild;
}
/**
* 刷新军团活跃
* @param guildCode 军团唯一code
@@ -233,4 +224,4 @@ export const message = {
}
}
}
}
+24
View File
@@ -0,0 +1,24 @@
import { RewardInter } from "../pubUtils/interface";
import { MailModel } from "../db/Mail";
import { getRedis } from "./redisService";
import { pinus } from "pinus";
import { gameData } from "../pubUtils/data";
export async function sendMail(operate: number, toRoleId: string, sendName: string, params: string[], goods: RewardInter[] = []) {
let content = getContent( operate, params);
let mail = await MailModel.addMail({roleId: toRoleId, goods, sendName, mailId: 1, content});
let key = 'login_roleId_' + toRoleId;
let sid = await getRedis(key);
if (!!sid) {
pinus.app.rpc.connector.connectorRemote.pushMessage.toServer(sid, toRoleId, 'onMailsAdd', [mail]);
}
}
export function getContent(operate: number, params: string[]) {
let content = gameData.mail.get(operate)||'%d';
for(let p of params) {
content = content.replace(/%d/, p);
}
return content
}