Implemented program
This commit is contained in:
parent
d0c4877369
commit
7b322690b7
1 changed files with 32 additions and 7 deletions
|
|
@ -56,10 +56,20 @@ static void WriteRule(string text)
|
|||
|
||||
static IEnumerable<Teacher> LoadData(bool realData)
|
||||
{
|
||||
// TODO
|
||||
// ITeacherDataImporter importer ...
|
||||
// files: "Data/teachers.csv" & "Data/teachers-with-business-card.csv"
|
||||
return null!;
|
||||
string generalDataFilePath = "Data/teachers.csv";
|
||||
string businessCardDataFilePath = "Data/teachers-with-business-card.csv";
|
||||
|
||||
if (!File.Exists(generalDataFilePath))
|
||||
{
|
||||
AnsiConsole.MarkupLine($"[red]Error:[/] File '{generalDataFilePath}' not found");
|
||||
return [];
|
||||
}
|
||||
|
||||
ITeacherDataImporter importer = realData
|
||||
? new TeacherDataCsvImporter(generalDataFilePath, businessCardDataFilePath)
|
||||
: new TeacherDataFakeImporter();
|
||||
|
||||
return importer.LoadTeacherData();
|
||||
}
|
||||
|
||||
static Task DisplayFakeProgress()
|
||||
|
|
@ -90,7 +100,15 @@ static void PrintStatistics(IReadOnlyCollection<Teacher> teachers)
|
|||
var hasBusinessCard = 0;
|
||||
foreach (var teacher in teachers)
|
||||
{
|
||||
// TODO
|
||||
if (teacher.ConsultingHour != null)
|
||||
{
|
||||
hasConsultingHours++;
|
||||
}
|
||||
|
||||
if (teacher is TeacherWithBusinessCard)
|
||||
{
|
||||
hasBusinessCard++;
|
||||
}
|
||||
}
|
||||
|
||||
double total = teachers.Count;
|
||||
|
|
@ -130,8 +148,15 @@ static SortOrder AskForSortOrder()
|
|||
|
||||
static ExportFormat AskForExportFormat()
|
||||
{
|
||||
// TODO (similar to AskForDataToUse)
|
||||
return default;
|
||||
const string Csv = "Csv";
|
||||
const string Html = "Html";
|
||||
string dataToUse = AnsiConsole.Prompt(new SelectionPrompt<string>()
|
||||
.Title("Do you want to load [blue]real[/] or [blue]sample[/] data?")
|
||||
.AddChoices(Csv, Html));
|
||||
|
||||
AnsiConsole.MarkupLine($"Selected: [green]{dataToUse}[/]");
|
||||
|
||||
return dataToUse == Csv ? ExportFormat.Csv : ExportFormat.Html;
|
||||
}
|
||||
|
||||
static bool AskForDataToUse()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue