Skip to main content

Dispatcher Management System : User Story ( WX05US05 )

1. Problem Statement

Core Problem: Dispatchers lack a unified, intelligent dispatch management system that provides real-time visibility into service order queues, technician availability, and assignment optimization capabilities. This forces them to rely on manual processes, fragmented information sources, and intuition-based decisions, resulting in inefficient resource utilization, delayed service delivery, uneven workload distribution, and inability to meet service level agreements consistently.

Dispatcher Pain Points:

  1. Fragmented Information Management - Service orders, technician data, and workload information scattered across multiple systems
  2. Manual Assignment Process - Time-consuming manual matching of service orders to available technicians
  3. Limited Real-time Visibility - Cannot see real-time technician locations, availability, or workload status
  4. Inefficient Resource Optimization - Unable to optimize assignments based on geography, skills, and priority
  5. Poor SLA Management - Difficulty tracking and meeting service level commitments

2. Who Are the Users Facing the Problem?

Primary User:

  • Dispatcher: Coordinates and assigns field service orders to technicians, manages schedules, and ensures optimal resource utilization

Secondary Users:

  • O&M Manager: Oversees overall field operations and resource allocation
  • Field Force Technicians: Receive assigned orders and update status

3. Jobs To Be Done

For Dispatcher: When I need to efficiently manage and assign multiple pending service orders to optimize field operations, But I currently lack a unified system that provides real-time visibility into service queues, technician availability, and intelligent assignment recommendations, Help me access a comprehensive dispatch management interface with bulk assignment capabilities, real-time dashboards, and automated optimization tools, So that I can reduce assignment time by 70%, improve resource utilization, ensure SLA compliance, and maintain operational efficiency across the entire service territory.

4. Solution

The Unified Dispatch Management System provides a comprehensive dispatch console that centralizes service order management, technician tracking, and intelligent assignment capabilities into a single interface.

Key Capability Areas:

Service Order Management

  • Multi-Select Interface: Checkbox-based selection for individual or bulk service order selection
  • Smart Filtering: Filter pending orders by priority, service association, area, and creation date
  • Visual Status Indicators: Color-coded priority levels and status badges for quick identification

Intelligent Assignment Engine

  • Geographical Optimization: Automatic matching based on technician best match % and service area coverage
  • Skill-Based Matching: Assignment based on required skills and technician certifications
  • Workload Balancing: Distribution considering current technician assignments and capacity

Bulk Assignment Interface

  • Technician Availability Dashboard: Real-time view of technicians with location and workload information with best match and utlitization %

Assignment Optimization

  • Optimization: Suggest optimal assignment sequences to minimize travel time
  • Priority Handling: Automatic escalation for critical and overdue service orders
  • Capacity Management: Prevent overloading of individual technicians

Real-Time Monitoring

  • Assignment Status Tracking: updates on assignment progress and completion
  • Performance Metrics: Assignment efficiency, technician utilization, and SLA compliance tracking
  • Geographic Visualization: Map-based view of service orders

Reporting and Analytics

  • Assignment Performance Reports: Detailed analysis of assignment efficiency and outcomes
  • Resource Utilization Metrics: Technician productivity and capacity analysis
  • Trend Analysis: Historical patterns and optimization opportunities identification

5. Major Steps Involved

For Dispatcher - Service Order Assignment Flow:

Access Pending Service Orders

  1. Navigate to Dispatcher dashboard from main navigation
  2. Review pending service order queue with metrics overview
  3. Examine overdue and critical priority orders requiring immediate attention
  4. View dashboard with summary cards showing total orders, created this month, overdue orders, and refused orders

Filter and Search Service Orders

  • Use "Search and Filters" section to narrow down service orders
  • Apply filters for Service Association (All Associations dropdown)
  • Filter by Status (All Status dropdown)
  • Filter by Priority (All Priorities dropdown)
  • Filter by Area (All Areas dropdown)
  • Enter specific search terms in "Search by SO ID or SO Name" field

