示例#1
0
        public DeliveryPointViewModel GetForCreationDeliveryPointViewModel(Counterparty client)
        {
            var controller = new NomenclatureFixedPriceController(
                new NomenclatureFixedPriceFactory(),
                new WaterFixedPricesGenerator(
                    new NomenclatureRepository(
                        new NomenclatureParametersProvider(
                            new ParametersProvider()))));

            var dpViewModel = new DeliveryPointViewModel(
                new UserRepository(),
                new GtkTabsOpener(),
                new PhoneRepository(),
                new ContactParametersProvider(new ParametersProvider()),
                new CitiesDataLoader(_fiasApiClient),
                new StreetsDataLoader(_fiasApiClient),
                new HousesDataLoader(_fiasApiClient),
                new NomenclatureJournalFactory(),
                controller,
                new DeliveryPointRepository(),
                new DeliveryScheduleSelectorFactory(),
                EntityUoWBuilder.ForCreate(),
                UnitOfWorkFactory.GetDefaultFactory,
                ServicesConfig.CommonServices,
                new RoboAtsCounterpartyJournalFactory(),
                client);

            return(dpViewModel);
        }
        public DeliveryPointViewModel GetForOpenDeliveryPointViewModel(int id)
        {
            var controller = new NomenclatureFixedPriceController(
                new NomenclatureFixedPriceFactory(),
                new WaterFixedPricesGenerator(
                    new NomenclatureRepository(
                        new NomenclatureParametersProvider(
                            new ParametersProvider()))));

            var dpViewModel = new DeliveryPointViewModel(
                new UserRepository(),
                new GtkTabsOpener(),
                new PhoneRepository(),
                ContactParametersProvider.Instance,
                new CitiesDataLoader(OsmWorker.GetOsmService()),
                new StreetsDataLoader(OsmWorker.GetOsmService()),
                new HousesDataLoader(OsmWorker.GetOsmService()),
                new NomenclatureSelectorFactory(),
                controller,
                new DeliveryPointRepository(),
                new DeliveryScheduleSelectorFactory(),
                EntityUoWBuilder.ForOpen(id),
                UnitOfWorkFactory.GetDefaultFactory,
                ServicesConfig.CommonServices);

            return(dpViewModel);
        }