public async Task <bool> CreateNewCabRequest(CabRequest cabRequest) { var uri = new Uri(string.Format(AppServerConstants.CabRequestsUrl, string.Empty)); HttpResponseMessage responseMessage = null; try { var json = JsonConvert.SerializeObject(cabRequest); var content = new StringContent(json, Encoding.UTF8, "application/json"); responseMessage = await client.PostAsync(uri, content); if (responseMessage.IsSuccessStatusCode) { Debug.WriteLine("POST 201 OK: Cab request successfully submitted"); return(true); } else { Debug.WriteLine(@"POST {0} NOT OK: Cab request failed", responseMessage.StatusCode); } } catch (Exception ex) { Debug.WriteLine(@"ERROR: {0}", ex.Message); } return(false); }
public async Task <bool> CancelCabRequestByPassenger(CabRequest cabRequest) { var uri = new Uri(string.Format(AppServerConstants.CabRequestsUrl, cabRequest.CabRequestId)); HttpResponseMessage responseMessage = null; try { responseMessage = await client.DeleteAsync(uri); if (responseMessage.IsSuccessStatusCode) { Debug.WriteLine("POST 201 OK: Cab request successfully cancelled (passenger)"); return(true); } else { Debug.WriteLine(@"POST {0} NOT OK: Cab request cancellation failed", responseMessage.StatusCode); } } catch (Exception ex) { Debug.WriteLine(@"ERROR: {0}", ex.Message); } return(false); }
private async Task <bool> UpdateAcceptedCabRequest(int cabRequestId, CabRequest request) { request.IsAccepted = true; request.ModifiedDateTime = DateTime.Now; var uri = new Uri(string.Format(AppServerConstants.CabRequestsUrl, cabRequestId)); HttpResponseMessage responseMessage = null; try { var json = JsonConvert.SerializeObject(request); var content = new StringContent(json, Encoding.UTF8, "application/json"); responseMessage = await client.PutAsync(uri, content); if (responseMessage.IsSuccessStatusCode) { Debug.WriteLine("POST 201 OK: Cab request successfully updated"); return(true); } else { Debug.WriteLine(@"POST {0} NOT OK: Cab request update failed", responseMessage.StatusCode); } } catch (Exception ex) { Debug.WriteLine(@"ERROR: {0}", ex.Message); } return(false); }
public async Task <IActionResult> PutCabRequest([FromRoute] int id, [FromBody] CabRequest cabRequest) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != cabRequest.CabRequestId) { return(BadRequest()); } _context.Entry(cabRequest).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CabRequestExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public CRSelectedPage(CabRequest cabRequest) { InitializeComponent(); selectedRequest = cabRequest; BindingContext = selectedRequest; }
public CRSelectedPage(CabRequest cabRequest) { InitializeComponent(); selectedCabRequest = cabRequest; BindingContext = selectedCabRequest; FullName.Text = string.Format("{0} {1}", cabRequest.Passenger.FirstName, cabRequest.Passenger.LastName); }
public async Task <IActionResult> PostCabRequest([FromBody] CabRequest cabRequest) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _context.CabRequests.Add(cabRequest); await _context.SaveChangesAsync(); return(CreatedAtAction("GetCabRequest", new { id = cabRequest.CabRequestId }, cabRequest)); }
private async void RequestCabBtn_Clicked(object sender, EventArgs e) { string confirmBookingText = string.Format("Do you wish to confirm your cab request as follows:\n\nPickup Location: {0}\nDropoff Location: {1}\nPickup Date: {2:D}\nPickup Time: {3}\nNo. of Passengers: {4}\nLadies Only?: {5}\nAdditional Notes: {6}", (PickUpPicker.SelectedItem as Location).LocationName, (DropOffPicker.SelectedItem as Location).LocationName, PickUpDatePicker.Date.ToString("ddd, d MMM yyyy"), DateTime.Today.Add(PickUpTimePicker.Time).ToString("h:mm tt"), NoOfPassengersPicker.SelectedItem, LadiesOnlyPicker.SelectedItem, AdditionalNotesEditor.Text); bool confirmBooking = await DisplayAlert("Request Cab", confirmBookingText, "Yes", "No"); if (confirmBooking) { // add operations to book a cab DateTime dateTime = PickUpDatePicker.Date + PickUpTimePicker.Time; CabRequest cabRequest = new CabRequest { PickUpLocationId = (PickUpPicker.SelectedItem as Location).LocationId, DropOffLocationId = (DropOffPicker.SelectedItem as Location).LocationId, PickUpDateTime = dateTime, NoOfPassengers = Convert.ToInt32(NoOfPassengersPicker.SelectedItem), IsLadiesOnly = (LadiesOnlyPicker.SelectedItem.Equals("Yes")) ? true : false, AdditionalNotes = AdditionalNotesEditor.Text, PassengerId = App.CurrentPassenger.PassengerId }; bool IsSubmitted = await App.CabManager.CreateNewCabRequest(cabRequest); if (IsSubmitted) { await DisplayAlert("Request Cab", "Your cab request is being processed. You will be notified once it is accepted by any of our drivers.", "OK"); } else { await DisplayAlert("Request Cab", "Your cab request could not be processed. Please contact technical support.", "OK"); } } else { await DisplayAlert("Request Cab", "You have not proceeded with your cab request.", "OK"); } await Navigation.PopToRootAsync(); }
public async Task <CabRequest> GetCabRequestById(int cabRequestId) { CabRequest cabRequest = new CabRequest(); var uri = new Uri(string.Format(AppServerConstants.CabRequestsUrl, cabRequestId)); try { var response = await client.GetAsync(uri); if (response.IsSuccessStatusCode) { var content = await response.Content.ReadAsStringAsync(); cabRequest = JsonConvert.DeserializeObject <CabRequest>(content); } } catch (Exception ex) { Debug.WriteLine(@"ERROR: {0}", ex.Message); } return(cabRequest); }
public Task <bool> CancelCabRequestByPassenger(CabRequest fulfillment) { return(cabService.CancelCabRequestByPassenger(fulfillment)); }
public Task <bool> AcceptCabRequest(CabRequest cabRequest, int driverId) { return(cabService.AcceptCabRequest(cabRequest, driverId)); }
public Task <bool> CreateNewCabRequest(CabRequest carpoolOffer) { return(cabService.CreateNewCabRequest(carpoolOffer)); }