Exemplo n.º 1
0
 /**
  * @param DayAttendance $dayAttendance
  */
 private function addDayAttendance(DayAttendance $dayAttendance)
 {
     $date = $dayAttendance->getArrival()->format('Y-m-d');
     if (isset($this->dayAttendanceList[$date])) {
         throw new \InvalidArgumentException();
     }
     $this->dayAttendanceList[$date] = $dayAttendance;
 }
Exemplo n.º 2
0
 /**
  * @param $dayAttendanceLine
  * @return DayAttendance
  */
 public static function parseDayAttendanceLine($dayAttendanceLine)
 {
     if (!self::isValidDayAttendanceLine($dayAttendanceLine)) {
         throw new \InvalidArgumentException();
     }
     list($date, $timeLine, $description) = self::explodeDayAttendanceLineParts($dayAttendanceLine);
     $times = explode(' ', $timeLine);
     $arrival = new \DateTime($date . ' ' . array_shift($times));
     $departure = new \DateTime($date . ' ' . array_pop($times));
     $pauseList = self::parsePauseBlocks($date, $times);
     $dayAttendance = new DayAttendance($arrival, $departure, $pauseList);
     $dayAttendance->setDescription($description);
     return $dayAttendance;
 }