public byte[] GetEmployeeFilteredReport(EmployeeFilteredReportListViewModel request, IList <ExcelTableCell> tableHeaders) { var tableNames = tableHeaders.Where(x => x.IsActive).Select(x => x.Name).ToList(); var tableHelper = new ExcelTableHelper(); var headers = tableHelper.GetTeamsByFiltersReportTableHeaders(); var result = new StringBuilder(); result.Append(string.Join(',', tableNames)); result.AppendLine(); var row = 0; foreach (var assignee in request.Assignees) { bool isSettedAssignee = false; foreach (var activity in assignee.ActivityView.Activities) { foreach (var loggedTime in activity.LoggedTimeView.LoggedTimes) { ++row; foreach (var name in tableNames) { if (name == headers[0].Name) { result.Append($"{row}, "); } else if (name == headers[1].Name) { if (isSettedAssignee) { continue; } result.Append($"{assignee.AssigneeName}, "); isSettedAssignee = true; } else if (name == headers[2].Name) { result.Append($"{activity.ProjectName}, "); } else if (name == headers[3].Name) { result.Append($"{activity.ActivityName}, "); } else if (name == headers[4].Name) { result.Append($"{activity.ActivityStatus}, "); } else if (name == headers[5].Name) { result.Append($"{activity.LoggedTimeView.TotalEstimatedTime}, "); } else if (name == headers[6].Name) { result.Append($"{activity.LoggedTimeView.TotalLoggedTime}, "); } } result.AppendLine(); } } } return(Encoding.Unicode.GetBytes(result.ToString())); }
public byte[] GetEmployeeFilteredReport(EmployeeFilteredReportListViewModel request, IList <PdfTableCell> tableHeaders) { throw new NotImplementedException(); }