public BatchInfoViewModel(IEventAggregator aggregator, IDataService <LabDbEntities> labDbData, MaterialService materialService) : base() { _labDbData = labDbData; _materialService = materialService; _eventAggregator = aggregator; _editMode = false; TrialAreaList = _labDbData.RunQuery(new TrialAreasQuery()) .ToList(); CancelEditCommand = new DelegateCommand( () => { if (_instance == null) { BatchInstance = null; } else { BatchInstance = _labDbData.RunQuery(new BatchQuery() { ID = BatchInstance.ID }); } }, () => EditMode); DeleteBatchCommand = new DelegateCommand( () => { _instance.Delete(); BatchInstance = null; NavigationToken token = new NavigationToken(MaterialViewNames.BatchesView); _eventAggregator.GetEvent <NavigationRequested>() .Publish(token); }, () => CanDelete); DeleteSampleCommand = new DelegateCommand <Sample>( smp => { _materialService.DeleteSample(smp); RaisePropertyChanged("Samples"); }, smp => Thread.CurrentPrincipal.IsInRole(UserRoleNames.BatchEdit)); OpenExternalReportCommand = new DelegateCommand( () => { NavigationToken token = new NavigationToken(ReportViewNames.ExternalReportEditView, _selectedExternalReport); _eventAggregator.GetEvent <NavigationRequested>().Publish(token); }, () => _selectedExternalReport != null); OpenReportCommand = new DelegateCommand( () => { NavigationToken token = new NavigationToken(ReportViewNames.ReportEditView, _selectedReport); _eventAggregator.GetEvent <NavigationRequested>().Publish(token); }, () => _selectedReport != null); RefreshCommand = new DelegateCommand( () => { BatchInstance = _labDbData.RunQuery(new BatchQuery() { ID = BatchInstance.ID }); }, () => !EditMode); SaveCommand = new DelegateCommand( () => { CreateChildEntitiesIfMissing(); ReloadChildEntitiesInstances(); Material _materialTemplate = GenerateMaterialUpdateTemplate(); _labDbData.Execute(new BatchUpdateCommand(BatchInstance, _materialTemplate)); EditMode = false; }, () => EditMode && !HasErrors); StartEditCommand = new DelegateCommand( () => { EditMode = true; }, () => !EditMode && Thread.CurrentPrincipal.IsInRole(UserRoleNames.BatchEdit)); #region EventSubscriptions _eventAggregator.GetEvent <ColorChanged>() .Subscribe(ect => { _colourList = null; RaisePropertyChanged("ColourList"); }); _eventAggregator.GetEvent <ExternalConstructionChanged>() .Subscribe(ect => ExternalConstructionChangedHandler()); _eventAggregator.GetEvent <ExternalReportChanged>() .Subscribe( ect => { RaisePropertyChanged("ExternalReportList "); }); _eventAggregator.GetEvent <ProjectChanged>() .Subscribe( ect => { ProjectList = null; SelectedProject = null; }); _eventAggregator.GetEvent <ReportCreated>().Subscribe( report => { SelectedReport = null; RaisePropertyChanged("ReportList"); }); #endregion EventSubscriptions }
public void displayReportView(int reportoid = 0, int treeOid = -1) { if (slideDialog == null) { return; } TreeActionDialog.IsActionReportView = false; slideDialog.IsReportView = true; PresentationEditorItem page = (PresentationEditorItem)getPresentationEditor().getActivePage(); if (page == null) { return; } NavigationToken token = NavigationToken.GetCreateViewToken(Reporting.Base.ReportingFunctionalitiesCode.REPORT_EDIT); if (reportoid > 0) { token = NavigationToken.GetModifyViewToken(Reporting.Base.ReportingFunctionalitiesCode.REPORT_EDIT, reportoid); } controllable = ApplicationManager.ControllerFactory.GetController(token.Functionality, token.ViewType, token.EditionMode); controllable.NavigationToken = token; controllable.Initialize(); ReportEditorController controller = (ReportEditorController)controllable; controller.getInputTableEditor().NewPageSelected -= controller.NewPageSelectedHandler; controller.getInputTableEditor().OnRemoveNewPage += OnRemoveNewReportPage; controller.listeTotalReport = BlockPanel.listeTotalReport; TreeLoopGroup LoopGroup = ((ReportSideBar)controller.SideBar).TreeLoopGroup; controller.SideBar.RemoveGroup(((ReportSideBar)controller.SideBar).StatusGroup); controller.SideBar.RemoveGroup(0); if (LoopGroup != null) { LoopGroup.TransformationTreeLoopTreeview.fillTree(this.Loops); controller.SideBar.AddGroup(LoopGroup, 0); } controller.CustomizeMenuForTree(slideDialog.dockingManager); slideDialog.displaySideBar(controller.SideBar); slideDialog.displayPropertyBar(controller.PropertyBar); slideDialog.displayView(controller.View); controller.treeOid = treeOid; if (reportoid > 0) { controller.Open(reportoid); if (slideDialog != null) { slideDialog.SaveButton.IsEnabled = false; } } else { controller.Create(); if (slideDialog != null) { slideDialog.SaveButton.IsEnabled = true; } } controller.ChangeEventListener += onChange; }
/// <summary> /// Initialisation des sous menus /// </summary> protected override void initChildren() { this.Code = FunctionalitiesCode.SOURCING; this.Header = FunctionalitiesLabel.SOURCING_LABEL; InputTableMenu = BuildMenu(FunctionalitiesCode.SOURCING, FunctionalitiesLabel.INPUT_TABLE_LABEL, FunctionalitiesCode.INPUT_TABLE); NewInputTableMenu = BuildMenu(FunctionalitiesCode.INPUT_TABLE, FunctionalitiesLabel.NEW_INPUT_TABLE_LABEL, NavigationToken.GetCreateViewToken(SourcingFunctionalitiesCode.INPUT_TABLE_EDIT), Kernel.Domain.RightType.CREATE); ListInputTableMenu = BuildMenu(FunctionalitiesCode.INPUT_TABLE, FunctionalitiesLabel.LIST_INPUT_TABLE_LABEL, NavigationToken.GetSearchViewToken(SourcingFunctionalitiesCode.INPUT_TABLE_LIST), Kernel.Domain.RightType.VIEW); AutomaticSourcingMenu = BuildMenu(FunctionalitiesCode.INPUT_TABLE, FunctionalitiesLabel.NEW_AUTOMATIC_SOURCING_LABEL, NavigationToken.GetCreateViewToken(SourcingFunctionalitiesCode.AUTOMATIC_SOURCING_EDIT), Kernel.Domain.RightType.CREATE); ListAutomaticSourcingMenu = BuildMenu(FunctionalitiesCode.INPUT_TABLE, FunctionalitiesLabel.LIST_AUTOMATIC_SOURCING_LABEL, NavigationToken.GetSearchViewToken(SourcingFunctionalitiesCode.AUTOMATIC_SOURCING_LIST), Kernel.Domain.RightType.VIEW); InputTableMenu.Items.Add(NewInputTableMenu); InputTableMenu.Items.Add(ListInputTableMenu); InputTableMenu.Items.Add(new Separator()); InputTableMenu.Items.Add(AutomaticSourcingMenu); InputTableMenu.Items.Add(ListAutomaticSourcingMenu); GridMenu = BuildMenu(FunctionalitiesCode.SOURCING, FunctionalitiesLabel.GRID_LABEL, FunctionalitiesCode.INPUT_TABLE_GRID); NewInputGridMenu = BuildMenu(ApplicationMenu.SOURCING_MENU_CODE, FunctionalitiesLabel.NEW_INPUT_GRID_LABEL, NavigationToken.GetCreateViewToken(SourcingFunctionalitiesCode.INPUT_TABLE_GRID_EDIT), Kernel.Domain.RightType.CREATE); ListInputGridMenu = BuildMenu(ApplicationMenu.SOURCING_MENU_CODE, FunctionalitiesLabel.LIST_INPUT_GRID_LABEL, NavigationToken.GetSearchViewToken(SourcingFunctionalitiesCode.INPUT_TABLE_GRID_LIST), Kernel.Domain.RightType.VIEW); NewAutomaticGridMenu = BuildMenu(ApplicationMenu.SOURCING_MENU_CODE, FunctionalitiesLabel.NEW_AUTOMATIC_GRID_LABEL, NavigationToken.GetCreateViewToken(SourcingFunctionalitiesCode.AUTOMATIC_INPUT_TABLE_GRID_EDIT), Kernel.Domain.RightType.CREATE); ListAutomaticGridMenu = BuildMenu(ApplicationMenu.SOURCING_MENU_CODE, FunctionalitiesLabel.LIST_AUTOMATIC_GRID_LABEL, NavigationToken.GetSearchViewToken(SourcingFunctionalitiesCode.AUTOMATIC_INPUT_TABLE_GRID_LIST), Kernel.Domain.RightType.VIEW); GridMenu.Items.Add(NewInputGridMenu); GridMenu.Items.Add(ListInputGridMenu); GridMenu.Items.Add(new Separator()); GridMenu.Items.Add(NewAutomaticGridMenu); GridMenu.Items.Add(ListAutomaticGridMenu); LinkedAttributeGridMenu = BuildMenu(ApplicationMenu.SOURCING_MENU_CODE, FunctionalitiesLabel.LINKED_ATTRIBUTE_GRID_LABEL, NavigationToken.GetSearchViewToken(SourcingFunctionalitiesCode.LINKED_ATTRIBUTE_GRID_LIST), Kernel.Domain.RightType.VIEW); EnrichmentTableMenu = BuildMenu(FunctionalitiesCode.SOURCING, FunctionalitiesLabel.ENRICHMENT_TABLE_LABEL, FunctionalitiesCode.ENRICHMENT_TABLE); NewEnrichmentTableMenu = BuildMenu(ApplicationMenu.SOURCING_MENU_CODE, FunctionalitiesLabel.NEW_ENRICHMENT_TABLE_LABEL, NavigationToken.GetCreateViewToken(SourcingFunctionalitiesCode.ENRICHMENT_TABLE_EDIT), Kernel.Domain.RightType.CREATE); ListEnrichmentTableMenu = BuildMenu(ApplicationMenu.SOURCING_MENU_CODE, FunctionalitiesLabel.LIST_ENRICHMENT_TABLE_LABEL, NavigationToken.GetSearchViewToken(SourcingFunctionalitiesCode.ENRICHMENT_TABLE_LIST), Kernel.Domain.RightType.VIEW); NewAutomaticEnrichmentTableMenu = BuildMenu(ApplicationMenu.SOURCING_MENU_CODE, FunctionalitiesLabel.NEW_AUTOMATIC_ENRICHMENT_TABLE_LABEL, NavigationToken.GetCreateViewToken(SourcingFunctionalitiesCode.AUTOMATIC_ENRICHMENT_TABLE_EDIT), Kernel.Domain.RightType.CREATE); ListAutomaticEnrichmentTableMenu = BuildMenu(ApplicationMenu.SOURCING_MENU_CODE, FunctionalitiesLabel.LIST_AUTOMATIC_ENRICHMENT_TABLE_LABEL, NavigationToken.GetSearchViewToken(SourcingFunctionalitiesCode.AUTOMATIC_ENRICHMENT_TABLE_LIST), Kernel.Domain.RightType.VIEW); //EnrichmentTableMenu.Items.Add(NewEnrichmentTableMenu); //EnrichmentTableMenu.Items.Add(ListEnrichmentTableMenu); //EnrichmentTableMenu.Items.Add(new Separator()); EnrichmentTableMenu.Items.Add(NewAutomaticEnrichmentTableMenu); EnrichmentTableMenu.Items.Add(ListAutomaticEnrichmentTableMenu); TargetMenu = BuildMenu(FunctionalitiesCode.SOURCING, FunctionalitiesLabel.TARGET_LABEL, FunctionalitiesCode.TARGET); NewTargetMenu = BuildMenu(FunctionalitiesCode.TARGET, FunctionalitiesLabel.NEW_TARGET_LABEL, NavigationToken.GetCreateViewToken(SourcingFunctionalitiesCode.TARGET_EDIT), Kernel.Domain.RightType.CREATE); ListTargetMenu = BuildMenu(FunctionalitiesCode.TARGET, FunctionalitiesLabel.LIST_TARGET_LABEL, NavigationToken.GetSearchViewToken(SourcingFunctionalitiesCode.TARGET_LIST), Kernel.Domain.RightType.VIEW); AutomaticTargetMenu = BuildMenu(FunctionalitiesCode.TARGET, FunctionalitiesLabel.NEW_AUTOMATIC_TARGET_LABEL, NavigationToken.GetCreateViewToken(SourcingFunctionalitiesCode.AUTOMATIC_TARGET_EDIT), Kernel.Domain.RightType.CREATE); ListAutomaticTargetMenu = BuildMenu(FunctionalitiesCode.TARGET, FunctionalitiesLabel.LIST_AUTOMATIC_TARGET_LABEL, NavigationToken.GetSearchViewToken(SourcingFunctionalitiesCode.AUTOMATIC_TARGET_LIST), Kernel.Domain.RightType.VIEW); TargetMenu.Items.Add(NewTargetMenu); TargetMenu.Items.Add(ListTargetMenu); TargetMenu.Items.Add(new Separator()); TargetMenu.Items.Add(AutomaticTargetMenu); TargetMenu.Items.Add(ListAutomaticTargetMenu); DesignMenu = BuildMenu(FunctionalitiesCode.SOURCING, FunctionalitiesLabel.DESIGN_LABEL, FunctionalitiesCode.DESIGN); NewDesignMenu = BuildMenu(FunctionalitiesCode.DESIGN, FunctionalitiesLabel.NEW_DESIGN_LABEL, NavigationToken.GetCreateViewToken(SourcingFunctionalitiesCode.DESIGN_EDIT), Kernel.Domain.RightType.CREATE); ListDesignMenu = BuildMenu(FunctionalitiesCode.DESIGN, FunctionalitiesLabel.LIST_DESIGN_LABEL, NavigationToken.GetSearchViewToken(SourcingFunctionalitiesCode.DESIGN_LIST), Kernel.Domain.RightType.VIEW); DesignMenu.Items.Add(NewDesignMenu); DesignMenu.Items.Add(ListDesignMenu); AccessoriesMenu = BuildMenu(FunctionalitiesCode.SOURCING, FunctionalitiesLabel.ACCESSORIES_LABEL, FunctionalitiesCode.ACCESSORIES); UploadMultipleFileSourcingMenu = BuildMenu(FunctionalitiesCode.ACCESSORIES, FunctionalitiesLabel.UPLOAD_MULTIPLE_FILES, NavigationToken.GetSearchViewToken(SourcingFunctionalitiesCode.MULTIPLE_FILES_UPLOAD)); AccessoriesMenu.Items.Add(UploadMultipleFileSourcingMenu); }
/// <summary> /// Les DashboardCategories du plugin /// </summary> /// <returns></returns> protected override List <NavCategory> GetNavDashboardCategories() { List <NavCategory> categories = new List <NavCategory>(0); //categories.Add(BuildCategory("Daily Controls", BfcFunctionalitiesCode.REVIEW)); NavCategory newAdvisementCategory = BuildCategory("New Advisement", BfcFunctionalitiesCode.ADVISEMENT); newAdvisementCategory.Block = BuildBlock("New Advisement"); newAdvisementCategory.Block.Children.Add(BuildBlock("New Prefunding Advisement", NavigationToken.GetCreateViewToken(BfcFunctionalitiesCode.PREFUNDING_ADVISEMENT))); newAdvisementCategory.Block.Children.Add(BuildBlock("New Member Advisement", NavigationToken.GetCreateViewToken(BfcFunctionalitiesCode.MEMBER_ADVISEMENT))); newAdvisementCategory.Block.Children.Add(BuildBlock("New Replenishment Instruction", NavigationToken.GetCreateViewToken(BfcFunctionalitiesCode.REPLENISHMENT_INSTRUCTION_ADVISEMENT))); newAdvisementCategory.Block.Children.Add(BuildBlock("New Settlement Advisement", NavigationToken.GetCreateViewToken(BfcFunctionalitiesCode.SETTLEMENT_ADVISEMENT))); categories.Add(newAdvisementCategory); NavCategory pfAccountReviewCategory = BuildCategory("PF Account Review", BfcFunctionalitiesCode.REVIEW); pfAccountReviewCategory.Block = BuildBlock("PF Account Review", NavigationToken.GetSearchViewToken(BfcFunctionalitiesCode.REVIEW_PF_ACCOUNT)); categories.Add(pfAccountReviewCategory); NavCategory settlementEvolutionCategory = BuildCategory("Settlement Evolution", BfcFunctionalitiesCode.REVIEW); settlementEvolutionCategory.Block = BuildBlock("Settlement Evolution", NavigationToken.GetSearchViewToken(BfcFunctionalitiesCode.REVIEW_SETTLEMENT_EVOLUTION)); categories.Add(settlementEvolutionCategory); NavCategory ageingBalanceCategory = BuildCategory("Ageing Balance", BfcFunctionalitiesCode.REVIEW); ageingBalanceCategory.Block = BuildBlock("Ageing Balance", NavigationToken.GetSearchViewToken(BfcFunctionalitiesCode.REVIEW_AGEING_BALANCE)); categories.Add(ageingBalanceCategory); //categories.Add(BuildCategory("Bank Account", BfcFunctionalitiesCode.REVIEW)); NavCategory listAdvisementCategory = BuildCategory("List Advisements", BfcFunctionalitiesCode.ADVISEMENT); listAdvisementCategory.Block = BuildBlock("List Advisement"); listAdvisementCategory.Block.Children.Add(BuildBlock("List Prefunding Advisements", NavigationToken.GetSearchViewToken(BfcFunctionalitiesCode.PREFUNDING_ADVISEMENT_LIST))); listAdvisementCategory.Block.Children.Add(BuildBlock("List Member Advisements", NavigationToken.GetSearchViewToken(BfcFunctionalitiesCode.MEMBER_ADVISEMENT_LIST))); listAdvisementCategory.Block.Children.Add(BuildBlock("List Replenishment Instructions", NavigationToken.GetSearchViewToken(BfcFunctionalitiesCode.REPLENISHMENT_INSTRUCTION_ADVISEMENT_LIST))); listAdvisementCategory.Block.Children.Add(BuildBlock("List Settlement Advisements", NavigationToken.GetSearchViewToken(BfcFunctionalitiesCode.SETTLEMENT_ADVISEMENT_LIST))); categories.Add(listAdvisementCategory); return(categories); }
public BatchStatusListViewModel(IEventAggregator eventAggregator, IDataService <LabDbEntities> labDbData, IReportingService reportingService) : base() { _labDbData = labDbData; _eventAggregator = eventAggregator; _reportingService = reportingService; CancelCommand = new DelegateCommand <Window>( parentDialog => { parentDialog.DialogResult = false; }); ConfirmCommand = new DelegateCommand <Window>( parentDialog => { parentDialog.DialogResult = true; }); _eventAggregator.GetEvent <BatchChanged>().Subscribe( token => { RunBatchQueryCommand.Execute(); }); _eventAggregator.GetEvent <SampleLogCreated>() .Subscribe( sample => { RunBatchQueryCommand.Execute(); }); _eventAggregator.GetEvent <BatchStatusListRefreshRequested>() .Subscribe( () => { RunBatchQueryCommand.Execute(); }); OpenBatchCommand = new DelegateCommand <DataGrid>( grid => { Batch btc = grid.SelectedItem as Batch; NavigationToken token = new NavigationToken(MaterialViewNames.BatchInfoView, btc); _eventAggregator.GetEvent <NavigationRequested>() .Publish(token); }); OpenOrderFileCommand = new DelegateCommand <Batch>( batch => { try { System.Diagnostics.Process.Start(batch.OrderFilePath); } catch { } }); PrintSelectedCommand = new DelegateCommand <IList>( batchList => { Batch[] processList = new Batch[batchList.Count]; batchList.CopyTo(processList, 0); _reportingService.PrintBatchReport(processList); }); RunBatchQueryCommand = new DelegateCommand( () => { IQuery <Batch, LabDbEntities> batchQuery = new BatchesQuery() { AspectCode = AspectCode, BatchNumber = BatchNumber, ColorName = ColorName, ConstructionName = ConstructionName, MaterialLineCode = MaterialLineCode, MaterialTypeCode = MaterialTypeCode, Notes = Notes, OEMName = OEMName, ProjectDescription = ProjectDescription, ProjectNumber = ProjectNumber, RecipeCode = RecipeCode }; BatchList = _labDbData.RunQuery(batchQuery).ToList(); RaisePropertyChanged("BatchList"); }); RunBatchQueryCommand.Execute(); }
/// <summary> /// Initialisation des sous menus /// </summary> protected override void initChildren() { this.Code = FunctionalitiesCode.RECONCILIATION; this.Header = FunctionalitiesLabel.RECONCILIATION_LABEL; ReconciliationFiltersMenu = BuildMenu(FunctionalitiesCode.RECONCILIATION, FunctionalitiesLabel.NEW_RECONCILIATION_FILTER_LABEL, NavigationToken.GetCreateViewToken(ReconciliationFunctionalitiesCode.RECONCILIATION_FILTER_EDIT), Kernel.Domain.RightType.CREATE); ReconciliationFiltersListMenu = BuildMenu(FunctionalitiesCode.RECONCILIATION, FunctionalitiesLabel.LIST_RECONCILIATION_FILTERS_LABEL, NavigationToken.GetSearchViewToken(ReconciliationFunctionalitiesCode.RECONCILIATION_FILTER_LIST), Kernel.Domain.RightType.VIEW); ReconciliationContextMenu = BuildMenu(FunctionalitiesCode.RECONCILIATION, FunctionalitiesLabel.RECONCILIATION_CONFIGURATION_LABEL, NavigationToken.GetCreateViewToken(ReconciliationFunctionalitiesCode.RECONCILIATION_CONFIGURATION)); }
public SpecificationVersionEditViewModel(IDataService <LabDbEntities> labDbData, IEventAggregator eventAggregator, ISpecificationService specificationService) { _specificationService = specificationService; _editMode = false; _eventAggregator = eventAggregator; _labDbData = labDbData; DeleteRequirementCommand = new DelegateCommand <Requirement>( req => { req.Delete(); _specificationVersionInstance.Load(); GenerateRequirementList(); RaisePropertyChanged("RequirementList"); }); SaveCommand = new DelegateCommand( () => { _specificationVersionInstance.Update(); if (_specificationVersionInstance == null) { return; } if (_specificationVersionInstance.IsMain) { _specificationService.UpdateRequirements(_requirementList.Select(req => req.RequirementInstance)); } else { _specificationService.UpdateRequirements(_requirementList.Where(req => req.IsOverride) .Select(req => req.RequirementInstance)); } EditMode = false; }, () => _editMode && !HasErrors); StartEditCommand = new DelegateCommand( () => { EditMode = true; }, () => CanEdit && !_editMode); StartTestListEditCommand = new DelegateCommand( () => { NavigationToken token = new NavigationToken(SpecificationViewNames.AddMethod, null, RegionNames.SpecificationVersionTestListEditRegion); _eventAggregator.GetEvent <NavigationRequested>() .Publish(token); }, () => Thread.CurrentPrincipal.IsInRole(UserRoleNames.SpecificationEdit)); _eventAggregator.GetEvent <SpecificationMethodListChanged>() .Subscribe( spc => { if (spc.ID == _specificationVersionInstance.SpecificationID) { GenerateRequirementList(); RaisePropertyChanged("RequirementList"); } }); }