示例#1
0
 public HttpResponseMessage Get([FromQuery] ProposalFilterModel filter)
 {
     try
     {
         var proposals = _operations.GetProposals(filter).ToList();
         return(new HttpResponseMessage()
         {
             StatusCode = HttpStatusCode.OK,
             Content = new ObjectContent <List <ProposalViewModel> >(proposals, _formatter)
         });
     }
     catch (Exception ex)
     {
         return(new HttpResponseMessage()
         {
             StatusCode = HttpStatusCode.InternalServerError,
         });
     }
 }
        public IEnumerable <ProposalViewModel> GetProposals(ProposalFilterModel filter)
        {
            var proposals = _repositoryManager.Proposals.GetAll();

            proposals = filter.Filter(proposals);

            return(proposals.Select(p => new ProposalViewModel
            {
                Id = p.Id,
                Rate = p.Rate,
                User = new UserViewModel
                {
                    Id = p.User.Id,
                    Firstname = p.User.Firstname,
                    Lastname = p.User.Lastname,
                    Location = new LocationModel
                    {
                        Id = p.User.LocationId ?? 0,
                        Country = p.User.Location.Country
                    }
                },
                WorkId = p.WorkId ?? 0
            }));
        }
        public IEnumerable <ProposalViewModel> GetProposalsForWork(int workId, ProposalFilterModel filter)
        {
            filter.WorkId = workId;

            return(GetProposals(filter));
        }