public ReporteDiarioDTO(long agenteId , DateTime fechaBuscar , Horario horario , Novedad novedad , ComisionServicio comision , Lactancia lactancia , RelojDefectuoso reloj) { AgenteId = agenteId; FechaReporte = fechaBuscar; _reporteServicio = new ReporteServicio(); _agente = _reporteServicio.BuscarPorId(AgenteId); _horario = horario; _accesos = _reporteServicio.obtenerAccesos(AgenteId, fechaBuscar); _toleraciaLlegadaTarde = _reporteServicio.obtenerMinutosLlegadaTarde(); _toleraciaAusente = _reporteServicio.obtenerMinutosAusentes(); _minutosLactancia = _reporteServicio.obtenerMinutosLactancia(); _lactancia = lactancia; _novedad = novedad; _comision = comision; _reloj = reloj; if (_novedad != null) { _tipoNovedad = new TipoNovedad(); _tipoNovedad = _reporteServicio.obtenerTipo(_novedad.Id); } }
public Horario formateoHorarioEntrada(Horario horario, Novedad novedad, ComisionServicio comision, Lactancia lactancia) { if (novedad != null) { if (novedad.HoraDesde != null && novedad.HoraHasta != null) { if (horario.HoraEntrada < novedad.HoraDesde) { return(horario); } else { if (horario.HoraSalida > novedad.HoraHasta) { horario.HoraEntrada = novedad.HoraHasta; return(horario); } else { return(horario); } } } return(horario); } if (comision != null) { if (!comision.EsJornadaCompleta) { if (horario.HoraEntrada < comision.HoraDesde) { return(horario); } else { if (horario.HoraSalida > comision.HoraHasta) { horario.HoraEntrada = comision.HoraHasta; return(horario); } else { return(horario); } } } else { return(horario); } } if (lactancia != null && lactancia.HoraInicio) { var minutos = new TimeSpan(0, obtenerMinutosLactancia(), 0); horario.HoraEntrada = horario.HoraEntrada.Value.Add(minutos); return(horario); } else { return(horario); } }