Ejemplo n.º 1
0
        public GridJsonNetJObjectResult <Person> IndexGridJsonData(IndexGridSpec.UsersStatusFilterTypeEnum usersStatusFilterType)
        {
            var gridSpec = new IndexGridSpec(CurrentFirmaSession);
            var persons  = HttpRequestStorage.DatabaseEntities.People.Include(x => x.Organization)
                           .Include(x => x.OrganizationsWhereYouAreThePrimaryContactPerson).ToList().Where(x =>
                                                                                                           new UserViewFeature().HasPermission(CurrentFirmaSession, x).HasPermission);

            switch (usersStatusFilterType)
            {
            case IndexGridSpec.UsersStatusFilterTypeEnum.ActiveUsers:
                persons = persons.Where(x => x.IsActive);
                break;

            case IndexGridSpec.UsersStatusFilterTypeEnum.AllUsers:
                break;

            default:
                throw new ArgumentOutOfRangeException("usersStatusFilterType", usersStatusFilterType,
                                                      null);
            }

            var gridJsonNetJObjectResult =
                new GridJsonNetJObjectResult <Person>(persons.OrderBy(x => x.GetFullNameLastFirst()).ToList(), gridSpec);

            return(gridJsonNetJObjectResult);
        }
Ejemplo n.º 2
0
        public ViewResult Index()
        {
            const IndexGridSpec.UsersStatusFilterTypeEnum filterTypeEnum =
                IndexGridSpec.UsersStatusFilterTypeEnum.ActiveUsers;

            return(ViewIndex(SitkaRoute <UserController> .BuildUrlFromExpression(x => x.IndexGridJsonData(filterTypeEnum))));
        }