Exemplo n.º 1
0
        private void procesaFichada(FichadaEntity fichada)
        {
            long segundosEntreFichada;

            fichada.Fecha = System.DateTime.Now.ToShortDateString();
            fichada.Hora  = System.DateTime.Now.Hour.ToString().PadLeft(2, '0') + ":" + System.DateTime.Now.Minute.ToString().PadLeft(2, '0') + ":" + System.DateTime.Now.Second.ToString().PadLeft(2, '0');

            //verifica tiempos entre fichadas y legajo repetido
            //si la fichada es del mismo legajo y está dentro de los 30 segundos se descarta.
            segundosEntreFichada = Varios.DateDiff(Varios.DateInterval.Second, this.ultimaFichada, Convert.ToDateTime(fichada.Hora));
            if (this.ultimoLegajo == fichada.Legajo && segundosEntreFichada < 30)
            {
                return;
            }
            this.ultimaFichada = Convert.ToDateTime(fichada.Hora);
            this.ultimoLegajo  = fichada.Legajo;

            labelUltimaFichadaHora.Text   = fichada.Hora;
            labelUltimaFichadaFecha.Text  = fichada.Fecha;
            labelUltimaFichadaLegajo.Text = fichada.Legajo.ToString();

            fichada.ApellidoYnombres = ConsultaEmpleados.consultarApellidoYnombres(fichada.Legajo);
            //ConsultaEmpleados.
            //Cargo datos fichada
            if (fichada.ApellidoYnombres != "SIN DATO")
            {
                fichada.Foto = ConsultaEmpleados.consultarFoto(fichada.Legajo);
                labelUltimaFichadaApellidoNombre.Text = fichada.ApellidoYnombres;
                if (fichada.Foto == "")
                {
                    pictureBoxUltimaFichadaFoto.Image = null;
                }
                else
                {
                    pictureBoxUltimaFichadaFoto.Image = Controles.cargarImagen(fichada.Foto);
                }
                //inserta en lista por arriba
                this.lstFichadas.Items.Insert(0, fichada.Fecha + "  " + fichada.Hora + "  " + fichada.Legajo.ToString().PadLeft(5, '0') + "  " + labelUltimaFichadaApellidoNombre.Text);
                //inserta registro en db.

                fichada.Reloj = consultaTablas.getById("reloj", 3, Program.idReloj);
                fichadasNegocio.Guardar(fichada);
                //  Model.DB.ejecutarProceso(Model.TipoComando.SP, "relojInsertarCaptura", "legajo", legajo, "fecha", fecha, "hora", hora, "idReloj", Program.idReloj);
            }
            else
            {
                labelUltimaFichadaApellidoNombre.Text = "!!!! ERROR !!!!";
                pictureBoxUltimaFichadaFoto.Image     = null;
            }

            //limpia campo
            this.textBoxStringTarjeta.Clear();
        }