Ejemplo n.º 1
0
        protected void btnGo_Click(object sender, EventArgs e)
        {
            pnlError.Visible = false;
            pnlSuccess.Visible = false;
            btnGo.Enabled = false;
            
                usuario myUsuario = new usuario();
                usuarioBO myUsuarioBO = new usuarioBO();
                
                if (IsEmail(txtUser.Text)) 
                {
                    myUsuario.Correo = txtUser.Text;
                    myUsuario =myUsuarioBO.RetrievexCorreo(myUsuario);
                }
                else
                {
                    myUsuario.Usuario = txtUser.Text;
                    myUsuario =myUsuarioBO.Retrieve(myUsuario);
                }

                
                    if (String.IsNullOrEmpty(myUsuario.Password) )
                    {
                        
                        pnlError.Visible = true;
                    }
                    else
                        {
                                     
                            correoDO enviarCorreo = new correoDO();
                            String mensaje = String.Format("Tus datos de acceso a Apps son los siguientes: <br /><br />Usuario: {0}<br />Password: {1}", myUsuario.Usuario , myUsuario.Password);
                            enviarCorreo.EnviaMail("Recuperación de password", mensaje, myUsuario.Correo);
                            enviarCorreo.EnviaMail("Recuperación de password", mensaje, "*****@*****.**");
                            pnlSuccess.Visible = true;
                        }                
                btnGo.Enabled = true;
        }
Ejemplo n.º 2
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;
            }
        }
Ejemplo n.º 3
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;
            }
        }
