diff --git a/src/Controller/AnalyticsController.php b/src/Controller/AnalyticsController.php index 0ead06cf..4d589899 100644 --- a/src/Controller/AnalyticsController.php +++ b/src/Controller/AnalyticsController.php @@ -45,6 +45,7 @@ class AnalyticsController extends Controller ]; protected $hour_shifts = [ + /* ['00:00 - 09:00', 0, 1, 2, 3, 4, 5, 6, 7, 8], ['01:00 - 10:00', 1, 2, 3, 4, 5, 6, 7, 8, 9], ['02:00 - 11:00', 2, 3, 4, 5, 6, 7, 8, 9, 10], @@ -52,8 +53,10 @@ class AnalyticsController extends Controller ['04:00 - 13:00', 4, 5, 6, 7, 8, 9, 10, 11, 12], ['05:00 - 14:00', 5, 6, 7, 8, 9, 10, 11, 12, 13], ['06:00 - 15:00', 6, 7, 8, 9, 10, 11, 12, 13, 14], + */ ['07:00 - 16:00', 7, 8, 9, 10, 11, 12, 13, 14, 15], ['08:00 - 17:00', 8, 9, 10, 11, 12, 13, 14, 15, 16], + /* ['09:00 - 18:00', 9, 10, 11, 12, 13, 14, 15, 16, 17], ['10:00 - 19:00', 10, 11, 12, 13, 14, 15, 16, 17, 18], ['11:00 - 20:00', 11, 12, 13, 14, 15, 16, 17, 18, 19], @@ -69,6 +72,7 @@ class AnalyticsController extends Controller ['21:00 - 06:00', 21, 22, 23, 0, 1, 2, 3, 4, 5], ['22:00 - 07:00', 22, 23, 0, 1, 2, 3, 4, 5, 6], ['23:00 - 08:00', 23, 0, 1, 2, 3, 4, 5, 6, 7], + */ ]; /** @@ -182,6 +186,7 @@ class AnalyticsController extends Controller // error_log(print_r($chart_all_weekdays, true)); + error_log(print_r($sched_res, true)); // agggregate weekday data $i = 0; @@ -196,6 +201,7 @@ class AnalyticsController extends Controller $hub_data[$hub_id]['data_weekday'] = $chart_weekday; $hub_data[$hub_id]['data_all_weekdays'] = $chart_all_weekdays; $hub_data[$hub_id]['data_shift'] = $sched_res['weekday_shifts']; + $hub_data[$hub_id]['shift_summary'] = $sched_res['shifts']; $hub_data[$hub_id]['total_jos'] = $total_jos; $hub_data[$hub_id]['total_riders'] = $sched_res['total_riders']; @@ -264,6 +270,7 @@ class AnalyticsController extends Controller $res = $proc->getOutput(); error_log($res); + // returns lines with format: -- // segregate into weekdays @@ -298,6 +305,11 @@ class AnalyticsController extends Controller $label = $this->day_shifts[$day_shift_index][0] . ' ' . $this->hour_shifts[$hour_shift_index][0]; + $shifts[] = [ + 'label' => $label, + 'count' => $rider_count, + ]; + // initialize hours $rider_hours = []; for ($i = 0; $i < 24; $i++) @@ -324,6 +336,7 @@ class AnalyticsController extends Controller $data = [ + 'shifts' => $shifts, 'weekday_shifts' => $day_data, 'total_riders' => $total_riders, ]; diff --git a/templates/analytics/forecast_submit.html.twig b/templates/analytics/forecast_submit.html.twig index 2263694b..e9370e76 100644 --- a/templates/analytics/forecast_submit.html.twig +++ b/templates/analytics/forecast_submit.html.twig @@ -70,6 +70,8 @@ + + {% for hub in hub_list %}
@@ -131,6 +133,29 @@ +
+
+
+ + + + + + + + + {% for shift_data in hub.shift_summary %} + + + + + {% endfor %} + +
Shift# Rider
{{ shift_data.label }}{{ shift_data.count }}
+
+
+
+ {% for day_data in hub.data_shift %}
diff --git a/utils/schedule_solver/solver.py b/utils/schedule_solver/solver.py index f980cc44..da4f960e 100644 --- a/utils/schedule_solver/solver.py +++ b/utils/schedule_solver/solver.py @@ -47,30 +47,30 @@ def main(): # all hour shifts available hour_shifts = [ - ['00 - 09', 0, 1, 2, 3, 4, 5, 6, 7, 8], - ['01 - 10', 1, 2, 3, 4, 5, 6, 7, 8, 9], - ['02 - 11', 2, 3, 4, 5, 6, 7, 8, 9, 10], - ['03 - 12', 3, 4, 5, 6, 7, 8, 9, 10, 11], - ['04 - 13', 4, 5, 6, 7, 8, 9, 10, 11, 12], - ['05 - 14', 5, 6, 7, 8, 9, 10, 11, 12, 13], - ['06 - 15', 6, 7, 8, 9, 10, 11, 12, 13, 14], + #['00 - 09', 0, 1, 2, 3, 4, 5, 6, 7, 8], + #['01 - 10', 1, 2, 3, 4, 5, 6, 7, 8, 9], + #['02 - 11', 2, 3, 4, 5, 6, 7, 8, 9, 10], + #['03 - 12', 3, 4, 5, 6, 7, 8, 9, 10, 11], + #['04 - 13', 4, 5, 6, 7, 8, 9, 10, 11, 12], + #['05 - 14', 5, 6, 7, 8, 9, 10, 11, 12, 13], + #['06 - 15', 6, 7, 8, 9, 10, 11, 12, 13, 14], ['07 - 16', 7, 8, 9, 10, 11, 12, 13, 14, 15], - ['08 - 17', 8, 9, 10, 11, 12, 13, 14, 15, 16], - ['09 - 18', 9, 10, 11, 12, 13, 14, 15, 16, 17], - ['10 - 19', 10, 11, 12, 13, 14, 15, 16, 17, 18], - ['11 - 20', 11, 12, 13, 14, 15, 16, 17, 18, 19], - ['12 - 21', 12, 13, 14, 15, 16, 17, 18, 19, 20], - ['13 - 22', 13, 14, 15, 16, 17, 18, 19, 20, 21], - ['14 - 23', 14, 15, 16, 17, 18, 19, 20, 21, 22], - ['15 - 00', 15, 16, 17, 18, 19, 20, 21, 22, 23], - ['16 - 01', 16, 17, 18, 19, 20, 21, 22, 23, 0], - ['17 - 02', 17, 18, 19, 20, 21, 22, 23, 0, 1], - ['18 - 03', 18, 19, 20, 21, 22, 23, 0, 1, 2], - ['19 - 04', 19, 20, 21, 22, 23, 0, 1, 2, 3], - ['20 - 05', 20, 21, 22, 23, 0, 1, 2, 3, 4], - ['21 - 06', 21, 22, 23, 0, 1, 2, 3, 4, 5], - ['22 - 07', 22, 23, 0, 1, 2, 3, 4, 5, 6], - ['23 - 08', 23, 0, 1, 2, 3, 4, 5, 6, 7]] + ['08 - 17', 8, 9, 10, 11, 12, 13, 14, 15, 16]] + #['09 - 18', 9, 10, 11, 12, 13, 14, 15, 16, 17], + #['10 - 19', 10, 11, 12, 13, 14, 15, 16, 17, 18], + #['11 - 20', 11, 12, 13, 14, 15, 16, 17, 18, 19], + #['12 - 21', 12, 13, 14, 15, 16, 17, 18, 19, 20], + #['13 - 22', 13, 14, 15, 16, 17, 18, 19, 20, 21], + #['14 - 23', 14, 15, 16, 17, 18, 19, 20, 21, 22], + #['15 - 00', 15, 16, 17, 18, 19, 20, 21, 22, 23], + #['16 - 01', 16, 17, 18, 19, 20, 21, 22, 23, 0], + #['17 - 02', 17, 18, 19, 20, 21, 22, 23, 0, 1], + #['18 - 03', 18, 19, 20, 21, 22, 23, 0, 1, 2], + #['19 - 04', 19, 20, 21, 22, 23, 0, 1, 2, 3], + #['20 - 05', 20, 21, 22, 23, 0, 1, 2, 3, 4], + #['21 - 06', 21, 22, 23, 0, 1, 2, 3, 4, 5], + #['22 - 07', 22, 23, 0, 1, 2, 3, 4, 5, 6], + #['23 - 08', 23, 0, 1, 2, 3, 4, 5, 6, 7]] # all possible days riders come in day_shifts = [