public static void CreateAndSaveProductReports(string mongoConnectionString, string jsonFilePath) { using (var context = new SupermarketMSSql.Model.SupermarketReportsEntities()) { var allProductsIds = context.Products.Select(x => x.Productid); foreach (var id in allProductsIds) { ProductReport report = ProductReportsManager.GenerateProductReport(id); ProductReportsManager.SaveToFileSystemAsJson(report, jsonFilePath); MongoDbManager.SaveToMongoDB(report, mongoConnectionString, DatabaseName, CollectionName); } } }
static void Main(string[] args) { Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; MsSqlManager.MigrateDataFromMySqlToMSSql(); Console.WriteLine("Migrated database from mysql to sqlserver."); string zipPath = "../../Sample-Sales-Reports.zip"; string destinationPath = "../../SalesReports"; ZipManager.Unzip(zipPath, destinationPath); Console.WriteLine("Unziped archive..."); ExcelFilesManager.ReadExcelData(destinationPath); Console.WriteLine("Excel data read."); //ZipManager.DeleteTempFiles(destinationPath); //Console.WriteLine("Deleted temp files"); PdfManager.CreateSalesReportPdfFile("../../SalesReports/SalesReport.pdf"); Console.WriteLine("Pdf created"); XmlManager.PrintToXML(); Console.WriteLine("Xml created"); string mongoConnectionString = Settings.Default.MongoDbConnectionString; ProductReportsManager.CreateAndSaveProductReports(mongoConnectionString, "../../"); Console.WriteLine("Products reports saved in mongo and mssql"); string xmlExpenses = "../../expenses.xml"; XmlManager.ReadXmlExpenses(xmlExpenses); var productReports = MongoDbManager.ReadProductsReport(mongoConnectionString, "SupermarketProductReports", "ProductsReports"); SQLiteManager.InsertProductReports(productReports); Console.WriteLine("SQLite populated"); ExcelFilesManager.WriteDataFromSQLite(); Console.WriteLine("Excel file created"); }