protected override IQuery <Group> ApplyWhereClause(IQuery <Group> query, GroupFilterDto filter)
        {
            var simplePredicate = new SimplePredicate(nameof(Group.Name), ValueComparingOperator.StringContains, filter.SubName);

            return(filter.SubName.Equals("")
                ? query
                : query.Where(simplePredicate));
        }
        protected override IQuery <Group> ApplyWhereClause(IQuery <Group> query, GroupFilterDto filter)
        {
            var simplePredicate = new SimplePredicate(nameof(Group.Name), ValueComparingOperator.Equal, filter.GroupName);

            return(string.IsNullOrEmpty(filter.GroupName)
                ? query
                : query.Where(simplePredicate));
        }
 protected override IQuery <Group> ApplyWhereClause(IQuery <Group> query, GroupFilterDto filter)
 {
     return(string.IsNullOrWhiteSpace(filter.Name)
         ? query
         : query.Where(new SimplePredicate(nameof(Group.Name),
                                           ValueComparingOperator.StringContains,
                                           filter.Name)));
 }
Esempio n. 4
0
        protected override IQuery <Group> ApplyWhereClause(IQuery <Group> query, GroupFilterDto filter)
        {
            throw new NotImplementedException();

            /*
             * if (string.IsNullOrWhiteSpace(filter.Email))
             * {
             *     return query;
             * }
             * return query.Where(new SimplePredicate(nameof(AppUser.Email), ValueComparingOperator.Equal, filter.Email));
             */
        }
        public async Task <ActionResult> List(int page = 1)
        {
            var filter = new GroupFilterDto {
                PageSize = PageSize, RequestedPageNumber = page
            };
            var result = await GroupFacade.GetGroupsByFilterAsync(filter);

            // Paging
            ViewBag.RequestedPageNumber = result.RequestedPageNumber;
            ViewBag.PageCount           = (int)Math.Ceiling((double)result.TotalItemsCount / (double)PageSize);
            // Paging END

            return(View("List", result.Items));
        }
Esempio n. 6
0
        // GET: GroupManager
        public async Task <ActionResult> Index([FromUri] string subname)
        {
            var filter = new GroupFilterDto {
                SubName = subname
            };

            var user = await BasicUserFacade.GetUserByNickNameAsync(User.Identity.Name);

            var groups = await GroupGenericFacade.GetGroupsContainingSubNameAsync(subname);

            var basicUserWithGroups = await BasicUserFacade.GetBasicUserWithGroups(user.Id);

            return(View("GroupManagementView", new FindGroupsModel
            {
                Filter = filter,
                Groups = groups,
                User = basicUserWithGroups
            }));
        }
Esempio n. 7
0
        public async Task <IReadOnlyList <GroupDto> > GetGroups(
            GroupFilterDto filter,
            PaginationDto pagination)
        {
            var groups = await _uow.Groups.GetQuery()
                         .Include(group => group.StudentGroupRelations)
                         .Where(group =>
                                filter.Name.IsNullOrEmpty() || group.Name.ToUpper().Contains(filter.Name.ToUpper())
                                )
                         .Skip(pagination.Skip)
                         .Take(pagination.Take)
                         .Select(group => new GroupDto
            {
                Id           = group.Id,
                Name         = group.Name,
                StudentCount = group.StudentGroupRelations.Count
            })
                         .ToListAsync();

            return(groups);
        }
Esempio n. 8
0
 public async Task <QueryResultDto <GroupDto, GroupFilterDto> > GetGroupsByFilterAsync(GroupFilterDto filter)
 {
     using (UnitOfWorkProvider.Create())
     {
         return(await _groupService.ListGroupsAsync(filter));
     }
 }