public static EliteStatsResponse ConvertToResponse(this EdsmResponse edsmResponse) { EliteStatsResponse res = new EliteStatsResponse { Progress = edsmResponse.Progress, Ranks = edsmResponse.Ranks, RanksVerbose = edsmResponse.RanksVerbose }; return(res); }
public async Task <GenericResponse <BooleanResponse> > UpdateCache(EdsmResponse edsmResponse, TUserGame userGame) { TEliteStat dbStats = _databaseContext.TEliteStat.FirstOrDefault(s => s.UserGame.Username == userGame.Username); bool newStats = false; if (dbStats == null) { newStats = true; dbStats = new TEliteStat { UserGameId = userGame.Id }; } dbStats.CombatProgress = edsmResponse.Progress.Combat; dbStats.CombatRank = edsmResponse.Ranks.Combat; dbStats.CqcProgress = edsmResponse.Progress.CQC; dbStats.CqcRank = edsmResponse.Ranks.CQC; dbStats.EmpireProgress = edsmResponse.Progress.Empire; dbStats.EmpireRank = edsmResponse.Ranks.Empire; dbStats.ExplorerProgress = edsmResponse.Progress.Explore; dbStats.ExplorerRank = edsmResponse.Ranks.Explore; dbStats.FederationProgress = edsmResponse.Progress.Federation; dbStats.FederationRank = edsmResponse.Ranks.Federation; dbStats.TraderProgress = edsmResponse.Progress.Trade; dbStats.TraderRank = edsmResponse.Ranks.Trade; try { if (newStats) { _databaseContext.TEliteStat.Add(dbStats); } else { _databaseContext.TEliteStat.Update(dbStats); } await _databaseContext.SaveChangesAsync(); return(new GenericResponse <BooleanResponse>(new BooleanResponse { Success = true })); } catch (DbUpdateException e) { return(new GenericResponse <BooleanResponse>("Error while saving in cache", e)); } }
public static EdsmResponse ConvertToEdsmResponse(this TEliteStat eliteDbStats) { if (eliteDbStats == null) { return(null); } EdsmResponse edsmResponse = new EdsmResponse { MsgNum = 100, Progress = new EliteStatsResponseRanks { Combat = eliteDbStats.CombatProgress, CQC = eliteDbStats.CqcProgress, Empire = eliteDbStats.EmpireProgress, Explore = eliteDbStats.ExplorerProgress, Federation = eliteDbStats.FederationProgress, Trade = eliteDbStats.TraderProgress }, Ranks = new EliteStatsResponseRanks { Combat = eliteDbStats.CombatRank, CQC = eliteDbStats.CqcRank, Empire = eliteDbStats.EmpireRank, Explore = eliteDbStats.ExplorerRank, Federation = eliteDbStats.FederationRank, Trade = eliteDbStats.TraderRank }, RanksVerbose = new EliteStatsResponseRanksVerbose { Combat = GetCombatRankVerbose(eliteDbStats.CombatRank), CQC = GetCqcRankVerbose(eliteDbStats.CqcRank), Empire = GetEmpireRankVerbose(eliteDbStats.EmpireRank), Explore = GetExplorationRankVerbose(eliteDbStats.ExplorerRank), Federation = GetFederationRankVerbose(eliteDbStats.FederationRank), Trade = GetTradeRankVerbose(eliteDbStats.TraderRank) } }; return(edsmResponse); }