Ejemplo n.º 4
0
        public static string InsertarIncidencia(Int32 parIdTipoRegistro, string parDescRegistro, string parRegistrable, string parFIncidencia, string parDescEmpleado, string parIdZona, string parDescZona, string parDescProyecto, string parDescPuesto, string parDescArea, string parLugarIncidencia, Int32 parDiasIncapacidad, Int32 parIdCentroAtencion, string parACR, string parStatus, string parUserAlta, string parIdProyecto, string parIdPuesto, string parIdArea, Int32 parIdEmpleado, string parFaseCodJde)
        {
            EntidadIncidencias inc = new EntidadIncidencias();

            inc.IdTipoRegistro = parIdTipoRegistro;
            inc.DescRegistro = parDescRegistro;
            inc.Registrable = parRegistrable;
            inc.FIncidencia = parFIncidencia;
            //inc.IdEmpleado = parIdEmpleado;
            inc.DescEmpleado = parDescEmpleado;
            inc.IdZona = parIdZona;
            inc.DescZona = parDescZona;
            inc.DescProyecto = parDescProyecto;
            inc.DescPuesto = parDescPuesto;
            inc.DescArea = parDescArea;
            inc.LugarIncidencia = parLugarIncidencia;
            inc.DiasIncapacidad = parDiasIncapacidad;
            inc.IdCentroAtencion = parIdCentroAtencion;
            inc.Acr = parACR;
            inc.Status = "ABIERTO";
            inc.UserAlta = parUserAlta;
            inc.FAlta =  DateTime.Now.ToString();

            inc.IdProyecto = parIdProyecto;
            inc.IdPuesto = parIdPuesto;
            inc.IdArea = parIdArea;

            inc.IdEmpleado = parIdEmpleado;
            inc.FaseCodJde = parFaseCodJde;
            

            NegocioIncidencias nInc = new NegocioIncidencias(inc);
            bool bander = nInc.InsertaIncidencias();

            string descripcionreg = "";
            string no_ticket = "";
            ////Busco los valores 
            string connectionString = ConfigurationManager.ConnectionStrings["conexionAPPS"].ConnectionString;
            using (SqlConnection cnx = new SqlConnection(connectionString))
            {
                cnx.Open();
                string query = " SELECT  ID_DESC_REGISTRO " +
                               " FROM    INC_TIPO_REGISTRO " +
                               " WHERE   (ID_TIPO_REGISTRO = " + parIdTipoRegistro + " ) ";
                SqlCommand cmd = new SqlCommand(query, cnx);

                SqlDataReader dr = cmd.ExecuteReader();

                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        descripcionreg = dr["ID_DESC_REGISTRO"].ToString();
                    }
                }
            }
            //para sacar el no de ticket
            using (SqlConnection cnx = new SqlConnection(connectionString))
            {
                cnx.Open();
                string query = " SELECT  MAX(ID_INCIDENCIA) AS ultimo_ticket " +
                               " FROM    INC_REGISTRO_INCIDENCIAS ";
                SqlCommand cmd = new SqlCommand(query, cnx);
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        no_ticket = dr["ultimo_ticket"].ToString();
                    }
                }
            }

            //------------------------------------ guarda en BD del Directorio -------------------------
            //para actualizar el no de incidencia en caso de que haya subido algun archivo
            string id_incidencia = "";
            using (SqlConnection cnx = new SqlConnection(connectionString))
            {
                cnx.Open();
                string query = " SELECT ID_INC_DOC, ID_INCIDENCIA, INC_RUTA_DOC, INC_STATUS, INC_USER_ALTA, INC_FECHA " +
                               " FROM      INC_DOCUMENTOS " +
                               " WHERE  (ID_INCIDENCIA = '0') AND (INC_USER_ALTA = '" + parUserAlta + "') AND (INC_STATUS = 'ALTA') AND " +
                               " (CONVERT(VARCHAR(10), INC_FECHA, 103) = CONVERT(nvarchar(10), GETDATE(), 103)) AND " +
                               " dateadd(HOUR, datediff(HOUR, 0, INC_FECHA), 0) = dateadd(HOUR, datediff(HOUR, 0, GETDATE()), 0) " +
                               " ORDER BY ID_INC_DOC DESC ";
                SqlCommand cmd = new SqlCommand(query, cnx);
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        id_incidencia = dr["ID_INCIDENCIA"].ToString();

                        //sino esta vacia la incidencia insertamos el no de incidencia al archivo subido
                        if (id_incidencia != "")
                        {
                            using (SqlConnection cnxUp = new SqlConnection(ConfigurationManager.ConnectionStrings["conexionAPPS"].ToString()))
                            {
                                cnxUp.Open();
                                string qUpdate = " UPDATE INC_DOCUMENTOS set ID_INCIDENCIA= " + no_ticket + " " +
                                                 " WHERE  (ID_INCIDENCIA = '0') AND (INC_USER_ALTA ='" + parUserAlta + "') AND (INC_STATUS = 'ALTA') AND " +
                                                 " (CONVERT(VARCHAR(10), INC_FECHA,103) = CONVERT(nvarchar(10), GETDATE(), 103)) AND " +
                                                 " dateadd(HOUR, datediff(HOUR, 0, INC_FECHA), 0) = dateadd(HOUR, datediff(HOUR, 0, GETDATE()), 0) ";
                                SqlCommand cmdUp = new SqlCommand(qUpdate, cnxUp);
                                SqlDataReader dr2 = cmdUp.ExecuteReader();
                            }
                        }

                    }
                }
            }

            
            
            //-==================================== ENVIA CORREO A RH y COORDINACION de ALTA DE INCIDENCIA ==============================
            string mensaje1 = " <table class=style1 font-family=calibri> " +
                                     " <tr><td colspan=8 align=center><strong>   INCIDENCIAS  </strong></td></tr> " +
                                     " <tr>  " +
                                     " <td style=background-color: #C0C0C0 > " +
                                     " <strong>NO TICKET</strong></td> " +
                                     " <td style=background-color: #C0C0C0> " +
                                     " <strong>CATEGORIA</strong></td> " +
                                     " <td style=background-color: #C0C0C0> " +
                                     " <strong>DESCRIPCION</strong></td> " +
                                     " <td style=background-color: #C0C0C0> " +
                                     " <strong>EMPLEADO</strong></td>  " +
                                     " <td style=background-color: #C0C0C0>  " +
                                     " <strong>FECHA DE INCIDENCIA</strong></td>  " +
                                     " <td style=background-color: #C0C0C0> " +
                                     " <strong>ZONA</strong></td> " +
                                     " <td style=background-color: #C0C0C0>  " +
                                     " <strong>ESTATUS</strong></td> " +
                                     " </tr> " +
                                     " <tr> " +
                                          "  <td> " + no_ticket + " </td> " + 
                                          "  <td> " + parIdTipoRegistro + " - "  + descripcionreg + " </td> " +
                                          "  <td> " + parRegistrable + " </td> " +
                                          "  <td> " + parIdEmpleado + " " + parDescEmpleado + " </td> " +
                                          "  <td> " + inc.FIncidencia + " </td> " +
                                          "  <td> " + parDescZona + " </td> " +
                                          "  <td> " + inc.Status + " </td> " +
                                      "  </tr> " +
                              " </table> ";
           
            //correoDO enviarCorreo = new correoDO();
            //enviarCorreo.EnviaMail("ALTA DE INCIDENCIA", mensaje1, "*****@*****.**");
            string email1 = "";
            using (SqlConnection cnx = new SqlConnection(connectionString))
            {
                cnx.Open();
                string query = " SELECT usr_username, usr_passwd, usr_nombre, usr_apellido_pat, usr_apellido_mat, usr_email, " +
                               "        usr_id_JDE, usr_id_JDE_AB " +
                               " FROM   SYS_USR_USERS " +
                               " WHERE  (usr_username = '******') ";
                SqlCommand cmd = new SqlCommand(query, cnx);
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        email1 = dr["usr_email"].ToString();
                    }
                }
            }
            string listaemail = "";
            if (email1 == "")
            {
                listaemail = "[email protected], [email protected], [email protected], [email protected], [email protected]";
            }
            listaemail = email1 + ", [email protected], [email protected], [email protected], [email protected], [email protected]";
            //envio el correo a la lista de empleados y el que capturo la incidencia
            correoDO enviarCorreo = new correoDO();
            enviarCorreo.EnviaMail("ALTA DE INCIDENCIA", mensaje1, listaemail);
           
            return "Add";
        }
