Create an application for managing car rental services. The application should keep track of customers, available cars, bookings, and rentals.
Customers have a name, social security number (CNP), license serial number, phone, and address. Cars are identified by brand, model, year of manufacture, rental price per day, and stock.
A customer can reserve and rent multiple cars simultaneously depending on the stock, and a car brand can be reserved by multiple customers at the same time (since multiple cars are available).
To register a booking, information about the booking date, duration (days), customer, car, price per day, and the application will need to calculate the total price for the selected period.
The property "name" in the table "booking_state" can have the values: "Pending", "Processed" and "Canceled".
In entity "booking_state", name represents the state that will be displayed on the screen, label represents the value that programmer will use to filter the states, and the uuid represents a value to distinguish the states.
Each booking can be finalized through a rental.
Note: The value of the field "uuid" is generated automatically.