<?php
namespace App\Entity;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
/**
* TbPreCliente
*
* @ORM\Table(name="tb_pre_cliente", uniqueConstraints={@ORM\UniqueConstraint(name="int_id_pre_cliente_UNIQUE", columns={"int_id_pre_cliente"})}, indexes={@ORM\Index(name="FK_pre_cliente_1_idx", columns={"int_tipo_cliente"}), @ORM\Index(name="FK_pre_cliente_2_idx", columns={"int_id_tipo_identificacion"}), @ORM\Index(name="FK_pre_cliente_3_idx", columns={"int_convenio_comercial"}), @ORM\Index(name="FK_tb_pre_cliente_10_idx", columns={"strid_departamento"}), @ORM\Index(name="FK_tb_pre_cliente_11_idx", columns={"strid_municipio"}), @ORM\Index(name="FK_tb_pre_cliente_12_idx", columns={"int_id_especialidad"}), @ORM\Index(name="FK_tb_pre_cliente_13_idx", columns={"int_id_subespecialidad"}), @ORM\Index(name="FK_tb_pre_cliente_4_idx", columns={"int_id_vendedor"}), @ORM\Index(name="FK_tb_pre_cliente_5_idx", columns={"int_id_proveedor_migracion"}), @ORM\Index(name="FK_tb_pre_cliente_6_idx", columns={"int_id_usuario_himed_admin"}), @ORM\Index(name="FK_tb_pre_cliente_7_idx", columns={"int_id_usuario_actualiza"}), @ORM\Index(name="FK_tb_pre_cliente_8_idx", columns={"int_tipo_licencia"}), @ORM\Index(name="FK_tb_pre_cliente_9_idx", columns={"strid_pais"})})
* @ORM\Entity(repositoryClass="App\Repository\TbPreClienteRepository")
*/
class TbPreCliente
{
/**
* @var int
*
* @ORM\Column(name="int_id_pre_cliente", type="integer", nullable=false, options={"unsigned"=true,"comment"="Clave primaria"})
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $intIdPreCliente;
/**
* @var int
*
* @ORM\Column(name="int_idcliente", type="bigint", nullable=false, options={"comment"="Guarda la identificacion del cliente"})
*/
private $intIdcliente;
/**
* @var int|null
*
* @ORM\Column(name="tint_digito_verificacion", type="integer", nullable=true, options={"comment"="Guarda el digito de verificacion"})
*/
private $tintDigitoVerificacion;
/**
* @var string
*
* @ORM\Column(name="str_razon_social", type="string", length=100, nullable=false, options={"comment"="Guarda el nombre del cliente"})
*/
private $strRazonSocial;
/**
* @var string|null
*
* @ORM\Column(name="str_nombre", type="string", length=50, nullable=true, options={"comment"="Guarda el nombre del cliente"})
*/
private $strNombre;
/**
* @var string|null
*
* @ORM\Column(name="str_apellido", type="string", length=100, nullable=true, options={"comment"="Guarda el apellido del cliente"})
*/
private $strApellido;
/**
* @var \DateTime|null
*
* @ORM\Column(name="dt_fecha_nacimiento", type="date", nullable=true, options={"comment"="Fecha de nacimiento para clientes particulares, Fecha de constitucion para instituciones"})
*/
private $dtFechaNacimiento;
/**
* @var string|null
*
* @ORM\Column(name="str_direccion", type="string", length=100, nullable=true, options={"comment"="Direccion del consultorio o institucion"})
*/
private $strDireccion;
/**
* @var int|null
*
* @ORM\Column(name="int_indicador_pais", type="integer", nullable=true, options={"comment"="Guarda el indicador del pais para el numero celular"})
*/
private $intIndicadorPais;
/**
* @var string
*
* @ORM\Column(name="str_celular", type="string", length=10, nullable=false, options={"comment"="Guarda el numero celular"})
*/
private $strCelular;
/**
* @var string
*
* @ORM\Column(name="str_telefono", type="string", length=10, nullable=true, options={"comment"="Guarda el teléfono secundario"})
*/
private $strTelefono;
/**
* @var string
*
* @ORM\Column(name="str_email", type="string", length=50, nullable=false, options={"comment"="Guarda el correo electronico"})
*/
private $strEmail;
/**
* @var string|null
*
* @ORM\Column(name="str_codigo_prestador", type="string", length=12, nullable=true, options={"comment"="Codigo del prestador"})
*/
private $strCodigoPrestador;
/**
* @var string|null
*
* @ORM\Column(name="str_barrio", type="string", length=30, nullable=true, options={"comment"="Barrio del consultorio o institucion"})
*/
private $strBarrio;
/**
* @var string|null
*
* @ORM\Column(name="str_observaciones", type="text", length=0, nullable=true, options={"comment"="Guarda las observaciones"})
*/
private $strObservaciones;
/**
* @var bool|null
*
* @ORM\Column(name="tint_envio_formulario", type="boolean", nullable=true, options={"comment"="1-Se envio el formulario 0-No se ha enviado el formulario"})
*/
private $tintEnvioFormulario;
/**
* @var \DateTime|null
*
* @ORM\Column(name="dt_fecha_envio_formulario", type="datetime", nullable=true, options={"comment"="Fecha en que se envio el formulario al cliente"})
*/
private $dtFechaEnvioFormulario;
/**
* @var string|null
*
* @ORM\Column(name="str_codigo_verificacion", type="string", length=6, nullable=true, options={"comment"="Código de verificación enviado al nuevo usuario"})
*/
private $strCodigoVerificacion;
/**
* @var \DateTime|null
*
* @ORM\Column(name="dt_fecha_envio_codigo", type="datetime", nullable=true, options={"comment"="Fecha y hora de envío del código de verificación"})
*/
private $dtFechaEnvioCodigo;
/**
* @var bool
*
* @ORM\Column(name="tint_requiere_migracion", type="boolean", nullable=false, options={"comment"="1-Si requiere migracion 0 - No requiere migracion"})
*/
private $tintRequiereMigracion;
/**
* @var string|null
*
* @ORM\Column(name="str_motivo_rechazo", type="text", nullable=true)
*/
private $strMotivoRechazo;
/**
* @var \TbPreClienteEstado
*
* @ORM\ManyToOne(targetEntity="TbPreClienteEstado")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="int_id_pre_cliente_estado", referencedColumnName="int_id_pre_cliente_estado")
* })
*/
private $intIdPreClienteEstado;
/**
* @var \DateTime|null
*
* @ORM\Column(name="dt_fecha_registro", type="datetime", nullable=true)
*/
private $dtFechaRegistro;
/**
* @var \DateTime|null
*
* @ORM\Column(name="dt_fecha_actualizacion", type="datetime", nullable=true)
*/
private $dtFechaActualizacion;
/**
* @var \TbTipoCliente
*
* @ORM\ManyToOne(targetEntity="TbTipoCliente")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="int_tipo_cliente", referencedColumnName="int_tipo_cliente")
* })
*/
private $intTipoCliente;
/**
* @var \TbDepartamento
*
* @ORM\ManyToOne(targetEntity="TbDepartamento")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="strid_departamento", referencedColumnName="strid_dpto")
* })
*/
private $stridDepartamento;
/**
* @var \TbMunicipio
*
* @ORM\ManyToOne(targetEntity="TbMunicipio")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="strid_municipio", referencedColumnName="strid_mpio")
* })
*/
private $stridMunicipio;
/**
* @var \TbHobbie|null
*
* @ORM\ManyToOne(targetEntity="TbHobbie")
* @ORM\JoinColumns({ @ORM\JoinColumn(name="int_id_hobbie", referencedColumnName="int_id_hobbie") })
*/
private $intIdHobbie;
/**
* @var \TbTipoIdentificacion
*
* @ORM\ManyToOne(targetEntity="TbTipoIdentificacion")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="int_id_tipo_identificacion", referencedColumnName="int_id_tipo_identificacion")
* })
*/
private $intIdTipoIdentificacion;
/**
* @var \TbClienteConvenio
*
* @ORM\ManyToOne(targetEntity="TbClienteConvenio")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="int_convenio_comercial", referencedColumnName="int_convenio")
* })
*/
private $intConvenioComercial;
/**
* @var \TbVendedor
*
* @ORM\ManyToOne(targetEntity="TbVendedor")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="int_id_vendedor", referencedColumnName="int_id_vendedor")
* })
*/
private $intIdVendedor;
/**
* @var \TbProveedorMigracion
*
* @ORM\ManyToOne(targetEntity="TbProveedorMigracion")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="int_id_proveedor_migracion", referencedColumnName="int_id_proveedor")
* })
*/
private $intIdProveedorMigracion;
/**
* @var \TbUsuarioHimedAdmin
*
* @ORM\ManyToOne(targetEntity="TbUsuarioHimedAdmin")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="int_id_usuario_himed_admin", referencedColumnName="int_id_usuario")
* })
*/
private $intIdUsuarioHimedAdmin;
/**
* @var \TbUsuarioHimedAdmin
*
* @ORM\ManyToOne(targetEntity="TbUsuarioHimedAdmin")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="int_id_usuario_actualiza", referencedColumnName="int_id_usuario")
* })
*/
private $intIdUsuarioActualiza;
/**
* @var \TbTipoLicencia
*
* @ORM\ManyToOne(targetEntity="TbTipoLicencia")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="int_tipo_licencia", referencedColumnName="int_tipo_licencia")
* })
*/
private $intTipoLicencia;
/**
* @var \TbPais
*
* @ORM\ManyToOne(targetEntity="TbPais")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="strid_pais", referencedColumnName="strid_pais")
* })
*/
private $stridPais;
/**
* @var array|null
*
* @ORM\Column(name="json_representante_legal", type="json", nullable=true)
*/
private $jsonRepresentanteLegal;
/**
* @var array|null
*
* @ORM\Column(name="json_responsable_factura", type="json", nullable=true)
*/
private $jsonResponsableFactura;
/**
* @var array|null
*
* @ORM\Column(name="json_especialidad", type="json", nullable=true)
*/
private $jsonEspecialidad;
/**
* @var array|null
*
* @ORM\Column(name="json_subespecialidad", type="json", nullable=true)
*/
private $jsonSubespecialidad;
//Formularios Adicionales
/**
* @Assert\Type(type="App\Entity\TbPreClienteVigencia") *
* @Assert\Valid
*/
private $preClienteVigencia;
/**
* @Assert\Type(type="App\Entity\TbPreClienteUsuario") *
* @Assert\Valid
*/
private $preClienteUsuario;
public function __construct(){
$this->dtFechaRegistro = new \DateTime();
}
public function getIntIdPreCliente(): ?int
{
return $this->intIdPreCliente;
}
public function getIntIdcliente(): ?string
{
return $this->intIdcliente;
}
public function setIntIdcliente(string $intIdcliente): self
{
$this->intIdcliente = $intIdcliente;
return $this;
}
public function getTintDigitoVerificacion(): ?int
{
return $this->tintDigitoVerificacion;
}
public function setTintDigitoVerificacion(?int $tintDigitoVerificacion): self
{
$this->tintDigitoVerificacion = $tintDigitoVerificacion;
return $this;
}
public function getStrRazonSocial(): ?string
{
return $this->strRazonSocial;
}
public function setStrRazonSocial(string $strRazonSocial): self
{
$this->strRazonSocial = $strRazonSocial;
return $this;
}
public function getStrNombre(): ?string
{
return $this->strNombre;
}
public function setStrNombre(?string $strNombre): self
{
$this->strNombre = $strNombre;
return $this;
}
public function getStrApellido(): ?string
{
return $this->strApellido;
}
public function setStrApellido(?string $strApellido): self
{
$this->strApellido = $strApellido;
return $this;
}
public function getDtFechaNacimiento(): ?\DateTimeInterface
{
return $this->dtFechaNacimiento;
}
public function setDtFechaNacimiento(?\DateTimeInterface $dtFechaNacimiento): self
{
$this->dtFechaNacimiento = $dtFechaNacimiento;
return $this;
}
public function getStrDireccion(): ?string
{
return $this->strDireccion;
}
public function setStrDireccion(?string $strDireccion): self
{
$this->strDireccion = $strDireccion;
return $this;
}
public function getIntIndicadorPais(): ?int
{
return $this->intIndicadorPais;
}
public function setIntIndicadorPais(?int $intIndicadorPais): self
{
$this->intIndicadorPais = $intIndicadorPais;
return $this;
}
public function getStrCelular(): ?string
{
return $this->strCelular;
}
public function setStrCelular(string $strCelular): self
{
$this->strCelular = $strCelular;
return $this;
}
public function getStrTelefono(): ?string
{
return $this->strTelefono;
}
public function setStrTelefono(string $strTelefono): self
{
$this->strTelefono = $strTelefono;
return $this;
}
public function getStrEmail(): ?string
{
return $this->strEmail;
}
public function setStrEmail(string $strEmail): self
{
$this->strEmail = $strEmail;
return $this;
}
public function getStrCodigoPrestador(): ?string
{
return $this->strCodigoPrestador;
}
public function setStrCodigoPrestador(?string $strCodigoPrestador): self
{
$this->strCodigoPrestador = $strCodigoPrestador;
return $this;
}
public function getStrBarrio(): ?string
{
return $this->strBarrio;
}
public function setStrBarrio(?string $strBarrio): self
{
$this->strBarrio = $strBarrio;
return $this;
}
public function getStrObservaciones(): ?string
{
return $this->strObservaciones;
}
public function setStrObservaciones(?string $strObservaciones): self
{
$this->strObservaciones = $strObservaciones;
return $this;
}
public function isTintEnvioFormulario(): ?bool
{
return $this->tintEnvioFormulario;
}
public function setTintEnvioFormulario(?bool $tintEnvioFormulario): self
{
$this->tintEnvioFormulario = $tintEnvioFormulario;
return $this;
}
public function getDtFechaEnvioFormulario(): ?\DateTimeInterface
{
return $this->dtFechaEnvioFormulario;
}
public function setDtFechaEnvioFormulario(?\DateTimeInterface $dtFechaEnvioFormulario): self
{
$this->dtFechaEnvioFormulario = $dtFechaEnvioFormulario;
return $this;
}
public function getStrCodigoVerificacion(): ?string
{
return $this->strCodigoVerificacion;
}
public function setStrCodigoVerificacion(?string $strCodigoVerificacion): self
{
$this->strCodigoVerificacion = $strCodigoVerificacion;
return $this;
}
public function getDtFechaEnvioCodigo(): ?\DateTimeInterface
{
return $this->dtFechaEnvioCodigo;
}
public function setDtFechaEnvioCodigo(?\DateTimeInterface $dtFechaEnvioCodigo): self
{
$this->dtFechaEnvioCodigo = $dtFechaEnvioCodigo;
return $this;
}
public function isTintRequiereMigracion(): ?bool
{
return $this->tintRequiereMigracion;
}
public function setTintRequiereMigracion(bool $tintRequiereMigracion): self
{
$this->tintRequiereMigracion = $tintRequiereMigracion;
return $this;
}
public function getDtFechaRegistro(): ?\DateTimeInterface
{
return $this->dtFechaRegistro;
}
public function setDtFechaRegistro(?\DateTimeInterface $dtFechaRegistro): self
{
$this->dtFechaRegistro = $dtFechaRegistro;
return $this;
}
public function getDtFechaActualizacion(): ?\DateTimeInterface
{
return $this->dtFechaActualizacion;
}
public function setDtFechaActualizacion(?\DateTimeInterface $dtFechaActualizacion): self
{
$this->dtFechaActualizacion = $dtFechaActualizacion;
return $this;
}
public function getIntTipoCliente(): ?TbTipoCliente
{
return $this->intTipoCliente;
}
public function setIntTipoCliente(?TbTipoCliente $intTipoCliente): self
{
$this->intTipoCliente = $intTipoCliente;
return $this;
}
public function getIntIdHobbie(): ?TbHobbie
{
return $this->intIdHobbie;
}
public function setIntIdHobbie(?TbHobbie $intIdHobbie): self
{
$this->intIdHobbie = $intIdHobbie;
return $this;
}
public function getStridDepartamento(): ?TbDepartamento
{
return $this->stridDepartamento;
}
public function setStridDepartamento(?TbDepartamento $stridDepartamento): self
{
$this->stridDepartamento = $stridDepartamento;
return $this;
}
public function getStridMunicipio(): ?TbMunicipio
{
return $this->stridMunicipio;
}
public function setStridMunicipio(?TbMunicipio $stridMunicipio): self
{
$this->stridMunicipio = $stridMunicipio;
return $this;
}
public function getIntIdTipoIdentificacion(): ?TbTipoIdentificacion
{
return $this->intIdTipoIdentificacion;
}
public function setIntIdTipoIdentificacion(?TbTipoIdentificacion $intIdTipoIdentificacion): self
{
$this->intIdTipoIdentificacion = $intIdTipoIdentificacion;
return $this;
}
public function getIntConvenioComercial(): ?TbClienteConvenio
{
return $this->intConvenioComercial;
}
public function setIntConvenioComercial(?TbClienteConvenio $intConvenioComercial): self
{
$this->intConvenioComercial = $intConvenioComercial;
return $this;
}
public function getIntIdVendedor(): ?TbVendedor
{
return $this->intIdVendedor;
}
public function setIntIdVendedor(?TbVendedor $intIdVendedor): self
{
$this->intIdVendedor = $intIdVendedor;
return $this;
}
public function getIntIdProveedorMigracion(): ?TbProveedorMigracion
{
return $this->intIdProveedorMigracion;
}
public function setIntIdProveedorMigracion(?TbProveedorMigracion $intIdProveedorMigracion): self
{
$this->intIdProveedorMigracion = $intIdProveedorMigracion;
return $this;
}
public function getIntIdUsuarioHimedAdmin(): ?TbUsuarioHimedAdmin
{
return $this->intIdUsuarioHimedAdmin;
}
public function setIntIdUsuarioHimedAdmin(?TbUsuarioHimedAdmin $intIdUsuarioHimedAdmin): self
{
$this->intIdUsuarioHimedAdmin = $intIdUsuarioHimedAdmin;
return $this;
}
public function getIntIdUsuarioActualiza(): ?TbUsuarioHimedAdmin
{
return $this->intIdUsuarioActualiza;
}
public function setIntIdUsuarioActualiza(?TbUsuarioHimedAdmin $intIdUsuarioActualiza): self
{
$this->intIdUsuarioActualiza = $intIdUsuarioActualiza;
return $this;
}
public function getIntTipoLicencia(): ?TbTipoLicencia
{
return $this->intTipoLicencia;
}
public function setIntTipoLicencia(?TbTipoLicencia $intTipoLicencia): self
{
$this->intTipoLicencia = $intTipoLicencia;
return $this;
}
public function getStridPais(): ?TbPais
{
return $this->stridPais;
}
public function setStridPais(?TbPais $stridPais): self
{
$this->stridPais = $stridPais;
return $this;
}
public function getPreClienteVigencia(): ?TbPreClienteVigencia
{
return $this->preClienteVigencia;
}
public function setPreClienteVigencia(?TbPreClienteVigencia $preClienteVigencia): self
{
$this->preClienteVigencia = $preClienteVigencia;
return $this;
}
public function getPreClienteUsuario(): ?TbPreClienteUsuario
{
return $this->preClienteUsuario;
}
public function setPreClienteUsuario(?TbPreClienteUsuario $preClienteUsuario): self
{
$this->preClienteUsuario = $preClienteUsuario;
return $this;
}
public function getJsonRepresentanteLegal(): ?array
{
return $this->jsonRepresentanteLegal;
}
public function setJsonRepresentanteLegal(?array $jsonRepresentanteLegal): self
{
$this->jsonRepresentanteLegal = $jsonRepresentanteLegal;
return $this;
}
public function getJsonResponsableFactura(): ?array
{
return $this->jsonResponsableFactura;
}
public function setJsonResponsableFactura(?array $jsonResponsableFactura): self
{
$this->jsonResponsableFactura = $jsonResponsableFactura;
return $this;
}
public function getIntIdPreClienteEstado(): ?TbPreClienteEstado
{
return $this->intIdPreClienteEstado;
}
public function setIntIdPreClienteEstado(?TbPreClienteEstado $intIdPreClienteEstado): self
{
$this->intIdPreClienteEstado = $intIdPreClienteEstado;
return $this;
}
public function getStrMotivoRechazo(): ?string
{
return $this->strMotivoRechazo;
}
public function setStrMotivoRechazo(?string $strMotivoRechazo): self
{
$this->strMotivoRechazo = $strMotivoRechazo;
return $this;
}
public function getJsonEspecialidad(): ?array
{
return $this->jsonEspecialidad;
}
public function setJsonEspecialidad(?array $jsonEspecialidad): self
{
$this->jsonEspecialidad = $jsonEspecialidad;
return $this;
}
public function getJsonSubespecialidad(): ?array
{
return $this->jsonSubespecialidad;
}
public function setJsonSubespecialidad(?array $jsonSubespecialidad): self
{
$this->jsonSubespecialidad = $jsonSubespecialidad;
return $this;
}
}