コード例 #1
0
        public ActionResult BuscarRecibosAExportar([Bind(Include = "FechaInicial,FechaFinal,TiposRecibo")] BuscarRecibosViewModel model)
        {
            if (ModelState.IsValid)
            {
                model.RecibosAExportar = ExportarRecibosDao.BuscarRecibosPorRango(model);
            }

            return(View("Index", model));
        }
コード例 #2
0
        /// <summary>
        /// Regresa todos los recibos de pago que se encuentren dentro del rango de fechas
        /// indicado y que estén validados de acuerdo a la enumeración TiposRecibo.
        /// </summary>
        /// <param name="model">El vista modelo obtenido desde el cliente.</param>
        /// <returns></returns>
        public static IEnumerable <ReciboPago> BuscarRecibosPorRango(BuscarRecibosViewModel model)
        {
            using (var db = new SCVEntities()) {
                var fechaFinalExclusiva = model.FechaFinal?.AddDays(1); // Agrega un día adicional, para emular el comportamiento de BETWEEN.
                var query = db.ReciboPago
                            .Where(recibo => recibo.Fecha >= model.FechaInicial && recibo.Fecha < fechaFinalExclusiva);

                switch (model.TiposRecibo)
                {
                case TiposRecibo.Todos:
                    return(query.ToList());

                case TiposRecibo.Validados:
                    return(query.Where(recibo => recibo.Validado).ToList());

                default:
                    return(query.Where(recibo => !recibo.Validado).ToList());
                }
            }
        }