Exemple #1
0
        public ActionResult Find(AlimFindViewModel model)
        {
            //LoggerFactory.CreateLog().Debug(string.Format(CultureInfo.InvariantCulture, "Presentation Layer - FindAlim Controller Begin"));
            //int totalCount = 0;

            try
            {
                // Add find logic here
                if (ModelState.IsValid)
                {
                    if (model.OrderBy == null)
                    {
                        model.OrderBy = "Id";
                    }

                    string sort        = "Id";
                    var    filtros     = GenerateExpression(model);
                    var    pagedResult = _serviceAlim.FindPagedByFilter(filtros, null, 1, model.PageSize, model.OrderBy, "Asc", null, null);
                    model.Paginate(pagedResult, "");

                    //var AlimDetails = _serviceAlim.Query(
                    //    new AlimQuery().Withfilter(filtros))
                    //    .OrderBy(n => n.OrderBy("Id", "Asc"))
                    //    .SelectPage(1, model.PageSize, out totalCount);
                    //var pagelist = new { total = totalCount, rows = AlimDetails.ToList() };

                    //var pagedResult = _serviceAlim.FindPagedByFilter(expression, includes, 1, model.PageSize, "Id", model.OrderBy, model.Ascendent, null, null);
                    //model.Paginate(pagedResult, expression.SerializedExpression);

                    TempData.Clear();
                    TempData.Add("FilterAlim", model);

                    //LoggerFactory.CreateLog().Debug(string.Format(CultureInfo.InvariantCulture, "Presentation Layer - FindAlim Controller End"));
                    return(PartialView("_AlimFindPartialView", model));
                }
            }
            catch (Exception ex)
            {
                //LoggerFactory.CreateLog().Error(string.Format(CultureInfo.InvariantCulture, "Presentation Layer - FindAlim Controller ERROR"), ex);
            }

            ModelState.AddModelError("", PresentationResources.Error);
            return(View("AlimFindView", new AlimFindViewModel(_serviceAlim, _serviceFactConv, _serviceNt_Cant, _serviceAlim_Grp, _serviceAlim_Fuente, _serviceUniMed, _serviceRecProd, _serviceDesCant, _serviceRendCant)));
        }
Exemple #2
0
        // GET
        public ActionResult Find(int?page = 1, string sort = "Id", string sortDir = "ASC")
        {
            //LoggerFactory.CreateLog().Debug(string.Format(CultureInfo.InvariantCulture, "Presentation Layer - FindAlim Controller Begin"));

            try
            {
                // Add find logic here
                AlimFindViewModel model;

                if (Request.IsAjaxRequest() && TempData.ContainsKey("FilterAlim"))
                {
                    model = (AlimFindViewModel)TempData.Peek("FilterAlim");
                    var filtros     = GenerateExpression(model);
                    var pagedResult = _serviceAlim.FindPagedByFilter(filtros, null, page != null ? (int)page : model.PageIndex, model.PageSize, sort, sortDir, null, null);
                    model.Paginate(pagedResult, "");

                    //var pagedResult = _serviceAlim.FindPagedByFilter(new CustomQuery<Alim> { SerializedExpression = model.Filter }, null, page != null ? (int)page : model.PageIndex, model.PageSize, sort, sortDir == "ASC", null);
                    //model.Paginate(pagedResult, model.Filter);

                    //LoggerFactory.CreateLog().Debug(string.Format(CultureInfo.InvariantCulture, "Presentation Layer - FindPagedAlim Controller End"));
                    return(PartialView("_AlimFindPartialView", model));
                }
                else
                {
                    TempData.Remove("FilterAlim");
                    model = new AlimFindViewModel(_serviceAlim, _serviceFactConv, _serviceNt_Cant, _serviceAlim_Grp, _serviceAlim_Fuente, _serviceUniMed, _serviceRecProd, _serviceDesCant, _serviceRendCant);
                    //LoggerFactory.CreateLog().Debug(string.Format(CultureInfo.InvariantCulture, "Presentation Layer - FindAlim Controller End"));
                    return(View("AlimFindView", model));
                }
            }
            catch (Exception ex)
            {
                //LoggerFactory.CreateLog().Error(string.Format(CultureInfo.InvariantCulture, "Presentation Layer - FindAlim Controller ERROR"), ex);
            }

            return(RedirectToAction("Index", "Home"));
        }
