Example #1
0
        public void ValidarFechas_FechaInicioValida_FechaFinValida()
        {
            var regla = new ReglaContrato
            {
                FechaInicioRegla = new DateTime(2019, 09, 20),
                FechaFinRegla    = new DateTime(2019, 10, 10)
            };

            var validacion = Validaciones.ValidarFechaRegla(regla);

            Assert.IsTrue(validacion);
        }
Example #2
0
        public void ValidarFechas_FechaInicioValidaFueraDeRango_FechaFinValidaFueraDeRango()
        {
            var regla = new ReglaContrato
            {
                FechaInicioRegla = new DateTime(2019, 08, 01),
                FechaFinRegla    = new DateTime(2019, 08, 31)
            };

            var validacion = Validaciones.ValidarFechaRegla(regla);

            Assert.IsFalse(validacion);
        }
Example #3
0
        public void ValidarFechas_FechaInicioNull_FechaFinNull()
        {
            var regla = new ReglaContrato
            {
                FechaInicioRegla = null,
                FechaFinRegla    = null
            };

            var validacion = Validaciones.ValidarFechaRegla(regla);

            Assert.IsTrue(validacion);
        }
Example #4
0
        internal static bool ValidarFechaRegla(ReglaContrato regla)
        {
            var fechaActual = DateTime.Now.Date;

            try
            {
                return((regla.FechaInicioRegla.IsNull() || regla.FechaInicioRegla <= fechaActual) &&
                       (regla.FechaFinRegla.IsNull() || regla.FechaFinRegla >= fechaActual));
            }
            catch (Exception)
            {
                return(false);
            }
        }
Example #5
0
        internal static List <Beneficiario> ObtenerBeneficiariosCandidatos(List <Beneficiario> beneficiarios, ReglaContrato regla, out List <MensajeConfiguracionRegla> listaMensajesBeneficiario)
        {
            listaMensajesBeneficiario = new List <MensajeConfiguracionRegla>();

            var predicado = GeneraPredicadoBeneficiario(regla.Entrada.EntradaBeneficiario, out var listaMensajes);

            listaMensajesBeneficiario.AddRange(listaMensajes.Select(m => { m.Codigo = regla.Codigo; return(m); }));

            return(predicado.IsNull()
                ? null
                : beneficiarios.AsQueryable().Where(predicado).ToList());
        }