Exemple #1
0
        public ActionResult Index(UserListModelFilter userListModelFilter = null, int pageNumber = 1)
        {
            int totalRecords;

            var userListModelPaged = _usersListModelRepository.GetUserListModelPaged(pageNumber, PAGE_SIZE, userListModelFilter, out totalRecords);

            userListModelPaged.Filter = userListModelFilter;


            var currentAction          = ControllerContext.RouteData.Values["action"].ToString();
            Func <int, string> urlFunc = pn => Url.Action(currentAction, new { pageNumber = pn, userListModelFilter.Keyword, userListModelFilter.Roles, userListModelFilter.ActiveUser, userListModelFilter.InActiveUser, userListModelFilter.UserType });

            userListModelPaged.PagingModel = new PagingModel(pageNumber, PAGE_SIZE, totalRecords, urlFunc);


            return(View(userListModelPaged));
        }
Exemple #2
0
        //
        // GET: /Users/ExportableReports/

        public void GetUserListAsync(string id = null, UserListModelFilter filter = null)
        {
            if (id == null)
            {
                return;
            }

            AsyncManager.OutstandingOperations.Increment();
            var dataGen =
                new ExportableDataGenerator <UserBasicInfoModel, UserListModelFilter>(_usersListModelRepository.GetUserListModelPaged);

            var processmanager = new ExportableDataGeneratorProcessManager <UserBasicInfoModel, UserListModelFilter>();

            processmanager.Add(id, dataGen);

            GetNewProcessStarted(filter, dataGen, id);
        }
Exemple #3
0
        private static IQueryable <OrganizationRoleUserEntity> BuildQuery(UserListModelFilter filter, LinqMetaData linqMetaData)
        {
            var orgQuery = from u in linqMetaData.User
                           join ul in linqMetaData.UserLogin on u.UserId equals ul.UserLoginId
                           join a in linqMetaData.OrganizationRoleUser on u.UserId equals a.UserId
                           where ((filter != null && filter.ActiveUser && !filter.InActiveUser) ? u.IsActive : (filter != null && !filter.ActiveUser && filter.InActiveUser) ? !u.IsActive : true)
                           orderby u.FirstName
                           select new { oru = a, u, ul };

            if (filter != null)
            {
                if (filter.Keyword != null)
                {
                    orgQuery = orgQuery.Where(oru => (oru.u.Email1.Contains(filter.Keyword) || oru.ul.UserName == filter.Keyword || ((oru.u.FirstName + (oru.u.MiddleName.Length > 0 ? " " + oru.u.MiddleName + " " : " ") + oru.u.LastName).Contains(filter.Keyword))));
                }

                if (filter.Roles > 0)
                {
                    orgQuery = orgQuery.Where(oru => oru.oru.RoleId == filter.Roles && oru.oru.IsActive);
                }
                else
                {
                    orgQuery = orgQuery.Where(oru => oru.u.DefaultRoleId == oru.oru.RoleId);
                }

                if (filter.UserType == UserType.CustomerOnly)
                {
                    orgQuery = orgQuery.Where(oru => oru.oru.RoleId == (long)Roles.Customer);
                }
                else if (filter.UserType == UserType.SystemUserOnly)
                {
                    orgQuery = orgQuery.Where(oru => oru.oru.RoleId != (long)Roles.Customer);
                }
            }

            return(orgQuery.OrderBy(oru => oru.u.FirstName).Select(oru => oru.oru).WithPath(prefetchPath => prefetchPath.Prefetch(oru => oru.Organization).Prefetch(oru => oru.Role)));
        }