<?php
class PersonasSQL {
const DATOS_COMPLETOS = <<<sql
SELECT
Personas .*
, PersonasCorreos.correoID AS personascorreoID
, PersonasCorreos.correoDIRECCION AS personasCorreoPRINCIPAL
, PersonasDirDomicilio.direccionID AS direccionIDDOMICILIO
, PersonasDirDomicilio.direccionNOMENCLATURA AS direccionDOMICILIO
, PersonasDirComercial.direccionID AS direccionIDCOMERCIAL
, PersonasDirComercial.direccionNOMENCLATURA AS direccionCOMERCIAL
, PersonasDirComercial.direccionCIUDAD AS ciudadRESIDENCIA
, GeoMunicipios.municipioTITULO AS municipioTITULO
, PersonasTelfFijo.telefonoID AS telefonoIDFIJO
, PersonasTelfFijo.telefonoNUMERO AS telefonoFIJO
, PersonasTelfCelular.telefonoID AS telefonoIDCELULAR
, PersonasTelfCelular.telefonoNUMERO AS telefonoCELULAR
, PersonasMatricula.registroMatriculaNUMERO AS PersonasMATRICULA
, PersonasMatricula.registroPublicoID AS PersonasREGISTROPUBLICO
FROM Personas
LEFT JOIN PersonasCorreos AS PersonasCorreos
ON (Personas.personaID = PersonasCorreos.personaID
AND PersonasCorreos.correoTIPO = 'PRINCIPAL' AND PersonasCorreos.correoESTADO = 'ACTIVO' )
LEFT JOIN PersonasDirecciones AS PersonasDirDomicilio
ON (Personas.personaID = PersonasDirDomicilio.personasID
AND PersonasDirDomicilio.direccionTIPO = 'DOMICILIO' AND PersonasDirDomicilio.direccionESTADO = 'ACTIVO')
LEFT JOIN PersonasDirecciones AS PersonasDirComercial
ON (Personas.personaID = PersonasDirComercial.personasID
AND PersonasDirComercial.direccionTIPO = 'COMERCIAL' AND PersonasDirComercial.direccionESTADO = 'ACTIVO')
LEFT JOIN GeoMunicipios AS GeoMunicipios
ON (PersonasDirComercial.direccionCIUDAD = GeoMunicipios.municipioID )
LEFT JOIN PersonasTelefonos AS PersonasTelfFijo
ON (Personas.personaID = PersonasTelfFijo.personasID
AND PersonasTelfFijo.telefonoTIPO = 'FIJO' AND PersonasTelfFijo.telefonoESTADO = 'ACTIVO')
LEFT JOIN PersonasTelefonos AS PersonasTelfCelular
ON (Personas.personaID = PersonasTelfCelular.personasID
AND PersonasTelfCelular.telefonoTIPO = 'CELULAR' AND PersonasTelfCelular.telefonoESTADO = 'ACTIVO')
LEFT JOIN RegistrosPublicosMatriculas AS PersonasMatricula
ON (Personas.personaID = PersonasMatricula.personaID
AND PersonasMatricula.registroPublicoID = 2 )
sql;
const JOIN_DATOS_COMPLETOS = <<<sql
Personas
LEFT JOIN PersonasCorreos AS PersonasCorreos
ON (Personas.personaID = PersonasCorreos.personaID
AND PersonasCorreos.correoTIPO = 'PRINCIPAL' AND PersonasCorreos.correoESTADO = 'ACTIVO' )
LEFT JOIN PersonasDirecciones AS PersonasDirDomicilio
ON (Personas.personaID = PersonasDirDomicilio.personasID
AND PersonasDirDomicilio.direccionTIPO = 'DOMICILIO' AND PersonasDirDomicilio.direccionESTADO = 'ACTIVO')
LEFT JOIN PersonasDirecciones AS PersonasDirComercial
ON (Personas.personaID = PersonasDirComercial.personasID
AND PersonasDirComercial.direccionTIPO = 'COMERCIAL' AND PersonasDirComercial.direccionESTADO = 'ACTIVO')
LEFT JOIN PersonasTelefonos AS PersonasTelfFijo
ON (Personas.personaID = PersonasTelfFijo.personasID
AND PersonasTelfFijo.telefonoTIPO = 'FIJO' AND PersonasTelfFijo.telefonoESTADO = 'ACTIVO')
LEFT JOIN PersonasTelefonos AS PersonasTelfCelular
ON (Personas.personaID = PersonasTelfCelular.personasID
AND PersonasTelfCelular.telefonoTIPO = 'CELULAR' AND PersonasTelfCelular.telefonoESTADO = 'ACTIVO')
LEFT JOIN RegistrosPublicosMatriculas AS PersonasMatricula
ON (Personas.personaID = PersonasMatricula.personaID
AND PersonasMatricula.registroPublicoID = 2 )
sql;
const DATOS_TABLA_PERSONAS = <<<sql
SELECT
Personas.*
FROM
Personas
sql;
const DATOS_BASICOS = <<<sql
SELECT
Personas.personaID,
Personas.tipoPersonaID,
Personas.tiposOrganizacionID,
Personas.tipoIdentificacionID,
Personas.personaLUGAREXPEDICIONCC,
Personas.personaIDENTIFICACION,
Personas.personaRAZONSOCIAL,
Personas.personaNOMBRES,
Personas.personaAPELLIDOS,
Personas.personaNACIONALIDAD,
Personas.personaIMAGEN,
Personas.personaFCHNACIMIENTO,
Personas.personaLUGARNACIMIENTO,
Personas.personaSEXO,
Personas.personaTIPOSANGRE,
Personas.personaESTADOCIVIL,
Personas.personaAFILIADO,
Personas.personaFCHCREADO,
Personas.personaUSRCREA,
Personas.personaFCHMODIFICADO,
Personas.personaUSRMODIFICA,
Personas.personaPAGINAWEB,
TiposPersonas.tipoPersonaCODIGO,
TiposPersonas.tipoPersonaTITULO,
TiposIdentificacion.tipoIdentificacionCODIGO,
TiposIdentificacion.tipoIdentificacionTITULO
FROM
Personas
INNER JOIN TiposPersonas ON Personas.tipoPersonaID = TiposPersonas.tipoPersonaID
INNER JOIN TiposIdentificacion ON Personas.tipoIdentificacionID = TiposIdentificacion.tipoIdentificacionID
sql;
const DATOS_TELEFONICOS = <<<sql
SELECT
PersonasTelefonos.telefonoESTADO,
PersonasTelefonos.telefonoERRADO,
PersonasTelefonos.telefonoNUMERO,
PersonasTelefonos.telefonoTIPO,
PersonasTelefonos.personasID,
PersonasTelefonos.telefonoID
FROM
PersonasTelefonos
sql;
const DATOS_DIRECCION = <<<sql
SELECT
PersonasDirecciones.direccionID,
PersonasDirecciones.personasID,
PersonasDirecciones.direccionTIPO,
PersonasDirecciones.direccionNOMENCLATURA,
PersonasDirecciones.direccionPAIS,
PersonasDirecciones.direccionREGION,
PersonasDirecciones.direccionCIUDAD,
PersonasDirecciones.direccionZONA,
PersonasDirecciones.direccionBARRIO,
PersonasDirecciones.direccionPREDIO,
PersonasDirecciones.direccionPOSTAL,
PersonasDirecciones.direccionERRADA,
PersonasDirecciones.direccionESTADO,
PersonasDirecciones.direccionFCHACTIVO,
PersonasDirecciones.direccionUSRACTIVO,
PersonasDirecciones.direccionFCHDESACTIVO,
PersonasDirecciones.direccionUSRDESACTIVO
FROM
PersonasDirecciones
sql;
const DATOS_CORREO = <<<sql
SELECT
PersonasCorreos.correoID,
PersonasCorreos.personaID,
PersonasCorreos.correoTIPO,
PersonasCorreos.correoDIRECCION,
PersonasCorreos.correoLISTANEGRA,
PersonasCorreos.correoESTADO,
PersonasCorreos.correoFCHACTIVO,
PersonasCorreos.correoUSRACTIVA,
PersonasCorreos.correoFCHDESACTIVA,
PersonasCorreos.correoUSRDESACTIVA
FROM
PersonasCorreos
sql;
const CREAR_REGISTRO = <<<sql
INSERT INTO Personas(tipoPersonaID, tipoIdentificacionID, personaIDENTIFICACION, personaRAZONSOCIAL ,personaNOMBRES , personaAPELLIDOS, personaFCHNACIMIENTO , personaSEXO, personaUSRCREA) VALUES (?,?,?,?,?,?,?,?,?);
sql;
}