private void btnRegistra_Click(object sender, EventArgs e) { DialogResult rs = MessageBox.Show("¿Realmente desea registrar falta al empleado seleccionado?", "Registro de faltas", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (rs.Equals(DialogResult.OK)) { DiaLaboral dia = new DiaLaboral(); dia.setFecha(new Date(DateTime.Now)); dia.setAsistencia(DiaLaboral.Asistencia.Falta); dia.setIdEmpleado(this.emp.getClave()); string etqdia = DateTime.Now.ToString("dddd", new CultureInfo("es-ES")); DiaLaboral.DiaSemana etiqueta = new DiaLaboral.DiaSemana(); switch (etqdia) { case "domingo": etiqueta = DiaLaboral.DiaSemana.Domingo; break; case "lunes": etiqueta = DiaLaboral.DiaSemana.Lunes; break; case "martes": etiqueta = DiaLaboral.DiaSemana.Martes; break; case "miércoles": etiqueta = DiaLaboral.DiaSemana.Miércoles; break; case "jueves": etiqueta = DiaLaboral.DiaSemana.Jueves; break; case "viernes": etiqueta = DiaLaboral.DiaSemana.Viernes; break; case "sabado": etiqueta = DiaLaboral.DiaSemana.Sabado; break; } if (etiqueta != this.emp.getDiaLibre()) { EntradaLaboral ent = new EntradaLaboral(); ent.setFechaEnt(new Date(DateTime.Now)); ent.setIdEmpleado(this.emp.getClave()); ent.setHoraEnt(new Time(0, 0, 0)); ent.insertarEntradaBD(this.conexion); ent = new EntradaLaboral(this.emp.getClave(), new Date(DateTime.Now), this.conexion); SalidaLaboral sal = new SalidaLaboral(); sal.setFechaSal(new Date(DateTime.Now)); sal.setIdEmpleado(this.emp.getClave()); sal.setHoraSal(new Time(0, 0, 0)); sal.insertarSalidaBD(this.conexion); sal = new SalidaLaboral(this.emp.getClave(), new Date(DateTime.Now), this.conexion); dia.setIdHoraEnt(ent.getIdEntrada()); dia.setIdHoraSal(sal.getIdSalida()); int n = dia.insertarDiaBD(this.conexion); if (n > 0) { MessageBox.Show("La falta fue registrada exitosamente.", "Mensaje de Exito", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); this.emp = new Empleado(); } else { MessageBox.Show("La falta no pudo ser registrada.", "Mensaje de Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } MessageBox.Show("La falta no puede ser registrada en el día de descanso del trabajador.", "Mensaje de Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void btnRegistrar_Click(object sender, EventArgs e) { EntradaLaboral ent; SalidaLaboral sal; DiaLaboral dia; if (rbtnFacial.Checked == true) { //if (curp.Equals(this.emp.getCURP())) if (true) { DialogResult rs = MessageBox.Show("¿Realmente desea registrar la asistencia con el empleado seleccionado?", "Registro de asistencia", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (rs.Equals(DialogResult.OK)) { if (DateTime.Now.Hour <= this.emp.getHoraEnt().Hours + 1 && DateTime.Now.Hour <= this.emp.getHoraSal().Hours - 1) { ent = new EntradaLaboral(); ent.setFechaEnt(new Date(DateTime.Now)); ent.setHoraEnt(new Time(DateTime.Now)); ent.setIdEmpleado(this.emp.getClave()); int r = ent.insertarEntradaBD(this.conexion); if (r > 0) { MessageBox.Show("La entrada laboral fue registrada satisfactoriamente.", "Mensaje de Exito", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } else { MessageBox.Show("La entrada no pudo ser registrada.", "Mensaje de Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { if (DateTime.Now.Hour <= this.emp.getHoraSal().Hours + 1 && DateTime.Now.Hour > this.emp.getHoraEnt().Hours + 1) { sal = new SalidaLaboral(); sal.setFechaSal(new Date(DateTime.Now)); sal.setHoraSal(new Time(DateTime.Now)); sal.setIdEmpleado(this.emp.getClave()); int r = sal.insertarSalidaBD(this.conexion); if (r > 0) { MessageBox.Show("La salida laboral fue registrada satisfactoriamente.", "Mensaje de Exito", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); ent = new EntradaLaboral(this.emp.getClave(), new Date(DateTime.Now), this.conexion); sal = new SalidaLaboral(this.emp.getClave(), new Date(DateTime.Now), this.conexion); dia = new DiaLaboral(); dia.setFecha(sal.getFechaSal()); dia.setIdEmpleado(sal.getIdEmpleado()); dia.setIdHoraSal(sal.getIdSalida()); if (ent.getIdEntrada() != 0) { dia.setIdHoraEnt(ent.getIdEntrada()); if (ent.getHoraEnt().Minutes > 15) { dia.setAsistencia(DiaLaboral.Asistencia.Retardo); dia.insertarDiaBD(this.conexion); } else { dia.setAsistencia(DiaLaboral.Asistencia.Presente); dia.insertarDiaBD(this.conexion); } } else { ent = new EntradaLaboral(); ent.setFechaEnt(new Date(DateTime.Now)); ent.setIdEmpleado(this.emp.getClave()); ent.setHoraEnt(new Time(0, 0, 0)); ent.insertarEntradaBD(this.conexion); ent = new EntradaLaboral(this.emp.getClave(), new Date(DateTime.Now), this.conexion); dia.setIdHoraEnt(ent.getIdEntrada()); dia.setAsistencia(DiaLaboral.Asistencia.Falta); dia.insertarDiaBD(this.conexion); MessageBox.Show("Día laboral registrado como falta por no tener registro de entrada del día.", "Mensaje de Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("La salida no pudo ser registrada.", "Mensaje de Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Es imposible registrar una entrada o salida una hora despues del horario registrado.", "Mensaje de Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } } else { MessageBox.Show("Empleado no identificado de manera correcta", "Mesaje de error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { if (lblIdTarjeta.Text.Equals(this.emp.getIdTarjeta())) { DialogResult rs = MessageBox.Show("¿Realmente desea registrar la asistencia con el empleado seleccionado?", "Registro de asistencia", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (rs.Equals(DialogResult.OK)) { if (DateTime.Now.Hour <= this.emp.getHoraEnt().Hours + 1 && DateTime.Now.Hour <= this.emp.getHoraSal().Hours - 1) { ent = new EntradaLaboral(); ent.setFechaEnt(new Date(DateTime.Now)); ent.setHoraEnt(new Time(DateTime.Now)); ent.setIdEmpleado(this.emp.getClave()); int r = ent.insertarEntradaBD(this.conexion); if (r > 0) { MessageBox.Show("La entrada laboral fue registrada satisfactoriamente.", "Mensaje de Exito", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } else { MessageBox.Show("La entrada no pudo ser registrada.", "Mensaje de Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { if (DateTime.Now.Hour <= this.emp.getHoraSal().Hours + 1 && DateTime.Now.Hour > this.emp.getHoraEnt().Hours + 1) { sal = new SalidaLaboral(); sal.setFechaSal(new Date(DateTime.Now)); sal.setHoraSal(new Time(DateTime.Now)); sal.setIdEmpleado(this.emp.getClave()); int r = sal.insertarSalidaBD(this.conexion); if (r > 0) { MessageBox.Show("La salida laboral fue registrada satisfactoriamente.", "Mensaje de Exito", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); ent = new EntradaLaboral(this.emp.getClave(), new Date(DateTime.Now), this.conexion); sal = new SalidaLaboral(this.emp.getClave(), new Date(DateTime.Now), this.conexion); dia = new DiaLaboral(); dia.setFecha(sal.getFechaSal()); dia.setIdEmpleado(sal.getIdEmpleado()); dia.setIdHoraSal(sal.getIdSalida()); if (ent.getIdEntrada() != 0) { dia.setIdHoraEnt(ent.getIdEntrada()); if (ent.getHoraEnt().Minutes > 15) { dia.setAsistencia(DiaLaboral.Asistencia.Retardo); dia.insertarDiaBD(this.conexion); } else { dia.setAsistencia(DiaLaboral.Asistencia.Presente); dia.insertarDiaBD(this.conexion); } } else { ent = new EntradaLaboral(); ent.setFechaEnt(new Date(DateTime.Now)); ent.setIdEmpleado(this.emp.getClave()); ent.setHoraEnt(new Time(0, 0, 0)); ent.insertarEntradaBD(this.conexion); ent = new EntradaLaboral(this.emp.getClave(), new Date(DateTime.Now), this.conexion); dia.setIdHoraEnt(ent.getIdEntrada()); dia.setAsistencia(DiaLaboral.Asistencia.Falta); dia.insertarDiaBD(this.conexion); MessageBox.Show("Día laboral registrado como falta por no tener registro de entrada del día.", "Mensaje de Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("La salida no pudo ser registrada.", "Mensaje de Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Es imposible registrar una entrada o salida una hora despues del horario registrado.", "Mensaje de Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } } else { MessageBox.Show("Empleado no identificado de manera correcta", "Mesaje de error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }