Create team form is ready (nearly)

This commit is contained in:
2020-04-02 23:22:00 +02:00
parent 9d80089a23
commit eecd527e69
7 changed files with 132 additions and 2 deletions

View File

@ -61,7 +61,38 @@ namespace TrackerLibrary.DataAccess.TextHelpers
return output;
}
public static void SaveToPrizeFile(this List<PrizeModel> models, string fileName)
public static List<TeamModel> ConvertToTeamModels(this List<string> lines, string peopleFileName)
{
// id, team name,list of ids separated by pipe
// 3,Start Team, 1|4
List<TeamModel> output = new List<TeamModel>();
List<PersonModel> people = peopleFileName.FullFilePath().LoadFile().ConvertToPersonModels();
foreach (string line in lines)
{
string[] cols = line.Split(',');
TeamModel t = new TeamModel();
t.Id = int.Parse(cols[0]);
t.TeamName = cols[1];
string[] personIds = cols[2].Split('|');
foreach(string id in personIds)
{
t.TeamMembers.Add(people.Where(x => x.Id == int.Parse(id)).First());
}
output.Add(t);
}
return output;
}
public static void SaveToPrizeFile(this List<PrizeModel> models, string fileName)
{
List<string> lines = new List<string>();
@ -83,5 +114,32 @@ namespace TrackerLibrary.DataAccess.TextHelpers
File.WriteAllLines(fileName.FullFilePath(), lines);
}
public static void SaveToTeamFile(this List<TeamModel> models, string fileName)
{
List<string> lines = new List<string>();
foreach(TeamModel t in models)
{
lines.Add($"{t.Id},{t.TeamName},{ConvertPeopleListToString(t.TeamMembers)}");
}
File.WriteAllLines(fileName.FullFilePath(), lines);
}
private static string ConvertPeopleListToString(List<PersonModel> people)
{
string output = "";
if (people.Count==0)
{
return "";
}
foreach(PersonModel p in people)
{
output += $"{p.Id}|";
}
output = output.Substring(0, output.Length - 1);
return output;
}
}
}