public IActionResult GetWishTrip(int id) { var TripFromRepo = TripsRepository.GetTrip(id); if (TripFromRepo == null) { return(NotFound()); } TripDto TripDone = CustomMapper.MapTripTripDto(TripFromRepo); return(Ok(TripDone)); }
public IActionResult DeleteTripForCustomer() { var customerid = User.Claims.FirstOrDefault(c => c.Type == Helpers.Constants.Strings.JwtClaimIdentifiers.CustomerId)?.Value; if (customerid == null) { return(BadRequest()); } var trip = _tripsRepo.GetTrip(Guid.Parse(customerid)); if (trip == null) { return(NotFound()); } if (trip.DriverId != null) { ModelState.AddModelError(nameof(Trip), "Driver already assigned"); return(BadRequest(ModelState)); } //TODO : refund var customer = _usersRepository.GetCustomerById(Guid.Parse(customerid)); if (customer == null) { return(NotFound()); } var res = Refund.Create((ulong)trip.ContractId, new DefaultControllerPattern(), new User { PrivateKey = customer.Identity.PrivateKey }, ModelState); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var result = _tripsRepo.RemoveTrip(Guid.Parse(customerid)); if (!result) { return(Conflict()); } return(NoContent()); }