public StoreDocumentResponse ImportData([FromBody] StoreDocumentRequest request) { try { return(_exportService.Import(request)); } catch (Exception ex) { _logger.LogError(ex.Message); } return(null); }
public StoreDocumentResponse Import(StoreDocumentRequest request) { List <AccountDto> parsed = null; try { parsed = ParseAdminSupplementaryDataFile(request); } catch (Exception) { throw new Exception("Αδύνατη η επεξεργασία του αρχείου."); } _baseService.FilldDatabase(parsed); return(new StoreDocumentResponse() { WarningMessages = new List <string>() }); }
private List <AccountDto> ParseAdminSupplementaryDataFile(StoreDocumentRequest request) { List <AccountDto> result = new List <AccountDto>() { }; using (var stream = new System.IO.MemoryStream(request.Data)) using (var doc = SpreadsheetDocument.Open(stream, false)) { IEnumerable <Sheet> sheets = doc.WorkbookPart.Workbook.Descendants <Sheet>(); int accountIndex = ParseFirstSheetData(doc, GetSheetDataBySheetByIndex(doc, sheets, 0)); for (int i = 1; i <= accountIndex; i++) { result.Add(ParseAccountSheetData(doc, GetSheetDataBySheetByIndex(doc, sheets, i))); } } return(result); }