using System.Threading.Tasks; using HotChocolate.Types; using WotBlitzStatisticsPro.Common.Model; using WotBlitzStatisticsPro.Logic; namespace WotBlitzStatisticsPro.GraphQl.Query { [ExtendObjectType(Name = "Query")] public class WotBlitzAchievementsQuery { private readonly IWargamingAchievements _achievementsService; public WotBlitzAchievementsQuery(IWargamingAchievements achievementsService) { _achievementsService = achievementsService; } /// /// Returns information about player's achievements /// /// Account region /// AccountId /// Request language public Task AccountMedals( long accountId, RealmType? realmType, RequestLanguage? requestLanguage) { return _achievementsService.GetAccountAchievements(realmType ?? RealmType.Ru, accountId, requestLanguage ?? RequestLanguage.En); } /// /// Returns information about player's tank achievements /// /// Account tank Id /// Account region /// AccountId /// Request language public Task TankMedals( long accountId, long tankId, RealmType? realmType, RequestLanguage? requestLanguage) { return _achievementsService.GetTankAchievements(realmType ?? RealmType.Ru, accountId, tankId, requestLanguage ?? RequestLanguage.En); } } }