Пример #1
0
        public void Setup()
        {
            _userSearchViewModelFactory = new Mock<IUserSearchViewModelFactory>();
            _userSearchViewModel = new UserSearchViewModel();
            _viewUserViewModelFactory = new Mock<IViewUserViewModelFactory>();
            _viewUserViewModel = new ViewUserViewModel();
            _userService = new Mock<IUserService>();

            _userSearchViewModelFactory
                .Setup(x => x.WithCompanyId(_companyId))
                .Returns(_userSearchViewModelFactory.Object);

            _userSearchViewModelFactory
                .Setup(x => x.WithForeName(It.IsAny<string>()))
                .Returns(_userSearchViewModelFactory.Object);

            _userSearchViewModelFactory
                .Setup(x => x.WithSurname(It.IsAny<string>()))
                .Returns(_userSearchViewModelFactory.Object);

            _userSearchViewModelFactory
                .Setup(x => x.WithSiteId(It.IsAny<long>()))
                .Returns(_userSearchViewModelFactory.Object);

            _userSearchViewModelFactory
                .Setup(x => x.WithSiteGroupId(It.IsAny<long>()))
                .Returns(_userSearchViewModelFactory.Object);

            _userSearchViewModelFactory
                .Setup(x => x.WithShowDeleted(It.IsAny<bool>()))
                .Returns(_userSearchViewModelFactory.Object);

            _userSearchViewModelFactory
                .Setup(x => x.WithAllowedSiteIds(It.IsAny<IList<long>>()))
                .Returns(_userSearchViewModelFactory.Object);

            _userSearchViewModelFactory
                .Setup(x => x.WithCurrentUser(It.IsAny<IPrincipal>()))
                .Returns(_userSearchViewModelFactory.Object);

            _userSearchViewModelFactory
                .Setup(x => x.GetViewModel())
                .Returns(_userSearchViewModel);

            _viewUserViewModelFactory
                .Setup(x => x.WithCompanyId(It.IsAny<long>()))
                .Returns(_viewUserViewModelFactory.Object);

            _viewUserViewModelFactory
                .Setup(x => x.WithEmployeeId(It.IsAny<Guid>()))
                .Returns(_viewUserViewModelFactory.Object);

            _viewUserViewModelFactory
                .Setup(x => x.GetViewModel())
                .Returns(_viewUserViewModel);

            _userService
                .Setup(x => x.Search(CreateUserSearchRequest()))
                .Returns(new List<UserDto>());
        }
        public ViewUserViewModel GetViewModel()
        {
            var viewModel = new ViewUserViewModel();
            var employee = _employeeService.GetEmployee(_employeeId, _companyId);

            viewModel.CompanyId = _companyId;

            if (employee != null)
            {
                viewModel.Name = employee.FullName;
                viewModel.EmployeeReference = employee.EmployeeReference;
                viewModel.EmployeeId = _employeeId;
                viewModel.JobTitle = employee.JobTitle;
                viewModel.Department = "NOT AVAILABLE";
                viewModel.ManagerName = "NOT AVAILABLE";

                if (employee.User != null)
                {
                    if (employee.User.Role != null)
                    {
                        viewModel.RoleId = employee.User.Role.Id;
                        viewModel.Role = employee.User.Role.Description;
                    }

                    if (employee.User.SiteStructureElement.IsMainSite)
                        viewModel.PermissionLevel = "All Sites";
                    else
                    {
                        if (employee.User.SiteStructureElement != null)
                        {
                            if (employee.User.SiteStructureElement.GetType() == typeof(SiteGroupDto))
                                viewModel.PermissionLevel = "Site Group - " + employee.User.SiteStructureElement.Name;
                            else if (employee.User.SiteStructureElement.GetType() == typeof(SiteDto))
                                viewModel.PermissionLevel = "Site - " + employee.User.SiteStructureElement.Name;
                        }
                    }
                }
            }

            return viewModel;
        }