예제 #1
0
 /**
  * @param ShiftRepository $shiftRepository
  * @return Shift
  */
 public function handle(ShiftRepository $shiftRepository)
 {
     $this->shift->setBreak($this->break);
     $this->shift->setStartTime($this->start_time);
     $this->shift->setEndTime($this->end_time);
     $shiftRepository->update($this->shift);
     return $this->shift;
 }
 public function handle(CreateShift $command)
 {
     $this->shift->setBreak($command->break);
     $this->shift->setEmployee($this->userRepository->getOneById($command->employee_id));
     $this->shift->setManager($this->userRepository->getOneById($command->manager_id));
     $this->shift->setStartTime($command->start_time);
     $this->shift->setEndTime($command->end_time);
     $this->shiftRepository->store($this->shift);
     return $this->shift;
 }
예제 #3
0
 /**
  * @param UserRepository $userRepository
  * @param ShiftRepository $shiftRepository
  * @param Shift $shift
  * @param Guard $auth
  * @return Shift
  */
 public function handle(UserRepository $userRepository, ShiftRepository $shiftRepository, Shift $shift, Guard $auth)
 {
     $shift->setBreak($this->break);
     $shift->setStartTime($this->start_time);
     $shift->setEndTime($this->end_time);
     if ($this->employee_id) {
         $shift->setEmployee($userRepository->getOneById($this->employee_id));
     }
     if ($this->manager_id) {
         $shift->setManager($userRepository->getOneById($this->manager_id));
     } else {
         $shift->setManager($auth->getUser());
     }
     $shiftRepository->store($shift);
     $shiftRepository->update($shift);
     return $shift;
 }