public async Task UpdateServiceRequestResponseAsync(string id, ServiceRequestResponse response) { var filterById = Builders <ServiceRequestResponse> .Filter.Eq("Id", id); await campingTripContext.ServiceRequestResponses .ReplaceOneAsync(filterById, response, new UpdateOptions { IsUpsert = true }); }
public async void Put(string id, [FromBody] ServiceRequestResponse response) { var identity = (ClaimsIdentity)User.Identity; IEnumerable <Claim> claims = identity.Claims; var userIdClaim = claims.Where(claim => claim.Type == "user_id").First(); if (userIdClaim == null) { throw new Exception("user_id claim not found"); } if (!int.TryParse(userIdClaim.Value, out int userId)) { throw new Exception("Invalid value for user_id in users claims"); } if (userId != response.ProviderId) { return; } await campingTripRepository.UpdateServiceRequestResponseAsync(id, response); }
public async Task AddServiceRequestResponceAsync(ServiceRequestResponse response) { await campingTripContext.ServiceRequestResponses.InsertOneAsync(response); var filter = Builders <ServiceRequest> .Filter.Where(request => request.CampingTripId == response.CampingTripId); var filter1 = Builders <ServiceRequest> .Filter.Where(request => request.ProviderId == response.ProviderId); await campingTripContext.ServiceRequests.DeleteOneAsync <ServiceRequest>( request => request.CampingTripId == response.CampingTripId && request.ProviderId == response.ProviderId); }
public void AcceptRequest(object request) { var tokenResponse = tokenClient.RequestRefreshTokenAsync(ConfigurationManager.AppSettings["refreshToken"]).Result; httpClient.SetBearerToken(tokenResponse.AccessToken); var tripRequest = request as CampingTripRequests; var serviceRequestResponse = new ServiceRequestResponse() { CampingTripId = tripRequest.ID, Price = tripRequest.Price, ProviderRole = ConfigurationManager.AppSettings["role"], ProviderId = int.Parse(ConfigurationManager.AppSettings["userId"]), ResponseValidityPeriod = tripRequest.ArrivalDate }; var response = httpClient.PostAsync("api/ServiceRequestResponses", new StringContent(JsonConvert.SerializeObject(serviceRequestResponse), Encoding.UTF8, "application/json")).Result; if (response.IsSuccessStatusCode) { this.CampingTripRequests.Remove(request as CampingTripRequests); } }
public void Post([FromBody] ServiceRequestResponse response) { campingTripRepository.AddServiceRequestResponceAsync(response); }