$idTramite	       = $_POST["idTramite"];
 $observaciones	   = $_POST["observaciones"];     
 
 // Carga datos del tramite
 $Tramite	= new Tramite();
 $Tramite->Load_Tramite($idTramite);
 $fecha_Comprobacion = $Tramite->Get_dato("t_fecha_registro");
 $aprobador          = $Tramite->Get_dato("t_dueno");
 $t_etapa_actual     = $Tramite->Get_dato("t_etapa_actual"); 
 $t_flujo            = $Tramite->Get_dato("t_flujo"); 
 $iniciador          =  $Tramite->Get_dato("t_iniciador");
 
 // Carga datos de la comprobacion
 $Comprobacion = new Comprobacion();
 $Comprobacion->Load_Comprobacion($idTramite);
 $TipoComp           = $Comprobacion->Get_dato("co_tipo");           // Tipo de comprobacion: 1: Viaje, 2: Amex, 3: Caja Chica              
 $cc_id_comprobacion = $Comprobacion->Get_dato("co_cc_clave");       // El ceco se captura en el alta de la comprobacion       
 $co_fecha_registro  = $Comprobacion->Get_dato("co_fecha_registro"); // Fecha de la comprobacion
 $co_id              = $Comprobacion->Get_dato("co_id");
 $co_total           = $Comprobacion->Get_dato("co_total");
 $co_total_aprobado  = $Comprobacion->Get_dato("co_total_aprobado");
 $co_pendiente       = $co_total - $co_total_aprobado;   // Cuanto falta por aprobar
                         
 // Datos del aprobador
 $Usuario		= new Usuario();
 $DatosAprobador = $Usuario ->Load_Usuario_By_ID($aprobador);
 $NumAprobador   = $Usuario ->Get_dato("u_usuario");
 
 // Actualiza las observaciones de la comprobacion
 $Comprobacion->Actualiza_Observaciones_Comprobacion($co_id, $observaciones);
 