Create New Service Orders (if needed)

  1. Click "Create Service Order" button
  2. Select appropriate SOP template from categorized list - meter , consumer and asset
  3. with a search bar to choose - when meter is selected it shows associated meters, when consumer then associated consumer, when asset then associated asset in a table with pagination
  4. Set priority and notes.
Bulk assignment -

Select Service Orders for Assignment

  • Review service orders table with columns: SO ID, SO Name, Priority, Area, Sub Area, Service Association, Status, Created On, Actions
  • Use individual checkboxes to select specific service orders
  • Use master checkbox to "Select All" visible service orders
  • Review selected count displayed as "Service Orders (10) - 10 selected"
  • select all the service orders from the pending service order tab
  • Click "Assign" button
  • System opens "Assign Technician" modal dialog
  • Confirm bulk assignment for all selected order
  • toggle between map view and list view

Execute Assignment Options

  • Click "Auto-Assign Best Match" for system-recommended assignments
  • Click "Assign to 1 Order" for manual selection
  • Click "Cancel" to abort the assignment process

Assigned service orders

  1. Monitor Assignment Dashboard
    • Access "Assigned Service Orders" tab
    • Review assignment status cards: Assigned Service Orders, Accepted Service Orders, In Progress Service Orders, Refused Service Orders
    • Monitor real-time updates of assignment progress
  2. Review Individual Assignments
    • View assigned orders table with technician details, reference numbers, priorities, and ETAs
    • Access individual service order details by clicking on SO ID links
    • Monitor assignment status changes from "Created" to "In Progress" to "Accepted"
  3. Handle Reassignment Requests
    • Access "Reassign Technician" functionality for problematic assignments
    • Search available technicians using "Search Technicians" interface
    • Review technician capabilities and current workload before reassignment

Completed Service Orders

  1. Access Completed Service Orders Dashboard
    • Navigate to "Completed Service Orders" tab
    • View performance metrics cards: Total Service Orders (1,247), Total Assigned Orders (89), Total Completed Orders (1,158), Average Completion Time (2h 35m)
    • Monitor completion trends and operational efficiency
  2. Filter and Search Completed Orders
    • Use "Search and Filters" section to analyze specific completed orders
    • Apply filters for Service Association (All Associations dropdown)
    • Filter by SLA Status (All SLA Status dropdown)
    • Filter by Performance (All Performance dropdown)
    • Filter by SO Status (All SO Status dropdown)
    • Enter specific search terms in "Search by SO ID, Name, Reference Number, or Technician" field
  3. Review Completed Orders Table
    • Analyze completed orders with columns: SO ID, SO Name, Reference No., Service Association, Technician, Status, SLA Compliance, Created On, Assigned On, Completed On, Time Taken, Actions
    • Review SLA compliance indicators (Within SLA - green, Overdue - red)
    • Monitor time taken for different service types and technicians
    • Check completion status and service quality indicators
  4. Access Individual Completed Order Details
    • Click on view detailed completion reports
    • Review service order timeline from creation to completion
    • Monitor job requirements completion: actual vs. estimated comparisons

Service Order History Management

  1. Access Service Order History Dashboard
    • Navigate to "History Service Orders" tab
    • View historical metrics cards: Total Service Orders (8), Completed Service Orders (6), Approved Service Orders (6), Rejected Service Orders (2)
    • Monitor long-term trends and historical performance patterns
  2. Filter Historical Data
    • Use "Search and Filters" section for historical analysis
    • Apply filters for Service Association (All Associations dropdown)
    • Filter by Status (All Status dropdown)
    • Filter by SLA compliance (All SLA dropdown)
    • Enter search terms in "Search service orders..." field
    • Use "Clear Filters" button to reset all applied filters
  3. Review Historical Orders Table
    • Analyze historical data with columns: SO ID, SO Name, Reference No., Service Association, Technician, Status, Created On, Assigned, Expected, Completed, Actions
    • Track service order lifecycle from creation through completion
    • Monitor assignment patterns and completion trends over time
    • Review technician performance history and service delivery patterns

