protected void CreateNewCommerceManagerCase(Contact contact, ContactActionState contactAction,
                                                    CaseActionState caseAction)
        {
            var parameters = new List <KeyValuePair <string, object> >()
            {
                new KeyValuePair <string, object>("parentViewModel", this),
                new KeyValuePair <string, object>("innerCase", new Case()),
                new KeyValuePair <string, object>("innerContact", contact),
                new KeyValuePair <string, object>("caseAction", caseAction),
                new KeyValuePair <string, object>("contactAction", contactAction)
            }.ToArray();
            var itemVm = _customersDetailVmFactory.GetViewModelInstance(parameters);

            ((IOpenTracking)itemVm).OpenItemCommand.Execute();
        }
        public CustomersDetailViewModel(ICustomerEntityFactory entityFactory, ICustomerRepository repository,
                    NavigationManager navManager, IRepositoryFactory<ICustomerRepository> repositoryFactory,
                    IAuthenticationContext authContext, ICustomersCommonViewModel parentViewModel,
                    Case innerCase, Contact innerContact,
                    CaseActionState caseAction, ContactActionState contactAction,
                    IViewModelsFactory<CaseDetailViewModel> caseDetailVmFactory, IViewModelsFactory<CustomerDetailViewModel> customerDetailVmFactory,
                    IViewModelsFactory<ICreateCustomerDialogViewModel> wizardCustomerVmFactory,
                    IViewModelsFactory<IKnowledgeBaseDialogViewModel> knowledgeBaseGroupVmFactory)
        {
            _entityFactory = entityFactory;
            Repository = repository;
            _authContext = authContext;
            _navManager = navManager;
            _repositoryFactory = repositoryFactory;
            _caseDetailVmFactory = caseDetailVmFactory;
            _customerDetailVmFactory = customerDetailVmFactory;
            _wizardCustomerVmFactory = wizardCustomerVmFactory;
            _knowledgeBaseGroupVmFactory = knowledgeBaseGroupVmFactory;
            _parentViewModel = parentViewModel;

            OriginalItem = innerCase;
            OriginalContact = innerContact;

            InnerItem = innerCase;
            CurrentCustomer = innerContact;

            CaseActionState = caseAction;
            ContactActionState = contactAction;

            InitializeCommands();

            _isItemsInitialized = false;

            ViewTitle = new ViewTitleBase
                {
                    SubTitle = string.Format("Case #{0}".Localize(), InnerItem.Number),
                    Title = "Customer Service"
                };


            _authorId = _authContext.CurrentUserId;
            _authorName = _authContext.CurrentUserName;
        }
Example #3
0
        public CaseDetailViewModel(CustomersDetailViewModel parentViewModel, Case innerCase,
                                   ICustomerRepository customerRepository, CaseActionState caseAction,
                                   ICustomerEntityFactory entityFactory, IRepositoryFactory <ISecurityRepository> securityRepositoryFactory,
                                   IAuthenticationContext authContext, IViewModelsFactory <ICustomerViewModel> customerVmFactory)
        {
            _entityFactory             = entityFactory;
            _securityRepositoryFactory = securityRepositoryFactory;
            _parentViewModel           = parentViewModel;
            _authContext       = authContext;
            _customerVmFactory = customerVmFactory;

            InnerItem = innerCase;
            _innerCase.PropertyChanged          += _innerCase_PropertyChanged;
            _innerCase.Labels.CollectionChanged += Labels_CollectionChanged;
            _customerRepository = customerRepository;

            _caseAction = caseAction;

            CommandInits();
            CollectionInits();

            OnPropertyChanged("CaseHasTitle");
        }
		protected void CreateNewCommerceManagerCase(Contact contact, ContactActionState contactAction,
												  CaseActionState caseAction)
		{
			var parameters = new List<KeyValuePair<string, object>>()
				{
					new KeyValuePair<string, object>("parentViewModel", this),
					new KeyValuePair<string, object>("innerCase", new Case()),
					new KeyValuePair<string, object>("innerContact", contact),
					new KeyValuePair<string, object>("caseAction", caseAction),
					new KeyValuePair<string, object>("contactAction", contactAction)
				}.ToArray();
			var itemVm = _customersDetailVmFactory.GetViewModelInstance(parameters);
			((IOpenTracking)itemVm).OpenItemCommand.Execute();
		}