<?php
namespace App\Entity;
use App\Repository\InterconsultaRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
use DateTime;
/**
* @ORM\Entity(repositoryClass=InterconsultaRepository::class)
* @ORM\HasLifecycleCallbacks
*/
class Interconsulta
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\ManyToOne(targetEntity=Paciente::class, inversedBy="interconsultas")
* @ORM\JoinColumn(nullable=false)
*/
private $paciente;
/**
* @ORM\ManyToOne(targetEntity=HistoriaClinica::class, inversedBy="interconsultas")
* @ORM\JoinColumn(nullable=false)
*/
private $historiaclinica;
/**
* @ORM\Column(type="string", length=100)
*/
private $servicio;
/**
* @ORM\Column(type="string", length=100)
*/
private $especialidad;
/**
* @ORM\Column(type="text")
*/
private $evolucion;
/**
* @ORM\Column(type="string", length=50)
*/
private $ip_crea;
/**
* @ORM\Column(type="string", length=50)
*/
private $ip_modifica;
/**
* @ORM\Column(type="integer")
*/
private $user_crea;
/**
* @ORM\Column(type="integer")
*/
private $user_modifica;
/**
* @ORM\Column(type="datetime")
*/
private $created_at;
/**
* @ORM\Column(type="datetime")
*/
private $updated_at;
/**
* @ORM\OneToMany(targetEntity=DiagnosticosInterconsulta::class, mappedBy="interconsulta")
*/
private $diagnosticosInterconsultas;
/**
* @ORM\Column(type="string", length=25, nullable=true)
*/
private $tarifario;
/**
* @ORM\ManyToOne(targetEntity=ItemsCargos::class, inversedBy="interconsultas")
*/
private $item;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $descripcion;
/**
* @ORM\Column(type="boolean", options={"default" : 1})
*/
private $estado;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $resultado_examen;
public function __construct()
{
$this->diagnosticosInterconsultas = new ArrayCollection();
}
/**
* @ORM\PrePersist
* @ORM\PreUpdate
*/
public function updatedTimestamps(): void
{
$dateTimeNow = new DateTime('now');
$this->setUpdatedAt($dateTimeNow);
if ($this->getCreatedAt() === null) {
$this->setCreatedAt($dateTimeNow);
}
}
public function getId(): ?int
{
return $this->id;
}
public function getPaciente(): ?Paciente
{
return $this->paciente;
}
public function setPaciente(?Paciente $paciente): self
{
$this->paciente = $paciente;
return $this;
}
public function getHistoriaclinica(): ?HistoriaClinica
{
return $this->historiaclinica;
}
public function setHistoriaclinica(?HistoriaClinica $historiaclinica): self
{
$this->historiaclinica = $historiaclinica;
return $this;
}
public function getServicio(): ?string
{
return $this->servicio;
}
public function setServicio(string $servicio): self
{
$this->servicio = $servicio;
return $this;
}
public function getEspecialidad(): ?string
{
return $this->especialidad;
}
public function setEspecialidad(string $especialidad): self
{
$this->especialidad = $especialidad;
return $this;
}
public function getEvolucion(): ?string
{
return $this->evolucion;
}
public function setEvolucion(string $evolucion): self
{
$this->evolucion = $evolucion;
return $this;
}
public function getIpCrea(): ?string
{
return $this->ip_crea;
}
public function setIpCrea(string $ip_crea): self
{
$this->ip_crea = $ip_crea;
return $this;
}
public function getIpModifica(): ?string
{
return $this->ip_modifica;
}
public function setIpModifica(string $ip_modifica): self
{
$this->ip_modifica = $ip_modifica;
return $this;
}
public function getUserCrea(): ?int
{
return $this->user_crea;
}
public function setUserCrea(int $user_crea): self
{
$this->user_crea = $user_crea;
return $this;
}
public function getUserModifica(): ?int
{
return $this->user_modifica;
}
public function setUserModifica(int $user_modifica): self
{
$this->user_modifica = $user_modifica;
return $this;
}
public function getCreatedAt(): ?\DateTimeInterface
{
return $this->created_at;
}
public function setCreatedAt(\DateTimeInterface $created_at): self
{
$this->created_at = $created_at;
return $this;
}
public function getUpdatedAt(): ?\DateTimeInterface
{
return $this->updated_at;
}
public function setUpdatedAt(\DateTimeInterface $updated_at): self
{
$this->updated_at = $updated_at;
return $this;
}
/**
* @return Collection|DiagnosticosInterconsulta[]
*/
public function getDiagnosticosInterconsultas(): Collection
{
return $this->diagnosticosInterconsultas;
}
public function addDiagnosticosInterconsulta(DiagnosticosInterconsulta $diagnosticosInterconsulta): self
{
if (!$this->diagnosticosInterconsultas->contains($diagnosticosInterconsulta)) {
$this->diagnosticosInterconsultas[] = $diagnosticosInterconsulta;
$diagnosticosInterconsulta->setInterconsulta($this);
}
return $this;
}
public function removeDiagnosticosInterconsulta(DiagnosticosInterconsulta $diagnosticosInterconsulta): self
{
if ($this->diagnosticosInterconsultas->removeElement($diagnosticosInterconsulta)) {
// set the owning side to null (unless already changed)
if ($diagnosticosInterconsulta->getInterconsulta() === $this) {
$diagnosticosInterconsulta->setInterconsulta(null);
}
}
return $this;
}
public function getTarifario(): ?string
{
return $this->tarifario;
}
public function setTarifario(?string $tarifario): self
{
$this->tarifario = $tarifario;
return $this;
}
public function getItem(): ?ItemsCargos
{
return $this->item;
}
public function setItem(?ItemsCargos $item): self
{
$this->item = $item;
return $this;
}
public function getDescripcion(): ?string
{
return $this->descripcion;
}
public function setDescripcion(?string $descripcion): self
{
$this->descripcion = $descripcion;
return $this;
}
public function getEstado(): ?bool
{
return $this->estado;
}
public function setEstado(bool $estado): self
{
$this->estado = $estado;
return $this;
}
public function getResultadoExamen(): ?string
{
return $this->resultado_examen;
}
public function setResultadoExamen(?string $resultado_examen): self
{
$this->resultado_examen = $resultado_examen;
return $this;
}
}