<?php

/**
 * aprobar_co_documento_ep actions.
 *
 * @package    contratacion
 * @subpackage aprobar_co_documento_ep
 * @author     Your name here
 * @version    SVN: $Id: actions.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
 */
class aprobar_co_documento_epActions extends sfActions
{
    /**
     * Executes index action
     *
     * @param sfRequest $request A request object
     */
    public function executeUpdate(sfWebRequest $request) {

        $mensaje = '';
        $status = 0;
        $this->conn = Doctrine_Manager::getInstance()->getCurrentConnection();
        //parametros
        //datos usuario operacion
        $id_usuario_estado = $request['id_username'];
        $fecha_estado = CN_TABLE::fechaSistema();
        $id_documentos = '';
        if (isset($request['id_documentos'])) {
            $id_documentos = $request['id_documentos'];
        }
        $aprobado=0;
        if(isset($request['bandera_aprobado'])){
            $aprobado = $request['bandera_aprobado'];
        }
        
        if ($id_documentos == '') {
            $mensaje .= "Falta id documentos a aprobar.";
            $status = 1;
            $this->logMessage($mensaje);
            $api_errors = array();
        } else {
            try {
                $sql = <<<EOD
update CO_DOCUMENTO_EP 
set APROBADO = $aprobado,
    FECHA_APROBADO = to_date('$fecha_estado','yyyy-mm-dd'),
    ID_USUARIO_APROBADO = $id_usuario_estado
where id_documento_ep in ($id_documentos)
EOD;
                $this->conn->execute($sql);
            } catch (Exception $exc) {
                //$this->conn->rollback();
                $this->status = 1;
                $this->totalRows = 0;
                $this->startRow = 0;
                $this->endRow = 0;
                $this->list_data = array();
                $this->logMessage("ERROR!!!");
                $this->logMessage($exc->getMessage());
                $this->logMessage("Error!!! Fallo Aprobación Documentos!!!".$id_documentos);
                //echo $exc->getTraceAsString();
            }
        }

        if ($status == 0) {
            //$this->conn->commit();
            $this->status = 0;
            $this->mensaje = "Se aprobaron los documentos de manera exitosa";
            $this->list_data = array();
            $this->logMessage("[aprobar_co_documento_ep] Exitoso:" . $id_documentos);
        } else {
            //$this->conn->rollback();
            $this->status = 1;
            $this->mensaje = $mensaje;
            $this->servicio = "APROBAR DOCUMENTO EP";
            $this->list_data = array();
            //$this->list_data = array($api_errors);
            $this->logMessage("[aprobar_co_documento_ep] ERROR!");
            $this->logMessage($mensaje);
            //Validacion si es un array - 20200430::LAVILA
            if (is_array($api_errors)) {
                $er = $api_errors;
                $error_array = "";
                foreach ($er as $m) {
                    $error_array = $m;
                    $this->logMessage($m);
                }
            }
            $this->mensajeError = $mensaje . "</br></br>Error::" . $error_array;
        }
    }
 
}
