protected override void AddDTOToImportList(QuantityImporterDTO quantityImporterDTO, IStartValuesBuildingBlock <IMoleculeStartValue> importTarget, ImportedQuantityDTO dto) { quantityImporterDTO.QuantitDTOs.Add(dto); if (dto.HasWarning()) { quantityImporterDTO.AddToLog(dto.GetWarning()); } quantityImporterDTO.AddToLog(IsNewInsert(dto, importTarget) ? AppConstants.Captions.AddingMoleculeStartValue(dto.Path, dto.ConvertToDisplayUnit(dto.QuantityInBaseUnit), dto.DisplayUnit, dto.IsPresent, dto.Name, dto.NegativeValuesAllowed) : AppConstants.Captions.UpdatingMoleculeStartValue(dto.Path, dto.ConvertToDisplayUnit(dto.QuantityInBaseUnit), dto.DisplayUnit, dto.IsPresent, dto.Name, dto.NegativeValuesAllowed)); }
protected override void AddDTOToImportList(QuantityImporterDTO quantityImporterDTO, TImportTarget importTarget, ImportedQuantityDTO dto) { if (!dto.SkipImport) { quantityImporterDTO.QuantitDTOs.Add(dto); quantityImporterDTO.AddToLog(LogMessageFor(dto, importTarget)); } if (dto.HasWarning()) { quantityImporterDTO.AddToLog(dto.GetWarning()); } }
private QuantityImporterDTO convertTableToQuantityDTOs(DataTable table, TImportTarget buildingBlock) { var importerDTO = new QuantityImporterDTO(); importerDTO.AddToLog(AppConstants.Captions.ConvertingExcelSheetToQuantities(table.TableName)); var rowIndex = 0; foreach (DataRow row in table.Rows) { if (isRowEmpty(table, rowIndex)) { continue; } try { var dto = MapQuantityFromRow(table, table.Rows[rowIndex], rowIndex); ValidateInContext(dto, importerDTO, buildingBlock, row, rowIndex); AddDTOToImportList(importerDTO, buildingBlock, dto); } catch (ImportQuantityDTOsFromDataTablesMapperException e) { importerDTO.AddToLog(e.Message); importerDTO.QuantitDTOs.Clear(); break; } catch (Exception e) { importerDTO.AddToLog($"{AppConstants.Exceptions.FrameworkExceptionOccurred}, {e.Message}, {row.ToNiceString()}"); importerDTO.QuantitDTOs.Clear(); break; } rowIndex++; } return(importerDTO); }