public byte[] GetObjectsTable(ObjectsPrintModel model) { using (var ms = new MemoryStream()) { IWorkbook workbook = new XSSFWorkbook(); ISheet excelSheet = workbook.CreateSheet("Лист 1"); AddTable(excelSheet, model.HeadColumns, model.TableColumns); workbook.Write(ms); return(ms.ToArray()); } }
public async Task <FileModel> GetVehiclesFileAsync( ClaimsPrincipal userPrincipal, string plateNumber, string routeName, int?carTypeId, int?projectId, bool?active, int?carBrandId, int?providerId, int?yearRelease, string blockNumber, int?blockTypeId, string sortBy, OrderByEnum orderBy, FileFormatEnum fileFormat) { var userRoutesModel = await _userManager.GetAvailableRoutesModel(userPrincipal); var vehicles = await _objectRepository.FindAllForFileAsync( plateNumber, routeName, carTypeId, projectId, active, userRoutesModel, carBrandId, providerId, yearRelease, blockNumber, blockTypeId, sortBy, orderBy); var printFile = new ObjectsPrintModel(vehicles, userPrincipal.GetRoleName()) { PlateNumber = plateNumber, RouteName = routeName, CarTypeId = carTypeId, ProjectId = projectId, Active = active, CarBrandId = carBrandId, ProviderId = providerId, YearRelease = yearRelease, BlockNumber = blockNumber, BlockTypeId = blockTypeId, }; var result = new FileModel { Name = $"Транспортные средства {DateTime.Now.ToDateTimeString()}", FileFormat = fileFormat }; if (fileFormat == FileFormatEnum.Pdf) { var htmlString = await _htmlBuilder.GetObjectsTable(printFile); result.Bytes = _pdfService.ConvertHtmlToPdf(htmlString); } else if (fileFormat == FileFormatEnum.Xlsx) { result.Bytes = _xlsxBuilder.GetObjectsTable(printFile); } else { throw new NotImplementedException(); } return(result); }
public async Task <string> GetObjectsTable(ObjectsPrintModel model) { var result = await GetHtml("ObjectsPrint", model); return(result); }