added printing to standard out functionality

the author who has the highest commits in the repo, the commit count highlighted
in yellow. the second highest commit count is highlighted grey, the third
brown
This commit is contained in:
Wyatt J. Miller 2022-07-31 18:36:00 -04:00
parent 8121e27a8c
commit 30641081a4
2 changed files with 34 additions and 0 deletions

4
DAL/IDataService.cs Normal file
View File

@ -0,0 +1,4 @@
public interface IDataService
{
void WriteAll(SortedList<string, int> dictResults);
}

30
DAL/StdOutDataService.cs Normal file
View File

@ -0,0 +1,30 @@
using Pastel;
public class StdOutDataService : IDataService
{
public StdOutDataService()
{
}
public void WriteAll(SortedList<string, int> dictResults)
{
ConsoleExtensions.Enable();
// TODO: this is the ordered dictionary. replace the sorted list with this variable.
var sortedResults = dictResults.OrderByDescending(d => d.Value).ToList();
System.Console.WriteLine("--- Commit Report ---");
foreach (var i in sortedResults)
{
if (i.Value == sortedResults[0].Value) {
Console.WriteLine($"Author: {i.Key}, Commits: {i.Value.ToString().Pastel("ffd700")}");
} else if (i.Value == sortedResults[1].Value) {
Console.WriteLine($"Author: {i.Key}, Commits: {i.Value.ToString().Pastel("c0c0c0")}");
} else if (i.Value == sortedResults[2].Value) {
Console.WriteLine($"Author: {i.Key}, Commits: {i.Value.ToString().Pastel("f4a460")}");
} else {
Console.WriteLine($"Author: {i.Key}, Commits: {i.Value}");
}
}
}
}