public async Task LeagueRankedSub([Remainder][Summary("Summoner name")] string summonerName) { RiotApiResponseSummonerModel summoner = await _apiRequest.GetSummoner(summonerName); if (summoner.Name == null) { await ReplyAsync(summonerName + " is not a summonername"); return; } //using statement disposes of the database when its finished using (var db = new SummonerContext()) { //Check if it exists if (db.SummonerModels.Any(s => s.SummonerName == summonerName)) { await ReplyAsync(summonerName + " is already subscribed"); } else { db.SummonerModels.Add(new SummonerModel { SummonerName = summonerName }); db.SaveChanges(); await ReplyAsync(summonerName + " is now subscribed"); } } }
public async Task GetSumLvlAndRank([Remainder][Summary("Summoner name")] string summonerName) { RiotApiResponseSummonerModel summoner = await _apiRequest.GetSummoner(summonerName); RiotApiResponseRankModel[] ranked = await _apiRequest.GetSummonerRank(summonerName); /*Because tha api is random in wich ranked que json (Flex or Solo) is sent first * we need to find the one where queueType is solo. Noone cares about flex*/ if (ranked.FirstOrDefault(x => x.QueueType == QueueTypeModel.Solo5v5) is RiotApiResponseRankModel summonerRanked) { await ReplyAsync($"{summoner.Name} is level {summoner.SummonerLevel} and is {summonerRanked.Tier} {summonerRanked.Rank}"); } else { await ReplyAsync($"{summoner.Name} is level {summoner.SummonerLevel} but has no rank"); } }