public FuelIncomeInvoiceViewModel ( IEntityUoWBuilder uowBuilder, IUnitOfWorkFactory unitOfWorkFactory, IEmployeeService employeeService, INomenclatureSelectorFactory nomenclatureSelectorFactory, ISubdivisionRepository subdivisionRepository, IFuelRepository fuelRepository, ICounterpartyJournalFactory counterpartyJournalFactory, ICommonServices commonServices ) : base(uowBuilder, unitOfWorkFactory, commonServices) { this.employeeService = employeeService; this.nomenclatureSelectorFactory = nomenclatureSelectorFactory ?? throw new ArgumentNullException(nameof(nomenclatureSelectorFactory)); this.subdivisionRepository = subdivisionRepository ?? throw new ArgumentNullException(nameof(subdivisionRepository)); this.fuelRepository = fuelRepository ?? throw new ArgumentNullException(nameof(fuelRepository)); this.counterpartyJournalFactory = counterpartyJournalFactory ?? throw new ArgumentNullException(nameof(counterpartyJournalFactory)); TabName = "Входящая накладная по топливу"; if (CurrentEmployee == null) { AbortOpening("К вашему пользователю не привязан сотрудник, невозможно открыть документ"); } if (uowBuilder.IsNewEntity) { Entity.СreationTime = DateTime.Now; Entity.Author = CurrentEmployee; } FuelBalanceViewModel = new FuelBalanceViewModel(subdivisionRepository, fuelRepository); CreateCommands(); ConfigEntityUpdateSubscribes(); ConfigureEntityPropertyChanges(); UpdateCashSubdivisions(); UpdateBalanceCache(); ValidationContext.ServiceContainer.AddService(typeof(IFuelRepository), fuelRepository); ConfigureEntries(); }
public FuelTransferDocumentViewModel( IEntityUoWBuilder uoWBuilder, IUnitOfWorkFactory unitOfWorkFactory, IEmployeeService employeeService, ISubdivisionRepository subdivisionRepository, IFuelRepository fuelRepository, ICommonServices commonServices, IEmployeeJournalFactory employeeJournalFactory, ICarJournalFactory carJournalFactory, IReportViewOpener reportViewOpener ) : base(uoWBuilder, unitOfWorkFactory, commonServices) { this.employeeService = employeeService ?? throw new ArgumentNullException(nameof(employeeService)); this.subdivisionRepository = subdivisionRepository ?? throw new ArgumentNullException(nameof(subdivisionRepository)); this.fuelRepository = fuelRepository ?? throw new ArgumentNullException(nameof(fuelRepository)); this.employeeJournalFactory = employeeJournalFactory ?? throw new ArgumentNullException(nameof(employeeJournalFactory)); this.carJournalFactory = carJournalFactory ?? throw new ArgumentNullException(nameof(carJournalFactory)); this.reportViewOpener = reportViewOpener ?? throw new ArgumentNullException(nameof(reportViewOpener)); TabName = "Документ перемещения топлива"; if (CurrentEmployee == null) { AbortOpening("К вашему пользователю не привязан сотрудник, невозможно открыть документ"); } ConfigureEntityPropertyChanges(); CreateCommands(); FuelBalanceViewModel = new FuelBalanceViewModel(subdivisionRepository, fuelRepository); UpdateCashSubdivisions(); UpdateFuelTypes(); UpdateBalanceCache(); if (uoWBuilder.IsNewEntity) { Entity.CreationTime = DateTime.Now; Entity.Author = CurrentEmployee; } ConfigureEntries(); }