public GetMicrosoftLearnContributorCount(AdvocateService advocateService, BlobStorageService blobStorageService, IGitHubApiStatusService gitHubApiStatusService, GitHubGraphQLApiService gitHubGraphQLApiService) { _advocateService = advocateService; _blobStorageService = blobStorageService; _gitHubApiStatusService = gitHubApiStatusService; _gitHubGraphQLApiService = gitHubGraphQLApiService; }
public IndexModel(ILogger <IndexModel> logger, OptOutDatabase optOutDatabase, AdvocateService advocateService, GraphServiceClient graphServiceClient) { _logger = logger; _optOutDatabase = optOutDatabase; _advocateService = advocateService; _graphServiceClient = graphServiceClient; }
static async Task <AdovocatesTotalContributionsModel> GetTotalContributions(AdvocateService advocateService, GitHubGraphQLApiService gitHubGraphQLApiService, ILogger log, DateTime from, DateTime to, string?requestedTeam, CancellationToken cancellationToken) { int advocateCount = 0, advocateContributorCount = 0; var teamContributionCount = new SortedDictionary <string, int>(); var currentAdvocates = await advocateService.GetCurrentAdvocates(cancellationToken).ConfigureAwait(false); foreach (var advocate in currentAdvocates) { if (requestedTeam is not null && advocate.Team != requestedTeam) { continue; } log.LogInformation($"Found {advocate.Name}"); advocateCount++; var microsoftDocsContributions = await gitHubGraphQLApiService.GetMicrosoftDocsContributionsCollection(advocate.GitHubUsername, from, to).ConfigureAwait(false); log.LogInformation($"Team: {advocate.Team}"); if (!teamContributionCount.ContainsKey(advocate.Team)) { teamContributionCount.Add(advocate.Team, 0); } if (microsoftDocsContributions.TotalPullRequestContributions + microsoftDocsContributions.TotalPullRequestReviewContributions + microsoftDocsContributions.TotalCommitContributions > 0) { log.LogInformation($"Total Contributions: {microsoftDocsContributions.TotalContributions}"); advocateContributorCount++; teamContributionCount[advocate.Team]++; } } return(new AdovocatesTotalContributionsModel(advocateCount, advocateContributorCount, teamContributionCount)); }
public GetAdvocatesFunction(AdvocateService advocateService, OptOutDatabase optOutDatabase) { _optOutDatabase = optOutDatabase; _advocateService = advocateService; }