Ejemplo n.º 1
0
 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);
     }
 }
Ejemplo n.º 2
0
        public void Insertar(NovedadAgenteDTO novedadAgente)
        {
            try
            {
                using (var _context=new ModeloBometricoContainer())
                {
                    var _novedad = new Novedad()
                    {
                        AgenteId=novedadAgente.AngenteId,
                        TipoNovedadId=novedadAgente.TipoNovedadId,
                        FechaDesde=novedadAgente.FechaDesde,
                        FechaHasta=novedadAgente.FechaHasta,
                        HoraDesde=novedadAgente.HoraDesde,
                        HoraHasta=novedadAgente.HoraHasta,
                        Observacion=novedadAgente.Observacion

                    };
                    _context.Novedades.Add(_novedad);
                    _context.SaveChanges();
                }
            }
            catch (Exception)
            {

                throw;
            }
        }
Ejemplo n.º 3
0
        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;
            }
        }