<?php
class SaveDetailV3Action extends wtActions
{
    public function execute()
    {
        $i_Id       = $this->getRequestParameter( 'i_Id' );
        $i_IdDet    = $this->getRequestParameter( 'IdDet' );
        $Minimo     = $this->getRequestParameter( 'Minimo' );
        $Maximo     = $this->getRequestParameter( 'Maximo' );
        $Estado     = $this->getRequestParameter( 'Estado' );
        $s_TipoProc = $this->getRequestParameter( 'TipoProc' );

        try

        {
            $o_DefaultDP = new MST_RangoDetalleDP();

            $o_DefaultDP->setEstado( $Estado );
            $o_DefaultDP->setMinimo( ( float ) $Minimo );
            $o_DefaultDP->setMaximo( ( float ) $Maximo );

            if( $s_TipoProc == "nvo" )
            {
                //NUEVO
                $i_IdDet = MST_RangoDetalleDP::recuperarId();
                $o_DefaultDP->setIdRangoDetalle( ( int ) $i_IdDet );
                $o_DefaultDP->setEstado( "A" );
                $o_DefaultDP->setIdRango( ( int ) $i_Id );
                $o_DefaultDP->setFechaCreacion( date( "Y-m-d H:i:s" ) );
                $o_DefaultDP->setUsuarioCreacion( myUser::getUser()->getUserId() );
                $o_DefaultDP->setFechaModificacion( date( "Y-m-d H:i:s" ) );
                $o_DefaultDP->setUsuarioModificacion( myUser::getUser()->getUserId() );
                $o_DefaultDP->save();
            }
            else
            {
                //UPDATE
                $o_DefaultDP->setIdRangoDetalle( ( int ) $i_IdDet );
                $o_DefaultDP->setFechaModificacion( date( "Y-m-d H:i:s" ) );
                $o_DefaultDP->setUsuarioModificacion( myUser::getUser()->getUserId() );
                $o_DefaultDP->update();
            }

            $a_Rs['error']    = false;
            $a_Rs['id']       = $i_IdDet;
        }
        catch( Exception $o_Exception )
        {
            $a_Rs['error']         = true;
            $a_Rs['mensaje_error'] = $o_Exception->getMessage();
        }

        echo json_encode( $a_Rs );

        return ViewResponse::NONE;

    }
}