public async Task <List <PlayerOnlineModel> > GetPlayerList(int roomId) { var onlineList = new List <PlayerOnlineModel>(); var list = await _db.HashGetAll <PlayerOnlineModel>("onlinelist"); foreach (var online in list) { if (online.Value.RoomId != roomId) { continue; } online.Value.IsOnline = true; onlineList.Add(online.Value); } var offlineList = await _db.HashGetAll <PlayerOnlineModel>("offlinelist"); foreach (var offline in offlineList) { if (offline.Value.RoomId != roomId) { continue; } var online = new PlayerOnlineModel { PlayerId = offline.Value.PlayerId, LastDate = offline.Value.LastDate, Level = offline.Value.Level, PlayerName = offline.Value.PlayerName, RoomId = offline.Value.RoomId, Gender = offline.Value.Gender, Title = offline.Value.Title }; online.IsOnline = false; onlineList.Add(online); } return(onlineList); }
public async Task SetPlayerOnline(PlayerOnlineModel model) { model.LastDate = DateTime.Now; await _db.HashSet("onlinelist", model.PlayerId.ToString(), model); }