private PersonReport GetPersonReport(PersonWorkMonth personWorkMonth) { var tasksReport = new List<TaskReport>(); foreach (var day in personWorkMonth.WorkDays) { foreach (var task in day.Tasks) { var reportTask = new TaskReport { Task = task, WorkingHours = task.Hours.Value, Date = day.Date }; tasksReport.Add(reportTask); } } var personWorkDayReport = new PersonReport { Person = personWorkMonth.Person, ReportTasks = tasksReport }; return personWorkDayReport; }
private void WriteRow(Person person, TaskReport taskReport) { string firstName = person.FirstName; string lastName = person.LastName; string tasksString = taskReport.Task.Name; string dateString = taskReport.Date.ToString(DateFormat); string timeString = Convert.ToDecimal(taskReport.WorkingHours.TotalHours).ToString(CultureInfo.InvariantCulture); string rowString = String.Format(RowTemplate, lastName, firstName, tasksString, dateString, timeString); _binWriter.WriteLine(rowString); }