public ActionResult Index(UserViewhelper UserViewhelper) { if (Session.getCurrentUser() == null) return Redirect("/admin/account/logon"); if (!SercurityServices.HasPermission((int)TypeModule.MODULE_NGUOIDUNG, Session.getCurrentUser().username, TypeAudit.Addnew) && !SercurityServices.HasPermission((int)TypeModule.MODULE_NGUOIDUNG, Session.getCurrentUser().username, TypeAudit.Edit) && !SercurityServices.HasPermission((int)TypeModule.MODULE_NGUOIDUNG, Session.getCurrentUser().username, TypeAudit.Delete)) { return Redirect("/admin/error/error403"); } saveData(UserViewhelper); return View(); }
public List<gov_user> setSearchFilter(List<gov_user> lstUser, UserViewhelper userViewhelper) { Expression<Func<gov_user, bool>> predicate = PredicateBuilder.False<gov_user>(); if (!String.IsNullOrWhiteSpace(userViewhelper.KeySearch)) { predicate = predicate.Or(d => d.username != null && d.username.ToUpper().Contains(userViewhelper.KeySearch.ToUpper())); predicate = predicate.Or(d => (d.family_name + " " + d.first_name).ToUpper().Contains(userViewhelper.KeySearch.ToUpper())); predicate = predicate.Or(d => d.email != null && d.email.ToUpper().Contains(userViewhelper.KeySearch.ToUpper())); lstUser = lstUser.Where(predicate.Compile()).ToList(); } if (!String.IsNullOrWhiteSpace(userViewhelper.FilterActive)) { lstUser = lstUser.Where(u => u.active_flg == Convert.ToBoolean(userViewhelper.FilterActive)).ToList(); } return lstUser; }
public UserViewhelper saveData(UserViewhelper userViewhelper) { List<gov_user> lstUser = _cnttDB.gov_user.Where(u => u.hidden_flg == false).ToList(); lstUser = setSearchFilter(lstUser, userViewhelper); int totalCount = lstUser.Count; userViewhelper.TotalCount = totalCount; if (userViewhelper.TotalCount > 0) { int totalPage = pageCalculation(totalCount, Constant.limit); userViewhelper.TotalPage = totalPage; userViewhelper.Page = pageTransition(userViewhelper.Direction, userViewhelper.Page, totalPage); userViewhelper.FirstPage = fistPageCalculation(Constant.maxPageLine, totalPage, userViewhelper.Page); userViewhelper.LastPage = lastPageCalculation(Constant.maxPageLine, totalPage, userViewhelper.Page, userViewhelper.FirstPage); int take = Constant.limit; int skip = (userViewhelper.Page - 1) * take; userViewhelper.LstUser = lstUser.OrderByDescending(u => u.entry_datetime).Skip(skip).Take(take).ToList(); } ViewData["userViewhelper"] = userViewhelper; return userViewhelper; }