<?php
/* Autor...:  */
/* Esquema.: FCO_OrdenRecibo.xml */
/* Generado: 2020-08-18 04:21:26 */

/* Metodos de acceso a los campos de la tabla FCO_OrdenRecibo */
abstract class BaseFCO_OrdenReciboBN
{
    /* Campos de la tabla */
    private $i_OrdenId;    // OrdenId: ( no definido )
    private $i_IdDocRecibo;    // IdDocRecibo: ( no definido )
    private $s_OrdenNum;    // OrdenNum: ( no definido )
    private $s_IdMoneda;    // IdMoneda: ( no definido )
    private $f_TipoCambio;    // TipoCambio: ( no definido )
    private $f_MontoOrden;    // MontoOrden: ( no definido )
    private $f_MontoOrdenMN;    // MontoOrdenMN: ( no definido )
    private $f_MontoOrdenME;    // MontoOrdenME: ( no definido )
    private $s_UsuarioCreacion;    // UsuarioCreacion: ( no definido )
    private $d_FechaCreacion;    // FechaCreacion: ( 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 IdDocRecibo */
    public function setIdDocRecibo( $i_IdDocRecibo )
    {
        $this->i_IdDocRecibo = $i_IdDocRecibo;
    }

    /* Obtiene el valor del campo IdDocRecibo */
    public function getIdDocRecibo()
    {
        return $this->i_IdDocRecibo;
    }

    /* 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 IdMoneda */
    public function setIdMoneda( $s_IdMoneda )
    {
        $this->s_IdMoneda = $s_IdMoneda;
    }

    /* Obtiene el valor del campo IdMoneda */
    public function getIdMoneda()
    {
        return $this->s_IdMoneda;
    }

    /* Establece el valor del campo TipoCambio */
    public function setTipoCambio( $f_TipoCambio )
    {
        $this->f_TipoCambio = $f_TipoCambio;
    }

    /* Obtiene el valor del campo TipoCambio */
    public function getTipoCambio()
    {
        return $this->f_TipoCambio;
    }

    /* Establece el valor del campo MontoOrden */
    public function setMontoOrden( $f_MontoOrden )
    {
        $this->f_MontoOrden = $f_MontoOrden;
    }

    /* Obtiene el valor del campo MontoOrden */
    public function getMontoOrden()
    {
        return $this->f_MontoOrden;
    }

    /* Establece el valor del campo MontoOrdenMN */
    public function setMontoOrdenMN( $f_MontoOrdenMN )
    {
        $this->f_MontoOrdenMN = $f_MontoOrdenMN;
    }

    /* Obtiene el valor del campo MontoOrdenMN */
    public function getMontoOrdenMN()
    {
        return $this->f_MontoOrdenMN;
    }

    /* Establece el valor del campo MontoOrdenME */
    public function setMontoOrdenME( $f_MontoOrdenME )
    {
        $this->f_MontoOrdenME = $f_MontoOrdenME;
    }

    /* Obtiene el valor del campo MontoOrdenME */
    public function getMontoOrdenME()
    {
        return $this->f_MontoOrdenME;
    }

    /* 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 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 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(),
            'IdDocRecibo' => $this->getIdDocRecibo(),
            'OrdenNum' => $this->getOrdenNum(),
            'IdMoneda' => $this->getIdMoneda(),
            'TipoCambio' => $this->getTipoCambio(),
            'MontoOrden' => $this->getMontoOrden(),
            'MontoOrdenMN' => $this->getMontoOrdenMN(),
            'MontoOrdenME' => $this->getMontoOrdenME(),
            'UsuarioCreacion' => $this->getUsuarioCreacion(),
            'FechaCreacion' => $this->getFechaCreacion(),
            '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 FCO_OrdenReciboBN desde un RecordSet */
    public static function retrieveByRs( $o_FCO_OrdenReciboRs )
    {
        $o_FCO_OrdenReciboBN = new FCO_OrdenReciboBN();
        $o_FCO_OrdenReciboBN->setOrdenId( ( integer ) $o_FCO_OrdenReciboRs[ "OrdenId" ] );
        $o_FCO_OrdenReciboBN->setIdDocRecibo( ( integer ) $o_FCO_OrdenReciboRs[ "IdDocRecibo" ] );
        $o_FCO_OrdenReciboBN->setOrdenNum( $o_FCO_OrdenReciboRs[ "OrdenNum" ] );
        $o_FCO_OrdenReciboBN->setIdMoneda( $o_FCO_OrdenReciboRs[ "IdMoneda" ] );
        $o_FCO_OrdenReciboBN->setTipoCambio( ( float ) $o_FCO_OrdenReciboRs[ "TipoCambio" ] );
        $o_FCO_OrdenReciboBN->setMontoOrden( ( float ) $o_FCO_OrdenReciboRs[ "MontoOrden" ] );
        $o_FCO_OrdenReciboBN->setMontoOrdenMN( ( float ) $o_FCO_OrdenReciboRs[ "MontoOrdenMN" ] );
        $o_FCO_OrdenReciboBN->setMontoOrdenME( ( float ) $o_FCO_OrdenReciboRs[ "MontoOrdenME" ] );
        $o_FCO_OrdenReciboBN->setUsuarioCreacion( $o_FCO_OrdenReciboRs[ "UsuarioCreacion" ] );
        $o_FCO_OrdenReciboBN->setFechaCreacion( utilTimestamp::getTimestamp( $o_FCO_OrdenReciboRs[ "FechaCreacion" ], "Y-m-d H:i:s" ) );
        $o_FCO_OrdenReciboBN->setUsuarioModificacion( $o_FCO_OrdenReciboRs[ "UsuarioModificacion" ] );
        $o_FCO_OrdenReciboBN->setFechaModificacion( utilTimestamp::getTimestamp( $o_FCO_OrdenReciboRs[ "FechaModificacion" ], "Y-m-d H:i:s" ) );
        return $o_FCO_OrdenReciboBN;
    }
}
?>