public HttpResponseMessage SaveSponsorship(HttpRequestMessage request, SponsorshipViewModel sponsorship) { var newSponsorship = sponsorship.ReverseMap(); var existing = _studentApi.GetSponsorship(sponsorship.ID); _studentApi.SaveSponsorship(newSponsorship); if (existing == null) { var sponsor = _sponsorApi.GetSponsor(newSponsorship.SponsorId); var points = newSponsorship.Rating * 10; sponsor.BursifyScore += points; _sponsorApi.SaveSponsor(sponsor); } var model = new SponsorshipViewModel(); var sponsorshipVm = model.SingleSponsorshipMap(newSponsorship); var response = request.CreateResponse(HttpStatusCode.OK, sponsorshipVm); return(response); }
public HttpResponseMessage GetSearchSponsorships(HttpRequestMessage request, string criteria) { var sponsorships = _studentApi.SearchSponsorships(criteria); var sponsorshipVm = SponsorshipViewModel.MultipleSponsorshipsMap(sponsorships); var response = request.CreateResponse(HttpStatusCode.OK, sponsorshipVm); return(response); }
public HttpResponseMessage GetSponsorship(HttpRequestMessage request, int sponsorshipId, int userId) { var sponsorship = _studentApi.GetSponsorship(sponsorshipId, userId); var model = new SponsorshipViewModel(); var sponsorshipVm = model.SingleSponsorshipMap(sponsorship); sponsorshipVm.ApplicantCount = _sponsorApi.GetStudentsApplying(sponsorshipVm.ID).Count; sponsorshipVm.SponsorPicturePath = _sponsorApi.GetUserInfo(sponsorshipVm.SponsorId).ProfilePicturePath; var response = request.CreateResponse(HttpStatusCode.OK, sponsorshipVm); return(response); }
public HttpResponseMessage GetAllSponsorships(HttpRequestMessage request, string type) { var sponsorships = _studentApi.GetAllSponsorships(type); var sponsorshipVm = SponsorshipViewModel.MultipleSponsorshipsMap(sponsorships); foreach (var sponsorship in sponsorshipVm) { sponsorship.ApplicantCount = _sponsorApi.GetStudentsApplying(sponsorship.ID).Count; sponsorship.SponsorPicturePath = _sponsorApi.GetUserInfo(sponsorship.SponsorId).ProfilePicturePath; } var response = request.CreateResponse(HttpStatusCode.OK, sponsorshipVm); return(response); }