6. Flow Diagram

image.png

7. Business Rules

General Rules:

  • Service Order ID Generation: System automatically generates sequential service order IDs in format "SO####" where #### is a 4-digit incremental number
  • Service Order Status Workflow: Orders progress through defined statuses: Created → Assigned → Accepted → In Progress → Completed
  • Priority Level Hierarchy: Critical > High > Medium > Low, with SLA timelines automatically calculated based on priority
  • Geographic Area Association: All service orders must be associated with a valid geographic area and sub-area from the system master data

Create Service Order Interface Rules

SOP Template Selection Rules

  • Template Categories: "All Categories" dropdown filters SOP templates by service type (Meter, Consumer, Asset,)
  • Template Search: "Search templates..." field accepts minimum 3 characters and searches by template name and shortname
  • Template Availability: all the templates will be shown that have been created in the master
  • Template Time Estimates: Each template displays estimated time (TAT: 3h 30m, 2h 15m, 1h 30m, 4h 00m) from thr craeted sop
  • Template Service Association: Templates are categorized by service type: METER,consumer,asset
  • Template Descriptions: Each template includes detailed description of work to be performed (e.g., "Replace an existing meter with a new one")

Meter Selection Rules

  • Meter Search: "Search by meter number, type, or premise..." field requires minimum 3 characters and searches across meter number, device number, premise details
  • Area Filter: "All Areas" dropdown filters meters by geographical location
  • Meter Type Compatibility: Service order templates must be compatible with meter type (mannual, photo. Smart)
  • Pagination: Meter list displays 5 entities per page with "Page 1 of 2" navigation controls
  • meter details include -
  • Selected Meter Indicators: Selected meter IDs display as blue tags (MTR-001, MTR-002, MTR-003) with removal capability
  • Select All Functionality: "Select All" checkbox selects all visible meters on current page only

Consumer Selection Rules

  • Consumer Search: "Search by name, account number, or phone..." field requires minimum 3 characters and searches across consumer name, account number, and phone number
  • Area Filter: "All Areas" dropdown filters consumers by geographical location
  • consumer details include -
  • Pagination: Consumer list displays 5 entities per page with "Page 1 of 2" navigation controls
  • Selected Consumer Indicators: Selected consumer IDs display as blue removal tags (×) with removal capability
  • Select All Functionality: "Select All" checkbox selects all visible consumers on current page only

Asset Selection Rules

  • Asset Search: "Search by asset name, ID, or type..." field requires minimum 3 characters and searches across asset name, asset ID, and asset type
  • Area Filter: "All Areas" dropdown filters assets by geographical location
  • asset details include -
  • Pagination: Asset list displays 5 entities per page with "Page 1 of 2" navigation controls
  • Selected Asset Indicators: Selected asset IDs display as blue removal tags (×) with removal capability
  • Select All Functionality: "Select All" checkbox selects all visible assets on current page only

Available Technicians Rules

  • Technician Search: "Search by name, ID, or skills..." field searches across technician name, ff ID, and skills
  • Skill Filtering: Technicians displayed based on compatibility with selected SOP template requirements
  • Workload Display: Shows current active assignments count with color coding: Green (0-2), Yellow (3-4), Red (5+)
  • Skill Match Display: Shows primary skills and additional skills count (+1, +3 format) beyond minimum requirements , when hover over +1 shows all the skills
  • Distance Calculation: Real-time distance calculation -
  1. Distance Calculation Method: For technicians with active workload (>0), distance is calculated from their nearest assigned service order location to the new service location "X"
  2. Ranking Priority Order:
    • Step 1: Rank technicians by proximity of their nearest assigned order to location "X" (closest first)
    • Step 2: For technicians at equal distances, prioritize by lower workload count
    • Step 3: Include zero-workload technicians in ranking based on their base location distance to "X"

