Using OO principles to design a cab rental application - I am going to use Java
Users should be able to create an account for them to book vehicles of the below types.
- HATCHBACK
- SUV
- SEDAN
- THREEWHEELER
- TRUCK
- VAN
- MOTORCYCLE
- BICYCLE
Admin should be able to add vehicle to inventory.
Users should be able to book an available vehicle.
Users should be able to scan qrCode of the vehicle and book (walkin booking).
Users can pick booked vehicle from the available from the designated places.
Users should be able to cancel the booking.
Users should be able to return the vehicle post usage.
Users get invoice for payment post returning the vehicle.
Users Should get remainder notification a day before their booking.
Users should be able to choose and add devices and services to the vehicles while they book.
System should be provide APIs to search for vechicles booked by users by user id and for a particular interval.