public async Task <ActionResult <TripRequest> > ApproveOrRejectRequest(int id, int Status) { var tripRequest = await _context.TripRequest.FindAsync(id); var trip = await _context.Trip.FindAsync(tripRequest.TripId); if (tripRequest == null) { return(NotFound()); } tripRequest.Status = Status; string passengerName = _context.User.Find(trip.DriverId).Username; if (Status == (int)TripRequestStatus.Approved) { string notificationText = ReplaceNotificationBody(passengerName, NotificationsTemplates.requestAccepted); PushNotification(notificationText, tripRequest.TripId, tripRequest.PassengerId); } if (Status == (int)TripRequestStatus.Reject) { string notificationText = ReplaceNotificationBody(passengerName, NotificationsTemplates.requestReject); PushNotification(notificationText, tripRequest.TripId, tripRequest.PassengerId); } await _context.SaveChangesAsync(); return(tripRequest); }
public async Task <ActionResult <Rating> > InsertNewRate([FromBody] Rating NewRate, int ratedUser) { NewRate.RatedUser = ratedUser; _context.Rating.Add(NewRate); await _context.SaveChangesAsync(); return(CreatedAtAction("GetRating", new { id = NewRate.Id }, NewRate)); }
public async Task <ActionResult <Report> > InsertNewReport([FromBody] Report NewReport, int id) { NewReport.ReportedUser = id; NewReport.ReportType = 1; _context.Report.Add(NewReport); await _context.SaveChangesAsync(); return(CreatedAtAction("GetReport", new { id = NewReport.Id }, NewReport)); }
public async Task <IActionResult> CreateNewTrip([FromBody] Trip trip) { try { trip.Status = (int)TripStatus.Opened; trip.IsArrived = false; _context.Trip.Add(trip); await _context.SaveChangesAsync(); } catch (Exception e) { throw e; } return(Ok()); }
public async Task <ActionResult <User> > SignUp([FromBody] User NewUser) { if (CheckUniqueUsername(NewUser.Username)) { return(BadRequest("Username is exist!")); } else if (CheckUniqueEmail(NewUser.Email)) { return(BadRequest("Email is exist!")); } else { NewUser.Password = Encrypt(NewUser.Password); _context.User.Add(NewUser); await _context.SaveChangesAsync(); return(CreatedAtAction("GetUser", new { id = NewUser.Id }, NewUser)); } }