Clone
Fleet Management
Vehicle and driver management with shift tracking, document compliance, and performance monitoring.
Vehicles
Vehicle Lifecycle
registered --> active --> maintenance --> active (cycle)
|
v
suspended --> active (reinstate)
|
v
retired (terminal)
Document Tracking
Each vehicle tracks:
- Insurance expiry -- alerts when approaching expiration
- Inspection expiry -- alerts when approaching expiration
Vehicles with expired documents should be moved to suspended status until renewed.
Vehicle Types
| Type | Description |
|---|---|
| economy | Standard budget vehicles |
| sedan | Mid-range sedan vehicles |
| suv | Sport utility vehicles |
| van | Multi-passenger vans |
| luxury | Premium vehicles |
Each vehicle type can have different fare rules applied.
Drivers
Driver Lifecycle
pending --> active --> suspended --> active (reinstate)
|
v
inactive (terminal)
Driver-Vehicle Assignment
Each driver has a primary assigned vehicle (vehicle_id). During shifts, the driver operates their assigned vehicle. The assignment can be changed through the admin interface.
CRM Integration
Drivers are linked to CRM contacts via contact_id. This connects driver records to:
- Contact details managed in MokoSuiteCRM
- Communication history
- Document storage
- Financial records
Performance Metrics
Driver records maintain running statistics:
| Metric | Description |
|---|---|
| rating | Average rider rating (1.00-5.00) |
| total_rides | Lifetime completed rides |
| total_earnings | Lifetime earnings |
| commission_rate | Per-driver override (NULL = global) |
Shifts
Shift Workflow
- Driver starts shift (records vehicle, start time, location)
- Driver receives and completes rides during shift
- Driver ends shift (records end time, location, totals)
Shift Metrics
Each shift records:
- Total rides completed
- Total earnings
- Total distance driven
- Start/end locations
- Duration
Ratings
Bidirectional System
After each completed ride, both parties can rate:
- Rider rates driver -- affects driver's average rating
- Driver rates rider -- stored for future reference
Rating Tags
Pre-defined feedback tags allow quick categorization:
- Clean vehicle, safe driving, polite, navigation, punctual
- Tags are stored as comma-separated values
Rating Calculation
Driver average rating is updated after each new rating:
new_average = ((old_average * total_rides) + new_rating) / (total_rides + 1)