Example #1
0
        public List<CabeceraSolicitud> PendientesAutorizar(CabeceraSolicitud parCabecera)
        {
            parCabecera.BanderaCierreSolicitud = "1";

            List<CabeceraSolicitud> lista = this.tablaCabecerasSolicitud.Obtener(parCabecera);

            if (lista != null)
            {
                this.log = "Existen " + lista.Count.ToString() + " pendientes de autorizar";
                return lista;
            }
            else
            {
                if (this.tablaCabecerasSolicitud.Log == "VACIO")
                {
                    this.log = "No existen solicitudes por autorizar";
                }
                else
                {
                    this.log = this.tablaCabecerasSolicitud.Log;
                }

                return null;
            }
        }
        public void ValidarFiltros()
        {
            cabeceraSolicitud = new CabeceraSolicitud();

            if (txtNoSolicitud.Text.Trim() == string.Empty)
            {
                cabeceraSolicitud.Clave = 0;
            }
            else
            {
                cabeceraSolicitud.Clave = Convert.ToInt32(txtNoSolicitud.Text.Trim());
            }

            cabeceraSolicitud.UnClave = ddlUnidadesNegocio.SelectedValue;
            cabeceraSolicitud.PropositoViaje = txtObjeto.Text.Trim();
            cabeceraSolicitud.SolicitanteDescripcion = txtCreador.Text.Trim();
            cabeceraSolicitud.EstadoClave = ddlEstado.SelectedValue;

            cabeceraSolicitud.AutorizadorClave = (string)(Session["ClaveJDE"]);
        }
Example #3
0
        public bool AprobarSolicitud(CabeceraSolicitud parCabecera)
        {
            parCabecera.EstadoClave = "AUT";
            bool resultado = new bool();

            resultado = tablaCabecerasSolicitud.ModificarEstado(parCabecera);

            //if (parCabecera.Tipo == "VIA")
            //{}
            //{resultado = tablaCabecerasSolicitud.ModificarEstadoAVI(parCabecera);}

            if (resultado == true)
            {
                this.log = "Se aprobo la solicitud: " + parCabecera.Clave;

                string asunto = parCabecera.Tipo == "VIA" ? "Viatico" : "Vuelo" + " autorizado " + parCabecera.Tipo + "-" + parCabecera.Clave + " - " + parCabecera.EmpleadoDescripcion;
                string cuerpoCorreo = "Se autorizo el Viatico " +
                                      "<a href='http://apps.nuvoil.com/frmViaticosCons.aspx?n_solicitud=" + parCabecera.Clave + "&c_unidadNeg=" + parCabecera.UnClave + "'>   " + parCabecera.Tipo + "-" + parCabecera.Clave + "  </a> " +
                                      " por un monto de: $" + parCabecera.Total.ToString() +
                                      " a " + parCabecera.EmpleadoDescripcion;



                TablaUsuarios tablaUsuarios = new TablaUsuarios();

                User solicitante = new User();
                solicitante.Cuenta = parCabecera.SolicitanteClave;

                List<User> datos = tablaUsuarios.Obtener(solicitante);

                correoDO correo = new correoDO();


                if (datos != null)
                {
                    string email = datos[0].Email;

                    if (email != string.Empty || email != null)
                    {
                        correo.EnviaMail(asunto, cuerpoCorreo, email);
                        //correo.EnviaMail(asunto, cuerpoCorreo, "*****@*****.**");
                    }
                }

                correo.EnviaMail(asunto, cuerpoCorreo, "*****@*****.**");
                correo.EnviaMail(asunto, cuerpoCorreo, "*****@*****.**");

                //// ---------  cambio 070415 - agregar a lorena y a maria molina  ---------
                correo.EnviaMail(asunto, cuerpoCorreo, "*****@*****.**");
                correo.EnviaMail(asunto, cuerpoCorreo, "*****@*****.**");
                //// ------------------------------------------------------------------ -----
                var cadena = "";
                cadena = parCabecera.UnClave;
                cadena = cadena.Replace(" ", "");
                if (cadena == "C19ADMON" || cadena == "C19INFRA")
                {
                    correo.EnviaMail(asunto, cuerpoCorreo, "*****@*****.**");
                }

                return true;
            }
            else
            {
                if (tablaCabecerasSolicitud.Log == "NINGUNO")
                {
                    this.log = "No se encontro la solicitud, favor de verificar";
                }
                else
                {
                    this.log = this.tablaCabecerasSolicitud.Log;
                }

                return false;
            }
        }
