using System; using System.Threading.Tasks; using WotBlitzStatisticsPro.Common.Model; using WotBlitzStatisticsPro.Logic; namespace WotBlitzStatisticsPro.GraphQl.Query { public class WotBlitzStatisticsQuery { // 571050560 - mboga Eu // 90277267 - Mboga Ru private readonly IWargamingSearch _wargamingSearcher; private readonly IWargamingAccounts _wargamingAccounts; public WotBlitzStatisticsQuery(IWargamingSearch wargamingSearcher, IWargamingAccounts wargamingAccounts) { _wargamingSearcher = wargamingSearcher; _wargamingAccounts = wargamingAccounts; } //public Task GetPlayerInfo(long accountId) //{ // return _wargamingSearcher.GetPlayerAccountInfo(accountId); //} /// /// Finds Wargaming accounts by nick /// /// Search string. /// Wargaming Realm. /// Language for the output data. /// public Task FindAccounts( string accountNick, RealmType? realmType, RequestLanguage? language) { return _wargamingSearcher.FindAccounts(accountNick, realmType ?? RealmType.Ru, language ?? RequestLanguage.En); } /// /// Finds clans by search string /// /// Search string. /// Wargaming Realm. /// Language for the output data. /// public Task FindClans( string searchString, RealmType? realmType, RequestLanguage? language) { return _wargamingSearcher.FindClans(searchString, realmType ?? RealmType.Ru, language ?? RequestLanguage.En); } /// /// Gathers all account information /// /// Account region /// AccountId /// Request language public Task AccountInfo( long accountId, RealmType? realmType, RequestLanguage? requestLanguage ) { return _wargamingAccounts.GatherAccountInformation(realmType ?? RealmType.Ru, accountId, requestLanguage ?? RequestLanguage.En); } /// /// Account statistics history for period since "startDate" /// /// AccountId /// Date from history started /// Account region /// Request language /// public Task AccountInfoHistory( long accountId, DateTime startDate, RealmType? realmType, RequestLanguage? requestLanguage) { return _wargamingAccounts.GetAccountInfoHistory(realmType ?? RealmType.Ru, accountId, startDate, requestLanguage ?? RequestLanguage.En); } } }