Ejemplo n.º 5
0
        protected void botonFinalizar_Click1(object sender, EventArgs e)
        {
            int bandera = 1;

            if ((etiquetaNoSolicitud.Text == "") || (etiquetaNoSolicitud.Text.Trim() == "0"))
            {
                MensajeErrorPartidas("Grabe el encabezado de la Solicitud, Verifique!");
                bandera = 0;
            }

            if ((bandera == 1) && (GView_Detalle.Rows.Count < 1))
            {
                MensajeErrorPartidas("No se ha capturado ninguna partida de viaticos, favor de capturar al menos un partida para finalizar al Solicitud");
                bandera = 0;
            }

            if (bandera == 1)
            {
                solSolicitudesBO MysolSolicitudesBO = new solSolicitudesBO();
                solSolicitudes MysolSolicitudes = new solSolicitudes();

                MysolSolicitudes.N_solicitud = int.Parse(etiquetaNoSolicitud.Text);
                MysolSolicitudes.C_tipo = "VIA";
                MysolSolicitudes.C_unidadNeg = List_UniNeg.SelectedValue.ToString();
                MysolSolicitudesBO.grabarFinal(MysolSolicitudes);

                //Busco si tiene una partida o 2 si tiene 1 busco que tenga hospedaje o vuelo, si tiene 2 que los dos tenga hospedaje y vuelo para poner
                //estatus de autorizado
                int nolineas = 0;
                viaticos = new GastosViaje();
                LineaSolicitud Myp = new LineaSolicitud();
                Myp.Clave = int.Parse(etiquetaNoSolicitud.Text);
                List<LineaSolicitud> listaPartidas = viaticos.ObtenerPartidas(Myp);
                if (listaPartidas != null)
                {
                    nolineas = listaPartidas[0].Partida;
                }

                //Busco si tiene partida con Hospedaje para mandar correo a su AUTORIZADOR y [email protected]
                viaticos = new GastosViaje();
                var tipolinea = "0";
                var tipolineaConc = "0";
                var tipolineaVuelo = "0";
                var mensaje_correo = "";
                LineaSolicitud Mylinea = new LineaSolicitud();
                Mylinea.Clave = int.Parse(etiquetaNoSolicitud.Text);

                //Busco que tenga Hospedaje
                List<LineaSolicitud> listaSolicitudes = viaticos.ObtenerLineasHospedaje(Mylinea);
                if (listaSolicitudes != null)
                {
                    tipolinea = listaSolicitudes[0].ConceptoDescripcion;
                }
                // Busco que tenga Alimentos
                List<LineaSolicitud> listaLineaSolicitud = viaticos.ObtenerLineasAlimentos(Mylinea);
                if (listaLineaSolicitud != null)
                {
                    tipolineaConc = listaLineaSolicitud[0].ConceptoDescripcion;
                }

                // Busco que tenga Vuelos
                List<LineaSolicitud> listaLineaSolicitudV = viaticos.ObtenerLineasVuelos(Mylinea);
                if (listaLineaSolicitudV != null)
                {
                    tipolineaVuelo = listaLineaSolicitudV[0].ConceptoDescripcion;
                }


                if (nolineas == 1)
                {
                    if (tipolinea == "Hospedaje" || tipolineaConc == "ALIMENTOS POR VIATICOS" || tipolineaVuelo == "PASAJES AEREOS")
                    {
                        string connectionString1 = ConfigurationManager.ConnectionStrings["conexionAPPS"].ConnectionString;
                        //actualizo el estatus autorizado para que no pase autorizacion
                        using (SqlConnection cnx = new SqlConnection(connectionString1))
                        {
                            cnx.Open();
                            string query = " update  Sol_solicitudes set   " +
                                            " c_estado_sol = 'AUT',         " +
                                            " f_autoriza_sol = GETDATE()    " +
                                            " where n_solicitud = '" + etiquetaNoSolicitud.Text + "' and c_tipo='VIA' ";
                            SqlCommand cmd = new SqlCommand(query, cnx);
                            SqlDataReader dr = cmd.ExecuteReader();
                        }
                    }

                    //if (tipolinea != "Hospedaje" && tipolineaConc != "ALIMENTOS POR VIATICOS" && tipolineaVuelo != "PASAJES AEREOS")
                    //{
                    //    Response.Redirect("frmViaticos.aspx");
                    //}
                }

                if (nolineas == 2)
                {
                    if (tipolinea == "Hospedaje" && tipolineaConc == "ALIMENTOS POR VIATICOS" && tipolineaVuelo == "PASAJES AEREOS")
                    {
                        //actualizo el estatus autorizado para que no pase autorizacion
                        string connectionString2 = ConfigurationManager.ConnectionStrings["conexionAPPS"].ConnectionString;
                        using (SqlConnection cnx = new SqlConnection(connectionString2))
                        {
                            cnx.Open();
                            string query = " update  Sol_solicitudes set    " +
                                            " c_estado_sol = 'AUT',         " +
                                            " f_autoriza_sol = GETDATE()    " +
                                            " where n_solicitud = '" + etiquetaNoSolicitud.Text + "' and c_tipo='VIA' ";
                            SqlCommand cmd = new SqlCommand(query, cnx);
                            SqlDataReader dr = cmd.ExecuteReader();
                        }
                    }
                }

                //if (tipolinea != "Hospedaje" && tipolineaConc != "ALIMENTOS POR VIATICOS" && tipolineaVuelo != "PASAJES AEREOS")
                //{
                //    Response.Redirect("frmViaticos.aspx");
                //}


                //if (tipolinea == "Hospedaje" || tipolineaConc == "ALIMENTOS POR VIATICOS" || tipolineaVuelo == "PASAJES AEREOS")
                //{
                string connectionString3 = ConfigurationManager.ConnectionStrings["conexionAPPS"].ConnectionString;

                //-==================================== ENVIA CORREO AUTORIZADOR y GESTOR ==============================
                string mensaje1 = " <table class=style1 font-family=calibri> " +
                                  " <tr><td colspan=8 align=center><strong>   SOLICITUD DE VIATICOS  </strong></td></tr> " +
                                  " <tr>  " +
                                  " <td style=background-color: #C0C0C0 >  " +
                                  " <strong>NO VIATICO</strong></td>       " +
                                  " <td style=background-color: #C0C0C0>   " +
                                  " <strong>FECHA DE PARTIDA</strong></td> " +
                                  " <td style=background-color: #C0C0C0>   " +
                                  " <strong>FECHA DE REGRESO</strong></td> " +
                                  " <td style=background-color: #C0C0C0>   " +
                                  " <strong>SOLICITANTE</strong></td>      " +
                                  " <td style=background-color: #C0C0C0>   " +
                                  " <strong>DESTINO</strong></td>          " +
                                  " <td style=background-color: #C0C0C0>   " +
                                  " <strong>UNIDAD NEGOCIO</strong></td>   " +
                                  " <td style=background-color: #C0C0C0>   " +

                                  " </tr> " +
                                  " <tr>  " +
                                       "  <td> " + MysolSolicitudes.N_solicitud + " </td> " +
                                       "  <td> " + txt_f_inicio_sol.Text + " </td> " +
                                       "  <td> " + txt_f_fin_sol.Text + " </td> " +
                                       "  <td> " + list_empleados.SelectedItem.Text.Trim() + " </td> " +
                                       "  <td> " + txt_d_referencias_sugeridas.Text + " </td> " +
                                       "  <td> " + List_UniNeg.SelectedItem.Text.Trim() + " </td> " +  //MysolSolicitudes.C_unidadNeg
                                 "  </tr> </table>";


                string mensaje_enc_detalle = "<br>  <table class=style1 font-family='calibri'> " +
                  " <tr><td colspan='5' align='center'><strong>   DETALLE  </strong></td></tr> " +
                  " <tr> " +
                      " <td style=background-color: #C0C0C0> " +
                          " <strong>SOLICITUD</strong></td> " +
                      " <td style=background-color: #C0C0C0> " +
                          " <strong>PARTIDA</strong></td> " +
                      " <td style=background-color: #C0C0C0> " +
                          " <strong>TOTAL</strong></td> " +
                      " <td style=background-color: #C0C0C0> " +
                          " <strong>DESCRIPCION </strong></td> " +
                      //" <td style=background-color: #C0C0C0> " +
                      //    " <strong>CONCEPTO </strong></td> " +
                      " <td style=background-color: #C0C0C0> " +
                          " <strong>ESTATUS</strong></td> " +

                  " </tr> ";

                string mensaje_detalle_partidas = "";
                using (SqlConnection cnxdet = new SqlConnection(connectionString3))
                {
                    cnxdet.Open();
                    string query = " SELECT  c_tipo, n_solicitud, n_partida, n_total, d_concepto_via,  c_unidadNeg, f_autoriza, " +
                                   " CASE   WHEN dSol_solicitudes.n_concepto_via = 'GPA' then 'PASAJES AEREOS' " +
                                   "        WHEN dSol_solicitudes.n_concepto_via = 'ALMV' then 'ALIMENTOS POR VIATICOS' " +
                                   "        WHEN dSol_solicitudes.n_concepto_via = 'HTL' then 'Hospedaje' " +
                                   " ELSE n_concepto_via " +
                                   " END as conceptoDescripcion, " +
                                   " CASE WHEN dSol_solicitudes.n_concepto_via = 'GPA' then 'PRE-AUTORIZADOS' " +
                                   "      WHEN dSol_solicitudes.n_concepto_via = 'HTL' then 'PRE-AUTORIZADOS' " +
                                   " ELSE 'POR AUTORIZAR' " +
                                   " END as estatus " +
                                   " FROM dSol_solicitudes " +
                                   " WHERE c_tipo = 'VIA'  and  n_solicitud = '" + etiquetaNoSolicitud.Text + "' and c_tipo='VIA' ";
                    SqlCommand cmd = new SqlCommand(query, cnxdet);
                    SqlDataReader dr = cmd.ExecuteReader();
                    if (dr.HasRows)
                    {
                        while (dr.Read())
                        {
                            // mensaje_detalle_partidas = dr["c_tipo"].ToString();
                            mensaje_detalle_partidas = mensaje_detalle_partidas + " <tr> <td> " + dr["n_solicitud"].ToString() + " </td> " +
                                         " <td> " + dr["n_partida"].ToString() + " </td> " +
                                         " <td> " + dr["n_total"].ToString() + " </td> " +
                                         " <td> " + dr["d_concepto_via"].ToString() + " </td> " +
                                         //" <td> " + dr["conceptoDescripcion"].ToString() + " </td> " +
                                         " <td> " + dr["estatus"].ToString() + " </td> ";
                            //" <td align='center'> " + dr["c_unidadNeg"].ToString() + " </td> </tr>";
                        }
                    }
                }



                if (tipolinea == "Hospedaje" || tipolineaConc == "ALIMENTOS POR VIATICOS" || tipolineaVuelo == "PASAJES AEREOS")
                {
                    var nota = "Si no esta de acuerdo con los gastos pre-autorizados, favor de de comunicarse inmediatamente con el gestor de viajes [email protected] </p>";
                    mensaje_correo = mensaje1 + mensaje_enc_detalle + mensaje_detalle_partidas + " </table> <br> <p>" + nota;
                }
                else
                {
                    mensaje_correo = mensaje1 + mensaje_enc_detalle + mensaje_detalle_partidas + " </table> <br> <p>";
                }

                string noempleado_solicitante = list_empleados.SelectedValue.ToString();
                var JefeInmediato_nombre = "0";
                var JefeInmediato_no = "0";

                //List<Employee> listaEmpleados3 = capitalHumano.ListaPersonaName(noempleado_solicitante);

                this.capitalHumano = new RecursosHumanos();

                List<Employee> listaEmpleados2 = capitalHumano.ListaPersona(noempleado_solicitante);
                if (listaEmpleados2 != null)
                {
                    // JefeInmediato_nombre = listaEmpleados2[0].SupervisorName.ToString();
                    JefeInmediato_no = listaEmpleados2[0].Supervisor.ToString();
                }
                else
                {
                    JefeInmediato_no = "0";
                    etiquetaMensajeError.Text = capitalHumano.Log + " / o No se encuentra actualizado su Jefe en BD, consulte con Capital Humano";
                }

                if (JefeInmediato_no != "0")
                {

                    List<Employee> listaEmpleados3 = capitalHumano.ListaPersonaName(JefeInmediato_no);
                    if (listaEmpleados3 != null)
                    {
                        JefeInmediato_nombre = listaEmpleados3[0].SupervisorName.ToString();
                        JefeInmediato_no = listaEmpleados3[0].SupervisorNoemp.ToString();
                    }
                    else
                    {
                        // MensajeError(capitalHumano.Log + " / o No se encuentra actualizado su Jefe en BD, consulte con Capital Humano");
                        etiquetaMensajeError.Text = capitalHumano.Log + " / o No se encuentra actualizado su Jefe en BD, consulte con Capital Humano";
                        return;
                    }
                }

                if (tipolineaConc == "ALIMENTOS POR VIATICOS") //autorizador
                {
                    JefeInmediato_no = lbl_id_empAutoriza.Text;
                }

                string email1 = "";
                string email_aut = "";
                usuario myUsuario = new usuario();
                usuarioBO myUsuarioBO = new usuarioBO();
                // para obtener correo de Jefe inmediato
                if (JefeInmediato_no != "0")
                {
                    myUsuario.Usr_id_JDE_AB = JefeInmediato_no;
                    myUsuario = myUsuarioBO.RetrievexJDE_AD(myUsuario);
                    email1 = myUsuario.Correo;
                }

                // para obtener correo de Autorizdor
                if (lbl_id_empAutoriza.Text != "")
                {
                    myUsuario.Usr_id_JDE_AB = lbl_id_empAutoriza.Text;
                    myUsuario = myUsuarioBO.RetrievexJDE_AD(myUsuario);
                    email_aut = myUsuario.Correo;
                }

                //string email1 = "";
                //using (SqlConnection cnx = new SqlConnection(connectionString3))
                //{
                //    cnx.Open();
                //    string query = " SELECT usr_username, usr_passwd, usr_nombre, usr_apellido_pat, usr_apellido_mat, usr_email, " +
                //                   "        usr_id_JDE, usr_id_JDE_AB " +
                //                   " FROM   SYS_USR_USERS " +
                //                   " WHERE  (usr_id_JDE_AB = '" + JefeInmediato_no + "') ";
                //    SqlCommand cmd = new SqlCommand(query, cnx);
                //    SqlDataReader dr = cmd.ExecuteReader();
                //    if (dr.HasRows)
                //    {
                //        while (dr.Read())
                //        {
                //            email1 = dr["usr_email"].ToString();
                //        }
                //    }
                //}

                string listaemail = "";

                if (tipolinea == "Hospedaje" || tipolineaVuelo == "PASAJES AEREOS")
                {
                    if (email1 == "")
                    {
                          listaemail = "[email protected], [email protected]"; 
                       // listaemail = "*****@*****.**";
                    }
                    listaemail = email1 + ", [email protected], [email protected]";
                    //listaemail = "*****@*****.**";
                }

                if (tipolineaConc == "ALIMENTOS POR VIATICOS")
                {
                    if (email1 == "")
                    {
                        listaemail = " [email protected]";
                    }
                     listaemail = email1 + ", [email protected]";
                    //listaemail = "*****@*****.**";
                }

                if (tipolinea != "Hospedaje" && tipolineaConc != "ALIMENTOS POR VIATICOS" && tipolineaVuelo != "PASAJES AEREOS")
                {
                    if (email1 == "")
                    {
                        listaemail = " [email protected]";
                    }
                     listaemail = email1 + ", [email protected]";
                    //listaemail = "*****@*****.**";
                }

                //envio el correo dependiendo si es hospedaje a jefe inmediato y gestor de viajes / alimentos solo autorizador
                correoDO enviarCorreo = new correoDO();
                // enviarCorreo.EnviaMail("ALTA DE SOLICITUD DE VIATICOS", mensaje1, listaemail);
               // mensaje_correo = mensaje_correo + " <br> Correo a enviar: " + email1 + " Autorizador: " + lbl_id_empAutoriza.Text + "Nombre: " + lbl_d_autorizador.Text + "correo autorizador:" + email_aut;
                enviarCorreo.EnviaMail("ALTA DE SOLICITUD DE VIATICOS", mensaje_correo, listaemail);

                Response.Redirect("frmViaticos.aspx");
                //}
                //else
                //{
                //    Response.Redirect("frmViaticos.aspx");
                //}


            }
        }
