Ejemplo n.º 1
0
        // GET: Role
        public ActionResult Index(int?page, ModelViewModel modelData)
        {
            if (ModelState.IsValid)
            {
                if (modelData.searchString != null)
                {
                    page = 1;
                }
                else
                {
                    modelData.ID_TYPE = modelData.ID_TYPE;
                }

                modelData.currentFilter = modelData.searchString;

                var     models = modelRepository.GetAllList();
                decimal searchDigit;
                bool    isInt = Decimal.TryParse(modelData.searchString, out searchDigit);

                if (!String.IsNullOrEmpty(modelData.searchString))
                {
                    if (!isInt)
                    {
                        models = models.Where(s => s.NAME.Contains(modelData.searchString)).OrderBy(s => s.NAME);
                    }
                }

                if (modelData.ID_TYPE != 0)
                {
                    var type = typeRepository.GetAllList().First(m => m.ID.Equals(modelData.ID_TYPE));
                    models = models.Where(s => s.TYPE.NAME.Contains(type.NAME)).OrderBy(s => s.NAME);
                }

                int pageSize   = 10;
                int pageNumber = (page ?? 1);

                List <ModelViewModel> modelList = new List <ModelViewModel>();

                foreach (MODEL item in models)
                {
                    modelList.Add(new ModelViewModel()
                    {
                        COMPONENT    = item.COMPONENT,
                        ID           = item.ID,
                        ID_TYPE      = item.ID_TYPE,
                        NAME         = item.NAME,
                        PRICE        = item.PRICE,
                        TYPE         = item.TYPE,
                        currentCoast = item.PRICE.Where(x => x.ID_MODEL.Equals(item.ID))
                                       .OrderByDescending(x => x.DATE_ADD).FirstOrDefault().COAST
                    });
                }

                if (!String.IsNullOrEmpty(modelData.searchString))
                {
                    if (isInt)
                    {
                        modelList = modelList.FindAll(m => m.currentCoast.Equals(searchDigit));
                    }
                }

                ModelViewModel model = new ModelViewModel
                {
                    modelList     = modelList.ToPagedList(pageNumber, pageSize),
                    typeList      = getList.getTypeSelectList(),
                    searchString  = modelData.searchString,
                    currentFilter = modelData.currentFilter,
                    ID_TYPE       = modelData.ID_TYPE
                };
                return(View(model));
            }

            Entities db = new Entities();

            return(View(db.MODEL.ToList()));
        }
Ejemplo n.º 2
0
        // GET: Index
        public ActionResult Index(int?page, ComponentViewModel modelData)
        {
            if (modelData.searchString != null)
            {
                page = 1;
            }
            else
            {
                modelData.ID_TYPE = modelData.ID_TYPE;
            }

            modelData.currentFilter = modelData.searchString;

            var components = componentRepository.GetAllList();

            if (modelData.ID_TYPE != null)
            {
                components = components.Where(s => s.ID_TYPE.Equals(modelData.ID_TYPE));
            }

            decimal searchDigit;
            bool    isInt = Decimal.TryParse(modelData.searchString, out searchDigit);

            if (!String.IsNullOrEmpty(modelData.searchString))
            {
                if (!isInt)
                {
                    if (components.Where(m => m.TYPE.NAME.Contains(modelData.searchString)).Count() != 0)
                    {
                        components = components.Where(m => m.TYPE.NAME.Contains(modelData.searchString));
                    }
                    if (components.Where(m => m.MODEL.NAME.Contains(modelData.searchString)).Count() != 0)
                    {
                        components = components.Where(s => s.MODEL.NAME.Contains(modelData.searchString));
                    }
                }
            }

            int pageSize   = 10;
            int pageNumber = (page ?? 1);

            List <ComponentViewModel> componentList = new List <ComponentViewModel>();

            foreach (COMPONENT item in components)
            {
                componentList.Add(new ComponentViewModel()
                {
                    ID            = item.ID,
                    DATE_ADD      = item.DATE_ADD,
                    ID_MODEL      = item.ID_MODEL,
                    ID_SERIES     = item.ID_SERIES,
                    ID_TYPE       = item.ID_TYPE,
                    PARTNUMBER    = item.PARTNUMBER,
                    currentStatus = item.CURRENT_STATUS.Where(x => x.ID_COMPLECT.Equals(item.ID))
                                    .OrderByDescending(x => x.DATE_STATUS).FirstOrDefault().STATUS.NAME,
                    MODEL = item.MODEL,
                    TYPE  = item.TYPE,
                });
            }

            if (!String.IsNullOrEmpty(modelData.searchString))
            {
                if (isInt)
                {
                    componentList = componentList.FindAll(m => m.currentCoast.Equals(searchDigit));
                }
            }

            ComponentViewModel model = new ComponentViewModel
            {
                componentList = componentList.ToPagedList(pageNumber, pageSize),
                typeList      = getList.getTypeSelectList(),
                searchString  = modelData.searchString,
                currentFilter = modelData.currentFilter,
                statusList    = getList.getStatusSelectList()
            };

            return(View(model));
        }