-
Notifications
You must be signed in to change notification settings - Fork 0
Architecture Model
The Figma Design Tool was used at the beginning of the web fontend implementation in order to generate the first version of the layout.
The landing page displays information about the repair shop such as the offered services, opening hours, and contact information. It is the first page of the application. A user can then choose to log in or register from this page.
If a user already exists in the database, the login page will allow it to log into the application by providing a correct email and password. Otherwise, an error message will appear.
If a user does not have a profile, the register page will allow it to save its information into the database by providing a valid email, password, name, phone number, and address. If one of the parameters is incorrect, an error message will appear.
The user can access the welcome page once logged in. The GUI will vary according to the user type. A customer welcome page allows to see the appointments of the logged customer, book a new appointment and edit an existing appointment. A mechanic welcome page allows to see the schedule of the logged mechanic and edit the status of an appointment assigned to the logged mechanic. An administrative assistant welcome page allows to see the appointments, the schedules, the customer's profiles, and the employee's profiles of the entire database.
The edit profile page allows a user to change its personal information. Any new parameter must be valid for the editing to succeed. An error message will appear otherwise.
The booking page allows a user to book an appointment for a specific service at a specific date and time. The booked appointment is then showed on the user's welcome page.
The backend highlights the key services implemented for the car repair system. Through REST API method calls, the frontend interacts with the backend. The backend Service component interacts with the persistence component to get information from the database using the CRUD operations in the backend.