Example Ranking Scenario:

Given: Service location "X" and 7 technicians with workloads:

T1: 2 workloads, T2: 1 workload, T3: 5 workloads, T4: 6 workloads,

T5: 7 workloads, T6: 2 workloads, T7: 0 workloads

Ranking Process:

1. Check distance from each technician's nearest assigned order to location "X"

2. If T3 has nearest assigned order to "X" → T3 ranked first

3. If T1 and T2 both have equal second nearest distance → T2 ranked higher (lower workload)

4. T7 (zero workload) distance - NA

  • Auto Assign Button: on the basis of the best match, if both the best matches are of of same % then prefer the one which has the less workload

Nearby Service Orders Rules

  • Proximity Detection: Automatically detects service orders top 5 nearby
  • Best Match Calculation: "Best Match 95%" calculated based on: 40% proximity, 30% skill compatibility, 20% priority level, 10% estimated completion time. calculating formula -
  • Service Order Display: Shows SO ID, service type, priority level, location details, and distance (30min)
  • the available techncian modal will open when clicked on created service order.
  • the check boxes will be disabled on the pending service order tab if already assigned technician. ***
  • Priority Indicators: Color-coded priority badges: Medium (orange), High (red), Low (green)
  • Location Format: Displays area (Sector 15 Block A, Sector 16 Block C)

Service Order Success Confirmation Rules

  • when clicked on the create service order button it opens a modal to assign the technician
  • once the techncian is assigned , shows the preview
  • SOP Details Summary: Shows SOP Name, Association, Estimated Time, and SLA duration
  • Order Details Summary: Shows Priority level, Entities Selected count, Mode (Bulk), and Created On timestamp
  • Selected Entities Display: Lists all selected meter IDs (MTR-001, MTR-002, MTR-003) as blue tags
  • Action Options: "Close" button to return to dashboard, "Create Another Order" button to start new order
  • show technician details as

Bulk Assign - Dispatcher Flow

1. Service Order Selection Rules

  • The user can select one or more Service Orders (SOs) using:
    • Individual checkboxes next to each SO - for the service orders where technician is already assigned the the checkbox will be disabled. only the service orders that has no techncian assigned will be open to select.
    • The "Select All" checkbox to select all currently visible SOs
    • Filtered results - all association - meter,consumer,asset. status - created,overdue.priority - critical,high,medium,low, area
    • toggle between list and map view.
    • in the map view all the selected entities from the list will be shown.

3. Bulk Assign Action Rules

  • Clicking Bulk Assign opens a Technician Assignment Modal

4. Technician Assignment Modal Rules

  • Modal displays:
    • Summary of total selected SOs
    • Expected Date (latest among selected SOs)
    • Required Skills (aggregated from all selected SOs)
  • Each technician card in the modal shows:
    • Name and ID
    • Distance (from SO location)
    • Workload (current open SOs assigned)
    • Skills
    • Best Match % (skill + proximity based relevance score)
    • Utilization %
  • Sort technicians in descending order of Best Match % (default behavior)

5. Best Match % Calculation Rules

  • Best Match is based on:
    • skills
    • distance
    • availablility score



6. Utilization % Calculation Rules

  • Utilization % = (Current Assigned SOs / Maximum Allowable SOs) * 100
  • Displayed to help dispatchers avoid over-allocating work


Status Tracking Rules:

  • Overdue Calculation: Orders past SLA due time automatically flagged as overdue (overdue shows after - 48 hours)
  • Refused Order Handling: System tracks refusal
  • Completion Metrics: System calculates completion rates, average resolution times (2h 35m average shown), and SLA compliance percentages
  • Real-time Updates: Order status changes trigger immediate dashboard updates

Performance Tracking Rules:

  • SLA Compliance Calculation: (Completed within SLA / Total Completed Orders) × 100
  • Time Taken Calculation: Difference between "Assigned On" and "Completed On" timestamps

8. Sample Data

