public IActionResult CreatePickUpRequest([FromBody] PickUpRequestModel model) { try { if (!ModelState.IsValid) { return(BadRequest(ModelState.Values.SelectMany(err => err.Errors[0].ErrorMessage))); } int result = _pickUp.RequestPickUp(model); if (result == 0) { return(BadRequest(new { message = "Failed to create a pickup" })); } return(Ok(new { message = "Pick up requested created!" })); } catch (MySqlException sqlException) { Console.WriteLine(sqlException); return(StatusCode(500, new { error = "Something went horribly wrong" })); } catch (Exception e) { return(StatusCode(500, new { message = e.Message })); } }
public int RequestPickUp(PickUpRequestModel model) { AuthenticatedUserClaimsModel userClaims = _userSvc.GetUserClaims(); const string sql = "INSERT INTO PickupRequests (UserId, DropOffZoneId, Location, Latitude, Longitude, ContactName, ContactNumber, Status, Notes) VALUES (@UserId, @DropOffZoneId, @Location, @Latitude, @Longitude, @ContactName, @ContactNumber, @Status, @Notes);"; int rows = _dbConnection.Connection.Execute(sql, new { userClaims.UserId, model.DropOffZoneId, model.Location, model.Latitude, model.Longitude, model.ContactName, model.ContactNumber, Status = PickUpStatus.Pending, model.Notes }); return(rows); }