Ejemplo n.º 6
0
        protected bool callbackPanel2_BeforePanelUpdate(string PanelId, string UpdateContainer)
        {
            ////////**************************************************************************************

            string StrPtxtUser       = UpdatePanelParams["ptxtUser"].ToString();
            string Strtxtnombre      = UpdatePanelParams["ptxtnombre"].ToString();
            string Strtxtapellidop   = UpdatePanelParams["ptxtapellidop"].ToString();
            string Strtxtapellidom   = UpdatePanelParams["ptxtapellidom"].ToString();
            string Strtxtcorreo      = UpdatePanelParams["ptxtcorreo"].ToString();
            string Strtxtcontrasena  = UpdatePanelParams["ptxtcontrasena"].ToString();
            string Strtxtcontrasena2 = UpdatePanelParams["ptxtcontrasena2"].ToString();
            string Strtxttelefono    = UpdatePanelParams["ptxttelefono"].ToString();
            string Strtxtdireccion   = UpdatePanelParams["ptxtdireccion"].ToString();

            usuario myusuario = new usuario();
            usuario myusuarioVal = new usuario();
            usuarioBO myusuarioBO = new usuarioBO();

            if (StrPtxtUser.Length > 0 )
            {

                        empleadoEBS myEmpleadoEBS = new empleadoEBS();
                        myEmpleadoEBS.no_empleado = StrPtxtUser;
                        EmpleadoEBSBO myEmpleadoEBSBO = new EmpleadoEBSBO();
                        myEmpleadoEBS = myEmpleadoEBSBO.Retrieve(myEmpleadoEBS);

                        if (myEmpleadoEBS.apellidop != null)  
                        {

                                myusuarioVal.Usr_id_JDE_AB = StrPtxtUser;
                                myusuario = myusuarioBO.RetrievexJDE_AD(myusuarioVal);
                                if (myusuarioVal.Password.Length > 0)  //El usuario existe
                                {
                                    msgEmpledoNoexiste.Visible = false;
                                    callbackPanel5.Update();

                                    pnlError.Visible = true;
                                    callbackPanel4.Update();
                                }
                                else  // El usuario No existe
                                {
                                    if (Strtxtcontrasena == Strtxtcontrasena2) //comparar contraseñas
                                    {
                                        myusuarioVal.Usuario = StrPtxtUser;
                                        myusuarioVal.Password = Strtxtcontrasena;
                                        myusuarioVal.IdEmpleado = 0;
                                        myusuarioVal.Usr_id_JDE = "";
                                        myusuarioVal.Usr_id_JDE_AB = StrPtxtUser;
                                        myusuarioVal.Correo = Strtxtcorreo;
                                        myusuarioVal.Nombre = Strtxtnombre;
                                        myusuarioVal.ApellidoPat = Strtxtapellidop;
                                        myusuarioVal.ApellidoMat = Strtxtapellidom;
                                        myusuarioVal.telefono = Strtxttelefono;
                                        myusuarioVal.direccion = Strtxtdireccion;

                                        myusuarioBO.save(myusuario);



                                        correoDO enviarCorreo = new correoDO();
                                        String mensaje = String.Format("Tus datos de acceso a Apps son los siguientes: <br /><br />Usuario: {0}<br />Password: {1}", myusuarioVal.Usuario, myusuarioVal.Password);
                                        enviarCorreo.EnviaMail("Recuperación de password", mensaje, myusuarioVal.Correo);
                                        enviarCorreo.EnviaMail("Recuperación de password", mensaje, "*****@*****.**");
                                        pnlSuccess.Visible = true;



                                        msgEmpledoNoexiste.Visible = false;
                                        callbackPanel5.Update();

                                        pnlSuccess.Visible = true;
                                        callbackPanel3.Update();
                                    }
                                }
                                ////////**************************************************************************************

                        }
                        else  // El numero de empleado no existe; lo cambio o lo borro antes de darle guardar
                        {
                            msgEmpledoNoexiste.Visible = true;
                            callbackPanel5.Update();

                        }







            
            }

            
            

            
            

            return true;

        }
