<?php
namespace App\Entity;
use App\Repository\GHProcesoDisciplinarioRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Table(name: 'gh_proceso_disciplinario')]
#[ORM\Entity(repositoryClass: GHProcesoDisciplinarioRepository::class)]
class GHProcesoDisciplinario {
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column]
private ?int $id = null;
#[ORM\Column(type: Types::DATETIME_MUTABLE)]
private ?\DateTimeInterface $fechaSolicitud = null;
#[ORM\Column(type: Types::DATETIME_MUTABLE, nullable : true)]
private ?\DateTimeInterface $fechaSituacion = null;
#[ORM\Column(type: Types::TEXT)]
private ?string $descripcionFalta = null;
#[ORM\Column(type: Types::TEXT)]
private ?string $consecuenciasFalta = null;
#[ORM\Column(length: 255, nullable:true)]
private ?string $acta = null;
#[ORM\ManyToOne(inversedBy: 'procesoDisciplinario')]
private ?GHContratacion $contratacion = null;
#[ORM\Column(type: Types::DATETIME_MUTABLE)]
private ?\DateTimeInterface $createAt = null;
#[ORM\Column(length: 50)]
private ?string $createUser = null;
#[ORM\Column(type: Types::DATETIME_MUTABLE)]
private ?\DateTimeInterface $updateAt = null;
#[ORM\Column(length: 50)]
private ?string $updateUser = null;
#[ORM\Column(length: 255, nullable:true)]
private ?string $evidencia = null;
#[ORM\ManyToOne(inversedBy: 'procesoDisciplinarioInformacion')]
private ?ParEstado $estadoInformacion = null;
#[ORM\Column(type: Types::DATETIME_MUTABLE, nullable: true)]
private ?\DateTimeInterface $fechaCierre = null;
#[ORM\ManyToOne(inversedBy: 'procesoDisciplinario')]
private ?ParMedidaDisciplinaria $medidaDisciplinaria = null;
#[ORM\Column(nullable: true)]
private ?int $diasMedida = null;
#[ORM\ManyToOne(inversedBy: 'procesoDisciplinarioJuridico')]
private ?ParEstado $estadoJuridico = null;
#[ORM\Column(nullable: true)]
private ?int $diasJuridico = null;
#[ORM\ManyToOne(inversedBy: 'procesoDisciplinarioJefe')]
private ?ParEstado $estadoJefeInmediato = null;
#[ORM\Column(nullable: true)]
private ?int $diasJefeInmediato = null;
#[ORM\ManyToOne(inversedBy: 'procesoDisciplinarioJuridico')]
private ?ParMedidaDisciplinaria $medidaDisciplinariaJuridica = null;
#[ORM\ManyToOne(inversedBy: 'procesoDisciplinarioJefe')]
private ?ParMedidaDisciplinaria $medidaDisciplinariaJefe = null;
#[ORM\Column(type: Types::TEXT, nullable: true)]
private ?string $informacionAdjunta = null;
#[ORM\Column(length: 255, nullable: true)]
private ?string $soporteMedida = null;
#[ORM\ManyToOne(inversedBy: 'procesoDisciplinarioPersona')]
private ?TerPersona $persona = null;
#[ORM\ManyToOne(inversedBy: 'procesoDisciplinarioSolicita')]
private ?TerPersona $personaSolicita = null;
#[ORM\ManyToOne(inversedBy: 'procesoDisciplinario')]
private ?ParEstado $estado = null;
#[ORM\OneToMany(mappedBy: 'procesoDisciplinario', targetEntity: GHProcesoDisciplinarioEvidencia::class)]
private Collection $procesoDisciplinarioEvidencia;
#[ORM\Column(type: Types::DATETIME_MUTABLE, nullable: true)]
private ?\DateTimeInterface $fechaDescargos = null;
#[ORM\Column(length: 255, nullable: true)]
private ?string $citacion = null;
#[ORM\Column(nullable: true)]
private ?bool $apelacionColaborador = null;
#[ORM\Column(length: 255, nullable: true)]
private ?string $gestionApelacion = null;
#[ORM\Column(type: Types::TEXT, nullable: true)]
private ?string $observaciones = null;
#[ORM\Column(length: 255, nullable: true)]
private ?string $fechasSancion = null;
public function __construct() {
//$this->idProceso = new ArrayCollection();
$this->idDocumentoProceso = new ArrayCollection();
$this->idRevisionProceso = new ArrayCollection();
$this->procesoDisciplinarioEvidencia = new ArrayCollection();
}
public function getId(): ?int {
return $this->id;
}
public function getFechaSolicitud(): ?\DateTimeInterface {
return $this->fechaSolicitud;
}
public function getFechaSituacion(): ?\DateTimeInterface {
return $this->fechaSituacion;
}
public function getDescripcionFalta(): ?string {
return $this->descripcionFalta;
}
public function getConsecuenciasFalta(): ?string {
return $this->consecuenciasFalta;
}
public function setFechaSolicitud(?\DateTimeInterface $fechaSolicitud): void {
$this->fechaSolicitud = $fechaSolicitud;
}
public function setFechaSituacion(?\DateTimeInterface $fechaSituacion): void {
$this->fechaSituacion = $fechaSituacion;
}
public function setDescripcionFalta(?string $descripcionFalta): void {
$this->descripcionFalta = $descripcionFalta;
}
public function setConsecuenciasFalta(?string $consecuenciasFalta): void {
$this->consecuenciasFalta = $consecuenciasFalta;
}
public function getActa(): ?string {
return $this->acta;
}
public function setActa(string $acta): static {
$this->acta = $acta;
return $this;
}
public function getContratacion(): ?GHContratacion {
return $this->contratacion;
}
public function setContratacion(?GHContratacion $contratacion): static {
$this->contratacion = $contratacion;
return $this;
}
public function getCreateAt(): ?\DateTimeInterface {
return $this->createAt;
}
public function setCreateAt(\DateTimeInterface $createAt): static {
$this->createAt = $createAt;
return $this;
}
public function getCreateUser(): ?string {
return $this->createUser;
}
public function setCreateUser(string $createUser): static {
$this->createUser = $createUser;
return $this;
}
public function getUpdateAt(): ?\DateTimeInterface {
return $this->updateAt;
}
public function setUpdateAt(\DateTimeInterface $updateAt): static {
$this->updateAt = $updateAt;
return $this;
}
public function getUpdateUser(): ?string {
return $this->updateUser;
}
public function setUpdateUser(string $updateUser): static {
$this->updateUser = $updateUser;
return $this;
}
public function getEvidencia(): ?string {
return $this->evidencia;
}
public function setEvidencia(string $evidencia): static {
$this->evidencia = $evidencia;
return $this;
}
public function getEstadoInformacion(): ?ParEstado {
return $this->estadoInformacion;
}
public function setEstadoInformacion(?ParEstado $estadoInformacion): static {
$this->estadoInformacion = $estadoInformacion;
return $this;
}
public function getFechaCierre(): ?\DateTimeInterface {
return $this->fechaCierre;
}
public function setFechaCierre(?\DateTimeInterface $fechaCierre): static {
$this->fechaCierre = $fechaCierre;
return $this;
}
public function getMedidaDisciplinaria(): ?ParMedidaDisciplinaria {
return $this->medidaDisciplinaria;
}
public function setMedidaDisciplinaria(?ParMedidaDisciplinaria $medidaDisciplinaria): static {
$this->medidaDisciplinaria = $medidaDisciplinaria;
return $this;
}
public function getDiasMedida(): ?int {
return $this->diasMedida;
}
public function setDiasMedida(?int $diasMedida): static {
$this->diasMedida = $diasMedida;
return $this;
}
public function getEstadoJuridico(): ?ParEstado {
return $this->estadoJuridico;
}
public function setEstadoJuridico(?ParEstado $estadoJuridico): static {
$this->estadoJuridico = $estadoJuridico;
return $this;
}
public function getDiasJuridico(): ?int {
return $this->diasJuridico;
}
public function setDiasJuridico(?int $diasJuridico): static {
$this->diasJuridico = $diasJuridico;
return $this;
}
public function getEstadoJefeInmediato(): ?ParEstado {
return $this->estadoJefeInmediato;
}
public function setEstadoJefeInmediato(?ParEstado $estadoJefeInmediato): static {
$this->estadoJefeInmediato = $estadoJefeInmediato;
return $this;
}
public function getDiasJefeInmediato(): ?int {
return $this->diasJefeInmediato;
}
public function setDiasJefeInmediato(?int $diasJefeInmediato): static {
$this->diasJefeInmediato = $diasJefeInmediato;
return $this;
}
public function getMedidaDisciplinariaJuridica(): ?ParMedidaDisciplinaria {
return $this->medidaDisciplinariaJuridica;
}
public function setMedidaDisciplinariaJuridica(?ParMedidaDisciplinaria $medidaDisciplinariaJuridica): static {
$this->medidaDisciplinariaJuridica = $medidaDisciplinariaJuridica;
return $this;
}
public function getMedidaDisciplinariaJefe(): ?ParMedidaDisciplinaria {
return $this->medidaDisciplinariaJefe;
}
public function setMedidaDisciplinariaJefe(?ParMedidaDisciplinaria $medidaDisciplinariaJefe): static {
$this->medidaDisciplinariaJefe = $medidaDisciplinariaJefe;
return $this;
}
public function getInformacionAdjunta(): ?string {
return $this->informacionAdjunta;
}
public function setInformacionAdjunta(?string $informacionAdjunta): static {
$this->informacionAdjunta = $informacionAdjunta;
return $this;
}
public function getSoporteMedida(): ?string {
return $this->soporteMedida;
}
public function setSoporteMedida(?string $soporteMedida): static {
$this->soporteMedida = $soporteMedida;
return $this;
}
public function getPersona(): ?TerPersona {
return $this->persona;
}
public function setPersona(?TerPersona $persona): static {
$this->persona = $persona;
return $this;
}
public function getPersonaSolicita(): ?TerPersona
{
return $this->personaSolicita;
}
public function setPersonaSolicita(?TerPersona $personaSolicita): static
{
$this->personaSolicita = $personaSolicita;
return $this;
}
public function getEstado(): ?ParEstado
{
return $this->estado;
}
public function setEstado(?ParEstado $estado): static
{
$this->estado = $estado;
return $this;
}
/**
* @return Collection<int, GHProcesoDisciplinarioEvidencia>
*/
public function getProcesoDisciplinarioEvidencia(): Collection
{
return $this->procesoDisciplinarioEvidencia;
}
public function addProcesoDisciplinarioEvidencium(GHProcesoDisciplinarioEvidencia $procesoDisciplinarioEvidencium): static
{
if (!$this->procesoDisciplinarioEvidencia->contains($procesoDisciplinarioEvidencium)) {
$this->procesoDisciplinarioEvidencia->add($procesoDisciplinarioEvidencium);
$procesoDisciplinarioEvidencium->setProcesoDisciplinario($this);
}
return $this;
}
public function removeProcesoDisciplinarioEvidencium(GHProcesoDisciplinarioEvidencia $procesoDisciplinarioEvidencium): static
{
if ($this->procesoDisciplinarioEvidencia->removeElement($procesoDisciplinarioEvidencium)) {
// set the owning side to null (unless already changed)
if ($procesoDisciplinarioEvidencium->getProcesoDisciplinario() === $this) {
$procesoDisciplinarioEvidencium->setProcesoDisciplinario(null);
}
}
return $this;
}
public function getFechaDescargos(): ?\DateTimeInterface
{
return $this->fechaDescargos;
}
public function setFechaDescargos(?\DateTimeInterface $fechaDescargos): static
{
$this->fechaDescargos = $fechaDescargos;
return $this;
}
public function getCitacion(): ?string
{
return $this->citacion;
}
public function setCitacion(?string $citacion): static
{
$this->citacion = $citacion;
return $this;
}
public function isApelacionColaborador(): ?bool
{
return $this->apelacionColaborador;
}
public function setApelacionColaborador(?bool $apelacionColaborador): static
{
$this->apelacionColaborador = $apelacionColaborador;
return $this;
}
public function getGestionApelacion(): ?string
{
return $this->gestionApelacion;
}
public function setGestionApelacion(?string $gestionApelacion): static
{
$this->gestionApelacion = $gestionApelacion;
return $this;
}
public function getObservaciones(): ?string
{
return $this->observaciones;
}
public function setObservaciones(?string $observaciones): static
{
$this->observaciones = $observaciones;
return $this;
}
public function getFechasSancion(): ?string
{
return $this->fechasSancion;
}
public function setFechasSancion(?string $fechasSancion): static
{
$this->fechasSancion = $fechasSancion;
return $this;
}
}