Example #1
0
        public async Task <IActionResult> GetPagedUserModuleRights([FromQuery] UserModuleRightsParams userModuleRightsParams)
        {
            var usermodulerights = await userModuleRightRepository.GetPagedUserModuleRights(userModuleRightsParams);

            var result = mapper.Map <IEnumerable <ViewUserModuleRightsResource> >(usermodulerights);

            Response.AddPagination(usermodulerights.CurrentPage, usermodulerights.PageSize, usermodulerights.TotalCount, usermodulerights.TotalPages);

            return(Ok(result));
        }
Example #2
0
        public async Task <PagedList <UserModuleRight> > GetPagedUserModuleRights(UserModuleRightsParams userModuleRightsParams)
        {
            var usermodulerights = context.UserModuleRight.AsQueryable();

            // filter
            if (userModuleRightsParams.UserId > 0)
            {
                usermodulerights = usermodulerights.Where(u => u.UserId == userModuleRightsParams.UserId);
            }

            if (userModuleRightsParams.ModuleRightsId > 0)
            {
                usermodulerights = usermodulerights.Where(u => u.ModuleRightsId == userModuleRightsParams.ModuleRightsId);
            }

            // sort
            if (userModuleRightsParams.isDescending)
            {
                if (!string.IsNullOrEmpty(userModuleRightsParams.OrderBy))
                {
                    switch (userModuleRightsParams.OrderBy.ToLower())
                    {
                    case "userid":
                        usermodulerights = usermodulerights.OrderByDescending(u => u.UserId);
                        break;

                    case "modulerightsid":
                        usermodulerights = usermodulerights.OrderByDescending(u => u.ModuleRightsId);
                        break;

                    default:
                        usermodulerights = usermodulerights.OrderByDescending(u => u.UserId);
                        break;
                    }
                }
                else
                {
                    usermodulerights = usermodulerights.OrderByDescending(u => u.UserId);
                }
            }
            else
            {
                if (!string.IsNullOrEmpty(userModuleRightsParams.OrderBy))
                {
                    switch (userModuleRightsParams.OrderBy.ToLower())
                    {
                    case "userid":
                        usermodulerights = usermodulerights.OrderBy(u => u.UserId);
                        break;

                    case "modulerightsid":
                        usermodulerights = usermodulerights.OrderBy(u => u.ModuleRightsId);
                        break;

                    default:
                        usermodulerights = usermodulerights.OrderBy(u => u.UserId);
                        break;
                    }
                }
                else
                {
                    usermodulerights = usermodulerights.OrderBy(u => u.UserId);
                }
            }

            return(await PagedList <UserModuleRight> .CreateAsync(usermodulerights, userModuleRightsParams.PageNumber, userModuleRightsParams.PageSize));
        }