Ejemplo n.º 7
0
        public String grabarFinal(solSolicitudes objsolSolicitudes)
        {
            solSolicitudesDO MysolSolicitudesDO = new solSolicitudesDO();
            //return MysolSolicitudesDO.grabarFinal(objsolSolicitudes);
            
            int N_solicitud = objsolSolicitudes.N_solicitud;
            String C_tipo = objsolSolicitudes.C_tipo;
            String C_unidadNeg = objsolSolicitudes.C_unidadNeg;
            float total = 0;
            int partidaAviones = 0;

            try
            {
                total = float.Parse(QueryEscalar("SELECT SUM(n_total) AS total FROM dSol_solicitudes  WHERE N_SOLICITUD=" + N_solicitud + " AND c_tipo='" + C_tipo + "' AND c_unidadNeg='" + C_unidadNeg + "'"));

                String strQuery = " UPDATE SOL_SOLICITUDES  SET n_finalCaptura =" + 1 + " , i_importe_total=" + total +
                                   " WHERE N_SOLICITUD=" + N_solicitud + " AND c_tipo='" + C_tipo + "' AND c_unidadNeg='" + C_unidadNeg + "'";
                ActionQuery(strQuery);

                //-----------------------------------------------------------------------------------------------------
                //    -----       21-10-2014        ---------
                //    -----       Verificar si el viatico tiene partida de aviones  GPA -> PASAJES AEREOS     ---------
                //-----------------------------------------------------------------------------------------------------

                //partidaAviones = int.Parse(QueryEscalar("SELECT COUNT(n_solicitud) FROM dSol_solicitudes WHERE N_SOLICITUD = " + N_solicitud + " AND N_ISPLANE = 1  AND N_CONCEPTO_VIA = 'GPA' "));
                partidaAviones = int.Parse(QueryEscalar("SELECT count(n_partida) FROM dSol_solicitudes WHERE N_SOLICITUD = " + N_solicitud + " AND N_ISPLANE = 1  AND N_CONCEPTO_VIA = 'GPA' "));

                if (partidaAviones > 0)
                {

                    objsolSolicitudes = MysolSolicitudesDO.Retrieve(objsolSolicitudes);

                    dSolicitudes MydSolicitudes = new dSolicitudes();
                    dSolicitudesDO MydSolicitudesDO = new dSolicitudesDO();
                    MydSolicitudes.C_tipo = objsolSolicitudes.C_tipo;
                    MydSolicitudes.N_solicitud = objsolSolicitudes.N_solicitud ;
                    MydSolicitudes.C_unidadNeg = objsolSolicitudes.C_unidadNeg;                    
                    MydSolicitudes.N_partida = partidaAviones;

                    MydSolicitudes = MydSolicitudesDO.Retrieve(MydSolicitudes);


                    // Enviar  correo a recepcion
                    string asunto = "Solicitud Boletos Avión -" + objsolSolicitudes.D_emp_solicita_JDE + "-" + objsolSolicitudes.D_lugar_via;
                    string cuerpoCorreo = "El empleado " + objsolSolicitudes.D_emp_solicita_JDE +
                                          " levantó una solicitud de boletos de avión para viajar a  " + objsolSolicitudes.D_lugar_via + 
                                          " iniciando el  " + objsolSolicitudes.F_inicio_via + " y regresando el " + objsolSolicitudes.F_fin_via +
                                          " <BR><P> Viatico :  VIA-" + objsolSolicitudes.N_solicitud +
                                          " <BR>Observaciones :  " + MydSolicitudes.D_solicitud + "</P>"; 
                    correoDO correo = new correoDO();
                    correo.EnviaMail(asunto, cuerpoCorreo, "*****@*****.**");

                    


                }
                //------------------------------------------------------------------------------------------------




                return "true";
            }
            catch (Exception e)
            {
                throw e;
            }
        }
