Add new events to JO details report. #618
This commit is contained in:
parent
db4345aa71
commit
6937ffdd6a
1 changed files with 207 additions and 2 deletions
|
|
@ -821,9 +821,39 @@ class ReportController extends Controller
|
||||||
'Date and Time Dispatched',
|
'Date and Time Dispatched',
|
||||||
'Date Dispatched',
|
'Date Dispatched',
|
||||||
'Time Dispatched',
|
'Time Dispatched',
|
||||||
|
'Date and Time Assigned',
|
||||||
|
'Date Assigned',
|
||||||
|
'Time Assigned',
|
||||||
|
'Date and Time Accepted',
|
||||||
|
'Date Accepted',
|
||||||
|
'Time Accepted',
|
||||||
|
'Date and Time Rider Left Hub',
|
||||||
|
'Date Rider Left Hub',
|
||||||
|
'Time Rider Left Hub',
|
||||||
|
'Date and Time Rider Arrived Hub Pre-JO',
|
||||||
|
'Date Rider Arrived Hub Pre-JO',
|
||||||
|
'Time Rider Arrived Hub Pre-JO',
|
||||||
|
'Date and Time Rider Left Hub Pre-JO',
|
||||||
|
'Date Rider Left Hub Pre-JO',
|
||||||
|
'Time Rider Left Hub Pre-JO',
|
||||||
'Date and Time Arrived',
|
'Date and Time Arrived',
|
||||||
'Date Arrived',
|
'Date Arrived',
|
||||||
'Time Arrived',
|
'Time Arrived',
|
||||||
|
'Date and Time Rider Started Sales/Service',
|
||||||
|
'Date Rider Started Sales/Service',
|
||||||
|
'Time Rider Started Sales/Service',
|
||||||
|
'Date and Time Rider Ended Sales/Service',
|
||||||
|
'Date Rider Ended Sales/Service',
|
||||||
|
'Time Rider Ended Sales/Service',
|
||||||
|
'Date and Time Rider Arrived Hub Post-JO',
|
||||||
|
'Date Rider Arrived Hub Post-JO',
|
||||||
|
'Time Rider Arrived Hub Post-JO',
|
||||||
|
'Date and Time Rider Left Hub Post-JO',
|
||||||
|
'Date Rider Left Hub Post-JO',
|
||||||
|
'Time Rider Left Hub Post-JO',
|
||||||
|
'Date and Time Rider Arrived Hub',
|
||||||
|
'Date Rider Arrived Hub',
|
||||||
|
'Time Rider Arrived Hub',
|
||||||
'Created vs Arrival',
|
'Created vs Arrival',
|
||||||
'Customer Latitude',
|
'Customer Latitude',
|
||||||
'Customer Longitude',
|
'Customer Longitude',
|
||||||
|
|
@ -1793,7 +1823,6 @@ class ReportController extends Controller
|
||||||
}
|
}
|
||||||
|
|
||||||
// find date and time when JO was assigned a rider
|
// find date and time when JO was assigned a rider
|
||||||
/*
|
|
||||||
$datetime_rider_assign_jo = '';
|
$datetime_rider_assign_jo = '';
|
||||||
$date_rider_assign_jo = '';
|
$date_rider_assign_jo = '';
|
||||||
$time_rider_assign_jo = '';
|
$time_rider_assign_jo = '';
|
||||||
|
|
@ -1809,7 +1838,73 @@ class ReportController extends Controller
|
||||||
$date_rider_assign_jo = $rider_assign_event->getDateHappen()->format('d-M-Y');
|
$date_rider_assign_jo = $rider_assign_event->getDateHappen()->format('d-M-Y');
|
||||||
$time_rider_assign_jo = $rider_assign_event->getDateHappen()->format('H:i');
|
$time_rider_assign_jo = $rider_assign_event->getDateHappen()->format('H:i');
|
||||||
}
|
}
|
||||||
} */
|
}
|
||||||
|
|
||||||
|
// find date and time when rider accepted the JO
|
||||||
|
$datetime_rider_accept_jo = '';
|
||||||
|
$date_rider_accept_jo = '';
|
||||||
|
$time_rider_accept_jo = '';
|
||||||
|
$rider_accept_event_type = JOEventType::RIDER_ACCEPT;
|
||||||
|
$rider_accept_events = $em->getRepository(JOEvent::class)->findBy(['job_order' => $jo, 'type_id'=> $rider_accept_event_type], ['date_happen' => 'DESC']);
|
||||||
|
if ($rider_accept_events != null)
|
||||||
|
{
|
||||||
|
foreach ($rider_accept_events as $rider_accept_event)
|
||||||
|
{
|
||||||
|
// TODO: what happens if JO was accepted by riders multiple times?
|
||||||
|
// right now, this gets the last time rider was accepted.
|
||||||
|
$datetime_rider_accept_jo = $rider_accept_event->getDateHappen()->format('d-M-Y H:i');
|
||||||
|
$date_rider_accept_jo = $rider_accept_event->getDateHappen()->format('d-M-Y');
|
||||||
|
$time_rider_accept_jo = $rider_accept_event->getDateHappen()->format('H:i');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// find date and time when rider leaves hub
|
||||||
|
$datetime_rider_depart_hub = '';
|
||||||
|
$date_rider_depart_hub = '';
|
||||||
|
$time_rider_depart_hub = '';
|
||||||
|
$rider_depart_hub_event_type = JOEventType::RIDER_DEPART_HUB;
|
||||||
|
$rider_depart_hub_events = $em->getRepository(JOEvent::class)->findBy(['job_order' => $jo, 'type_id'=> $rider_depart_hub_event_type], ['date_happen' => 'DESC']);
|
||||||
|
if ($rider_depart_hub_events != null)
|
||||||
|
{
|
||||||
|
foreach ($rider_depart_hub_events as $rider_depart_hub_event)
|
||||||
|
{
|
||||||
|
$datetime_rider_depart_hub = $rider_depart_hub_event->getDateHappen()->format('d-M-Y H:i');
|
||||||
|
$date_rider_depart_hub = $rider_depart_hub_event->getDateHappen()->format('d-M-Y');
|
||||||
|
$time_rider_depart_hub = $rider_depart_hub_event->getDateHappen()->format('H:i');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// find date and time when rider arrives at hub pre-jo
|
||||||
|
$datetime_rider_arrive_hub_pre_jo = '';
|
||||||
|
$date_rider_arrive_hub_pre_jo = '';
|
||||||
|
$time_rider_arrive_hub_pre_jo = '';
|
||||||
|
$rider_arrive_hub_pre_jo_event_type = JOEventType::RIDER_ARRIVE_HUB_PRE_JO;
|
||||||
|
$rider_arrive_hub_pre_jo_events = $em->getRepository(JOEvent::class)->findBy(['job_order' => $jo, 'type_id'=> $rider_arrive_hub_pre_jo_event_type], ['date_happen' => 'DESC']);
|
||||||
|
if ($rider_arrive_hub_pre_jo_events != null)
|
||||||
|
{
|
||||||
|
foreach ($rider_arrive_hub_pre_jo_events as $rider_arrive_hub_pre_jo_event)
|
||||||
|
{
|
||||||
|
$datetime_rider_arrive_hub_pre_jo = $rider_arrive_hub_pre_jo_event->getDateHappen()->format('d-M-Y H:i');
|
||||||
|
$date_rider_arrive_hub_pre_jo = $rider_arrive_hub_pre_jo_event->getDateHappen()->format('d-M-Y');
|
||||||
|
$time_rider_arrive_hub_pre_jo = $rider_arrive_hub_pre_jo_event->getDateHappen()->format('H:i');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// find date and time when rider leaves hub pre-jo
|
||||||
|
$datetime_rider_leave_hub_pre_jo = '';
|
||||||
|
$date_rider_leave_hub_pre_jo = '';
|
||||||
|
$time_rider_leave_hub_pre_jo = '';
|
||||||
|
$rider_leave_hub_pre_jo_event_type = JOEventType::RIDER_DEPART_HUB_PRE_JO;
|
||||||
|
$rider_leave_hub_pre_jo_events = $em->getRepository(JOEvent::class)->findBy(['job_order' => $jo, 'type_id'=> $rider_leave_hub_pre_jo_event_type], ['date_happen' => 'DESC']);
|
||||||
|
if ($rider_leave_hub_pre_jo_events != null)
|
||||||
|
{
|
||||||
|
foreach ($rider_leave_hub_pre_jo_events as $rider_leave_hub_pre_jo_event)
|
||||||
|
{
|
||||||
|
$datetime_rider_leave_hub_pre_jo = $rider_leave_hub_pre_jo_event->getDateHappen()->format('d-M-Y H:i');
|
||||||
|
$date_rider_leave_hub_pre_jo = $rider_leave_hub_pre_jo_event->getDateHappen()->format('d-M-Y');
|
||||||
|
$time_rider_leave_hub_pre_jo = $rider_leave_hub_pre_jo_event->getDateHappen()->format('H:i');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// find date and time when rider arrived at customer
|
// find date and time when rider arrived at customer
|
||||||
$datetime_rider_arrive_jo = '';
|
$datetime_rider_arrive_jo = '';
|
||||||
|
|
@ -1829,6 +1924,86 @@ class ReportController extends Controller
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// find date and time when rider started the job
|
||||||
|
$datetime_rider_start_jo = '';
|
||||||
|
$date_rider_start_jo = '';
|
||||||
|
$time_rider_start_jo = '';
|
||||||
|
$rider_start_event_type = JOEventType::RIDER_START;
|
||||||
|
$rider_start_events = $em->getRepository(JOEvent::class)->findBy(['job_order' => $jo, 'type_id'=> $rider_start_event_type], ['date_happen' => 'DESC']);
|
||||||
|
if ($rider_start_events != null)
|
||||||
|
{
|
||||||
|
foreach ($rider_start_events as $rider_start_event)
|
||||||
|
{
|
||||||
|
$datetime_rider_start_jo = $rider_start_event->getDateHappen()->format('d-M-Y H:i');
|
||||||
|
$date_rider_start_jo = $rider_start_event->getDateHappen()->format('d-M-Y');
|
||||||
|
$time_rider_start_jo = $rider_start_event->getDateHappen()->format('H:i');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// find date and time when rider finished the job
|
||||||
|
$datetime_rider_end_jo = '';
|
||||||
|
$date_rider_end_jo = '';
|
||||||
|
$time_rider_end_jo = '';
|
||||||
|
$rider_end_event_type = JOEventType::RIDER_END;
|
||||||
|
$rider_end_events = $em->getRepository(JOEvent::class)->findBy(['job_order' => $jo, 'type_id'=> $rider_end_event_type], ['date_happen' => 'DESC']);
|
||||||
|
if ($rider_end_events != null)
|
||||||
|
{
|
||||||
|
foreach ($rider_end_events as $rider_end_event)
|
||||||
|
{
|
||||||
|
$datetime_rider_end_jo = $rider_end_event->getDateHappen()->format('d-M-Y H:i');
|
||||||
|
$date_rider_end_jo = $rider_end_event->getDateHappen()->format('d-M-Y');
|
||||||
|
$time_rider_end_jo = $rider_end_event->getDateHappen()->format('H:i');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// find date and time when rider arrives at hub post-jo
|
||||||
|
$datetime_rider_arrive_hub_post_jo = '';
|
||||||
|
$date_rider_arrive_hub_post_jo = '';
|
||||||
|
$time_rider_arrive_hub_post_jo = '';
|
||||||
|
$rider_arrive_hub_post_jo_event_type = JOEventType::RIDER_ARRIVE_HUB_POST_JO;
|
||||||
|
$rider_arrive_hub_post_jo_events = $em->getRepository(JOEvent::class)->findBy(['job_order' => $jo, 'type_id'=> $rider_arrive_hub_post_jo_event_type], ['date_happen' => 'DESC']);
|
||||||
|
if ($rider_arrive_hub_post_jo_events != null)
|
||||||
|
{
|
||||||
|
foreach ($rider_arrive_hub_post_jo_events as $rider_arrive_hub_post_jo_event)
|
||||||
|
{
|
||||||
|
$datetime_rider_arrive_hub_post_jo = $rider_arrive_hub_post_jo_event->getDateHappen()->format('d-M-Y H:i');
|
||||||
|
$date_rider_arrive_hub_post_jo = $rider_arrive_hub_post_jo_event->getDateHappen()->format('d-M-Y');
|
||||||
|
$time_rider_arrive_hub_post_jo = $rider_arrive_hub_post_jo_event->getDateHappen()->format('H:i');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// find date and time when rider leaves hub post-jo
|
||||||
|
$datetime_rider_leave_hub_post_jo = '';
|
||||||
|
$date_rider_leave_hub_post_jo = '';
|
||||||
|
$time_rider_leave_hub_post_jo = '';
|
||||||
|
$rider_leave_hub_post_jo_event_type = JOEventType::RIDER_DEPART_HUB_POST_JO;
|
||||||
|
$rider_leave_hub_post_jo_events = $em->getRepository(JOEvent::class)->findBy(['job_order' => $jo, 'type_id'=> $rider_leave_hub_post_jo_event_type], ['date_happen' => 'DESC']);
|
||||||
|
if ($rider_leave_hub_post_jo_events != null)
|
||||||
|
{
|
||||||
|
foreach ($rider_leave_hub_post_jo_events as $rider_leave_hub_post_jo_event)
|
||||||
|
{
|
||||||
|
$datetime_rider_leave_hub_post_jo = $rider_leave_hub_post_jo_event->getDateHappen()->format('d-M-Y H:i');
|
||||||
|
$date_rider_leave_hub_post_jo = $rider_leave_hub_post_jo_event->getDateHappen()->format('d-M-Y');
|
||||||
|
$time_rider_leave_hub_post_jo = $rider_leave_hub_post_jo_event->getDateHappen()->format('H:i');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// find date and time when rider arrives at hub
|
||||||
|
$datetime_rider_arrive_hub = '';
|
||||||
|
$date_rider_arrive_hub = '';
|
||||||
|
$time_rider_arrive_hub = '';
|
||||||
|
$rider_arrive_hub_event_type = JOEventType::RIDER_ARRIVE_HUB;
|
||||||
|
$rider_arrive_hub_events = $em->getRepository(JOEvent::class)->findBy(['job_order' => $jo, 'type_id'=> $rider_arrive_hub_event_type], ['date_happen' => 'DESC']);
|
||||||
|
if ($rider_arrive_hub_events != null)
|
||||||
|
{
|
||||||
|
foreach ($rider_arrive_hub_events as $rider_arrive_hub_event)
|
||||||
|
{
|
||||||
|
$datetime_rider_arrive_hub = $rider_arrive_hub_event->getDateHappen()->format('d-M-Y H:i');
|
||||||
|
$date_rider_arrive_hub = $rider_arrive_hub_event->getDateHappen()->format('d-M-Y');
|
||||||
|
$time_rider_arrive_hub = $rider_arrive_hub_event->getDateHappen()->format('H:i');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// compute time difference between jo creation and rider arrival
|
// compute time difference between jo creation and rider arrival
|
||||||
$time_diff_create_arrive = '';
|
$time_diff_create_arrive = '';
|
||||||
if ($dt_rider_arrive != null)
|
if ($dt_rider_arrive != null)
|
||||||
|
|
@ -1961,9 +2136,39 @@ class ReportController extends Controller
|
||||||
$datetime_hub_assign_jo,
|
$datetime_hub_assign_jo,
|
||||||
$date_hub_assign_jo,
|
$date_hub_assign_jo,
|
||||||
$time_hub_assign_jo,
|
$time_hub_assign_jo,
|
||||||
|
$datetime_rider_assign_jo,
|
||||||
|
$date_rider_assign_jo,
|
||||||
|
$time_rider_assign_jo,
|
||||||
|
$datetime_rider_accept_jo,
|
||||||
|
$date_rider_accept_jo,
|
||||||
|
$time_rider_accept_jo,
|
||||||
|
$datetime_rider_depart_hub,
|
||||||
|
$date_rider_depart_hub,
|
||||||
|
$time_rider_depart_hub,
|
||||||
|
$datetime_rider_arrive_hub_pre_jo,
|
||||||
|
$date_rider_arrive_hub_pre_jo,
|
||||||
|
$time_rider_arrive_hub_pre_jo,
|
||||||
|
$datetime_rider_leave_hub_pre_jo,
|
||||||
|
$date_rider_leave_hub_pre_jo,
|
||||||
|
$time_rider_leave_hub_pre_jo,
|
||||||
$datetime_rider_arrive_jo,
|
$datetime_rider_arrive_jo,
|
||||||
$date_rider_arrive_jo,
|
$date_rider_arrive_jo,
|
||||||
$time_rider_arrive_jo,
|
$time_rider_arrive_jo,
|
||||||
|
$datetime_rider_start_jo,
|
||||||
|
$date_rider_start_jo,
|
||||||
|
$time_rider_start_jo,
|
||||||
|
$datetime_rider_end_jo,
|
||||||
|
$date_rider_end_jo,
|
||||||
|
$time_rider_end_jo,
|
||||||
|
$datetime_rider_arrive_hub_post_jo,
|
||||||
|
$date_rider_arrive_hub_post_jo,
|
||||||
|
$time_rider_arrive_hub_post_jo,
|
||||||
|
$datetime_rider_leave_hub_post_jo,
|
||||||
|
$date_rider_leave_hub_post_jo,
|
||||||
|
$time_rider_leave_hub_post_jo,
|
||||||
|
$datetime_rider_arrive_hub,
|
||||||
|
$date_rider_arrive_hub,
|
||||||
|
$time_rider_arrive_hub,
|
||||||
$time_diff_create_arrive,
|
$time_diff_create_arrive,
|
||||||
$coord_lat,
|
$coord_lat,
|
||||||
$coord_long,
|
$coord_long,
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue