<?php
/* Autor...:  */
/* Esquema.: VTA_OrdenProyectos.xml */
/* Generado: 2020-12-23 02:50:43 */

/* Metodos de acceso a los campos de la tabla VTA_OrdenProyectos */
abstract class BaseVTA_OrdenProyectosBN
{
    /* Campos de la tabla */
    private $i_OrdenId;    // OrdenId: ( no definido )
    private $s_OrdenNum;    // OrdenNum: ( no definido )
    private $i_IdPersona;    // IdPersona: ( no definido )
    private $s_NombreCompleto;    // NombreCompleto: ( no definido )
    private $s_NombreProyecto;    // NombreProyecto: ( no definido )
    private $s_Contacto;    // Contacto: ( no definido )
    private $s_TipoDocumento;    // TipoDocumento: ( no definido )
    private $s_NroDocumento;    // NroDocumento: ( no definido )
    private $s_Cargo;    // Cargo: ( no definido )
    private $s_Telefono;    // Telefono: ( no definido )
    private $s_Correo;    // Correo: ( no definido )
    private $d_FechaCreacion;    // FechaCreacion: ( no definido )
    private $s_UsuarioCreacion;    // UsuarioCreacion: ( no definido )
    private $s_UsuarioModificacion;    // UsuarioModificacion: ( no definido )
    private $d_FechaModificacion;    // FechaModificacion: ( no definido )

    /* Establece el valor del campo OrdenId */
    public function setOrdenId( $i_OrdenId )
    {
        $this->i_OrdenId = $i_OrdenId;
    }

    /* Obtiene el valor del campo OrdenId */
    public function getOrdenId()
    {
        return $this->i_OrdenId;
    }

    /* Establece el valor del campo OrdenNum */
    public function setOrdenNum( $s_OrdenNum )
    {
        $this->s_OrdenNum = $s_OrdenNum;
    }

    /* Obtiene el valor del campo OrdenNum */
    public function getOrdenNum()
    {
        return $this->s_OrdenNum;
    }

    /* Establece el valor del campo IdPersona */
    public function setIdPersona( $i_IdPersona )
    {
        $this->i_IdPersona = $i_IdPersona;
    }

    /* Obtiene el valor del campo IdPersona */
    public function getIdPersona()
    {
        return $this->i_IdPersona;
    }

    /* Establece el valor del campo NombreCompleto */
    public function setNombreCompleto( $s_NombreCompleto )
    {
        $this->s_NombreCompleto = $s_NombreCompleto;
    }

    /* Obtiene el valor del campo NombreCompleto */
    public function getNombreCompleto()
    {
        return $this->s_NombreCompleto;
    }

    /* Establece el valor del campo NombreProyecto */
    public function setNombreProyecto( $s_NombreProyecto )
    {
        $this->s_NombreProyecto = $s_NombreProyecto;
    }

    /* Obtiene el valor del campo NombreProyecto */
    public function getNombreProyecto()
    {
        return $this->s_NombreProyecto;
    }

    /* Establece el valor del campo Contacto */
    public function setContacto( $s_Contacto )
    {
        $this->s_Contacto = $s_Contacto;
    }

    /* Obtiene el valor del campo Contacto */
    public function getContacto()
    {
        return $this->s_Contacto;
    }

    /* Establece el valor del campo TipoDocumento */
    public function setTipoDocumento( $s_TipoDocumento )
    {
        $this->s_TipoDocumento = $s_TipoDocumento;
    }

    /* Obtiene el valor del campo TipoDocumento */
    public function getTipoDocumento()
    {
        return $this->s_TipoDocumento;
    }

    /* Establece el valor del campo NroDocumento */
    public function setNroDocumento( $s_NroDocumento )
    {
        $this->s_NroDocumento = $s_NroDocumento;
    }

    /* Obtiene el valor del campo NroDocumento */
    public function getNroDocumento()
    {
        return $this->s_NroDocumento;
    }

    /* Establece el valor del campo Cargo */
    public function setCargo( $s_Cargo )
    {
        $this->s_Cargo = $s_Cargo;
    }

    /* Obtiene el valor del campo Cargo */
    public function getCargo()
    {
        return $this->s_Cargo;
    }

    /* Establece el valor del campo Telefono */
    public function setTelefono( $s_Telefono )
    {
        $this->s_Telefono = $s_Telefono;
    }

    /* Obtiene el valor del campo Telefono */
    public function getTelefono()
    {
        return $this->s_Telefono;
    }

    /* Establece el valor del campo Correo */
    public function setCorreo( $s_Correo )
    {
        $this->s_Correo = $s_Correo;
    }

    /* Obtiene el valor del campo Correo */
    public function getCorreo()
    {
        return $this->s_Correo;
    }

    /* Establece el valor del campo FechaCreacion */
    public function setFechaCreacion( $d_FechaCreacion )
    {
        $this->d_FechaCreacion = $d_FechaCreacion;
    }

    /* Obtiene el valor del campo FechaCreacion */
    public function getFechaCreacion()
    {
        return $this->d_FechaCreacion;
    }

    /* Establece el valor del campo UsuarioCreacion */
    public function setUsuarioCreacion( $s_UsuarioCreacion )
    {
        $this->s_UsuarioCreacion = $s_UsuarioCreacion;
    }

    /* Obtiene el valor del campo UsuarioCreacion */
    public function getUsuarioCreacion()
    {
        return $this->s_UsuarioCreacion;
    }

    /* Establece el valor del campo UsuarioModificacion */
    public function setUsuarioModificacion( $s_UsuarioModificacion )
    {
        $this->s_UsuarioModificacion = $s_UsuarioModificacion;
    }

    /* Obtiene el valor del campo UsuarioModificacion */
    public function getUsuarioModificacion()
    {
        return $this->s_UsuarioModificacion;
    }

    /* Establece el valor del campo FechaModificacion */
    public function setFechaModificacion( $d_FechaModificacion )
    {
        $this->d_FechaModificacion = $d_FechaModificacion;
    }

    /* Obtiene el valor del campo FechaModificacion */
    public function getFechaModificacion()
    {
        return $this->d_FechaModificacion;
    }

    public function getJsonSerialize()
    {
        return 
        [
            'OrdenId' => $this->getOrdenId(),
            'OrdenNum' => $this->getOrdenNum(),
            'IdPersona' => $this->getIdPersona(),
            'NombreCompleto' => $this->getNombreCompleto(),
            'NombreProyecto' => $this->getNombreProyecto(),
            'Contacto' => $this->getContacto(),
            'TipoDocumento' => $this->getTipoDocumento(),
            'NroDocumento' => $this->getNroDocumento(),
            'Cargo' => $this->getCargo(),
            'Telefono' => $this->getTelefono(),
            'Correo' => $this->getCorreo(),
            'FechaCreacion' => $this->getFechaCreacion(),
            'UsuarioCreacion' => $this->getUsuarioCreacion(),
            'UsuarioModificacion' => $this->getUsuarioModificacion(),
            'FechaModificacion' => $this->getFechaModificacion(),
        ];
    }

    public function toArray()
    {
        return $this->processArray( get_object_vars( $this ) ); 
    }

    private function processArray( $array )
    {
        foreach( $array as $key => $value ) 
        {
            if ( is_object( $value ) )
            {
                $array[$key] = $value->toArray();
            }
            if ( is_array( $value ) ) 
            {
                $array[$key] = $this->processArray( $value );
            }
        }
        return $array;
    }

    public function __toString()
    {
        return json_encode( $this->toArray() ); 
    }

    /* Recupera un objeto VTA_OrdenProyectosBN desde un RecordSet */
    public static function retrieveByRs( $o_VTA_OrdenProyectosRs )
    {
        $o_VTA_OrdenProyectosBN = new VTA_OrdenProyectosBN();
        $o_VTA_OrdenProyectosBN->setOrdenId( ( integer ) $o_VTA_OrdenProyectosRs[ "OrdenId" ] );
        $o_VTA_OrdenProyectosBN->setOrdenNum( $o_VTA_OrdenProyectosRs[ "OrdenNum" ] );
        $o_VTA_OrdenProyectosBN->setIdPersona( ( integer ) $o_VTA_OrdenProyectosRs[ "IdPersona" ] );
        $o_VTA_OrdenProyectosBN->setNombreCompleto( $o_VTA_OrdenProyectosRs[ "NombreCompleto" ] );
        $o_VTA_OrdenProyectosBN->setNombreProyecto( $o_VTA_OrdenProyectosRs[ "NombreProyecto" ] );
        $o_VTA_OrdenProyectosBN->setContacto( $o_VTA_OrdenProyectosRs[ "Contacto" ] );
        $o_VTA_OrdenProyectosBN->setTipoDocumento( $o_VTA_OrdenProyectosRs[ "TipoDocumento" ] );
        $o_VTA_OrdenProyectosBN->setNroDocumento( $o_VTA_OrdenProyectosRs[ "NroDocumento" ] );
        $o_VTA_OrdenProyectosBN->setCargo( $o_VTA_OrdenProyectosRs[ "Cargo" ] );
        $o_VTA_OrdenProyectosBN->setTelefono( $o_VTA_OrdenProyectosRs[ "Telefono" ] );
        $o_VTA_OrdenProyectosBN->setCorreo( $o_VTA_OrdenProyectosRs[ "Correo" ] );
        $o_VTA_OrdenProyectosBN->setFechaCreacion( utilTimestamp::getTimestamp( $o_VTA_OrdenProyectosRs[ "FechaCreacion" ], "Y-m-d H:i:s" ) );
        $o_VTA_OrdenProyectosBN->setUsuarioCreacion( $o_VTA_OrdenProyectosRs[ "UsuarioCreacion" ] );
        $o_VTA_OrdenProyectosBN->setUsuarioModificacion( $o_VTA_OrdenProyectosRs[ "UsuarioModificacion" ] );
        $o_VTA_OrdenProyectosBN->setFechaModificacion( utilTimestamp::getTimestamp( $o_VTA_OrdenProyectosRs[ "FechaModificacion" ], "Y-m-d H:i:s" ) );
        return $o_VTA_OrdenProyectosBN;
    }
}
?>