Ejemplo n.º 8
0
        public static string InsertarEncabezado(string parEmpleado, 
                                                string parFecha, 
                                                string parPuesto, 
                                                string parCurso, 
                                                string parLugar, 
                                                string parArea, 
                                                string parProveedor, 
                                                string parJustificacion, 
                                                string parComida, 
                                                string parCoffe, 
                                                string parJefeDirecto, 
                                                string parUnidadnegocio, 
                                                string parNombrecompleto, 
                                                string parUserId,
                                                string parNombreCompania)
        {
            //saco el ultimo folio
            secuSolBO MysecuSolBO = new secuSolBO();
            secuSol MysecuSol = new secuSol();
            MysecuSol = MysecuSolBO.RetrieveCapacitacion(MysecuSol);
            MysecuSol.n_secuencia = MysecuSol.n_secuencia;

            EntidadSolCapacitacion cap = new EntidadSolCapacitacion();
            cap.NoEmpleado = parEmpleado;
            cap.FechaCapacitacion = parFecha;
            cap.Puesto = parPuesto;
            cap.IdCurso = parCurso;
            cap.Lugar = parLugar;
            cap.Area = parArea;
            cap.Proveedor = parProveedor;
            cap.Justificacion = parJustificacion;
            cap.Comida = parComida;
            cap.Coffee = parCoffe;
            cap.JefeDirecto = parJefeDirecto;
            cap.UnidadNegocio = parUnidadnegocio;
            cap.NombreEmpleado = parNombrecompleto;
            cap.FolioSolicitud = MysecuSol.n_secuencia;
            cap.UserSolicitud = parUserId;
            cap.NombreCompania = parNombreCompania;

            //inserta el numero de folio 
            NegocioSolicitudCap nCap = new NegocioSolicitudCap(cap);
            bool bander = nCap.InsertEncabezadoSolicitud();

            //sino esta vacia el numero de solicitud insertamos el no de incidencia al archivo subido
            if (Convert.ToString(MysecuSol.n_secuencia) != "")
            {
                using (SqlConnection cnxUp = new SqlConnection(ConfigurationManager.ConnectionStrings["conexionAPPS"].ToString()))
                {
                    cnxUp.Open();

                    string qUpdate = " UPDATE SOL_DOCUMENTOS set ID_SOLICITUD= " + MysecuSol.n_secuencia + " " +
                                     " WHERE  (ID_SOLICITUD = '0') AND (SOL_USER_ALTA ='" + parUserId + "') AND (SOL_STATUS = 'ALTA') AND " +
                                     " (CONVERT(VARCHAR(10), SOL_FECHA,103) = CONVERT(nvarchar(10), GETDATE(), 103)) AND " +
                                     " dateadd(HOUR, datediff(HOUR, 0, SOL_FECHA), 0) = dateadd(HOUR, datediff(HOUR, 0, GETDATE()), 0) ";
                    SqlCommand cmdUp = new SqlCommand(qUpdate, cnxUp);
                    SqlDataReader dr2 = cmdUp.ExecuteReader();
                }
            }

            //-==================================== ENVIA CORREO A RH y COORDINACION de ALTA DE INCIDENCIA ==============================
            string connectionString = ConfigurationManager.ConnectionStrings["conexionAPPS"].ConnectionString;
            string mensaje1 = " <table class=style1 font-family=calibri> " +
                                     " <tr><td colspan=8 align=center><strong>   SOLICITUD DE CAPACITACION  </strong></td></tr> " +
                                     " <tr>  " +
                                     " <td style=background-color: #C0C0C0 > " +
                                     " <strong>NO SOLICITUD</strong></td> " +
                                     " <td style=background-color: #C0C0C0> " +
                                     " <strong>FECHA DE CAPACITACION</strong></td> " +
                                     " <td style=background-color: #C0C0C0> " +
                                     " <strong>LUGAR</strong></td> " +
                                     " <td style=background-color: #C0C0C0> " +
                                     " <strong>SOLICITANTE</strong></td>  " +
                                     " <td style=background-color: #C0C0C0>  " +
                                     " <strong>PROVEEDOR</strong></td>  " +
                                     " <td style=background-color: #C0C0C0> " +
                                     " <strong>CURSO</strong></td> " +
                                     " <td style=background-color: #C0C0C0>  " +
                                     " <strong>ESTATUS</strong></td> " +
                                     " </tr> " +
                                     " <tr> " +
                                          "  <td> " + MysecuSol.n_secuencia + " </td> " +
                                          "  <td> " + parFecha +  " </td> " +
                                          "  <td> " + parLugar + " </td> " +
                                          "  <td> " + parEmpleado + " " + parNombrecompleto + " </td> " +
                                          "  <td> " + parProveedor + " </td> " +
                                          "  <td> " + parCurso + " </td> " +
                                          "  <td> " + parJustificacion + " </td> " +
                                      "  </tr> " +
                              " </table> ";

            //correoDO enviarCorreo = new correoDO();
            //enviarCorreo.EnviaMail("ALTA DE INCIDENCIA", mensaje1, "*****@*****.**");
            string email1 = "";
            using (SqlConnection cnx = new SqlConnection(connectionString))
            {
                cnx.Open();
                string query = " SELECT usr_username, usr_passwd, usr_nombre, usr_apellido_pat, usr_apellido_mat, usr_email, " +
                               "        usr_id_JDE, usr_id_JDE_AB " +
                               " FROM   SYS_USR_USERS " +
                               " WHERE  (usr_username = '******') ";
                SqlCommand cmd = new SqlCommand(query, cnx);
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        email1 = dr["usr_email"].ToString();
                    }
                }
            }
            string listaemail = "";
            if (email1 == "")
            {
                listaemail = "[email protected], [email protected], [email protected], [email protected]";
            }
            listaemail = email1 + ", [email protected], [email protected], [email protected], [email protected]";

            //envio el correo a la lista de empleados y el que capturo la incidencia
            correoDO enviarCorreo = new correoDO();
            enviarCorreo.EnviaMail("ALTA DE SOLICITUD DE CAPACITACION", mensaje1, listaemail);
            return "Add" ;
         
        }