private void botonDeRegistrarHorasExtra_Click(object sender, EventArgs e)
 {
     try
     {
         SolicitudesHorasExtra solicitudesHorasExtra = new SolicitudesHorasExtra();
         this.Hide();
         solicitudesHorasExtra.Show();
     }
     catch (Exception ex)
     {
         string metodoYclase = this.GetType().Name + ", " + System.Reflection.MethodBase.GetCurrentMethod().Name;
         registrarError(ex, metodoYclase);
     }
 }
Esempio n. 2
0
        private void botonDeEnviar_Click(object sender, EventArgs e)
        {
            try
            {
                if (numericDeCantidadDeHorasExtra.Value != 0)
                {
                    var conexion = AbrirBaseDeDatos();
                    var comando  = conexion.GetStoredProcCommand("EMPLEADO_INSERTAR_SOLICITUD_HORAS_EXTRAS", textBoxDeNombre.Text,
                                                                 dateTimePickerDeDiaTrabajado.Value,
                                                                 numericDeCantidadDeHorasExtra.Value);
                    conexion.ExecuteNonQuery(comando);
                    //ENVIA UN CORREO
                    AdministradorDeCorreo administradorDeCorreo = new AdministradorDeCorreo("mail.electronicaureba.com", "*****@*****.**", "Qwertz987.,!", 8889);

                    StringBuilder builder = new StringBuilder();

                    builder.Append("<table class=table table-bordered align= center border= 1 cellpadding= 3 cellspacing= 0 width= 100%'>");
                    builder.Append("<tr>");
                    builder.Append("<th>NOMBRE</th>");
                    builder.Append("<th>FECHA DE SOLICITUD</th>");
                    builder.Append("<th>CANTIDAD DE HORAS</th>");
                    builder.Append("<th>ESTADO DE SOLICITUD</th>");
                    builder.Append("</tr>");

                    builder.Append("<tr align= center>");
                    builder.Append("<td>" + textBoxDeNombre.Text + "</td>");
                    builder.Append("<td>" + dateTimePickerDeDiaTrabajado.Value.ToString("dd/MM/yyyy") + "</td>");
                    builder.Append("<td>" + numericDeCantidadDeHorasExtra.Value.ToString() + "</td>");
                    builder.Append("<td>" + "PENDIENTE" + "</td>");
                    builder.Append("</tr>");
                    builder.Append("</table>");


                    var           comando02        = conexion.GetStoredProcCommand("[SACAR_CORREO_DE_EMPLEADO_CON_NOMBRE]", textBoxDeNombre.Text);
                    string        correoDeEmpleado = "";
                    string        correoDeAdministrador;
                    List <string> listaDeCorreos = new List <string>();
                    using (IDataReader informacionEncontrada = conexion.ExecuteReader(comando02))
                    {
                        if (informacionEncontrada.Read())
                        {
                            correoDeEmpleado = informacionEncontrada.GetString(0);
                        }
                    }
                    var comando03 = conexion.GetStoredProcCommand("[SACAR_CORREOS_DE_ADMINISTRADORES]");

                    using (IDataReader informacionEncontrada = conexion.ExecuteReader(comando03))
                    {
                        while (informacionEncontrada.Read())
                        {
                            correoDeAdministrador = informacionEncontrada["CORREO"].ToString();
                            listaDeCorreos.Add(correoDeAdministrador);
                        }
                    }
                    administradorDeCorreo.EnviarCorreo("<img src=https://i.ibb.co/jv7wTtq/LOGO-UREBA.png height=80vh width=100%> <br> <br> <h1>Ha enviado una solicitud de horas extra</h1> <br/> " + builder.ToString(), "Solicitud de horas extra", "*****@*****.**", "Electrónica UREBA S.A.", new List <string> {
                        correoDeEmpleado
                    });
                    administradorDeCorreo.EnviarCorreo("<img src=https://i.ibb.co/jv7wTtq/LOGO-UREBA.png height=80vh width=100%> <br> <br> <h1>Ha recibido una solicitud de horas extra</h1> <br/> " + builder.ToString(), "Solicitud de horas extra", "*****@*****.**", "Electrónica UREBA S.A.", listaDeCorreos);

                    string texto        = "El empleado: " + Empleado.Nombre + " ha enviado una solicitud de horas extra de " + numericDeCantidadDeHorasExtra.Value.ToString() + " horas para el día " + dateTimePickerDeDiaTrabajado.Value.ToString("dd/MM/yyyy") + ".";
                    string metodoYclase = this.GetType().Name + ", " + System.Reflection.MethodBase.GetCurrentMethod().Name;
                    registrarEvento(texto, metodoYclase);
                    MessageBox.Show("Ha registrado una solicitud de horas extra", "Opciones de Solicitudes", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    SolicitudesHorasExtra solicitudes = new SolicitudesHorasExtra();
                    this.Hide();
                    solicitudes.Show();
                }
                else
                {
                    MessageBox.Show("No puede registrar menos de una hora extra", "Opciones de Solicitudes", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    numericDeCantidadDeHorasExtra.Focus();
                }
            }
            catch (Exception ex)
            {
                string metodoYclase = this.GetType().Name + ", " + System.Reflection.MethodBase.GetCurrentMethod().Name;
                registrarError(ex, metodoYclase);
            }
        }