Skip to content

Commit 7c7bb73

Browse files
committed
feat: implement getDaySchedule
1 parent dd7949f commit 7c7bb73

File tree

1 file changed

+24
-1
lines changed

1 file changed

+24
-1
lines changed

src/ProdScheduler/Scheduler.php

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,29 @@ public function getSchedule(): array
1919

2020
public function getDaySchedule(int $timestamp): array
2121
{
22-
return $this->getSchedule();
22+
$monthSchedule = $this->getSchedule();
23+
$day = date('Y-m-d', $timestamp);
24+
$daySchedule = [];
25+
foreach($monthSchedule as $schedule) {
26+
$phasesReverse = $schedule['phases_reverse'];
27+
$phasesForward = $schedule['phases_forward'];
28+
$flag = true;
29+
foreach($phasesReverse as $p) {
30+
if ($p['start'] >= strtotime($day) && $p['start'] <= strtotime($day) + self::SCHEDULER_DAY_SECONDS) {
31+
$daySchedule[] = $schedule;
32+
$flag = false;
33+
break;
34+
}
35+
}
36+
if ($flag) {
37+
foreach($phasesForward as $p) {
38+
if ($p['start'] >= strtotime($day) && $p['start'] <= strtotime($day) + self::SCHEDULER_DAY_SECONDS) {
39+
$daySchedule[] = $schedule;
40+
}
41+
}
42+
}
43+
}
44+
45+
return $daySchedule;
2346
}
2447
}

0 commit comments

Comments
 (0)