Service Order Sample Data:

Service Orders:
- SO001: Meter Replacement - Downtown (Critical Priority, ₹1500, 3h 30m estimate)
- SO002: Consumer Connection Issue (High Priority, Suburbs area, 5 services affected)
- SO003: Asset Maintenance Check (Medium Priority, Industrial area, 1 service)

Technicians:
- John Smith (FF001): Skills - Meter Installation, Electrical Work (+1), Workload: 0, Distance: 2.3km
- Sarah Johnson (FF002): Skills - Consumer Services, Billing Issues (+1), Workload: 3, Distance: 1.8km  
- Mike Wilson (FF003): Skills - Meter Installation, Equipment Repair (+2), Workload: 7, Distance: 4.2km

Completed Orders Sample:
- SO-2024-001: Meter Installation (John Smith, 4h 45m completion, Within SLA)
- SO-2024-002: Consumer Service (Sarah Johnson, 7h 45m completion, Overdue)
- SO-2024-003: Asset Maintenance (Mike Chen, 3h 15m completion, Within SLA)

Dashboard Metrics Sample:

Pending Orders: 10 (All pending orders)
Created This Month: 10 (New orders in May)
Overdue Orders: 3 (Past 48 hours)
Refused Orders: 2 (Declined by technicians)

Assigned Orders: 4 (Currently assigned to field technicians)
Accepted Orders: 1 (Accepted and ready for execution)
In Progress Orders: 2 (Currently being executed)
Refused Orders: 1 (Declined by assigned technicians)

Completed Orders: 1,158 (Successfully completed)
Total Service Orders: 1,247 (All orders created)
Total Assigned Orders: 89 (Currently in progress)
Average Completion Time: 2h 35m (Average resolution time)

9. Acceptance Criteria

  1. The system must display a unified dashboard showing pending, assigned, completed, and historical service orders with real-time counts
  2. The system must allow filtering of service orders by Associations (All/Meter/Consumer/Asset), Status (All/Created/Assigned/Overdue), Priority (All/Critical/High/Medium/Low), and Areas (All/Downtown/Suburbs/Industrial) , so name - and for completed and history an additional of - sla ( within sla/ sla breeched )
  3. all tabs - pending , assigned , completed , history should have search bar
  4. The system must provide service order creation functionality using predefined SOP templates with estimated cost, est tat time ,downtime & est effort , so name, description, short name, sla
  5. The system must display available technicians with search bar to serach technicians ,expected date, skills, summary ( service orders, total services ) , technician name , technician id, workload, distance
  6. The system must support both individual order assignment and bulk assignment capabilities
  7. The system must track and display service order progression through statuses: Created → Assigned → Accepted → In Progress → Completed/Refused
  8. The system must calculate and display completed so - SLA compliance, pending so - overdue orders identification, and completed so - completion time metrics
  9. The system must provide bulk assignment functionality with filtering, service details preview, and list/map view options
  10. The system must display service association details including meter numbers, device numbers, premises information, and service counts
  11. the view in every tab - pending ,assigned , completed & history shows view with its relative service association. - if meter - Meter No,Device No,Premise,Physical StatusNew,Reading status,Assignment status. for consumer - Account No,Name,Phone No,Area,SubArea,Premise and consumer history ( top 3 ) - Date,Type,Status. for asset - Asset Id,Asset Name,Location,Condition,RPN,Status
  12. The system must provide real-time updates when service order status changes or technician availability changes
  13. The system must track and display performance metrics including total cost,total time,downtime,efficiency in completed so view.
  14. The system must allow order reassignment when technicians refuse or cannot complete assigned orders
  15. The system must provide geographical clustering for bulk assignments to minimize travel time
  16. The system must display required skills matching before allowing technician assignment to service orders
  17. The system must display order creation timestamps, assignment timestamps, and expected completion dates
  18. The system must support search functionality across service orders by ID, name, reference number, or technician respectively in all the 4 tabs
  19. The system must provide service order details view with comprehensive information including job requirements, materials, and task descriptions, reading , help.
  20. The system must provide service order details view with reports (est vs actual ) in completed so tab.
  21. The system must provide service order details view with reports (est vs actual ) and timeline in history tab