Exemple #2
0
 /**
  * Enter description here...
  *
  * @param unknown_type $tramite
  */
 public function Notificar($tramite, $comentario = "Ninguna", $TipoSolicitud, $etapaComp = "", $coTipo = "")
 {
     //Se agrego $etapaComp para las comprobaciones ya autorizadas.
     //session_start();
     $cad_iniciador = "";
     $cad_grupo = "";
     $cad_usuario = "";
     $U = new Usuario();
     file_put_contents("setsion.txt", $_SESSION["idusuario"]);
     $U->Load_usuario($_SESSION["idusuario"]);
     //echo $_SESSION["idusuario"]." dso";
     $NameUser = $U->Get_dato("u_nombre") . " " . $U->Get_dato("u_paterno") . " " . $U->Get_dato("u_materno");
     $T = new Tramite();
     $F = new Flujo();
     $C = new Comprobacion();
     //$E	= new Etapa();
     $T->Load_Tramite($tramite);
     //$F->Load($T->Get_dato("t_flujo"));
     //$E->Load_Etapa($T->Get_dato("t_etapa_actual"));
     //$nombre_tramite=$F->Get_dato("f_nombre");
     $cad_grupo = "La " . $TipoSolicitud . " No.  <strong>" . sprintf("%05s", $tramite) . "</strong>";
     $cad_iniciador = $cad_grupo;
     $cad_usuario = $cad_grupo;
     $etapa = "";
     if ($T->Get_dato("t_cerrado") == 1) {
         //SI EL TRAMITE SE CERRO
         if ($T->Get_dato("t_cancelado") == 0) {
             $cad_iniciador .= " ha sido <strong> Aprobada </strong> por <strong>{$NameUser}</strong> y  <strong>Cerrada Correctamente</strong> ";
             $etapa = "AUTORIZADA";
             $cad_usuario = "";
             $cad_grupo = "";
         } else {
             $etapa = "CANCELADA";
             $cad_iniciador .= " ha sido <strong>Cancelada</strong> por <strong>{$NameUser}</strong> ";
             $cad_grupo = "";
             $cad_usuario = "";
         }
     } else {
         //PASA A UNA ETAPA DETERMINADA
         //$et_ant=$this->etapa_anterior($T->Get_dato("t_etapa_actual"));
         if ($T->Get_dato("t_etapa_actual") == 2) {
             //SE ACABA DE CAPTURAR
             $cad_usuario .= " ha sido <strong>Generada</strong>";
             $cad_iniciador .= " ha sido <strong>Generada</strong> Correctamente";
             $etapa = "GENERADA";
         } elseif ($T->Get_dato("t_etapa_actual") == 3 && $etapaComp == "") {
             $cad_usuario .= " ha sido <strong>Generada</strong>";
             $cad_iniciador .= " ha sido <strong>Generada</strong> Correctamente";
             $etapa = "GENERADA";
         } elseif ($T->Get_dato("t_etapa_actual") == 3 && isset($etapaComp) && !empty($etapaComp)) {
             $cad_usuario .= " ha sido <strong>Generada</strong>";
             $cad_iniciador .= " ha sido <strong> Aprobada </strong> por <strong>{$NameUser}</strong> y pasa a la siguiente etapa para su aprobación";
             $etapa = "APROBADA";
         } else {
             $cad_iniciador .= " ha sido <strong>APROBADA</strong> por <strong>{$NameUser}</strong> y pasa a la siguiente Etapa para su Aprobación.";
             $etapa = "APROBADA";
         }
         /*if($T->Get_dato("t_grupo")>0){//ES UN GRUPO
         				$G	= new Grupo();
         				$G->Load_data($T->Get_dato("t_grupo"));
         	
         				//$cad_grupo		.=" ha sido asignada al Grupo: <strong>" . $G->Get_dato("g_nombre") . "</strong> y queda en espera de su aprobacion";
         				$cad_grupo			.=" ha sido asignada a tu Grupo para su Aprobación";
         				//MANDAMOS NOTIFICACION PARA TODO EL GRUPO
         				$this->Notifica_grupo($T->Get_dato("t_id"),$cad_grupo,$T->Get_dato("t_grupo"),$comentario);
         				$cad_usuario	="";		
         			}
         			else{*/
         $cad_grupo = "";
         $cad_usuario .= " y te ha sido Asignada para su Aprobación.";
         //MANDAMOS A INSERTAR LA NOTIFICACION
         //}
     }
     $U_Iniciador = new Usuario();
     $U_Iniciador->Load_usuario($T->Get_dato("t_iniciador"));
     if ($T->Get_dato("t_iniciador") != $T->Get_dato("t_owner")) {
         $this->Add($cad_iniciador, $T->Get_dato("t_id"), $U_Iniciador->Get_dato("u_usuario"));
         $this->envia_mail_iniciador($T->Get_dato("t_id"), $T->Get_dato("t_iniciador"), $etapa, $TipoSolicitud, $comentario);
     }
     if ($TipoSolicitud == "Comprobacion") {
         if ($coTipo != "2") {
             $C->Load_Comprobacion($tramite);
             $co_id = $C->Get_dato("co_id");
             $query = sprintf("SELECT * FROM detalle_comprobacion where dc_comprobacion=%s", $co_id);
             $rst = parent::consultar($query);
             if ($fila = mysql_fetch_assoc($rst)) {
                 if (trim($cad_usuario != "")) {
                     $U_Iniciador->Load_usuario($fila['dc_responsable']);
                     $this->Add($cad_usuario, $T->Get_dato("t_id"), $fila['dc_responsable']);
                     $this->envia_mail_usuario($T->Get_dato("t_id"), $U_Iniciador->Get_dato("u_id"), $TipoSolicitud, $T->Get_dato("t_iniciador"), $comentario);
                 }
             }
         } else {
             $C->Load_Comprobacion_Amex($tramite);
             $co_id = $C->Get_dato_amx("co_id");
             $query = sprintf("SELECT * FROM detalle_comprobacion_amex where dca_comprobacion=%s", $co_id);
             $rst = parent::consultar($query);
             if ($fila = mysql_fetch_assoc($rst)) {
                 if (trim($cad_usuario != "")) {
                     $U_Iniciador->Load_usuario($fila['dca_responsable']);
                     $this->Add($cad_usuario, $T->Get_dato("t_id"), $fila['dca_responsable']);
                     $this->envia_mail_usuario($T->Get_dato("t_id"), $U_Iniciador->Get_dato("u_id"), $TipoSolicitud, $T->Get_dato("t_iniciador"), $comentario);
                 }
             }
         }
     } else {
         if (trim($cad_usuario != "")) {
             $U_Iniciador->Load_usuario($T->Get_dato("t_owner"));
             $this->Add($cad_usuario, $T->Get_dato("t_id"), $U_Iniciador->Get_dato("u_usuario"));
             $this->envia_mail_usuario($T->Get_dato("t_id"), $T->Get_dato("t_owner"), $TipoSolicitud, $T->Get_dato("t_iniciador"), $comentario);
         }
     }
 }
