Exemplo n.º 1
0
        public MainWindow()
        {
            InitializeComponent();
            DataContext = this;

            heatSupplierRepository = new HeatSupplierRepository(db);
            buildingRepository = new BuildingRepository(db);
            reportRepository = new ReportRepository(db);
            normativeCalculationRepository = new NormativeCalculationRepository(db);
            thermometerReadingRepository = new ThermometerReadingRepository(db);
            contractConsumprionRepository = new ContractComsumptionRepository(db);
            clearingRepository = new ClearingRepository(db);
            variablesRepository = new BuildingMonthVariablesRepository(db);

            heatSupplierViewModel = new HeatSupplierViewModel(heatSupplierRepository);
            buildingViewModel = new BuildingViewModel(buildingRepository);
            createReportViewModel = new CreateReportViewModel(reportRepository);
            normativeAndProjectModel = new NormativeAndProjectModel(normativeCalculationRepository, new StandartCalculator(),
                                                               contractConsumprionRepository, new ContractCalculator(),
                                                               variablesRepository);
            //normativeCalculationViewModel = new NormativeCalculationViewModel(normativeCalculationRepository, new StandartCalculator());
            thermometerReadingViewModel = new ThermometersReaderViewModel(thermometerReadingRepository);
            contractConsumptionViewModel = new ContractConsumptionViewModel(contractConsumprionRepository, new ContractCalculator());

            clearinViewModel = new ClearingViewModel(clearingRepository, new TotalCalculation());

            _reportViewer.Load += ReportViewerLoad;
        }
        public ClearingViewModel(IClearingRepository clearingRepository, ITotalCalculator totalCalculator)
        {
            this.clearingRepository = clearingRepository;
            this.totalCalculator = totalCalculator;

            Buildings = new ObservableCollection<Building>(clearingRepository.GetBuildings());
            DateTimeIntervals = new ObservableCollection<DateTimeInterval>(clearingRepository.GetDateTimeIntervals());
            Clearings = new ObservableCollection<Clearing>(clearingRepository.GetClearings());

            view = new ClearingView(){DataContext = this};
        }