10. Process Changes

Current Process

New Process

Impact

From:

Manual service order tracking using spreadsheets and phone calls

To:

Unified digital dashboard with real-time status updates

40% reduction

in order tracking time and

90% improvement

in status visibility accuracy

From:

Intuition-based technician assignment without skills or location consideration

To:

Algorithm-driven assignment based on skills matching, geographic proximity, and workload balancing

35% improvement

in first-time resolution rate and

25% reduction

in travel time

From:

Individual order assignment only, processing one order at a time

To:

Bulk assignment capability for multiple compatible orders with geographic optimization

60% reduction

in assignment processing time for high-volume periods

From:

Manual SLA tracking with no automated alerts for overdue orders

To:

Automated SLA calculation, monitoring, and alert system with priority-based escalation

50% improvement

in SLA compliance rate and

80% reduction

in overdue order resolution time

From:

Phone-based communication for order updates and technician coordination

To:

Automated notifications and digital communication through integrated messaging

70% reduction

in communication overhead and

immediate

status update visibility

From:

Reactive workload management with no visibility into technician capacity

To:

Proactive workload balancing with real-time capacity monitoring and optimization

30% improvement

in resource utilization and

45% reduction

in technician overtime

From:

Paper-based or separate system for service order creation without templates

To:

Template-based digital order creation with automatic cost and time estimation

50% reduction

in order creation time and

90% improvement

in order accuracy

From:

No performance metrics or historical analysis capabilities

To:

Comprehensive analytics dashboard with completion rates, efficiency metrics, and trend analysis

Real-time

performance insights enabling

20% improvement

in operational efficiency

11. Impact from Solving This Problem

Metric Category

Impact Description

Operational Efficiency

60% reduction in service order assignment time through automated processes and bulk assignment capabilities

Resource Utilization

30% improvement in technician productivity through optimized routing and skills-based assignment matching

Service Quality

35% increase in first-time resolution rate by ensuring appropriate technician skills match service requirements

Customer Satisfaction

25% improvement in service delivery times through geographic optimization and priority-based scheduling

SLA Compliance

50% improvement in meeting service level agreements through automated monitoring and priority escalation

Cost Reduction

20% decrease in operational costs through reduced travel time, optimized resource allocation, and fewer repeat visits

Communication Efficiency

70% reduction in manual coordination time through automated notifications and digital status updates

Decision Making

Real-time visibility into workload distribution, performance metrics, and operational bottlenecks enabling data-driven decisions

Scalability

Support for unlimited service order volume growth without proportional increase in dispatch management overhead

Compliance & Reporting

Automated tracking and reporting capabilities ensuring regulatory compliance and audit trail maintenance

12. User Behavior Tracking

Dispatcher Tracking Plan:

Event Name

Properties Tracked

Insights Gained

Service_Order_Created

template_type, priority_level, area, estimated_effort, creation_time

Which SOP templates are most commonly used? What priority distribution exists across areas?

Technician_Assignment_Made

assignment_method (manual/auto), technician_id, order_priority, skills_match_score, distance_km

Are dispatchers relying on auto-assignment or manual selection? What factors influence assignment decisions?

Bulk_Assignment_Used

order_count, assignment_duration, success_rate, geographic_spread

How effectively are dispatchers using bulk assignment? What order volumes are being processed together?

Filter_Applied

filter_type, filter_values, results_count, session_duration

Which filters are most valuable for dispatchers? How are they narrowing down order queues?

Order_Status_Monitored

status_transitions_viewed, monitoring_frequency, alert_interactions

How actively are dispatchers monitoring order progression? Which status changes require most attention?

Dashboard_Section_Accessed

section_name, time_spent, actions_taken

