Example #1
0
 public void RegistrarDefecto(int numero, EspecificacionDeDefecto especDe, string pie, DateTime now, Empleado empleado, TimeSpan?hora = null)
 {
     if (numero > 0)
     {
         Defecto defecto = new Defecto(especDe, pie, now, empleado, hora);
         Defectos.Add(defecto);
     }
     if (numero < 0)
     {
         if (hora != null)
         {
             if (hora > ((TimeSpan)hora).Add(TimeSpan.Parse("01:00")))
             {
                 var defecto = Defectos.ToList().LastOrDefault(d => d.EspecificacionDeDefecto.Equals(especDe) &&
                                                               d.Pie.ToString().Equals(pie) && (d.Hora.TimeOfDay >= hora || d.Hora.TimeOfDay < ((TimeSpan)hora).Add(TimeSpan.Parse("01:00"))));
                 Defectos.Remove(defecto);
             }
             else
             {
                 var defecto = Defectos.ToList().LastOrDefault(d => d.EspecificacionDeDefecto.Equals(especDe) &&
                                                               d.Pie.ToString().Equals(pie) && d.Hora.TimeOfDay >= hora && d.Hora.TimeOfDay < ((TimeSpan)hora).Add(TimeSpan.Parse("01:00")));
                 Defectos.Remove(defecto);
             }
         }
         else
         {
             var defecto = Defectos.ToList().LastOrDefault(d => d.EspecificacionDeDefecto.Equals(especDe) &&
                                                           d.Pie.ToString().Equals(pie));
             Defectos.Remove(defecto);
         }
     }
 }