Пример #1
0
        public async Task <ActionResult> ftCardHolderList(jQueryDataTableParamModel Params, string _AcctNo, bool isExport = false)
        {
            //byte[] Bytes;
            var _filtered = new List <CardHolderInfoModel>();
            var list      = (await CardHolderService.GetCardHolders(_AcctNo)).cardHolderInfos;

            if (!string.IsNullOrEmpty(Params.sSearch))
            {
                Params.sSearch = Params.sSearch.ToLower();
            }

            if (!string.IsNullOrEmpty(Params.sSearch))
            {
                _filtered = list.Where(p => (!string.IsNullOrEmpty(p.CardNo) ? p.CardNo : string.Empty).ToLower().Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.EmbossName) ? p.EmbossName : string.Empty).Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.SelectedCurrentStatus) ? p.SelectedCurrentStatus : string.Empty).Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.CardExpiry) ? p.CardExpiry : string.Empty).Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.XRefCardNo) ? p.XRefCardNo : string.Empty).Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.SelectedCardType) ? p.SelectedCardType : string.Empty).Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.SelectedPINInd) ? p.SelectedPINInd : string.Empty).Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.vehRegNo) ? p.vehRegNo : string.Empty).Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.DriverCd) ? p.DriverCd : string.Empty).Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.FullName) ? p.FullName : string.Empty).Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.BlockedDate) ? p.BlockedDate : string.Empty).Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.TerminatedDate) ? p.TerminatedDate : string.Empty).Contains(Params.sSearch) ||
                                       (!string.IsNullOrEmpty(p.SelectedCostCentre) ? p.SelectedCostCentre : string.Empty).Contains(Params.sSearch)).ToList();

                _filtered = _filtered.Skip(Params.iDisplayStart).Take(Params.iDisplayLength).ToList();
            }
            else
            {
                _filtered = list.Skip(Params.iDisplayStart).Take(Params.iDisplayLength).ToList();
            }

            var xx = from x in _filtered
                     select new
            {
                x.CardNo,
                x.EmbossName
            };

            if (isExport)
            {
                var toExport = new List <string[]>();
                var Header   = list.First().ExcelHeader;
                foreach (var item in list)
                {
                    toExport.Add(item.ExcelBody());
                }
                var ExcelPkg = Common.CommonHelpers.CreateExcel(Header, toExport, "CardsList-" + _AcctNo);
                return(File(ExcelPkg.GetAsByteArray(), "application/vnd.ms-excel", string.Format("List of Cards-{0}.xlsx", _AcctNo)));
            }
            return(Json(new
            {
                sEcho = Params.sEcho,
                iTotalRecords = list.Count,
                iTotalDisplayRecords = list.Count,
                aaData = _filtered.Select(x => new object[] { x.CardNo, x.EmbossName, x.SelectedCurrentStatus, x.CardExpiry, x.SelectedCardType, x.SelectedPINInd, x.vehRegNo, x.DriverCd, x.FullName, x.BlockedDate, x.TerminatedDate, x.SelectedCostCentre }),
            }, JsonRequestBehavior.AllowGet));
        }