public EmployeeMovementsViewModel(EmployeeViewModel employeeViewModel, OpenStockDocumentsModel openStockDocumentsModel, EmployeeIssueRepository employeeIssueRepository, FeaturesService featuresService, ITdiCompatibilityNavigation navigation)
        {
            this.employeeViewModel       = employeeViewModel ?? throw new ArgumentNullException(nameof(employeeViewModel));
            this.openStockDocumentsModel = openStockDocumentsModel ?? throw new ArgumentNullException(nameof(openStockDocumentsModel));
            this.employeeIssueRepository = employeeIssueRepository ?? throw new ArgumentNullException(nameof(employeeIssueRepository));
            this.featuresService         = featuresService ?? throw new ArgumentNullException(nameof(featuresService));
            this.navigation = navigation ?? throw new ArgumentNullException(nameof(navigation));

            this.employeeIssueRepository.RepoUow = UoW;
        }
Beispiel #2
0
        public EmployeeWearItemsViewModel(
            EmployeeViewModel employeeViewModel,
            EmployeeIssueRepository employeeIssueRepository,
            BaseParameters baseParameters,
            IInteractiveService interactive,
            ITdiCompatibilityNavigation navigation,
            OpenStockDocumentsModel stockDocumentsModel,
            FeaturesService featuresService)
        {
            this.employeeViewModel       = employeeViewModel ?? throw new ArgumentNullException(nameof(employeeViewModel));
            this.employeeIssueRepository = employeeIssueRepository ?? throw new ArgumentNullException(nameof(employeeIssueRepository));
            this.BaseParameters          = baseParameters ?? throw new ArgumentNullException(nameof(baseParameters));
            this.navigation          = navigation ?? throw new ArgumentNullException(nameof(navigation));
            this.stockDocumentsModel = stockDocumentsModel ?? throw new ArgumentNullException(nameof(stockDocumentsModel));
            FeaturesService          = featuresService ?? throw new ArgumentNullException(nameof(featuresService));
            this.interactive         = interactive ?? throw new ArgumentNullException(nameof(interactive));

            employeeIssueRepository.RepoUow = UoW;
            NotifyConfiguration.Instance.BatchSubscribeOnEntity <EmployeeCardItem>(HandleEntityChangeEvent);
        }
        public StockMovmentsJournalViewModel(
            IUnitOfWorkFactory unitOfWorkFactory,
            IInteractiveService interactiveService,
            INavigationManager navigation,
            ILifetimeScope autofacScope,
            OpenStockDocumentsModel openDocuments) : base(unitOfWorkFactory, interactiveService, navigation)
        {
            AutofacScope       = autofacScope;
            this.openDocuments = openDocuments ?? throw new ArgumentNullException(nameof(openDocuments));
            JournalFilter      = Filter = AutofacScope.Resolve <StockMovementsFilterViewModel>
                                              (new TypedParameter(typeof(JournalViewModelBase), this));

            var dataLoader = new ThreadDataLoader <StockMovmentsJournalNode>(unitOfWorkFactory);

            dataLoader.AddQuery(ItemsQuery);
            DataLoader = dataLoader;

            CreateNodeActions();

            UpdateOnChanges(typeof(WarehouseOperation));
            TabName = "Складские движения";
        }
        public StockDocumentsJournalViewModel(
            IUnitOfWorkFactory unitOfWorkFactory,
            IInteractiveService interactiveService,
            INavigationManager navigation,
            OpenStockDocumentsModel openStockDocumentsModel,
            ILifetimeScope autofacScope,
            FeaturesService featuresService,
            ICurrentPermissionService currentPermissionService = null,
            IDeleteEntityService deleteEntityService           = null)
            : base(unitOfWorkFactory, interactiveService, navigation)
        {
            Title                        = "Журнал документов";
            AutofacScope                 = autofacScope;
            CurrentPermissionService     = currentPermissionService;
            DeleteEntityService          = deleteEntityService;
            this.openStockDocumentsModel = openStockDocumentsModel ?? throw new ArgumentNullException(nameof(openStockDocumentsModel));
            FeaturesService              = featuresService ?? throw new ArgumentNullException(nameof(featuresService));
            JournalFilter                = Filter = AutofacScope.Resolve <StockDocumentsFilterViewModel>(
                new TypedParameter(typeof(JournalViewModelBase), this));

            var dataLoader = new ThreadDataLoader <StockDocumentsJournalNode>(unitOfWorkFactory);

            dataLoader.AddQuery(QueryIncomeDoc);
            dataLoader.AddQuery(QueryExpenseDoc);
            dataLoader.AddQuery(QueryCollectiveExpenseDoc);
            dataLoader.AddQuery(QueryWriteoffDoc);
            dataLoader.AddQuery(QueryTransferDoc);
            dataLoader.AddQuery(QueryCompletionDoc);
            dataLoader.MergeInOrderBy(x => x.Date, true);
            dataLoader.MergeInOrderBy(x => x.CreationDate, true);
            DataLoader = dataLoader;

            CreateNodeActions();
            CreateDocumentsActions();

            UpdateOnChanges(typeof(Expense), typeof(CollectiveExpense),
                            typeof(Income), typeof(Writeoff), typeof(Transfer), typeof(Completion));
        }