shirenekboyd / final-capstone-project

Restaurant Reservation System
0 stars 0 forks source link

US-06 Reservation Status #15

Open shirenekboyd opened 2 years ago

shirenekboyd commented 2 years ago

As a restaurant manager I want a reservation to have a status of either booked, seated, or finished so that I can see which reservation parties are seated, and finished reservations are hidden from the dashboard.

Acceptance Criteria

  1. The /dashboard page will
    • [x] display the status of the reservation. The default status is "booked" the status text must have a data-reservation-id-status={reservation.reservation_id} attribute, so it can be found by the tests.
    • [x] display the Seat button only when the reservation status is "booked".
    • [x] clicking the Seat button changes the status to "seated" and hides the Seat button.
    • [x] clicking the Finish button associated with the table changes the reservation status to "finished" and removes the reservation from the dashboard.
    • [x] to set the status, PUT to /reservations/:reservation_id/status with a body of {data: { status: "<new-status>" } } where <new-status> is one of booked, seated, or finished
shirenekboyd commented 2 years ago

Hint You can add a field to a table in a migration up method by defining a new column. E.g. table.string("last_name", null).notNullable(); will create a new last_name column. Be sure to remove the column in the down function using dropColumn(). E.g. table.dropColumn("last_name");

Hint Use Knex.transaction() to make sure the tables and reservations records are always in sync with each other.