Exemplo n.º 1
0
        public MembershipApplicationSearchResultsResource SearchMembershipApplications(IPrincipal principle,
                                                                                       MembershipApplicationSearchRequest request)
        {
            var user         = _dependencies.UserService.GetGuaranteedAuthenticatedUser(principle);
            var organisation = _dependencies.OrganisationService.GetOrganisation(request.OrganisationId);

            _dependencies.OrganisationService.GuaranteeUserHasPermission(user, organisation,
                                                                         ShurahOrganisationPermission.AcceptMembershipApplication);

            return(new MembershipApplicationSearchResultsResource
            {
                OrganisationId = request.OrganisationId,
                Results = organisation.MembershipApplications.Where(
                    x => x.Acceptances.Count(a => !a.AcceptingMember.Removed)
                    < organisation.RequiredNumbersOfAcceptingMembers)
                          .OrderBy(x => x.DateAppliedUtc)
                          .Skip((request.Page - 1) * 10).Take(10).ToList()
                          .Select(BuildMembershipApplicationResource)
                          .ToList()
            });
        }
 public MembershipApplicationSearchResultsResource Post([FromBody] MembershipApplicationSearchRequest request)
 {
     return(_service.SearchMembershipApplications(User, request));
 }
Exemplo n.º 3
0
 public HttpResponseMessage Post(MembershipApplicationSearchRequest request)
 {
     return(Request.CreateResponse(HttpStatusCode.OK, _service.SearchMembershipApplications(User, request)));
 }