Ejemplo n.º 1
0
        //public ActionResult Query(BillQueryViewModel query, int? page = 1)
        public ActionResult Query(BillQueryViewModel query)
        {
            //定位在當初輸入資料的那個值
            ViewBag.BillTypes = new SelectList(GlobalCodeMappings.BillTypes, "Key", "Value", query.BillType);

            #region Model 檢查

            //輸入資料驗證
            if (!ModelState.IsValid)
            {
                return(View(query));
            }

            #endregion

            #region 呼叫服務層

            //已通過資料驗證
            int?page       = query.PageIndex; //原本由 HttpGet 的 QueryString 取得, 改由 Form 取得
            int pageNumber = (!page.HasValue ? 1 : (page.Value < 1 ? 1 : page.Value));
            var bills      = _billingSvc.GetByQuery(query);
            var result     = bills.ToPagedList(pageNumber, pageSize);
            query.QueryResult = result;

            #endregion

            #region 回傳結果

            return(View(query));

            #endregion
        }