9b7d9cf7c19798aa2bd26baebde4e416b27ad7c4
<UserStory> SER001: Assign job to technician </UserStory>
<Changes>
1. Added ServiceManagementService logic to retrieve service bookings and create job cards for assigned technicians.
2. Added UserManagementService support to retrieve technicians by user type and fetch technician details by ID.
3. Connected Controller methods with ServiceManagementService and UserManagementService for service booking retrieval, technician listing, and job card creation.
4. Updated JobCard model to use util::ServiceJobStatus consistently and simplified constructor initialization for assigned and completion timestamps.
5. Added PENDING status in ServiceJobStatus enum for identifying unassigned service bookings.
6. Implemented AdminMenu job assignment flow to list pending service bookings, display available technicians, allow technician selection, and assign jobs for services in the booking.
7. Added notification trigger during job card creation for assigned technicians.
</Changes>
<Test>
Job assignment functionality validation
Precondition:
1. System is running.
2. Pending service bookings are available in the system.
3. Technician users are available in the system.
4. Admin user is logged in and admin menu is active.
Steps:
1. Launch the application and log in as an admin.
2. Select the Assign Job option from the admin menu.
3. View the list of available pending service bookings.
- Verify that pending bookings are displayed.
4. Select a valid service booking.
5. View the list of available technicians.
- Verify that technicians are listed for selection.
6. Select a technician to assign the job.
- Verify that job cards are created for services in the booking.
- Verify that assigned jobs are visible in the technician’s menu.
- Verify that a confirmation message is shown.
- Verify that a confirmation notification is sent to the assigned technician.
</Test>
<Review>
Sreeja Reghukumar, please review
</Review>
Introduction
TODO: Give a short introduction of your project. Let this section explain the objectives or the motivation behind this project.
Getting Started
TODO: Guide users through getting your code up and running on their own system. In this section you can talk about:
- Installation process
- Software dependencies
- Latest releases
- API references
Build and Test
TODO: Describe and show how to build your code and run the tests.
Contribute
TODO: Explain how other users and developers can contribute to make your code better.
If you want to learn more about creating good readme files then refer the following guidelines. You can also seek inspiration from the below readme files:
Description
Releases
3
Languages
C++
99.3%
C
0.7%