示例#1
0
 $t_ruta_autorizacion = $tramite->Get_dato("t_ruta_autorizacion");
 $t_dueno = $tramite->Get_dato("t_dueno");
 $iniciador = $tramite->Get_dato("t_iniciador");
 $t_delegado = $tramite->Get_dato("t_delegado");
 $t_etapa_actual = $tramite->Get_dato("t_etapa_actual");
 //Se obtienen los ids de Controlling y de Finanzas
 $agrup_usu->Load_Grupo_de_Usuario_By_Nombre("Finanzas");
 $idFinanzas = $agrup_usu->Get_dato("au_id");
 // Actualiza el campo de Observaciones
 if ($sObser != "") {
     $notificacion = new Notificacion();
     $observaciones = $notificacion->anotaObservacion($t_dueno, $HObser, $sObser, FLUJO_SOLICITUD_GASTOS, "", $idrepresentante);
     $solicitudes->actualizaObservaciones($observaciones, '', $idTramite);
 }
 // Definición de mensajes
 $mensajeUsuario = $tramite->crearMensaje($idTramite, SOLICITUD_GASTOS_ETAPA_RECHAZADA, false, true, $idrepresentante);
 // Mensaje para usuario iniciador
 //  	error_log("--->>".$mensajeUsuario);
 switch ($t_etapa_actual) {
     case SOLICITUD_GASTOS_ETAPA_EN_APROBACION_POR_DIRECTOR:
         // Modificaremos la Etapa de la Comprobacion
         $tramite->Modifica_Etapa($idTramite, SOLICITUD_GASTOS_ETAPA_RECHAZADA_POR_DIRECTOR, FLUJO_SOLICITUD_GASTOS, $iniciador, "");
         // Notificamos al Usuario
         $tramite->EnviaNotificacion($idTramite, $mensajeUsuario, $iduser, $iniciador, 0, "");
         break;
     default:
         //Modificar la Etapa de la Solicitud
         $tramite->Modifica_Etapa($idTramite, SOLICITUD_GASTOS_ETAPA_RECHAZADA, FLUJO_SOLICITUD_GASTOS, $iniciador, "");
         // Enviar Notificacion para Usuario
         $tramite->EnviaNotificacion($idTramite, $mensajeUsuario, $t_dueno, $iniciador, 0, "");
         break;
     $siguienteAprobador = $t_iniciador;
 }
 $duenoActual01 = new Usuario();
 if ($duenoActual01->Load_Usuario_By_ID($t_dueno)) {
     $dueno_act_nombre = $duenoActual01->Get_dato('nombre');
 } else {
     $agrup_usu = new AgrupacionUsuarios();
     $agrup_usu->Load_Grupo_de_Usuario_By_ID($t_dueno);
     $dueno_act_nombre = $agrup_usu->Get_dato("au_nombre");
 }
 $remitente = $t_dueno;
 $destinatario = $tramite->Get_dato("t_iniciador");
 //$mensaje = sprintf("La Comprobaci&oacute;n de Viaje <strong>%05s</strong> ha sido <strong>MODIFICADA</strong> por <strong>%05s</strong>", $idTramite, $dueno_act_nombre);
 //$tramite->EnviaNotificacion($idTramite, $mensaje, $remitente, $destinatario, 1, "");
 if (!$finRuta) {
     $mensaje = $tramite->crearMensaje($idTramite, COMPROBACION_ETAPA_EN_APROBACION, false, true, $t_delegado);
     $tramite->Modifica_Etapa($idTramite, COMPROBACION_ETAPA_EN_APROBACION, FLUJO_COMPROBACION, $siguienteAprobador, "");
     $tramite->EnviaNotificacion($idTramite, $mensaje, $remitente, $destinatario, 1, "");
     $mensaje2 = sprintf("La Comprobaci&oacute;n de Viaje <strong>%05s</strong> ha sido <strong>AUTORIZADA</strong> por <strong>%05s</strong> y requiere de su autorizaci&oacute;n", $idTramite, $dueno_act_nombre);
     $tramite->EnviaNotificacion($idTramite, $mensaje2, $remitente, $siguienteAprobador, 1, "");
 } else {
     $mensaje = sprintf("La Comprobaci&oacute;n de Viaje <strong>%05s</strong> ha sido <strong>APROBADA</strong> por completo.", $idTramite);
     $tramite->Modifica_Etapa($idTramite, COMPROBACION_ETAPA_APROBADA, FLUJO_COMPROBACION, $siguienteAprobador, "");
     $tramite->EnviaNotificacion($idTramite, $mensaje, $remitente, $destinatario, 1, "");
     $tramite->setCierreFecha($idTramite);
     $queryTramite = sprintf("SELECT * FROM tramites WHERE t_id = {$idTramite}");
     $res_Tramite = $cnn->consultar($queryTramite);
     while ($fila_Tramite = mysql_fetch_assoc($res_Tramite)) {
         $fCierre = $fila_Tramite['t_fecha_cierre'];
     }
     $f = $fCierre = explode("-", $fCierre);
        $objetoPresupuesto = $presupuesto->validarPresupuesto($idTramite);
        $rutaautorizacion->generaExcepcion($idTramite, $objetoPresupuesto);
        $rutaautorizacion->generarRutaAutorizacion($idTramite, $t_delegado);
        $excepciones = $rutaautorizacion->get_Excepciones($idTramite);
        $rutaautorizacion->agregaAutorizadoresExcedentes($idTramite, $excepciones);
        $destinatario = $rutaautorizacion->getAprobador($idTramite, $iduser);
        $etapa = COMPROBACION_ETAPA_EN_APROBACION;
        $redirect = "okAut";
    } elseif ($modo == 'rechazar') {
        $etapa = COMPROBACION_ETAPA_RECHAZADA_POR_DIRECTOR;
        $destinatario = $iniciador;
        $redirect = "action=rechazar";
    }
    //$tramite->Modifica_Dueno($idTramite, $etapa, FLUJO_COMPROBACION, $t_dueno, $iniciador);
    $tramite->Modifica_Etapa($idTramite, $etapa, FLUJO_COMPROBACION, $destinatario, "", $t_delegado);
    $mensaje = $tramite->crearMensaje($idTramite, $etapa);
    $tramite->EnviaNotificacion($idTramite, $mensaje, $iduser, $destinatario, 1);
    exit(header("Location: ./index.php?{$redirect}"));
} else {
    ?>
		<script type="text/javascript" src="../../lib/js/jquery/jquery.blockUI.js"></script> 
		<script type="text/javascript" src="../../lib/js/formatNumber.js"></script>
		<script type="text/javascript" src="../../lib/js/jqueryui/jquery-ui.min.js"></script>	
		<script type="text/javascript" src="js/backspaceGeneral.js"></script>	
		<script type="text/javascript" src="js/cargaDatos.js"></script>
		<link rel="stylesheet" type="text/css" href="../../css/table_style.css"/>	
		<style>
			span{			
				font-weight: bold;
			}
			.tablaDibujada{			
 $t_ruta_autorizacion = $tramite->Get_dato("t_ruta_autorizacion");
 $t_delegado = $tramite->Get_dato("t_delegado");
 $t_dueno = $tramite->Get_dato("t_dueno");
 $t_iniciador = $tramite->Get_dato("t_iniciador");
 // Guardado de Observaciones
 if ($observaciones != "") {
     $notificacion = new Notificacion();
     $observaciones = $notificacion->anotaObservacion($t_dueno, $historialObservaciones, $observaciones, FLUJO_COMPROBACION_GASTOS, COMPROBACION_ETAPA_EN_APROBACION);
     $comprobaciones->actualizaObservaciones($observaciones, "", $idTramite);
 }
 //Informacion de la Comprobacion
 $comprobaciones->cargaComprobacionGastosporTramite($idTramite);
 // Obtener ID de la Comprobacion de Gastos
 $co_id = $comprobaciones->Get_dato('co_id');
 // Definicion de mensajes Autorizadores/Usuario
 $mensajeAutorizadores = $tramite->crearMensaje($idTramite, COMPROBACION_GASTOS_ETAPA_APROBACION, true, true, $delegado);
 //error_log("--->>".$mensajeAutorizadores."<br />");
 if ($modo == "reasignar") {
     $redirect = "errAut";
     // El centro de Costos tiene siempre que ser diferente
     if ($cecoNuevo != $cecoOriginal) {
         // Obtener aprobador
         $aprobador = $rutaAutorizacion->AutorizarFinanzas($idTramite, $cecoNuevo, 1);
         // Guardar el CECO de la Comprobacion
         $comprobaciones->actualizarCECO($cecoNuevo, $idTramite);
         $agrup_usu = new AgrupacionUsuarios();
         $agrup_usu->Load_Grupo_de_Usuario_By_ID($t_dueno);
         $finanzas = $agrup_usu->Get_dato("au_nombre");
         $mensajeUsuario = sprintf("La Comprobaci&oacute;n de Gastos <strong>%05s</strong> ha sido <strong>MODIFICADA</strong> por <strong>%s</strong>.", $idTramite, $finanzas);
         $redirect = "action=autorizar";
         $tramite->Load_Tramite($idTramite);
     $mail = 0;
     $redirect = "action=rechazar";
 }
 $duenoActual01 = new Usuario();
 if ($duenoActual01->Load_Usuario_By_ID($t_dueno)) {
     $dueno_act_nombre = $duenoActual01->Get_dato('nombre');
 } else {
     $agrup_usu = new AgrupacionUsuarios();
     $agrup_usu->Load_Grupo_de_Usuario_By_ID($t_dueno);
     $dueno_act_nombre = $agrup_usu->Get_dato("au_nombre");
 }
 $remitente = $t_dueno;
 $destinatario = $tramite->Get_dato("t_iniciador");
 // Crear mensaje para el usuario
 if (!$finRuta) {
     $mensajeAutorizadores = $tramite->crearMensaje($idTramite, $siguienteEtapa, false, true, $delegado);
     $mensaje2 = sprintf("La Comprobaci&oacute;n de Gastos <strong>%05s</strong> ha sido <strong>AUTORIZADA</strong> por <strong>%05s</strong> y requiere de su autorizaci&oacute;n", $idTramite, $dueno_act_nombre);
     $tramite->EnviaNotificacion($idTramite, $mensaje2, $remitente, $aprobador, 1, "");
     $t_dueno = $t_dueno;
 }
 //Modificar la Etapa de la Solicitud
 $tramite->Modifica_Etapa($idTramite, $siguienteEtapa, FLUJO_COMPROBACION_GASTOS, $aprobador, $t_ruta_autorizacion, $delegado);
 if (!$finRuta) {
     $aprobador = $t_dueno;
 }
 // Enviar Notificacion para Aprobador
 $tramite->EnviaNotificacion($idTramite, $mensajeAutorizadores, $t_dueno, $aprobador, $mail, "");
 // Regresar a la pantalla de Cmprobaciones de Viaje
 if ($mobile) {
     echo "<meta http-equiv='Refresh' content='0; URL=http://" . $SERVER . $RUTA_R . "flujos/comprobaciones/index.php?docs=docs&type=4{$redirect}'>";
 } else {
      * Validacion y guardado de excepcion de presupuesto
      **/
     $rutaAutorizadores = $rutaAutorizacion->generarRutaAutorizacion($idTramite, $_SESSION['idrepresentante']);
     // Obtener Autorizador
     $aprobador = $rutaAutorizacion->getSiguienteAprobador($idTramite, $iniciador);
     // Creamos el texto de las observaciones que serán enviadas
     if ($observaciones != '') {
         $observaciones = $notificacion->anotaObservacion($iniciador, $historialObservaciones, $observaciones, FLUJO_SOLICITUD_GASTOS, SOLICITUD_GASTOS_ETAPA_SIN_ENVIAR, $_SESSION['idrepresentante']);
     } else {
         $observaciones = '';
     }
     // Actualizar las observaciones de la solicitud de gastos
     $solicitud->actualizaObservaciones($observaciones, '', $idTramite);
     $tramite->Modifica_Etapa($idTramite, SOLICITUD_GASTOS_ETAPA_APROBACION, FLUJO_SOLICITUD_GASTOS, $aprobador, $rutaAutorizadores, $_SESSION['idrepresentante']);
     // Definición del mensaje
     $mensaje = $tramite->crearMensaje($idTramite, SOLICITUD_GASTOS_ETAPA_APROBACION, true, false, $_SESSION['idrepresentante']);
     $tramite->EnviaNotificacion($idTramite, $mensaje, $iniciador, $aprobador, 1, "");
     // "0" para no enviar email y "1" para enviarlo
 } else {
     $guardadoPrevio = true;
     // Actualizar las observaciones de la solicitud de gastos
     $solicitud->actualizaObservaciones($historialObservaciones, $observaciones, $idTramite);
     $tramite->Modifica_Etapa($idTramite, SOLICITUD_GASTOS_ETAPA_SIN_ENVIAR, FLUJO_SOLICITUD_GASTOS, $iniciador, "");
 }
 // Guardamos todos los cambios en la Base de Datos
 $tramite->ejecutar("COMMIT");
 if ($guardadoPrevio) {
     header("Location: ./index.php?docs=docs&type=2&oksaveP");
 } else {
     header("Location: ./index.php?docs=docs&type=2&oksave");
 }