Example #1
0
        public IActionResult GetExcel(DateTime?dateFilter, string name)
        {
            var books = _booksRepository.QueryAll();

            if (dateFilter != null)
            {
                books = books.Where(c => c.PublicationDate == dateFilter);
            }

            if (!string.IsNullOrEmpty(name))
            {
                books = books.Where(c => c.Name == name);
            }


            if (!books.Any())
            {
                return(BadRequest("Not found any books by given filter"));
            }

            var excelBytes = _excelExportService.ExportToExcel(books);

            //Работает с любым классом
            //var test = new list<swaggeroptions>() { new swaggeroptions { description = "descr1", jsonroute = "r1", uiendpoint = "ui1" }, new swaggeroptions { description = "descr2", jsonroute = "r2", uiendpoint = "ui2" } };
            //var excelbytes = _excelexportservice.exporttoexcel(test);

            return(File(excelBytes, "application/octet-stream", "books.xls"));
        }
Example #2
0
        public IActionResult ExportProducts()
        {
            var products = _productsServiceClient.GetAllProducts();
            var titles   = new List <string[]> {
                new string[] { "Id", "Name", "PhotoUrl", "Price", "Last Modified" }
            };
            var excelFile = _excelExportService.ExportToExcel(products, "Products", titles);
            var fileName  = $"Suitsupply Products - { DateTime.UtcNow.ToString("s") }.xlsx";

            return(File(excelFile, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", fileName));
        }
Example #3
0
        /// <summary>
        /// Exports the average test results.
        /// </summary>
        /// <param name="testResults">The test results.</param>
        /// <param name="aStarTestResults">The A* test results</param>
        /// <param name="commonInfoDataTable">The common information data table.</param>
        /// <param name="outputDirectory">The output directory.</param>
        private void ExportAverageTestResults(List <HarmonySearchAverageTestResult> testResults,
                                              AverageTestResult aStarTestResults, DataTable commonInfoDataTable, string outputDirectory)
        {
            // Group Harmony Search results by type
            var groupedTestResults = TestResultUtils.GroupTestResults(testResults);

            // Get Harmony Search results data tables
            var resultDataTables = new Dictionary <string, List <DataTable> >();

            foreach (var(typeName, groupedResults) in groupedTestResults)
            {
                var groupDataTables = new List <DataTable>();

                foreach (var(groupKey, groupResults) in groupedResults)
                {
                    var dataTable = DataTableUtils.GetHarmonySearchTestResultsDataTable(groupKey, groupResults, typeName);
                    groupDataTables.Add(dataTable);
                }

                resultDataTables[typeName] = groupDataTables;
            }

            var comparisonResults = testResults.Where(r =>
                                                      r.HarmonyGeneratorType == HarmonyGeneratorType.RandomDirectedStop)
                                    .Cast <AverageTestResult>()
                                    .ToList();

            comparisonResults.Add(aStarTestResults);

            // Add A* result data tables
            var aStarResultDataTable = DataTableUtils.GetTestResultsDataTable("Comparison", comparisonResults);

            resultDataTables["AStar"] = new List <DataTable> {
                aStarResultDataTable
            };

            // Export average result to Excel
            var filePath = Path.Combine(outputDirectory, "AverageTestResults");

            _excelExportService.ExportToExcel(commonInfoDataTable, resultDataTables, filePath);
        }