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);
        }