public DatabaseController(MasterController masterController)
        {
            this.mySqlDB          = new MySqlDB();
            this.masterController = masterController;
            this.employeeMapper   = new EmployeeMapper(mySqlDB);

            this.userMapper       = new UserMapper(mySqlDB);
            this.loginTrailMapper = new LoginTrailMapper(mySqlDB);
            this.productMapper    = new ProductMapper(mySqlDB);
            this.inventoryMapper  = new InventoryMapper(mySqlDB);

            this.productInventory     = new ProductInventory(mySqlDB);
            this.invoiceMapper        = new InvoiceMapper(mySqlDB);
            this.productInvoiceMapper = new ProductInvoiceMapper(mySqlDB);
            this.transactionResult    = new TransactionResult(mySqlDB);

            this.purchasedProductMapper  = new PurchasedProductMapper(mySqlDB);
            this.todaySalesMapper        = new TodaySalesMapper(mySqlDB);
            this.dailySalesReportMapper  = new DailySalesReportMapper(mySqlDB);
            this.weeklySalesReportMapper = new WeeklySalesReport(mySqlDB);

            this.monthlySalesReportMapper = new MonthlySaleReportMapper(mySqlDB);
            this.categoryMapper           = new CategoryMapper(mySqlDB);
            this.groomingMapper           = new GroomingMapper(mySqlDB);
            this.medicalMapper            = new MedicalMapper(mySqlDB);

            this.gppMapper             = new GroomingPetsizePriceMapper(mySqlDB);
            this.groomingViewMapper    = new GroomingView(mySqlDB);
            this.gppTransactionMapper  = new GppTransactionMapper(mySqlDB);
            this.serviceRenderedMapper = new ServiceRenderedMapper(mySqlDB);

            this.auditTrailMapper       = new AuditTrailMapper(mySqlDB);
            this.auditTrailView         = new AuditTrailView(mySqlDB);
            this.productTransactionView = new ProductTransactionView(mySqlDB);
            this.loginTrailViewMapper   = new LoginTrailViewMapper(mySqlDB);

            this.petsizeMapper            = new PetsizeMapper(mySqlDB);
            this.medicalTransactionMapper = new MedicalTransactionMapper(mySqlDB);
            this.productReturnViewMapper  = new ProductReturnViewMapper(mySqlDB);

            this.customerInformationMapper = new CustomerInformationMapper(mySqlDB);

            // Events hooking
            this.masterController.EmployeeLogin  += masterController_EmployeeLogin;
            this.masterController.EmployeeLogout += masterController_EmployeeLogout;
        }
        public DatabaseController(MasterController masterController)
        {
            this.mySqlDB = new MySqlDB();
            this.masterController = masterController;
            this.employeeMapper = new EmployeeMapper(mySqlDB);

            this.userMapper = new UserMapper(mySqlDB);
            this.loginTrailMapper = new LoginTrailMapper(mySqlDB);
            this.productMapper = new ProductMapper(mySqlDB);
            this.inventoryMapper = new InventoryMapper(mySqlDB);

            this.productInventory = new ProductInventory(mySqlDB);
            this.invoiceMapper = new InvoiceMapper(mySqlDB);
            this.productInvoiceMapper = new ProductInvoiceMapper(mySqlDB);
<<<<<<< HEAD
            this.transactionResult = new TransactionResult(mySqlDB);
=======
            this.receipt = new Receipt(mySqlDB);
>>>>>>> origin/master

            this.purchasedProductMapper = new PurchasedProductMapper(mySqlDB);
            this.todaySalesMapper = new TodaySalesMapper(mySqlDB);
            this.dailySalesReportMapper = new DailySalesReportMapper(mySqlDB);
            this.weeklySalesReportMapper = new WeeklySalesReport(mySqlDB);

            this.monthlySalesReportMapper = new MonthlySaleReportMapper(mySqlDB);
            this.categoryMapper = new CategoryMapper(mySqlDB);
            this.groomingMapper = new GroomingMapper(mySqlDB);
            this.medicalMapper = new MedicalMapper(mySqlDB);

            this.gppMapper = new GroomingPetsizePriceMapper(mySqlDB);
            this.groomingViewMapper = new GroomingView(mySqlDB);
            this.gppTransactionMapper = new GppTransactionMapper(mySqlDB);
            this.serviceRenderedMapper = new ServiceRenderedMapper(mySqlDB);

            this.auditTrailMapper = new AuditTrailMapper(mySqlDB);
            this.auditTrailView = new AuditTrailView(mySqlDB);
            this.productTransactionView = new ProductTransactionView(mySqlDB);
            this.loginTrailViewMapper = new LoginTrailViewMapper(mySqlDB);

            this.petsizeMapper = new PetsizeMapper(mySqlDB);
            this.medicalTransactionMapper = new MedicalTransactionMapper(mySqlDB);
            this.productReturnViewMapper = new ProductReturnViewMapper(mySqlDB);

            this.customerInformationMapper = new CustomerInformationMapper(mySqlDB);

            // Events hooking
            this.masterController.EmployeeLogin += masterController_EmployeeLogin;
            this.masterController.EmployeeLogout += masterController_EmployeeLogout;
        }