public void ImportDataFromZipedExcel(TelecommunicationDbContext telecommunicationDbContext, string sourcePath, string destinationPath = SampleContractsDataExcelFolderZipPathTempDestination) { ZipExtractor zipExtractor = new ZipExtractor(); zipExtractor.Extract(sourcePath, destinationPath); this.ImportContractsFromExcelFilesInFolder(telecommunicationDbContext, destinationPath); }
public void ImportContractsFromXml(TelecommunicationDbContext telecommunicationDbContext, string xmlDataPath) { XmlImporter xmlDataImporter = new XmlImporter(); ICollection<Contract> importedContractsFromXml = xmlDataImporter.ImportContractsDataFromFile(xmlDataPath); foreach (var contract in importedContractsFromXml) { telecommunicationDbContext.Contracts.Add(contract); } telecommunicationDbContext.SaveChanges(); }
public void ImportContractsFromExcelFilesInFolder(TelecommunicationDbContext telecommunicationDbContext, string excelFolderDataPath) { ExcelImporter excelDataImporter = new ExcelImporter(); ICollection<Contract> importedContractsFromExcel = excelDataImporter.ImportContractsDataFromDirectory(excelFolderDataPath); foreach (var contract in importedContractsFromExcel) { telecommunicationDbContext.Contracts.Add(contract); } telecommunicationDbContext.SaveChanges(); }
public void ImportDataFromMongo(TelecommunicationDbContext telecommunicationDbContext, ITelecommunicationProviderMongoDbContext telecommunicationMongoDbContext) { var mongoData = new TelecommunicationProviderMongoDb(telecommunicationMongoDbContext); var usersCollection = mongoData.User.FindAll(); var telephonesCollection = mongoData.TelephoneNumber.FindAll(); var addressCollection = mongoData.Address.FindAll(); foreach (var item in usersCollection) { var user = new User { FirstName = item.FirstName, LastName = item.LastName, Ssn = item.Ssn, Type = item.Type, AddressId = item.AddressId }; telecommunicationDbContext.Users.Add(user); telecommunicationDbContext.SaveChanges(); } foreach (var item in telephonesCollection) { var phone = new TelephoneNumber { Number = item.Number, UserId = item.UserId }; telecommunicationDbContext.TelephoneNumbers.Add(phone); telecommunicationDbContext.SaveChanges(); } foreach (var item in addressCollection) { var address = new Address { Name = item.Name, Number = item.Number, City = item.City, Country = item.Country, ZipCode = item.ZipCode }; telecommunicationDbContext.Adresses.Add(address); telecommunicationDbContext.SaveChanges(); } Console.WriteLine("Import from Mongo is ready"); }
public static void Main() { Database.SetInitializer(new MigrateDatabaseToLatestVersion<TelecommunicationDbContext, Configuration>()); var db = new TelecommunicationDbContext(); var databaseMongoDbContext = new TelecommunicationProviderMongoDbContext(); var excelManipulator = new ExcelManipulator(); var xmlManipulator = new XmlManipulator(); var mongoManipulator = new MongoManipulator(); var pdfManipulator = new PdfManipulator(); var address = new Address { Name = "lalalla", Number = 23, City = "Sofiq", Country = "Bulgaria", ZipCode = "1000" }; Console.WriteLine("command /create database/ to create database"); Console.WriteLine("command /xml import/ to import contracts from xml"); Console.WriteLine("command /excel import/ to import contracts from excel"); Console.WriteLine("command /mongo import/ to import users, addresses and packages from mongo"); Console.WriteLine("command /zipped excel files/ to import contracts from excel "); Console.WriteLine("command /xml export/ to export xml reports"); Console.WriteLine("command /create pdf contract/ to export pdf report for contracts for a date"); Console.WriteLine("command /create pdf user/ to export pdf reports for all users"); Console.WriteLine("command /export json/ to export pdf reports"); Console.WriteLine("command /import mysql/ to export pdf reports"); Console.WriteLine("command /export excel/ to export excel reports"); var command = string.Empty; while ((command = Console.ReadLine()) != "exit") { switch (command) { case "create database": { var dataBase = new DataBaseCreator(); dataBase.CreateDatabase(db); Console.WriteLine("Database created"); break; } case "xml import": { xmlManipulator.ImportContractsFromXml(db, SampleContractsDataXmlFilePath); break; } case "excel import": { excelManipulator.ImportContractsFromExcelFilesInFolder( db, SampleContractsDataExcelFolderPath); break; } case "mongo import": { mongoManipulator.ImportDataFromMongo(db, databaseMongoDbContext); break; } case "zipped excel files": { excelManipulator.ImportDataFromZipedExcel(db, SampleContractsDataExcelFolderZipPathSource); break; } case "xml export": { var xml = new XmlManipulator(); xml.ExportReportsToXml(db, @"../../../../OutputData/XML/Reports/"); break; } case "create pdf contract": { Console.Write("Please enter for which date you need the report (mm/dd/year): "); DateTime date = Convert.ToDateTime(Console.ReadLine()); pdfManipulator.CreatePdfContractReport(db, PdfDataFileNameContract, date); break; } case "create pdf user": { pdfManipulator.CreatePdfUserReport(db, PdfDataFileNameUsers); break; } case "export json": { var json = new JsonReportGenerator(); var listOfContracts = db.Contracts.ToList(); json.ExportContracts(listOfContracts, @"..\..\..\..\OutputData\JsonReports"); break; } case "import mysql": { var sqlManipulator = new MySqlManipulator(); sqlManipulator.ImportDataToMySql(db.Contracts.ToList()); break; } case "export excel": { ComposeDataFromSQLiteAndMySqlAndExportToExcel(); break; } default: Console.WriteLine("Invalid command"); break; } } }
public void ExportReportsToXml(TelecommunicationDbContext telecommunicationDbContext, string filePath) { CorrectXmlReport exp = new CorrectXmlReport(); exp.GenerateXmlReport(filePath, telecommunicationDbContext); }
public void CreatePdfUserReport(TelecommunicationDbContext telecommunicationDbContext, string fileName) { var pdfReport = new PdfReportGenerator(); pdfReport.CreateUserReport(telecommunicationDbContext.Users, fileName); }
public void CreatePdfContractReport(TelecommunicationDbContext telecommunicationDbContext, string fileName, DateTime date) { var pdfReport = new PdfReportGenerator(); pdfReport.CreateContractReport(telecommunicationDbContext.Contracts, fileName, date); }
public void CreateDatabase(TelecommunicationDbContext context) { context.Adresses.Add( new Address { Name = "Cvetna Gradina", Number = 32, City = "Sofiq", Country = "Bulgaria", ZipCode = "1000" }); context.Adresses.Add( new Address { Name = "Rakovska", Number = 32, City = "Sofiq", Country = "Bulgaria", ZipCode = "1000" }); context.Adresses.Add( new Address { Name = "Aleksandar Malinov", Number = 32, City = "Sofiq", Country = "Bulgaria", ZipCode = "1000" }); context.Adresses.Add( new Address { Name = "Bogatitsa", Number = 45, City = "Sofiq", Country = "Bulgaria", ZipCode = "1000" }); context.Adresses.Add( new Address { Name = "Kliment Ohridski", Number = 62, City = "Sofiq", Country = "Bulgaria", ZipCode = "1000" }); context.Adresses.Add( new Address { Name = "Cherny vryh", Number = 32, City = "Sofiq", Country = "Bulgaria", ZipCode = "1000" }); context.Adresses.Add( new Address { Name = "Arsenalski blvd", Number = 32, City = "Sofiq", Country = "Bulgaria", ZipCode = "1000" }); context.SaveChanges(); context.Users.Add( new User { LastName = "Stoycheva", FirstName = "Aleksandra", AddressId = 1, Ssn = "123467891236", Type = "Gold User" }); context.Users.Add( new User { LastName = "Dragneva", FirstName = "Pavlina", AddressId = 2, Ssn = "123467691236", Type = "Gold User" }); context.Users.Add(new User { LastName = "Madjarova", FirstName = "Velimira", AddressId = 3, Ssn = "123467861236", Type = "Gold User" }); context.Users.Add( new User { LastName = "Pesho", FirstName = "Peshov", AddressId = 1, Ssn = "123467881236", Type = "Gold User" }); context.Users.Add( new User { LastName = "Doncho", FirstName = "Minkov", AddressId = 4, Ssn = "127467691236", Type = "Gold User" }); context.Users.Add(new User { LastName = "Niki", FirstName = "Kostov", AddressId = 3, Ssn = "123467879236", Type = "Gold User" }); context.SaveChanges(); context.Packages.Add(new Package { Name = "A++", Type = "Gold", Price = 32 }); context.Packages.Add(new Package { Name = "B++", Type = "Gold", Price = 35 }); context.Packages.Add(new Package { Name = "A", Type = "Silver", Price = 25 }); context.Packages.Add(new Package { Name = "B", Type = "Silver+", Price = 28 }); context.Packages.Add(new Package { Name = "C++", Type = "Gold", Price = 50 }); context.Packages.Add(new Package { Name = "D++", Type = "Gold", Price = 35 }); context.Packages.Add(new Package { Name = "X", Type = "Silver", Price = 25 }); context.Packages.Add(new Package { Name = "M", Type = "Silver+", Price = 28 }); context.SaveChanges(); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 1, Number = "00359864576326" }); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 2, Number = "00359864566466" }); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 3, Number = "00359864571326" }); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 4, Number = "00359774591326" }); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 5, Number = "00359864556326" }); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 6, Number = "00359864566466" }); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 4, Number = "00359864544326" }); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 1, Number = "00359774521326" }); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 5, Number = "00359456123783" }); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 6, Number = "00359456123782" }); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 4, Number = "00359456123781" }); context.TelephoneNumbers.Add(new TelephoneNumber { UserId = 1, Number = "00359456123789" }); context.SaveChanges(); }