Which dashboard sections provide most value? Where do dispatchers spend most time?

SLA_Alert_Handled

alert_type, response_time, resolution_action

How quickly do dispatchers respond to SLA alerts? What actions are most effective for SLA compliance?

Key Questions Answered:

  1. Process Efficiency: How much time do dispatchers save using automated vs manual assignment methods?
  2. Feature Adoption: Which new features are being adopted most quickly and which require additional training?
  3. Workload Patterns: What times of day/week have highest order volumes and how does this affect assignment strategies?
  4. Performance Optimization: Which assignment strategies lead to highest completion rates and customer satisfaction?
  5. System Usability: Where do dispatchers encounter friction in their workflows and what improvements are needed?
  6. Resource Planning: How does actual technician utilization compare to planned capacity across different time periods?


Enhancement

2. Consolidated Business Rules

This section details the complete logic, data requirements, and system behavior for the entire Rejected Service Order feature.

2.1. General & System-Wide Rules

  • New Service Order Statuses: The system will introduce the following new statuses for service orders:
    • Rejected: The initial state after a reviewer rejects a completed order.
    • Rework Assigned: The state of a parent order after its child rework order has been created and assigned.
  • Parent-Child Relationship: A rejected order is a "Parent." The subsequent order to fix it is a "Child." This relationship must be stored in the database (e.g., a parent_so_id field in the service orders table).
  • Notifications: Automated in-app and/or email notifications are critical. The system must trigger notifications for:
    • Order Rejection: Sent to the original technician and their supervisor.
    • Rework Assignment: Sent to the newly assigned technician.

2.2. Rejecting a Service Order (The "Reject" Action)

  • Trigger: The "Reject Service Order" action is available only on service orders with the status "Completed" (or "Pending Review").
  • Rejection Modal UI: Clicking "Reject Service Order" must open a modal window.
    • Fields:
      1. Rejection Reason: A mandatory dropdown field. The list of reasons (e.g., "Incomplete Work," "Safety Violation," "Incorrect Data") must be configurable by a system administrator.
      2. Comments: A mandatory text area for the reviewer to provide specific, actionable feedback. A minimum character count (e.g., 20) can be enforced.
      3. Attachments: An optional file upload field to add photo or document evidence.
  • System Logic:
    • Upon submission of the rejection modal, the service order's status immediately changes from "Completed" to "Rejected."
    • The rejection reason, comments, reviewer's identity, and timestamp are saved and permanently associated with the rejected service order.

2.3. The "Rejected Service Orders" Queue

  • UI Element: A new primary tab labeled "Rejected Service Orders" will be added to the main dispatcher dashboard.
  • Functionality: This tab will display a dedicated queue of all service orders that currently have the status "Rejected."
  • Table Columns: The table in this view must contain the following columns:
    • SO ID (of the parent order)
    • SO Name
    • Original Technician
    • Rejection Reason
    • Rejected On (Date)
    • Status (Initially "Rejected")
    • Rework SO (Initially empty)
    • Actions (This will contain the "Create Rework Order" button).

2.4. Creating a Rework Service Order

  • Trigger: The "Create Rework Order" action is initiated from the "Rejected Service Orders" queue.
  • Rework Order ID Naming Convention: The new child rework order should have a unique ID that clearly links it to the parent. The recommended convention is [Parent_SO_ID]-R1. If a rework order is itself rejected, the next one would be [Parent_SO_ID]-R2.
  • "Create Rework Order" Form UI & Logic:
    • Context Banner: The form must open with a non-editable header/banner displaying the parent SO ID, the rejection reason, and the reviewer's comments.
    • Locked/Pre-filled Fields: The following information from the parent order must be pre-populated and locked (non-editable) to ensure integrity:
      1. SOP Template
      2. Linked Entity (The specific Consumer, Meter, Asset, etc.)
    • Editable Fields: The supervisor must be able to define the following:
      1. Available Technicians: A list to select a technician from (can be the original or a new one). An "Auto Assign" option should be present.
      2. Priority Level: (Critical, High, Medium, Low).
      3. Notes for Technician: A text area for the supervisor to add specific instructions for the rework.
      4. Scheduling Fields: (Optional but recommended) Expected Start/Completion dates.
  • System Logic on Creation:
    • When the rework order is created, the system establishes the parent-child link in the database.
    • The status of the parent order changes from "Rejected" to "Rework Assigned."
    • The Rework SO column for the parent order in the "Rejected" queue is populated with the new child SO ID.

