<?php
namespace App\Entity\Comun;
use App\Entity\Admin\Empleada;
use App\Repository\Comun\FichajeRepository;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Entity(repositoryClass: FichajeRepository::class)]
class Fichaje
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column(type: 'integer')]
private $id;
#[ORM\Column(type: 'float')]
private $cantidadHoras;
#[ORM\Column(type: 'string', length: 600, nullable: true)]
private $observaciones;
#[ORM\ManyToOne(targetEntity: Proyecto::class, inversedBy: 'fichajes')]
private $proyecto;
#[ORM\ManyToOne(targetEntity: Tarea::class, inversedBy: 'fichajes')]
private $tarea;
#[ORM\Column(type: 'date')]
private $fecha;
#[ORM\ManyToOne(targetEntity: Empleada::class, inversedBy: 'fichajes')]
#[ORM\JoinColumn(nullable: false)]
private $empleada;
public function getId(): ?int
{
return $this->id;
}
public function getCantidadHoras(): ?float
{
return $this->cantidadHoras;
}
public function setCantidadHoras(float $cantidadHoras): self
{
$this->cantidadHoras = $cantidadHoras;
return $this;
}
public function getObservaciones(): ?string
{
return $this->observaciones;
}
public function setObservaciones(?string $observaciones): self
{
$this->observaciones = $observaciones;
return $this;
}
public function getProyecto(): ?Proyecto
{
return $this->proyecto;
}
public function setProyecto(?Proyecto $proyecto): self
{
$this->proyecto = $proyecto;
return $this;
}
public function getTarea(): ?Tarea
{
return $this->tarea;
}
public function setTarea(?Tarea $tarea): self
{
$this->tarea = $tarea;
return $this;
}
public function getFecha(): ?\DateTimeInterface
{
return $this->fecha;
}
public function setFecha(\DateTimeInterface $fecha): self
{
$this->fecha = $fecha;
return $this;
}
public function getEmpleada(): ?Empleada
{
return $this->empleada;
}
public function setEmpleada(?Empleada $empleada): self
{
$this->empleada = $empleada;
return $this;
}
public function getCantidadHorasFormat(){
$minutosTotales= $this->cantidadHoras*60;
$horasTotales=0;
while ($minutosTotales >= 60) {
$minutosTotales = $minutosTotales - 60;
$horasTotales = $horasTotales + 1;
}
return $horasTotales . "h " . intval($minutosTotales) . "m";
}
}