$cnn = new conexion();
$idTramite = $_GET['id'];
//Se cargan los comensales de la comprobacion de invitacion
$comensales = new Comensales();
$invitados = $comensales->Load_comensales_by_tramite($idTramite);
// Carga datos de autorizadores
$rutaAutorizacion = new RutaAutorizacion();
$autorizadores = $rutaAutorizacion->getNombreAutorizadores($idTramite);
//Se carga el tramite de la comprobacion
$tramite = new Tramite();
$tramite->Load_Tramite($idTramite);
//Se carga la comprobacion
$comp_inv = new Comprobacion();
$comp_inv->Load_Comprobacion_Invitacion_By_co_mi_tramite($idTramite);
//Se obtiene el id del tramite de la solicitud de invitacion
$id_tramite_sol_inv = $comp_inv->Get_dato("co_tramite");
//Se carga la solicitud de invitacion a la que hace referencia la comprobacion
$sol_inv = new C_SV();
$sol_inv->Load_Solicitud_Invitacion_Tramite($id_tramite_sol_inv);
//Datos de la comprobacion
$idComprobacion = $comp_inv->Get_dato("co_id");
$co_fecha_registro = cambiarFormatoFecha($comp_inv->Get_dato("co_fecha_registro"));
$co_tipo = $comp_inv->Get_dato("co_tipo");
$motivo = $comp_inv->Get_dato("co_motivo");
$ciudad = $comp_inv->Get_dato("co_ciudad");
$co_tramite = $comp_inv->Get_dato("co_tramite");
$co_cc_clave = $comp_inv->Get_dato("co_cc_clave");
$subtotal_comp = number_format($comp_inv->Get_dato("co_subtotal"), 2, ".", ",");
$iva_comp = number_format($comp_inv->Get_dato("co_iva"), 2, ".", ",");
$total_comp = number_format($comp_inv->Get_dato("co_total"), 2, ".", ",");
$co_total_aprobado = number_format($comp_inv->Get_dato("co_total_aprobado"), 2, ".", ",");
Exemple #4
0
function obtener_ruta_de_autorizacion_de_comprobacion_viaje($id_tramite)
{
    $t_ruta_autorizacion = "";
    $id_agencia = "";
    $id_director_de_area = "";
    $id_director_general = "";
    $id_controlling = "";
    $id_finanzas = "";
    $agencia = true;
    $dir_area = true;
    $dir_gral = true;
    $controlling = true;
    $finanzas = true;
    //Cargamos la comprobacion de viaje en base al tramite
    $compViaje = new Comprobacion();
    $compViaje->Load_Comprobacion_By_co_mi_tramite($id_tramite);
    //Se obtiene el ID del usuario de agencia
    $usuario_aux = new Usuario();
    $id_agencia = $usuario_aux->Get_Id_by_Tipo("4");
    //El 4 es el ID del tipo agencia actualmente 16/abr/2012
    //El primer autorizador es el "Gerente de area",
    //osea el responsable del centro de costos de la comprobacion de invitacion.
    $cc_id = $compViaje->Get_dato("co_cc_clave");
    $cc = new CentroCosto();
    $cc->Load_CeCo($cc_id);
    $id_gerente_de_area = $cc->Get_Dato("cc_responsable");
    /*	
    	//Se checa si el usuario es de "BMW Financial Services".
    	$tramite = new Tramite();
    	$tramite->Load_Tramite($id_tramite);
    	$id_iniciador = $tramite->Get_dato("t_iniciador");
    	
    	$usuario = new Usuario();
    	$usuario->Load_Usuario_By_ID($id_iniciador);
    	$usu_empresa = $usuario->Get_dato("u_empresa");
    	if($usu_empresa == "2"){
    		$dir_gral = true;
    	}else{
    		//Se checa si existe un invitado de tipo "Gobierno".
    		$comensales = new Comensales();
    		$comensales_array = $comensales->Load_comensales_by_tramite($id_tramite);
    		$no_invitados = count($comensales_array);
    		for($i=0;$i<$no_invitados;$i++){
    			if($comensales_array[$i]['dci_tipo_invitado'] == "Gobierno"){
    				$dir_gral = true;
    				break;
    			}
    		}
    		if($dir_gral == true){
    		}else{
    			//Se checa si el monto solicitado por persona es mayor a 50 EUR.
    			$si_monto_pesos = $sol_inv->Get_dato("si_monto_pesos");
    			
    			$divisa = new Divisa();
    			$divisa->Load_data("3"); //div_id de EUR = 3
    			$tasa_eur = $divisa->Get_dato("div_tasa");
    			
    			$monto_x_persona = $si_monto_pesos/$tasa_eur/$no_invitados;
    			if($monto_x_persona > 50){
    				$dir_gral = true;
    			}
    		}
    	}
    */
    $usuario = new Usuario();
    //El segundo autorizador es el "Director de area".
    if ($dir_area == true) {
        $id_director_de_area = $cc->Get_Dato("cc_director_de_area");
    }
    $agrup_usu = new AgrupacionUsuarios();
    //El cuarto autorizador es el "Controlling".
    if ($controlling == true) {
        $agrup_usu->Load_Grupo_de_Usuario_By_Nombre('Controlling');
        $id_controlling = $agrup_usu->Get_dato("au_id");
    }
    //El quinto autorizador es el "Finanzas".
    if ($finanzas == true) {
        $agrup_usu->Load_Grupo_de_Usuario_By_Nombre('Finanzas');
        $id_finanzas = $agrup_usu->Get_dato("au_id");
    }
    //Se arma la ruta de autorizacion
    $t_ruta_autorizacion = $id_agencia . "|" . $id_gerente_de_area;
    if ($dir_area == true && $id_director_de_area != "") {
        if (existe_substr($t_ruta_autorizacion, $id_director_de_area, "|") == false) {
            $t_ruta_autorizacion .= "|" . $id_director_de_area;
        }
    }
    if ($dir_gral == true && $id_director_general != "") {
        if (existe_substr($t_ruta_autorizacion, $id_director_general, "|") == false) {
            $t_ruta_autorizacion .= "|" . $id_director_general;
        }
    }
    if ($controlling == true && $id_controlling != "") {
        if (existe_substr($t_ruta_autorizacion, $id_controlling, "|") == false) {
            $t_ruta_autorizacion .= "|" . $id_controlling;
        }
    }
    if ($finanzas == true && $id_finanzas != "") {
        if (existe_substr($t_ruta_autorizacion, $id_finanzas, "|") == false) {
            $t_ruta_autorizacion .= "|" . $id_finanzas;
        }
    }
    return $t_ruta_autorizacion;
}
     exit(header("Location: ./index.php?okAut"));
 }
 if ($modo == "enviarSupervisor") {
     $montoToleranciaSupervisorFnanzas = ULT_APROBACION;
     $anticipoComprobado = $_POST["anticipoComprobado"];
     $personalComprobado = $_POST["personalComprobado"];
     $amexComprobado = $_POST["amexComprobado"];
     $efectivoComprobado = $_POST["efectivoComprobado"];
     $amexExternoComprobado = $_POST["amexExternoComprobado"];
     $montoDescotar = $_POST["montoDescotar"];
     $montoReembolsar = $_POST["montoReembolsar"];
     $totalComprobado = $totalComprobado;
     $comprobacion = new Comprobacion();
     $comprobacion->Load_Comprobacion_By_co_mi_tramite($idTramite);
     $comprobacion->ActualizarResumenFinanzas($idTramite, $anticipoComprobado, $personalComprobado, $amexExternoComprobado, $efectivoComprobado, $montoDescotar, $montoReembolsar, $amexExternoComprobado, $totalComprobado);
     $idComprobacion = $comprobacion->Get_dato("co_id");
     $usuario = new Usuario();
     $siguienteDueno = $totalComprobado <= $montoToleranciaSupervisorFnanzas ? $usuario->getGerenteSFinanzas(SUPERVISOR_FINANZAS) : $usuario->getGerenteSFinanzas(GERENTE_FINANZAS);
     $sql = "DELETE \n\t\t\t\t\tFROM detalle_comprobacion \n\t\t\t\t\tWHERE dc_comprobacion = '{$idComprobacion}'";
     $cnn->ejecutar($sql);
     for ($i = 1; $i <= $rows; $i++) {
         $tipoComprobacion = $_POST['row_tipoComprobacion' . $i];
         $noTransaccion = $_POST['row_noTransaccion' . $i] == "N/A" ? 0 : $_POST['row_noTransaccion' . $i];
         $cargoTarjeta = $_POST['row_cargoTarjeta' . $i];
         $concepto = $_POST['row_concepto' . $i];
         $tipoComida = $_POST['row_tipoComida' . $i] == "N/A" ? 0 : $_POST['row_tipoComida' . $i];
         $comentario = $_POST['row_comentario' . $i];
         $asistentes = $_POST['row_asistentes' . $i];
         $fecha = $_POST['row_fecha' . $i];
         $rfc = $_POST['row_rfc' . $i] == "N/A" ? 0 : $_POST['row_rfc' . $i];
         $folio = $_POST['row_folio' . $i];
 public function agregaAutorizadoresExcedentes($idTramite, $excepciones)
 {
     $autorizadoresExcedentes = '';
     $excepciones = json_decode($excepciones);
     //error_log("Excepciones por politica: ".$excepciones->noExcepcionesPoliticas);
     //error_log("Excepciones por presupuesto: ".$excepciones->noExcepcionesPresupuesto);
     $tramites = new Tramite();
     $tramites->Load_Tramite($idTramite);
     $rutaAutorizacion = $tramites->Get_dato('t_ruta_autorizacion');
     $flujoTramite = $tramites->Get_dato('t_flujo');
     $autorizador = $this->get_administrador();
     $bandera_Anticipo = $this->requiereAnticipo($idTramite);
     switch ($flujoTramite) {
         case FLUJO_SOLICITUD:
             $autorizadoresExcedentes = $excepciones->noExcepcionesPresupuesto != 0 ? "|" . $this->get_controller() : '';
             $autorizadoresExcedentes .= !$this->requiereAgencia($idTramite) ? "|" . $this->get_administrador() : '';
             $autorizadoresExcedentes .= $this->requiereAgencia($idTramite) && $bandera_Anticipo == true ? "|" . $this->get_administrador() : '';
             break;
         case FLUJO_SOLICITUD_GASTOS:
             $autorizadoresExcedentes = $excepciones->noExcepcionesPoliticas != 0 ? "|" . $this->get_controlInterno() : '';
             $autorizadoresExcedentes .= "|" . $this->get_administrador();
             break;
         case FLUJO_COMPROBACION:
             $comprobaciones = new Comprobacion();
             $comprobaciones->Load_Comprobacion_By_co_mi_tramite($idTramite);
             $tramiteSolicitud = $comprobaciones->Get_dato('co_tramite');
             $autorizadoresExcedentes = $excepciones->noExcepcionesPoliticas != 0 ? "|" . $this->get_controlInterno() : '';
             $autorizadoresExcedentes .= $tramiteSolicitud == -1 && $excepciones->noExcepcionesPresupuesto != 0 ? "|" . $this->get_controller() : '';
             $autorizadoresExcedentes .= "|" . $this->get_administrador();
             break;
         case FLUJO_COMPROBACION_GASTOS:
             $autorizadoresExcedentes = $excepciones->noExcepcionesPoliticas != 0 ? "|" . $this->get_controlInterno() : '';
             $autorizadoresExcedentes .= "|" . $this->get_administrador();
             break;
     }
     $query = sprintf("UPDATE tramites SET t_ruta_autorizacion = CONCAT(t_ruta_autorizacion, '%s') WHERE t_id = '%s'", $autorizadoresExcedentes, $idTramite);
     parent::ejecutar($query);
 }