2.5. Visualizing the Parent-Child Link

  • On the Parent (Rejected) Order's Detail Page:
    • A prominent, non-editable banner must be displayed at the top.
    • Banner Content: It must show a "Status: Rejected" title and include a clickable link to the child rework order (e.g., Rework Order: SO-2024-003-R1).
  • On the Child (Rework) Order's Detail Page:
    • A prominent, non-editable banner must be displayed at the top.
    • Banner Content: It must show a "Rework Order" title, a clickable link back to the parent order, and display the Rejection Reason and Reviewer Comments for immediate context.

2.6. Completing the Rework Lifecycle

  • Rework Order Flow: The child rework order follows the standard lifecycle: Assigned -> In Progress -> Completed.
  • Final Approval: When a reviewer approves the child rework order, its status is set to "Approved."
  • History View:
    • The "History Service Orders" screen must display both the parent and child orders as separate line items.
    • Table Columns: To make the relationship clear, the history table must include two new columns: Parent SO and Rework SO.
      • For a parent row, the Rework SO column will be populated.
      • For a child row, the Parent SO column will be populated.
      • These IDs should be clickable links for easy navigation between the related historical records.

3. Consolidated Acceptance Criteria

This section serves as a comprehensive checklist for the QA team to validate the successful implementation of all features.

3.1. Rejecting a Service Order

  •  Given I am a Reviewer viewing a "Completed" service order, then I can see an active "Reject Service Order" button.
  •  Given I click "Reject," then a modal appears with mandatory fields for "Rejection Reason" (dropdown) and "Comments" (text area), and an optional "Attachments" field.
  •  Given I try to submit the rejection form, then I am prevented from doing so if either the "Rejection Reason" or "Comments" field is empty.
  •  Given I successfully submit the rejection, then the order's status immediately updates to "Rejected" on its detail page and in any list view.
  •  Given an order is rejected, then the original technician and their supervisor receive an automated notification containing the SO ID, rejection reason, and comments.

3.2. Rework Queue & Management

  •  Given I am a Dispatcher/Supervisor, then I can see and click on a "Rejected Service Orders" tab on the main dashboard.
  •  Given I am on the "Rejected Service Orders" screen, then I see a table listing all orders with a "Rejected" status.
  •  Then the table correctly displays columns for SO IDRejection ReasonOriginal Technician, and an empty Rework SO column.
  •  Then each row in the table has a clickable "Create Rework Order" action.
  •  Given I click "Create Rework Order," then a form opens with a non-editable banner showing the parent SO ID and rejection details.
  •  Then the SOP Template and Linked Entity sections on the form are pre-populated and locked (non-editable).
  •  Then I can successfully select a technician, set a priority, and add notes.
  •  Given I submit the form, then a new service order is created with an ID matching the [Parent_SO_ID]-R1 convention.
  •  Then the status of the parent order automatically changes to "Rework Assigned."
  •  Then navigating to the parent order's detail page displays a banner with a clickable link to the new child order.
  •  Then navigating to the child order's detail page displays a banner with a clickable link to the parent order and shows the rejection context.

3.4. Lifecycle Completion & History

  •  Given a child rework order is "Completed," then it appears in the standard review queue.
  •  Given I approve the child rework order, then its status correctly updates to "Approved."
  •  Then the Rework SO cell for the parent order contains a clickable link to the child order.

Wireframes

Reject Service Order: Link