public TransactionReadResult GetReadResult(IFormFile formFile, SupportedFileFormat fileFormat) { if (fileFormat != SupportedFileFormat.Csv) { return(_successor?.GetReadResult(formFile, fileFormat)); } var csvRecords = _csvFileReader.ReadRecords <CsvTransaction>(formFile); var transactionModels = _mapper.Map <List <TransactionModel> >(csvRecords); var result = _transactionValidator.GetValidatedReadResult(transactionModels); if (result.ValidationResult.HasErrors) { return(result); } result.Transactions.AddRange(transactionModels); return(result); }
public TransactionReadResult GetReadResult(IFormFile formFile, SupportedFileFormat fileFormat) { if (fileFormat != SupportedFileFormat.Xml) { return(_successor?.GetReadResult(formFile, fileFormat)); } var transactionXml = _xmlFileReader.ReadXml <XmlTransactionRoot>(formFile); var transactionModels = _mapper.Map <List <TransactionModel> >(transactionXml?.Transactions); var result = _transactionValidator.GetValidatedReadResult(transactionModels); if (result.ValidationResult.HasErrors) { return(result); } result.Transactions.AddRange(transactionModels); return(result); }