Exemple #3
0
        //private static QueryObject<Alim> GenerateExpression(AlimFindViewModel model)
        private static IEnumerable <filterRule> GenerateExpression(AlimFindViewModel model)
        {
            //LoggerFactory.CreateLog().Debug(string.Format(CultureInfo.InvariantCulture, "Presentation Layer - FindAlim Controller Begin"));
            //var filters = JsonConvert.DeserializeObject<IEnumerable<filterRule>>(filterRules);
            //return Json(pagelist, JsonRequestBehavior.AllowGet);
            IList <filterRule> filtros = new List <filterRule>();

            if (model != null)
            {
                if (model.Alim.Id.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "Id", value = model.Alim.Id.Value.ToString()
                    });
                }
                //And(d => d.Id == model.Alim.Id.Value);
                if (!string.IsNullOrEmpty(model.Alim.Nombre))
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "Nombre", value = model.Alim.Nombre
                    });
                }
                //And(d => d.Nombre.Contains(model.Alim.Nombre));
                if (model.Alim.IdEstado.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "IdEstado", value = model.Alim.IdEstado.Value.ToString()
                    });
                }
                //And(d => d.IdEstado == model.Alim.IdEstado.Value);
                if (model.Alim.FactorRendimiento.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "FactorRendimiento", value = model.Alim.FactorRendimiento.Value.ToString()
                    });
                }
                //And(d => d.FactorRendimiento == model.Alim.FactorRendimiento.Value);
                if (model.Alim.FactorDescuento.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "FactorDescuento", value = model.Alim.FactorDescuento.Value.ToString()
                    });
                }
                //And(d => d.FactorDescuento == model.Alim.FactorDescuento.Value);
                if (model.Alim.Fraccionado.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "Fraccionado", value = model.Alim.Fraccionado.Value.ToString()
                    });
                }
                //And(d => d.Fraccionado == model.Alim.Fraccionado.Value);
                if (model.Alim.ConversionInyectado.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "ConversionInyectado", value = model.Alim.ConversionInyectado.Value.ToString()
                    });
                }
                //And(d => d.ConversionInyectado == model.Alim.ConversionInyectado.Value);
                if (model.Alim.FactorConversion.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "FactorConversion", value = model.Alim.FactorConversion.Value.ToString()
                    });
                }
                //And(d => d.FactorConversion == model.Alim.FactorConversion.Value);
                if (model.Alim.Inactivo.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "Inactivo", value = model.Alim.Inactivo.Value.ToString()
                    });
                }
                //And(d => d.Inactivo == model.Alim.Inactivo.Value);
                if (!string.IsNullOrEmpty(model.Alim.NomAbreviado))
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "NomAbreviado", value = model.Alim.NomAbreviado
                    });
                }
                //And(d => d.NomAbreviado.Contains(model.Alim.NomAbreviado));
                if (!string.IsNullOrEmpty(model.Alim.NomCientifico))
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "NomCientifico", value = model.Alim.NomCientifico
                    });
                }
                //And(d => d.NomCientifico.Contains(model.Alim.NomCientifico));
                if (model.Alim.esAlimento.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "esAlimento", value = model.Alim.esAlimento.Value.ToString()
                    });
                }
                //And(d => d.esAlimento == model.Alim.esAlimento.Value);
                if (model.Alim.NT_MedidaBase.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "NT_MedidaBase", value = model.Alim.NT_MedidaBase.Value.ToString()
                    });
                }
                //And(d => d.NT_MedidaBase == model.Alim.NT_MedidaBase.Value);
                if (model.Alim.IdUniMed.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "IdUniMed", value = model.Alim.IdUniMed.Value.ToString()
                    });
                }
                //And(d => d.IdUniMed == model.Alim.IdUniMed.Value);
                if (model.Alim.IdAlimGrp.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "IdAlimGrp", value = model.Alim.IdAlimGrp.Value.ToString()
                    });
                }
                //And(d => d.IdAlimGrp == model.Alim.IdAlimGrp.Value);
                if (model.Alim.IdAlimFte.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "IdAlimFte", value = model.Alim.IdAlimFte.Value.ToString()
                    });
                }
                //And(d => d.IdAlimFte == model.Alim.IdAlimFte.Value);
                if (model.Alim.FechaRegistro.HasValue)
                {
                    filtros.Add(new filterRule()
                    {
                        op = "equal", field = "FechaRegistro", value = model.Alim.FechaRegistro.Value.ToString()
                    });
                }
                //And(d => d.FechaRegistro == model.Alim.FechaRegistro.Value);
            }

            return(filtros);
            //return new QueryObject<Alim>(expression ?? (d => true));
        }