后台:道具获取

This commit is contained in:
luying
2021-11-29 16:19:47 +08:00
parent e7566b8af5
commit 4d6b87ce97
18 changed files with 149 additions and 148 deletions
@@ -31,58 +31,6 @@ export class GmHandler {
constructor(private app: Application) {
}
async pushEvent(msg: { uid: number, serverId: number }, session: BackendSession) {
let { uid, serverId } = msg;
let role = await RoleModel.findByUid(uid, serverId);
if (!role) return resResult(STATUS.GM_ROLE_NOT_FOUND);
let { roleId, roleName, eventStatus } = role;
let channelService = this.app.get('channelService');
let event = await getEvent(eventStatus, roleId, roleName);
let hisOnlineInfo = await getRoleOnlineInfo(role.roleId);
if (hisOnlineInfo.isOnline) {
channelService.pushMessageByUids('onSpecialEvent', resResult(STATUS.SUCCESS, { event }), [{
uid: roleId,
sid: hisOnlineInfo.sid
}]);
}
return resResult(STATUS.SUCCESS, { list: event });
}
async clearEvent(msg: {}, session: BackendSession) {
let roleId = session.get('roleId');
await EventRecordModel.deleteAccount(roleId);
return resResult(STATUS.SUCCESS);
}
async pushMessage(msg: { uid: number, serverId: number, eventName: string, message: string }, session: BackendSession) {
let { uid, serverId, eventName, message } = msg;
let content = {};
try {
content = JSON.parse(message);
} catch (e) {
return resResult(STATUS.GM_JSON_FORMAT_ERR);
}
// console.log(uid, serverId)
let role = await RoleModel.findByUid(uid, serverId);
if (!role) return resResult(STATUS.GM_ROLE_NOT_FOUND);
let { roleId } = role;
let hisOnlineInfo = await getRoleOnlineInfo(role.roleId);
if (hisOnlineInfo.isOnline) {
let sid = hisOnlineInfo.sid;
if (!!sid) {//下发邮件,对应前端红点提示
pinus.app.channelService.pushMessageByUids(eventName, resResult(STATUS.SUCCESS, content), [{ uid: roleId, sid }]);
}
}
return resResult(STATUS.SUCCESS, { msg: content });
}
//对接gm后台,下发邮件
async addMail(msg: { endTime: number, sendName: string, content: string, goods: RewardInter[], sendTime: number }) {
let { endTime, content, sendName, sendTime, goods } = msg;