Example #4
0
        public bool CancelarSolicitud(CabeceraSolicitud parCabecera)
        {
            parCabecera.EstadoClave = "CAN";

            bool resultado = tablaCabecerasSolicitud.ModificarEstado(parCabecera);

            if (resultado == true)
            {

                this.log = "Se cancelo " + parCabecera.Tipo == "VIA" ? "la solicitud de Viatico" : "la solicitud de Vuelo" + parCabecera.Clave;
                //----

                string asunto = parCabecera.Tipo == "VIA" ? "Viatico" : "Vuelo" + " Rechazado " + parCabecera.Tipo + "-" + parCabecera.Clave + " - " + parCabecera.EmpleadoDescripcion;
                string cuerpoCorreo = "El " + parCabecera.Tipo == "VIA" ? "Viatico" : "Vuelo" + " fue rechazado por el Autorizador " +
                                      "<a href='http://apps.nuvoil.com/frmViaticosCons.aspx?n_solicitud=" + parCabecera.Clave + "&c_unidadNeg=" + parCabecera.UnClave + "'>   " + parCabecera.Tipo + "-" + parCabecera.Clave + "  </a> " +
                                      " por un monto de: $" + parCabecera.Total.ToString() +
                                      " a " + parCabecera.EmpleadoDescripcion;

                TablaUsuarios tablaUsuarios = new TablaUsuarios();

                User solicitante = new User();
                solicitante.Cuenta = parCabecera.SolicitanteClave;

                List<User> datos = tablaUsuarios.Obtener(solicitante);

                correoDO correo = new correoDO();


                if (datos != null)
                {
                    string email = datos[0].Email;

                    if (email != string.Empty || email != null)
                    {
                        //correo.EnviaMail(asunto, cuerpoCorreo, email);
                        correo.EnviaMail(asunto, cuerpoCorreo, "*****@*****.**");

                    }
                }

                //correo.EnviaMail(asunto, cuerpoCorreo, "*****@*****.**");
                //correo.EnviaMail(asunto, cuerpoCorreo, "*****@*****.**");

                //----
                return true;
            }
            else
            {
                if (tablaCabecerasSolicitud.Log == "NINGUNO")
                {
                    this.log = "No se encontro la solicitud, favor de verificar";
                }
                else
                {
                    this.log = this.tablaCabecerasSolicitud.Log;
                }

                return false;
            }
        }
        protected void grdPrincipal_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "AUTORIZAR")
            {
                int indice = Convert.ToInt32(e.CommandArgument);

                CabeceraSolicitud cabecera = new CabeceraSolicitud();
                cabecera.Tipo = this.grdPrincipal.DataKeys[indice].Values["tipo"].ToString();
                cabecera.Clave = Convert.ToInt32(this.grdPrincipal.DataKeys[indice].Values["Clave"].ToString());
                cabecera.EmpleadoDescripcion = this.grdPrincipal.DataKeys[indice].Values["EmpleadoDescripcion"].ToString();
                cabecera.UnClave = this.grdPrincipal.DataKeys[indice].Values["UnClave"].ToString();;
                cabecera.Total = Convert.ToSingle( this.grdPrincipal.DataKeys[indice].Values["Total"].ToString());
                cabecera.SolicitanteClave = this.grdPrincipal.DataKeys[indice].Values["SolicitanteClave"].ToString();

                viaticos = new GastosViaje();

                if (this.viaticos.AprobarSolicitud(cabecera) == true)
                {
                    this.CargarGridPrincipal();
                }
                else
                {
                    this.MensajeErrorGrid(this.viaticos.Log);
                }
            }

            if (e.CommandName == "CANCELAR")
            {
                int indice = Convert.ToInt32(e.CommandArgument);
                string numeroSolicitud = this.grdPrincipal.DataKeys[indice].Value.ToString();

                CabeceraSolicitud cabecera = new CabeceraSolicitud();
                cabecera.Clave = Convert.ToInt32(numeroSolicitud);
                cabecera.Tipo = this.grdPrincipal.DataKeys[indice].Values["tipo"].ToString();

                
                cabecera.Clave = Convert.ToInt32(this.grdPrincipal.DataKeys[indice].Values["Clave"].ToString());
                cabecera.EmpleadoDescripcion = this.grdPrincipal.DataKeys[indice].Values["EmpleadoDescripcion"].ToString();
                cabecera.UnClave = this.grdPrincipal.DataKeys[indice].Values["UnClave"].ToString(); ;
                cabecera.Total = Convert.ToSingle(this.grdPrincipal.DataKeys[indice].Values["Total"].ToString());
                cabecera.SolicitanteClave = this.grdPrincipal.DataKeys[indice].Values["SolicitanteClave"].ToString();

                viaticos = new GastosViaje();

                if (this.viaticos.CancelarSolicitud(cabecera) == true)
                {
                    this.CargarGridPrincipal();
                }
                else
                {
                    this.MensajeErrorGrid(this.viaticos.Log);
                }
            }

            if (e.CommandName == "DETALLE")
            {
                int indice = Convert.ToInt32(e.CommandArgument);
                string numeroSolicitud = this.grdPrincipal.DataKeys[indice].Value.ToString();

                //------------------------------------------------------------------------------------------
                string strtipo = this.grdPrincipal.DataKeys[indice].Values["tipo"].ToString();
                //------------------------------------------------------------------------------------------


                lblNoSolicitud.Text = numeroSolicitud;

                this.CargarGridDetalle(numeroSolicitud);

                //this.CargarGridPrincipal();
            }
        }
