登陆:玩家在线情况redis改为hash格式
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
import { BossInstanceType, BossInstanceModel } from '../db/BossInstance';
|
||||
import { getTodayZeroPoint, nowSeconds } from '../pubUtils/timeUtil';
|
||||
import { getTodayZeroPoint } from '../pubUtils/timeUtil';
|
||||
import { lockData } from '../services/redLockService';
|
||||
import { findIndex, indexBy, values } from 'underscore';
|
||||
import { findIndex } from 'underscore';
|
||||
import { MailModel, MailType } from '../db/Mail';
|
||||
import { getRedis, sismemberAsync, smembersAsync, saddAsync, delAsync, sremAsync, redisSidKey } from '../services/redisService';
|
||||
import { sismemberAsync, smembersAsync, saddAsync, delAsync, getRoleOnlineInfo } from '../services/redisService';
|
||||
import { pinus } from 'pinus';
|
||||
import { STATUS } from '../consts/statusCode';
|
||||
import { deepCopy, resResult } from '../pubUtils/util';
|
||||
@@ -159,12 +159,14 @@ export function getArmyBossRankReward(rankLv: number) {
|
||||
* @param roleId
|
||||
*/
|
||||
export async function addBossInstance(code: string, serverId:number, roleId: string) {
|
||||
let loginKey = redisSidKey(roleId);
|
||||
let sid = await getRedis(loginKey);
|
||||
let key = 'serverId_' + serverId + 'guildCode_' + code;
|
||||
let value = roleId+ '|' + sid;
|
||||
saddAsync(key, [value]);
|
||||
let hisOnlineInfo = await getRoleOnlineInfo(roleId);
|
||||
if(hisOnlineInfo.isOnline) {
|
||||
let key = 'serverId_' + serverId + 'guildCode_' + code;
|
||||
let value = roleId+ '|' + hisOnlineInfo.sid;
|
||||
await saddAsync(key, [value]);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 给当前正在挑战的玩家下发血量同步信息
|
||||
* @param code
|
||||
@@ -194,10 +196,9 @@ export async function pushBossHpMessage(code: string, serverId:number, bossHp:nu
|
||||
* @param battleCode
|
||||
*/
|
||||
export async function checkBossBattleMemberExists(code: string, serverId:number, roleId: string, battleCode:string ) {
|
||||
let loginKey = redisSidKey(roleId);
|
||||
let sid = await getRedis(loginKey);
|
||||
let hisOnlineInfo = await getRoleOnlineInfo(roleId);
|
||||
let key = 'serverId_' + serverId + 'guildCode_' + code ;
|
||||
let value = roleId+ '|' + sid;
|
||||
let value = roleId+ '|' + hisOnlineInfo.sid;
|
||||
let flag = await sismemberAsync(key, value);
|
||||
if (!flag) {
|
||||
const battleRecord = await BattleRecordModel.getBattleRecordByCode(battleCode, true);
|
||||
|
||||
Reference in New Issue
Block a user