Exemplo n.º 1
0
        public ListResult <IndexViewModel> Read(int page, int size, string filter, string order, string keyword)
        {
            var query = _stockOpnameRepository.ReadAll().Where(s => s.Area == DyeingPrintingArea.GUDANGJADI);


            List <string> SearchAttributes = new List <string>()
            {
                "BonNo"
            };

            query = QueryHelper <DyeingPrintingStockOpnameModel> .Search(query, SearchAttributes, keyword);

            Dictionary <string, object> FilterDictionary = JsonConvert.DeserializeObject <Dictionary <string, object> >(filter);

            query = QueryHelper <DyeingPrintingStockOpnameModel> .Filter(query, FilterDictionary);

            Dictionary <string, string> OrderDictionary = JsonConvert.DeserializeObject <Dictionary <string, string> >(order);

            query = QueryHelper <DyeingPrintingStockOpnameModel> .Order(query, OrderDictionary);

            var data = query.Skip((page - 1) * size).Take(size).Select(s => new IndexViewModel()
            {
                Id    = s.Id,
                Area  = s.Area,
                Type  = s.Type == null || s.Type == DyeingPrintingArea.STOCK_OPNAME ? DyeingPrintingArea.STOCK_OPNAME : DyeingPrintingArea.STOCK_OPNAME,
                BonNo = s.BonNo,
                Date  = s.Date,
            });

            return(new ListResult <IndexViewModel>(data.ToList(), page, size, query.Count()));
        }