Example #6
0
        public bool ModificarEstado(CabeceraSolicitud paramCabecera)
        {

            SqlCommand comando = new SqlCommand();

            if (paramCabecera.Tipo == "VIA")
            {

                comando.CommandText =
                            " update  Sol_solicitudes set  " +
                            " c_estado_sol = @parEstado,   " +
                            " f_autoriza_sol = GETDATE()   " +
                            " where n_solicitud = @parClave "
                            ;
                comando.Parameters.Add("@parClave", SqlDbType.VarChar).Value = paramCabecera.Clave.ToString();
                comando.Parameters.Add("@parEstado", SqlDbType.VarChar).Value = paramCabecera.EstadoClave;
            }
            else if (paramCabecera.Tipo == "AVI")
            {


                comando.CommandText =
                                "UPDATE dSol_solicitudes " +
                                "SET n_autoriza = @parAutoriza, f_autoriza = GETDATE() " +
                                "WHERE (n_solicitud = @parClave) " +
                                "AND (n_isplane = 1) "
                                ;

                comando.Parameters.Add("@parClave", SqlDbType.VarChar).Value = paramCabecera.Clave.ToString();
                comando.Parameters.Add("@parAutoriza", SqlDbType.VarChar).Value = paramCabecera.EstadoClave == "AUT" ? "1" : "2";
            };

            int lineasActualizadas = this.baseSqlServer.Actualizar(comando);

            switch (lineasActualizadas)
            {
                case 0:
                    this.log = "NINGUNO";
                    return false;

                case -1:
                    this.log = this.baseSqlServer.Log;
                    return false;

                default:
                    this.log = lineasActualizadas.ToString();
                    return true;
            }



        }
