/** * * @param type $registro * @param type $trabajador * @return boolean */ public function evaluateWorkerEndMiss(RegistroEntradaSalida $registro, Trabajador $trabajador) { $horario = $trabajador->getHorario(); $worker_start = $registro->getEntrada(); $real_start = $this->horarioManager->getStart($horario->getId(), $worker_start); $exit = $this->horarioManager->getEnd($horario->getId(), $real_start); $actual = new \DateTime('now'); $actual->setTimezone(new \DateTimeZone($horario->getTimeZone())); if ($this->horarioManager->equalDates($actual, $exit)) { $eval = $this->horarioManager->evaluateTime($horario->getId(), $actual, false); if ($eval) { $this->registroManager->endWork($trabajador->getId(), $actual, 'not_mark'); return true; } return false; } }
/** * Remove trabajadores * * @param \Gficr\CoreBundle\Entity\Trabajador $trabajadores */ public function removeTrabajadore(\Gficr\CoreBundle\Entity\Trabajador $trabajadores) { $trabajadores->setFarmacia(); $this->trabajadores->removeElement($trabajadores); }