private static void BuildDays(IExcelBuilder excelBuilder, Guid sheetId, ReportDataBuilder reportDataBuilder) { int columnStart = DAYS_COLUMN_START; foreach (var day in reportDataBuilder.Days) { excelBuilder.AddValueToCell(sheetId, new ExcelCell(DAYS_ROW, columnStart), day); columnStart++; } }
private static void BuildPeopleAttendancesList(IExcelBuilder excelBuilder, Guid sheetId, ReportDataBuilder reportDataBuilder) { int orderNo = 1; int rowStart = PEOPLE_ROW_START; foreach (var person in reportDataBuilder.People) { excelBuilder.AddValueToCell(sheetId, new ExcelCell(rowStart, 1), orderNo); excelBuilder.AddValueToCell(sheetId, new ExcelCell(rowStart, 2), person.FullName); excelBuilder.AddValueToCell(sheetId, new ExcelCell(rowStart, 3), person.Year, Color.Tomato); int columnStart = DAYS_COLUMN_START; foreach (var attendance in person.Attendances) { excelBuilder.AddValueToCell(sheetId, new ExcelCell(rowStart, columnStart), attendance ? 1 : 0); columnStart++; } orderNo++; rowStart++; } }
private static void BuildSumPerPerson(IExcelBuilder excelBuilder, Guid sheetId, ReportDataBuilder reportDataBuilder) { excelBuilder.AddValueToCell(sheetId, new ExcelCell(DAYS_ROW + 1, SUM_PER_PERSON_COLUMN), "SUMA", Color.LawnGreen); int rowStart = PEOPLE_ROW_START; foreach (var person in reportDataBuilder.People) { excelBuilder.SumCells(sheetId, new ExcelCell(rowStart, SUM_PER_PERSON_COLUMN), new ExcelCell(rowStart, DAYS_COLUMN_START), new ExcelCell(rowStart, SUM_PER_PERSON_COLUMN - 1)); excelBuilder.SetCellBackground(sheetId, new ExcelCell(rowStart, SUM_PER_PERSON_COLUMN), Color.LawnGreen); rowStart++; } }
private static void BuildSubTitle(IExcelBuilder excelBuilder, Guid sheetId, ReportDataBuilder reportDataBuilder) { excelBuilder.AddValueToCell(sheetId, new ExcelCell(2, 1), reportDataBuilder.SubTitle); excelBuilder.MergeCells(sheetId, new ExcelCell(2, 1), new ExcelCell(2, 35)); excelBuilder.CenterInHorizontal(sheetId, new ExcelCell(2, 1), new ExcelCell(2, 35)); }