Example #7
0
        public List<CabeceraSolicitud> Obtener(CabeceraSolicitud paramCabecera)
        {
            SqlCommand comando = new SqlCommand();



            comando.CommandText =  " select                  " +
                                   "         c_tipo as tipo, " +
                                   "         n_solicitud as clave, " +
                                   "         c_unidadNeg as unClave, " +
                                   "         d_unidadNeg as unDescripcion, " +
                                   "         d_solicitud as propositoViaje, " +
                                   "         d_solicitud as descripcion, " +
                                   "         c_estado_sol as estadoClave, " +
                                   "         est_descripcion as estadoDescripcion, " +
                                   "         c_user_captura as solicitanteClave, " +
                                   "         usr_nombre + ' ' + usr_apellido_pat + ' ' + usr_apellido_mat as solicitanteDescripcion, " +
                                   "         f_solicitud as fechaCreacion, " +
                                   "         c_emp_solicita_JDE as empleadoClave, " +
                                   "         d_emp_solicita_JDE as empleadoDescripcion, " +
                                   "         f_autoriza_sol as fechaAutorizacion, " +
                                   "         c_emp_autoriza_JDE as autorizadorClave, " +
                                   "         d_emp_autoriza_JDE as autorizadorDescripcion, " +
                                   "         i_importe_total as total, " +
                                   "         f_inicio_via as fechaInicio, " +
                                   "         f_fin_via as fechaFin, " +
                                   "         d_lugar_via as destino, " +
                                   "         c_req_vehi as requiereVehiculo, " +
                                   "         c_num_unidad as vehiculoClave, " +
                                   "         n_finalCaptura as banderaCierreSolicitud " +
                                   " from Sol_solicitudes " +
                                   "          left outer join SYS_USR_USERS on usr_username = c_user_captura " +
                                   "          left outer join ESTADOS on est_clave = c_estado_sol " +
                                   " where n_solicitud like @parClave " +
                                   "         and c_unidadNeg like @parUnClave " +
                                   "         and d_solicitud like @parPropositoViaje " +
                                   "         and c_emp_autoriza_JDE like @parAutorizador " +
                                   "         and n_finalCaptura like @parBanderaCierre " +
                                   "         and (usr_nombre + ' ' + usr_apellido_pat + ' ' + usr_apellido_mat) like @parSolicitante " +
                                   "         and c_estado_sol like @parEstado " +
                                   "  UNION ALL                       " +
                                   "     SELECT                                                       " +
                                   "             'AVI' as tipo, " +
                                   "             Sol_solicitudes.n_solicitud as clave,				 " +
                                   "             Sol_solicitudes.c_unidadNeg as unClave, " +
                                   "             Sol_solicitudes.d_unidadNeg as unDescripcion, " +
                                   "             Sol_solicitudes.d_solicitud as propositoViaje, " +
                                   "             dSol_solicitudes.d_solicitud as descripcion, " +
                                   "             c_estado_sol as estadoClave,  " +
                                   "             CASE WHEN n_autoriza = 1 THEN 'AUT' WHEN n_autoriza = 2 THEN 'CANCELADA' WHEN n_autoriza = 0 THEN 'CAPTURA' END AS estadoDescripcion,  " +
                                   "             c_user_captura as solicitanteClave,  " +
                                   "             usr_nombre + ' ' + usr_apellido_pat + ' ' + usr_apellido_mat as solicitanteDescripcion,  " +
                                   "             CAST(day(Sol_solicitudes.f_solicitud) AS varchar(2))   +'/' + CAST(MONTH(Sol_solicitudes.f_solicitud) AS varchar(2))   + '/' + CAST(YEAR(Sol_solicitudes.f_solicitud) AS varchar(4))   as fechaCreacion , " +
                                   "             Sol_solicitudes.c_emp_solicita_JDE AS empleadoClave, " +
                                   "             Sol_solicitudes.d_emp_solicita_JDE AS empleadoDescripcion, " +
                                   "             CAST(day(dSol_solicitudes.f_autoriza) AS varchar(2))   +'/' + CAST(MONTH(dSol_solicitudes.f_autoriza) AS varchar(2))   + '/' + CAST(YEAR(dSol_solicitudes.f_autoriza) AS varchar(4))  as fechaAutorizacion, " +
                                   "             Sol_solicitudes.c_emp_autoriza_JDE AS autorizadorClave , " +
                                   "             Sol_solicitudes.d_emp_autoriza_JDE AS autorizadorDescripcion, " +
                                   "             SUM (ISNULL(precio,0) ) as total,  " +
                                   "            CAST(day(Sol_solicitudes.f_inicio_via) AS varchar(2))   +'/' + CAST(MONTH(Sol_solicitudes.f_inicio_via) AS varchar(2))   + '/' + CAST(YEAR(Sol_solicitudes.f_inicio_via) AS varchar(4))  as fechaInicio , " +
                                   "            CAST(day(Sol_solicitudes.f_fin_via) AS varchar(2))   +'/' + CAST(MONTH(Sol_solicitudes.f_fin_via) AS varchar(2))   + '/' + CAST(YEAR(Sol_solicitudes.f_fin_via) AS varchar(4)) as fechaFin , " +
                                   "            Sol_solicitudes.d_lugar_via as destino, " +
                                   "            '' as requiereVehiculo, " +
                                   "            '' as vehiculoClave, " +
                                   "            0 as banderaCierreSolicitud " +
                                   "     FROM dSol_solicitudes " +
                                   "     INNER JOIN Sol_solicitudes " +
                                   "     ON dSol_solicitudes.c_tipo=Sol_solicitudes.c_tipo AND dSol_solicitudes.n_solicitud = Sol_solicitudes.n_solicitud " +
                                   "     left outer join SYS_USR_USERS on usr_username = c_user_captura  " +
                                   "     inner join cotboletos on cotboletos.n_solicitud = Sol_solicitudes.n_solicitud " +
                                   "     WHERE N_ISPLANE = 1  " +
                                   "     AND (n_autoriza = @parAutoriza) " +
                                   "     AND (n_num_cotiza_boleto = 1  ) " +
                                   "     AND Sol_solicitudes.n_solicitud like @parClave " +
                                   "        and Sol_solicitudes.c_unidadNeg like @parUnClave " +
                                   "        and Sol_solicitudes.d_solicitud like @parPropositoViaje " +
                                   "        and c_emp_autoriza_JDE like @parAutorizador " +
                                   "        and (usr_nombre + ' ' + usr_apellido_pat + ' ' + usr_apellido_mat) like @parSolicitante " +
                                   " group by Sol_solicitudes.n_solicitud,  " +
                                   "        Sol_solicitudes.c_unidadNeg,  " +
                                   "        Sol_solicitudes.d_unidadNeg, " +
                                   "        Sol_solicitudes.d_solicitud, " +
                                   "        dSol_solicitudes.d_solicitud, " +
                                   "        c_estado_sol, " +
                                   "        c_user_captura, " +
                                   "        usr_nombre + ' ' + usr_apellido_pat + ' ' + usr_apellido_mat, " +
                                   "        Sol_solicitudes.f_solicitud, " +
                                   "        c_emp_solicita_JDE,  " +
                                   "        Sol_solicitudes.c_emp_solicita_JDE, " +
                                   "        Sol_solicitudes.d_emp_solicita_JDE, " +
                                   "        dSol_solicitudes.f_autoriza, " +
                                   "        Sol_solicitudes.c_emp_autoriza_JDE, " +
                                   "        Sol_solicitudes.d_emp_autoriza_JDE,     " +                  
                                   "        Sol_solicitudes.f_inicio_via,  " +
                                   "        Sol_solicitudes.f_fin_via, " +
                                   "        Sol_solicitudes.d_lugar_via, " +
                                   "        dSol_solicitudes.n_autoriza "
                                   ;





            //comando.CommandText =
            //                        " select                  " +
            //                        "         c_tipo as tipo, " +
            //                        "         n_solicitud as clave, " +
            //                        "         c_unidadNeg as unClave, " +
            //                        "         d_unidadNeg as unDescripcion, " +
            //                        "         d_solicitud as propositoViaje, " +
            //                        "         c_estado_sol as estadoClave, " +
            //                        "         est_descripcion as estadoDescripcion, " +
            //                        "         c_user_captura as solicitanteClave, " +
            //                        "         usr_nombre + ' ' + usr_apellido_pat + ' ' + usr_apellido_mat as solicitanteDescripcion, " +
            //                        "         f_solicitud as fechaCreacion, " +
            //                        "         c_emp_solicita_JDE as empleadoClave, " +
            //                        "         d_emp_solicita_JDE as empleadoDescripcion, " +
            //                        "         f_autoriza_sol as fechaAutorizacion, " +
            //                        "         c_emp_autoriza_JDE as autorizadorClave, " +
            //                        "         d_emp_autoriza_JDE as autorizadorDescripcion, " +
            //                        "         i_importe_total as total, " +
            //                        "         f_inicio_via as fechaInicio, " +
            //                        "         f_fin_via as fechaFin, " +
            //                        "         d_lugar_via as destino, " +
            //                        "         c_req_vehi as requiereVehiculo, " +
            //                        "         c_num_unidad as vehiculoClave, " +
            //                        "         n_finalCaptura as banderaCierreSolicitud " +
            //                        " from Sol_solicitudes " +
            //                        "          left outer join SYS_USR_USERS on usr_username = c_user_captura " +
            //                        "          left outer join ESTADOS on est_clave = c_estado_sol " +
            //                        " where n_solicitud like @parClave " +
            //                        "         and c_unidadNeg like @parUnClave " +
            //                        "         and d_solicitud like @parPropositoViaje " +
            //                        "         and c_emp_autoriza_JDE like @parAutorizador " +
            //                        "         and n_finalCaptura like @parBanderaCierre " +
            //                        "         and (usr_nombre + ' ' + usr_apellido_pat + ' ' + usr_apellido_mat) like @parSolicitante " +
            //                        "         and c_estado_sol like @parEstado " +
            //                        "  UNION ALL                       " +
            //                        "     SELECT                                                       " +
            //                        "             'AVI' as tipo, " +
            //                        "             Sol_solicitudes.n_solicitud as clave,				 " +
            //                        "             Sol_solicitudes.c_unidadNeg as unClave, " +
            //                        "             Sol_solicitudes.d_unidadNeg as unDescripcion, " +
            //                        "             Sol_solicitudes.d_solicitud as propositoViaje, " +
            //                        "             c_estado_sol as estadoClave,  " +
            //                        "             c_estado_sol as estadoDescripcion,  " +
            //                        "             c_user_captura as solicitanteClave,  " +
            //                        "             usr_nombre + ' ' + usr_apellido_pat + ' ' + usr_apellido_mat as solicitanteDescripcion,  " +
            //                        "             CAST(day(Sol_solicitudes.f_solicitud) AS varchar(2))   +'/' + CAST(MONTH(Sol_solicitudes.f_solicitud) AS varchar(2))   + '/' + CAST(YEAR(Sol_solicitudes.f_solicitud) AS varchar(4))   as fechaCreacion , " +
            //                        "             Sol_solicitudes.c_emp_solicita_JDE AS empleadoClave, " +
            //                        "             Sol_solicitudes.d_emp_solicita_JDE AS empleadoDescripcion, " +
            //                        "             CAST(day(dSol_solicitudes.f_autoriza) AS varchar(2))   +'/' + CAST(MONTH(dSol_solicitudes.f_autoriza) AS varchar(2))   + '/' + CAST(YEAR(dSol_solicitudes.f_autoriza) AS varchar(4))  as fechaAutorizacion, " +
            //                        "             Sol_solicitudes.c_emp_autoriza_JDE AS autorizadorClave , " +
            //                        "             Sol_solicitudes.d_emp_autoriza_JDE AS autorizadorDescripcion, " +
            //                        "             0 as total,				 " +
            //                        "            CAST(day(Sol_solicitudes.f_inicio_via) AS varchar(2))   +'/' + CAST(MONTH(Sol_solicitudes.f_inicio_via) AS varchar(2))   + '/' + CAST(YEAR(Sol_solicitudes.f_inicio_via) AS varchar(4))  as fechaInicio , " +
            //                        "            CAST(day(Sol_solicitudes.f_fin_via) AS varchar(2))   +'/' + CAST(MONTH(Sol_solicitudes.f_fin_via) AS varchar(2))   + '/' + CAST(YEAR(Sol_solicitudes.f_fin_via) AS varchar(4)) as fechaFin , " +
            //                        "            Sol_solicitudes.d_lugar_via as destino, " +
            //                        "            '' as requiereVehiculo, " +
            //                        "            '' as vehiculoClave, " +
            //                        "            0 as banderaCierreSolicitud " +
            //                        "     FROM dSol_solicitudes " +
            //                        "     INNER JOIN Sol_solicitudes " +
            //                        "     ON dSol_solicitudes.c_tipo=Sol_solicitudes.c_tipo AND dSol_solicitudes.n_solicitud = Sol_solicitudes.n_solicitud " +
            //                        "     left outer join SYS_USR_USERS on usr_username = c_user_captura  " +
            //                        "     WHERE N_ISPLANE = 1  " +
            //                        "     AND (n_num_cotiza_boleto = 0  ) " +
            //                        "     AND Sol_solicitudes.n_solicitud like @parClave " +
            //                        "        and Sol_solicitudes.c_unidadNeg like @parUnClave " +
            //                        "        and Sol_solicitudes.d_solicitud like @parPropositoViaje " +
            //                        "        and c_emp_autoriza_JDE like @parAutorizador " +                                    
            //                        "        and (usr_nombre + ' ' + usr_apellido_pat + ' ' + usr_apellido_mat) like @parSolicitante "                                    
            //                        ;







                                    //                      "select " +
                                    //                      "c_tipo as tipo, " +
                                    //                      "n_solicitud as clave, " +
                                    //                      "c_unidadNeg as unClave, " +
                                    //                      "d_unidadNeg as unDescripcion, " +
                                    //                      "d_solicitud as propositoViaje, " +
                                    //                      "c_estado_sol as estadoClave, " +
                                    //                      "est_descripcion as estadoDescripcion, " +
                                    //                      "c_user_captura as solicitanteClave, " +
                                    //                      "usr_nombre + ' ' + usr_apellido_pat + ' ' + usr_apellido_mat as solicitanteDescripcion, " +
                                    //                      "f_solicitud as fechaCreacion, " +
                                    //                      "c_emp_solicita_JDE as empleadoClave, " +
                                    //                      "d_emp_solicita_JDE as empleadoDescripcion, " +
                                    //                      "f_autoriza_sol as fechaAutorizacion, " +
                                    //                      "c_emp_autoriza_JDE as autorizadorClave, " +
                                    //                      "d_emp_autoriza_JDE as autorizadorDescripcion, " +
                                    //                      "i_importe_total as total, " +
                                    //                      "f_inicio_via as fechaInicio, " +
                                    //                      "f_fin_via as fechaFin, " +
                                    //                      "d_lugar_via as destino, " +
                                    //                      "c_req_vehi as requiereVehiculo, " +
                                    //                      "c_num_unidad as vehiculoClave, " +
                                    //                      "n_finalCaptura as banderaCierreSolicitud " +
                                    //                      "from Sol_solicitudes " +
                                    //                      " left outer join SYS_USR_USERS on usr_username = c_user_captura " +
                                    //                      " left outer join ESTADOS on est_clave = c_estado_sol " +
                                    //                      "where n_solicitud like @parClave " +
                                    //                      "and c_unidadNeg like @parUnClave " +
                                    //                      "and d_solicitud like @parPropositoViaje " +
                                    //                      "and c_emp_autoriza_JDE like @parAutorizador " +
                                    //                      "and n_finalCaptura like @parBanderaCierre " +
                                    //                      "and (usr_nombre + ' ' + usr_apellido_pat + ' ' + usr_apellido_mat) like @parSolicitante " +
                                    //                      "and c_estado_sol like @parEstado ";


            comando.Parameters.Clear();

            if (paramCabecera.Clave == 0)
            {
                comando.Parameters.Add("@parClave", SqlDbType.VarChar).Value = "%";
            }
            else
            {
                comando.Parameters.Add("@parClave", SqlDbType.VarChar).Value = paramCabecera.Clave.ToString();
            }

            if (paramCabecera.UnClave == string.Empty)
            {
                comando.Parameters.Add("@parUnClave", SqlDbType.VarChar).Value = "%";
            }
            else
            {
                comando.Parameters.Add("@parUnClave", SqlDbType.VarChar).Value = "%"+ paramCabecera.UnClave + "%";
            }
            
            if (paramCabecera.PropositoViaje == string.Empty)
            {
                comando.Parameters.Add("@parPropositoViaje", SqlDbType.VarChar).Value = "%";
            }
            else
            {
                comando.Parameters.Add("@parPropositoViaje", SqlDbType.VarChar).Value = "%" + paramCabecera.PropositoViaje + "%";
            }

            if (paramCabecera.SolicitanteDescripcion == string.Empty)
            {
                comando.Parameters.Add("@parSolicitante", SqlDbType.VarChar).Value = "%";
            }
            else
            {
                comando.Parameters.Add("@parSolicitante", SqlDbType.VarChar).Value = "%" + paramCabecera.SolicitanteDescripcion + "%";
            }

            if (paramCabecera.AutorizadorClave == string.Empty)
            {
                comando.Parameters.Add("@parAutorizador", SqlDbType.VarChar).Value = "%";
            }
            else
            {
                comando.Parameters.Add("@parAutorizador", SqlDbType.VarChar).Value = paramCabecera.AutorizadorClave;
            }

            if (paramCabecera.EstadoClave == string.Empty)
            {
                comando.Parameters.Add("@parEstado", SqlDbType.VarChar).Value = "%";
            }
            else
            {
                comando.Parameters.Add("@parEstado", SqlDbType.VarChar).Value = paramCabecera.EstadoClave;
                comando.Parameters.Add("@parAutoriza", SqlDbType.VarChar).Value = paramCabecera.EstadoClave == "AUT" ? "1" : paramCabecera.EstadoClave == "CAN" ? "2" : "0";

            }

            if (paramCabecera.BanderaCierreSolicitud == string.Empty)
            {
                comando.Parameters.Add("@parBanderaCierre", SqlDbType.VarChar).Value = "%";
            }
            else
            {
                comando.Parameters.Add("@parBanderaCierre", SqlDbType.VarChar).Value = paramCabecera.BanderaCierreSolicitud;
            }
           

            DataTable datos = this.baseSqlServer.Consultar(comando);

            if (datos != null)
            {
                if (datos.Rows.Count != 0)
                {
                    List<CabeceraSolicitud> listaCabeceras = new List<CabeceraSolicitud>();

                    foreach (DataRow fila in datos.Rows)
                    {
                        CabeceraSolicitud cabecera = new CabeceraSolicitud();

                        cabecera.Tipo = fila["tipo"].ToString();

                        if (fila["clave"] != DBNull.Value)
                        {
                            cabecera.Clave = Convert.ToInt32(fila["clave"]);
                        }

                        cabecera.UnClave = fila["unClave"].ToString();
                        cabecera.UnDescripcion = fila["unClave"].ToString() + ' ' + fila["unDescripcion"].ToString();

                        cabecera.PropositoViaje = fila["propositoViaje"].ToString();
						cabecera.Descripcion = fila["descripcion"].ToString();
                        cabecera.EstadoClave = fila["estadoClave"].ToString();
                        cabecera.EstadoDescripcion = fila["estadoDescripcion"].ToString();
                        cabecera.SolicitanteClave = fila["solicitanteClave"].ToString();
                        cabecera.SolicitanteDescripcion = fila["solicitanteDescripcion"].ToString(); 

                        if (fila["fechaCreacion"] != DBNull.Value)
                        {
                            cabecera.FechaCreacion = Convert.ToDateTime(fila["fechaCreacion"]);
                        }


                        cabecera.EmpleadoClave = fila["empleadoClave"].ToString();
                        cabecera.EmpleadoDescripcion = fila["empleadoDescripcion"].ToString();

                        if (fila["fechaAutorizacion"] != DBNull.Value)
                        {
                            cabecera.FechaAutorizacion = Convert.ToDateTime(fila["fechaAutorizacion"]);
                        }

                        cabecera.AutorizadorClave = fila["autorizadorClave"].ToString();
                        cabecera.AutorizadorDescripcion = fila["autorizadorDescripcion"].ToString();

                        if (fila["total"] != DBNull.Value)
                        {
                            cabecera.Total = Convert.ToSingle(fila["total"]);
                        }

                        if (fila["fechaInicio"] != DBNull.Value)
                        {    
                            cabecera.FechaInicio = Convert.ToDateTime(fila["fechaInicio"]);
                        }
                        
                        if (fila["fechaFin"] != DBNull.Value)
                        {                                                    
                           cabecera.FechaFinal = Convert.ToDateTime(fila["fechaFin"]);
                        }
                        cabecera.Destino = fila["destino"].ToString();
                        cabecera.RequiereVehiculo = fila["requiereVehiculo"].ToString();
                        cabecera.VehiculoClave = fila["vehiculoClave"].ToString();

                        if (fila["banderaCierreSolicitud"] != DBNull.Value)
                        {
                                switch(Convert.ToInt32(fila["banderaCierreSolicitud"]))
                                {
                                    case 1:
                                        cabecera.BanderaCierreSolicitud = "Cerrada";
                                        break;
                                    case 0:
                                        cabecera.BanderaCierreSolicitud = "Abierta";
                                        break;
                                }
                        }

                        listaCabeceras.Add(cabecera);
                    }

                    this.log = listaCabeceras.Count.ToString();
                    return listaCabeceras;
                }
                else
                {
                    this.log = "VACIO";
                    return null;
                }
            }
            else
            {
                this.log = this.baseSqlServer.Log;
                return null;
            }
        }