private void NewButton_OnClick(object sender, RoutedEventArgs e) { SelectedTemplate = new SheetTemplate(); DialogResult = true; Close(); }
public static SheetTemplateModel GetModel(SheetTemplate o, bool loadFields = false, bool loadSheets = false, bool loadSheetFields = false) => new SheetTemplateModel { Id = o.Id, Name = o.Name, Fields = loadFields ? o.SheetTemplateFields.ToDictionary(t => t.Id, t => GetModel(t)) : null, Sheets = loadSheets ? o.Sheets.Select(t => GetModel(t, loadSheetFields)).ToList() : null };
private void CreateField(ScribsDbContext db, SheetTemplate template, SheetTemplateFieldModel fieldModel) { var field = SheetTemplateField.Factory.CreateInstance(db); field.Label = fieldModel.Label; field.Index = fieldModel.Index; template.SheetTemplateFields.Add(field); }
private void OpenButton_OnClick(object sender, RoutedEventArgs e) { TemplateMetadata data; if (sender is Button button) { data = button.DataContext as TemplateMetadata; } else { data = TemplateList.SelectedItem as TemplateMetadata; } SelectedTemplate = data?.EntireTemplate; DialogResult = true; Close(); }
public void CreateHeaderErrorSheet_WhenNotAlreadyExists_ShouldCreateWithExpectedFormatting() { using (ExcelPackage excelPackage = new ExcelPackage()) { // Arrange List <Tuple <string, Color> > expectedColors = new List <Tuple <string, Color> > { new Tuple <string, Color>("Data type mismatch", Color.FromArgb(255, 138, 80)), new Tuple <string, Color>("Max. or Min. value exceeded", Color.FromArgb(255, 217, 102)), new Tuple <string, Color>("Provider ID value missing", Color.FromArgb(255, 255, 114)), new Tuple <string, Color>("Duplicate entries in the provider ID column", Color.FromArgb(122, 124, 255)), new Tuple <string, Color>("Provider ID does not exist in the current funding stream provider", Color.FromArgb(255, 178, 255)) }; // Act SheetTemplate sheetTemplateCreated = ErrorSheetTemplateCreator.CreateHeaderErrorSheet(excelPackage); ExcelWorksheet templateWorkSheet = sheetTemplateCreated.ExcelWorksheet; DatasetUploadCellReference startingCellReference = sheetTemplateCreated.StartingCell; // Assert ExcelRange headerCell = templateWorkSheet.Cells[1, 1]; headerCell.Value.Should().Be("Cell level error key"); int firstColumn = 1; int errorColoringStartRow = 2; for (int row = errorColoringStartRow, index = 0; row < errorColoringStartRow + expectedColors.Count; row++, index++) { Tuple <string, Color> expectedColor = expectedColors[index]; ExcelRange cell = templateWorkSheet.Cells[row, firstColumn]; cell.Style.Fill.BackgroundColor.Rgb.Should().BeEquivalentTo(ToAsciRgbRepresentation(expectedColor.Item2)); } int fieldsMissingTextRow = expectedColors.Count + errorColoringStartRow + 2; ExcelRange fieldsMissingCell = templateWorkSheet.Cells[fieldsMissingTextRow, firstColumn]; fieldsMissingCell.Value.Should().Be( "Data schema fields missing from first sheet of Excel file to be uploaded"); startingCellReference.ColumnIndex.Should().Be(firstColumn); startingCellReference.RowIndex.Should().Be(fieldsMissingTextRow + 1); } }
public void CreateHeaderErrorSheet_WhenAlreadyExists_ShouldOverwriteSheet() { using (ExcelPackage excelPackage = new ExcelPackage()) { // Arrange string valueToCheckWhetherChanged = "ChangedValue"; SheetTemplate sheetTemplateCreated = ErrorSheetTemplateCreator.CreateHeaderErrorSheet(excelPackage); string worksheetName = sheetTemplateCreated.ExcelWorksheet.Name; ExcelWorksheet workSheetJustAdded = excelPackage.Workbook.Worksheets[worksheetName]; workSheetJustAdded.Cells[1, 1].Value = valueToCheckWhetherChanged; workSheetJustAdded.Cells[1, 1].Value.Should().Be(valueToCheckWhetherChanged); // Act ErrorSheetTemplateCreator.CreateHeaderErrorSheet(excelPackage); ExcelWorksheet sheetOverwritten = excelPackage.Workbook.Worksheets[worksheetName]; // Assert sheetOverwritten.Cells[1, 1].Value.Should().NotBe(valueToCheckWhetherChanged); } }