public static HtmlString ShiKeSetListPageParameter(this IHtmlHelper helper, ListPageParameter pageParameter) { var htmlContent = new StringBuilder(); htmlContent.Append( "<input type='hidden' name='对应的类型' id='shikeTypeID' value='" + pageParameter.ObjectTypeID + "' />"); htmlContent.Append( "<input type='hidden' name='当前页码' id='shikePageIndex' value='" + pageParameter.PageIndex + "' />"); htmlContent.Append( "<input type='hidden' name='每页数据条数' id='shikePageSize' value='" + pageParameter.PageSize + "' /> "); htmlContent.Append( "<input type='hidden' name='分页数量' id='shikePageAmount' value='" + pageParameter.PageAmount + "' />"); htmlContent.Append( "<input type='hidden' name='相关的对象的总数' id='shikeObjectAmount' value='" + pageParameter.ObjectAmount + "' />"); htmlContent.Append( "<input type='hidden' name='当前的检索关键词' id='shikeKeyword' value='" + pageParameter.Keyword + "' />"); htmlContent.Append( "<input type='hidden' name='排序属性' id='shikeSortProperty' value='" + pageParameter.SortProperty + "' /> "); htmlContent.Append( "<input type='hidden' name='排序方向' id='shikeSortDesc' value='" + pageParameter.SortDesc + "' />"); htmlContent.Append( "<input type='hidden' name='当前焦点对象 ID' id='shikeSelectedObjectID' value='" + pageParameter.SelectedObjectID + "' />"); htmlContent.Append( "<input type='hidden' name='当前是否为检索' id='shikeIsSearch' value='" + pageParameter.IsSearch + "' />"); return(new HtmlString(htmlContent.ToString())); }
/// <summary> /// 获取活动评论 /// </summary> /// <param name="id"></param> /// <returns></returns> public async Task <IActionResult> GetComments(Guid id, string listPageParaJson) { var listPagePara = new ListPageParameter(); if (listPageParaJson != null) { listPagePara = Newtonsoft.Json.JsonConvert.DeserializeObject <ListPageParameter>(listPageParaJson); } ViewBag.activityId = id; //获取一级评论 var commentList = await _commonExtension.GetAll().OrderByDescending(x => x.CommentDataTime).Include(x => x.Activity).Include(x => x.User).Include(x => x.User.Avatar).Where(x => x.Activity.ID == id && x.ParentGrade == null).ToListAsync(); var comments = new List <CommentVM>(); foreach (var item in commentList) { var commentVM = new CommentVM(item); commentVM.CommentChildrens = await _commonExtension.GetAll().OrderBy(x => x.CommentDataTime).Include(x => x.Activity).Include(x => x.AcceptUser).Include(x => x.User).Include(x => x.User.Avatar).Where(x => x.ParentGrade == item.ID).ToListAsync(); comments.Add(commentVM); } var commentPageList = IQueryableExtensions.ToPaginatedList(comments.AsQueryable(), listPagePara.PageIndex, listPagePara.PageSize); var commentCollections = new List <CommentVM>(); foreach (var commentTermPage in commentPageList) { commentCollections.Add(commentTermPage); } var pageGroup = PagenateGroupRepository.GetItem(commentPageList, 5, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; return(View("~/Views/BusinessView/ActivityTermView/_GetComments.cshtml", commentCollections)); }
public ListNodeCreator(ListPageParameter parameter, ListConfigurationSection config, ListDataAccess DAL, XmlDocument document) { Parameter = parameter; Config = config; dal = DAL; xdoc = document; }
public async Task <IActionResult> List(string keywork, string probably, string listPageParaJson) { var listPagePara = new ListPageParameter(); if (listPageParaJson != null) { listPagePara = Newtonsoft.Json.JsonConvert.DeserializeObject <ListPageParameter>(listPageParaJson); } var atCollection = new List <ActivityTerm>(); if (!String.IsNullOrEmpty(keywork)) { Expression <Func <ActivityTerm, bool> > condtion = x => x.Name.Contains(keywork) || x.User.Name.Contains(keywork) || x.AnAssociation.Name.Contains(keywork) || x.Address.Contains(keywork); atCollection = await _activityTermExtension.GetAll().Include(x => x.User).Include(x => x.AnAssociation).Include(x => x.Avatar).Where(condtion).Where(x => x.Status == ActivityStatus.未开始 && x.IsDisable).ToListAsync(); if (probably == "1") { atCollection = atCollection.Where(x => x.AnAssociation != null).ToList(); } else if (probably == "2") { atCollection = atCollection.Where(x => x.User != null && x.AnAssociation == null).ToList(); } } else { atCollection = await _activityTermExtension.GetAll().Include(x => x.User).Include(x => x.AnAssociation).Include(x => x.Avatar).Where(x => x.Status == ActivityStatus.未开始 && x.IsDisable).ToListAsync(); if (probably == "1") { atCollection = atCollection.Where(x => x.AnAssociation != null).ToList(); } else if (probably == "2") { atCollection = atCollection.Where(x => x.User != null && x.AnAssociation == null).ToList(); } } var activityTermPageList = IQueryableExtensions.ToPaginatedList(atCollection.AsQueryable(), listPagePara.PageIndex, 12); var activityCollections = new List <ActivityTermVM>(); foreach (var activityTermPage in activityTermPageList) { activityCollections.Add(new ActivityTermVM(activityTermPage) { EnteredNumber = (await _activityUserExtension.GetAll().Where(x => x.ActivityTermId == activityTermPage.ID).ToListAsync()).Count }); } var pageGroup = PagenateGroupRepository.GetItem(activityTermPageList, 5, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; return(View("~/Views/BusinessView/ActivityTermView/_List.cshtml", activityCollections)); }
public ListPublishHandler(string Url) { config = (ListConfigurationSection)ConfigurationManager.GetSection("publish/listPublish"); Logger = LogManager.GetLogger(config.Logger); dal = new ListDataAccess(config); PageParameter = GetParameter(Url); PageFileName = GetPageFileName(); }
public ListPageCreator(ListPageParameter parameter, ListConfigurationSection config) { Parameter = parameter; Config = config; Logger = LogManager.GetLogger(config.Logger); dal = new ListDataAccess(config); }
private ListPageParameter GetParameter(string Url) { ListPageParameter parm = null; string pattern = @"list(_|-)+(?<cfid>\d+)((_|-)+(?<pageIndex>\d+))?((_|-)+b(?<brand>\d+))?((_|-)+r(?<price>\d+~\d+))?((_|-)+o(?<order>\d+))?((_|-)+v(?<properity>.+)e)?"; Match match = Regex.Match(Url, pattern); if (match.Success) { parm = new ListPageParameter(); parm.Properities = null; parm.OrderValue = 0; parm.CategoryID = int.Parse(match.Groups["cfid"].Value); parm.BrandID = 0; parm.PriceRange = null; if (match.Groups["pageIndex"].Success) { parm.PageIndex = int.Parse(match.Groups["pageIndex"].Value); } if (match.Groups["order"].Success) { parm.OrderValue = int.Parse(match.Groups["order"].Value); } if (match.Groups["brand"].Success) { parm.BrandID = int.Parse(match.Groups["brand"].Value); } if (match.Groups["price"].Success) { parm.PriceRange = new decimal[2] { decimal.Parse(match.Groups["price"].Value.Split('~')[0]), decimal.Parse(match.Groups["price"].Value.Split('~')[1]) } } ; if (match.Groups["properity"].Success) { parm.Properities = new Hashtable(); foreach (string pv in match.Groups["properity"].Value.Split(',')) { parm.Properities.Add(pv.Split('-')[0], pv.Split('-')[1]); } } } if (parm.PageIndex == 0) { parm.PageIndex = 1; } return(parm); } }
public IActionResult Index() { //获取当前用户名 GetCurrUserName(); var pageSize = 8; var pageIndex = 1; var counter = 0; //获取所有的商品 var commodityListVM = new List <YZ_CommodityVM>(); var commodities = this._commodity.GetAllIncluding(x => x.Category, x => x.AscriptionUser); var commodityCollectionPageList = commodities.ToPaginatedList(pageIndex, pageSize); if (commodities.Count() > 0) { foreach (var commodity in commodityCollectionPageList) { var commodityImage = _businessImage.FindBy(m => m.RelevanceObjectId == commodity.Id).FirstOrDefault(m => m.Type == ImageType.CommodityCover); var commodityImages = new List <BusinessImage>(); commodityImages.Add(commodityImage); var commodityVM = new YZ_CommodityVM(commodity); commodityVM.Images = commodityImages; commodityVM.OrderNumber = (++counter).ToString(); commodityListVM.Add(commodityVM); } ViewBag.CommodityVMCollection = commodityListVM; // 提取当前页面关联的分页器实例 var pageGroup = PagenateGroupRepository.GetItem <YZ_Commodity>(commodityCollectionPageList, 10, pageIndex); ViewBag.PageGroup = pageGroup; var listPageParameter = new ListPageParameter() { PageIndex = commodityCollectionPageList.PageIndex, Keyword = "", PageSize = commodityCollectionPageList.PageSize, ObjectTypeId = commodityListVM.FirstOrDefault().Id.ToString(), ObjectAmount = commodityCollectionPageList.TotalCount, SortDesc = "Default", SortProperty = "Name", PageAmount = 0, SelectedObjectId = "" }; ViewBag.PageParameter = listPageParameter; } else { commodityListVM = null; } return(View("../../Views/AdminCenter/CommodityManagement/Index", commodityListVM)); }
/// <summary> /// 根据关键词检索人员数据集合,返回给前端页面 /// </summary> /// <param name="keywork"></param> /// <returns></returns> public async Task <IActionResult> List(string keywork, string listPageParaJson, string pageIndex) { var listPagePara = new ListPageParameter(); if (listPageParaJson != null && listPageParaJson != "") { listPagePara = Newtonsoft.Json.JsonConvert.DeserializeObject <ListPageParameter>(listPageParaJson); } listPagePara.PageIndex = Convert.ToInt32(pageIndex); var boVMCollection = new List <ApplicationUserVM>(); if (!String.IsNullOrEmpty(keywork) && keywork != "undefined") { Expression <Func <ApplicationUser, bool> > condtion = x =>//Contains(参数字符串是否包含于string对象中) x.Name.Contains(keywork) || x.SchoolAddress.Contains(keywork) || x.School.Contains(keywork); var userCollection = await _userExtension.GetAll().Include(x => x.Avatar).Where(condtion).OrderByDescending(x => x.RegisterTime).ToListAsync(); foreach (var bo in userCollection) { boVMCollection.Add(new ApplicationUserVM(bo)); } } else { var userCollection = await _userExtension.GetAll().Include(x => x.Avatar).OrderByDescending(x => x.RegisterTime).ToListAsync(); foreach (var bo in userCollection) { boVMCollection.Add(new ApplicationUserVM(bo)); } } var userCollectionPageList = IQueryableExtensions.ToPaginatedList(boVMCollection.AsQueryable <ApplicationUserVM>(), listPagePara.PageIndex, listPagePara.PageSize); var userCollections = new List <ApplicationUserVM>(); foreach (var userCollection in userCollectionPageList) { userCollections.Add(userCollection); } var pageGroup = PagenateGroupRepository.GetItem <ApplicationUserVM>(userCollectionPageList, 3, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; return(View("~/Views/ApplicationOrganization/ApplicationUser/_List.cshtml", userCollections)); }
public async Task <IActionResult> List(string listPageParaJson) { _listPageParameter = Newtonsoft.Json.JsonConvert.DeserializeObject <ListPageParameter>(listPageParaJson); var boVMCollection = await _boVMService.GetboVMCollectionAsyn(_listPageParameter); ViewData["PageGroup"] = _listPageParameter.PagenateGroup; ViewData["ItemAmount"] = _listPageParameter.ObjectAmount; ViewData["ListPageParameter"] = _listPageParameter; ViewData["Keyword"] = _listPageParameter.Keyword; ViewData["ModuleName"] = "组织与人员管理"; ViewData["FunctionName"] = "员工数据列表:" + _listPageParameter.TypeName; return(PartialView("_List", boVMCollection)); }
public async Task <IActionResult> Index() { var anCollection = await _anAssociationExtension.GetAllIncludingAsyn(x => x.User); var anVmCollection = new List <AnAssociationVM>(); foreach (var an in anCollection) { var anVM = new AnAssociationVM(an); anVmCollection.Add(anVM); } var pageSize = 10; var pageIndex = 1; var anAssociationList = anVmCollection.OrderBy(x => x.Name).FirstOrDefault(); //处理分页 var anAssociationCollectionPageList = IQueryableExtensions.ToPaginatedList(anVmCollection.AsQueryable <AnAssociationVM>(), pageIndex, pageSize); var anAssociationCollections = new List <AnAssociationVM>(); foreach (var anAssociationCollection in anAssociationCollectionPageList) { anAssociationCollections.Add(anAssociationCollection); } //提取当前分页关联的分页器实例 var pageGroup = PagenateGroupRepository.GetItem(anAssociationCollectionPageList, 5, pageIndex); ViewBag.PageGroup = pageGroup; var listPageParameter = new ListPageParameter() { PageIndex = anAssociationCollectionPageList.PageIndex, Keyword = "", PageSize = anAssociationCollectionPageList.PageSize, ObjectTypeID = "", ObjectAmount = anAssociationCollectionPageList.TotalCount, SortDesc = "Default", SortProperty = "UserName", PageAmount = 0, SelectedObjectID = "" }; ViewBag.PageParameter = listPageParameter; return(View("~/Views/GroupOrganization/AnAssociation/Index.cshtml", anAssociationCollections)); }
public async Task <IActionResult> OrderList(string selectNnm) { ViewBag.UserLogonInformation = GetUserName(); var listPagePara = new ListPageParameter() { ObjectTypeID = "Order", // 对应的归属类型ID PageIndex = 1, // 当前页码 PageSize = 4, // 每页数据条数 为"0"时显示所有 PageAmount = 0, // 相关对象列表分页处理分页数量 ObjectAmount = 0, // 相关的对象的总数 Keyword = "", // 当前的关键词 SortProperty = "SortCode", // 排序属性 SortDesc = "default", // 排序方向,缺省值正向 Default,前端用开关方式转为逆向:Descend SelectedObjectID = "", // 当前页面处理中处理的焦点对象 ID IsSearch = false, // 当前是否为检索 }; listPagePara.PageIndex = selectNnm != null?Convert.ToInt32(selectNnm) : 1; var user = User.Claims.FirstOrDefault(); if (user.Value == new Guid().ToString()) { return(View("../../Views/Home/Logon")); } var shop = _ShopRepository.GetSingleBy(x => x.ShopForUser.Id == user.Value); //查询订单详细所关联的商品列表 var orderItems = _OrderItemRepository.FindBy(x => x.ShopName == shop.Name); //获取订单和订单对应的用户和商品 var orVMCollection = new List <SK_WM_OrderItemVM>(); //存放用户所有订单 var OrderAll = orderItems.AsQueryable <SK_WM_OrderItem>(); var OrderCollectionPageList = IQueryableExtensions.ToPaginatedList(OrderAll, listPagePara.PageIndex, listPagePara.PageSize); foreach (var order in OrderCollectionPageList) { var omVM = new SK_WM_OrderItemVM(order); orVMCollection.Add(omVM); } var pageGroup = PagenateGroupRepository.GetItem <SK_WM_OrderItem>(OrderCollectionPageList, 3, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; return(View("../../Views/BusinessOrganization/BusinessBG/OrderList", orVMCollection)); }
public async Task <IActionResult> Index() { var atCollection = await _activityTermExtension.GetAll().OrderBy(x => x.Status).ThenByDescending(x => x.CreateDateTime).Include(x => x.User).ToListAsync(); var atVmCollection = new List <ActivityTermVM>(); foreach (var at in atCollection) { var atVM = new ActivityTermVM(at); atVmCollection.Add(atVM); } var pageSize = 10; var pageIndex = 1; var activityTermList = atVmCollection.FirstOrDefault(); var activityTermCollections = new List <ActivityTermVM>(); //处理分页 var activityTermCollectionPageList = IQueryableExtensions.ToPaginatedList(atVmCollection.AsQueryable <ActivityTermVM>(), pageIndex, pageSize); foreach (var activityTermCollection in activityTermCollectionPageList) { activityTermCollections.Add(activityTermCollection); } //提取当前分页关联的分页器实例 var pageGroup = PagenateGroupRepository.GetItem(activityTermCollectionPageList, 5, pageIndex); ViewBag.PageGroup = pageGroup; var listPageParameter = new ListPageParameter() { PageIndex = activityTermCollectionPageList.PageIndex, Keyword = "", PageSize = activityTermCollectionPageList.PageSize, ObjectTypeID = "", ObjectAmount = activityTermCollectionPageList.TotalCount, SortDesc = "Default", SortProperty = "Name", PageAmount = 0, SelectedObjectID = "" }; ViewBag.PageParameter = listPageParameter; return(View("~/Views/GroupOrganization/ActivityTerm/Index.cshtml", activityTermCollections)); }
public async Task <List <TViewModel> > GetBoVMCollectionAsyn(ListPageParameter listPageParameter, Expression <Func <TEntity, bool> > navigatorPredicate, params Expression <Func <TEntity, object> >[] includeProperties) { var boCollection = await _entityRepository.GetBoPaginateAsyn(listPageParameter, navigatorPredicate, includeProperties); var boVMCollection = new List <TViewModel>(); // 初始化视图模型起始序号 int count = (int.Parse(listPageParameter.PageIndex) - 1) * int.Parse(listPageParameter.PageSize); foreach (var item in boCollection) { var boVM = new TViewModel(); item.MapToViewModel <TEntity, TViewModel>(boVM); boVM.OrderNumber = (++count).ToString(); boVMCollection.Add(boVM); } return(boVMCollection); }
public async Task <IActionResult> Index() { var boCollection = await _PersonExtension.GetAllAsyn(); var boVMCollection = new List <PersonVM>(); foreach (var bo in boCollection) { var boVM = new PersonVM(bo); boVMCollection.Add(boVM); } var pageSize = 10; var pageIndex = 1; var personList = boVMCollection.OrderBy(x => x.Name).FirstOrDefault(); // 处理分页 var personCollectionPageList = IQueryableExtensions.ToPaginatedList(boVMCollection.AsQueryable <PersonVM>(), pageIndex, pageSize); var personCollections = new List <PersonVM>(); foreach (var personCollection in personCollectionPageList) { personCollections.Add(personCollection); } //提取当前分页关联的分页器实例 var pageGroup = PagenateGroupRepository.GetItem <PersonVM>(personCollectionPageList, 3, pageIndex); ViewBag.PageGroup = pageGroup; var listPageParameter = new ListPageParameter() { PageIndex = personCollectionPageList.PageIndex, Keyword = "", PageSize = personCollectionPageList.PageSize, ObjectTypeID = "", ObjectAmount = personCollectionPageList.TotalCount, SortDesc = "Default", SortProperty = "UserName", PageAmount = 0, SelectedObjectID = "" }; ViewBag.PageParameter = listPageParameter; return(View("~/Views/BusinessOrganization/Person/Index.cshtml", personCollections)); }
public async Task <IActionResult> Index() { var boCollection = await _hobbyExtension.GetAll().Include(x => x.Avatar).OrderBy(x => x.SortCode).ToListAsync(); var boVMCollection = new List <HobbyVM>(); foreach (var bo in boCollection) { var boVM = new HobbyVM(bo); boVMCollection.Add(boVM); } var pageSize = 10; var pageIndex = 1; var personList = boVMCollection.OrderBy(x => x.Name).FirstOrDefault(); // 处理分页 var hobbyCollectionPageList = IQueryableExtensions.ToPaginatedList(boVMCollection.AsQueryable <HobbyVM>(), pageIndex, pageSize); var hobbyCollections = new List <HobbyVM>(); foreach (var hobbyCollection in hobbyCollectionPageList) { hobbyCollections.Add(hobbyCollection); } //提取当前分页关联的分页器实例 var pageGroup = PagenateGroupRepository.GetItem <HobbyVM>(hobbyCollectionPageList, 5, pageIndex); ViewBag.PageGroup = pageGroup; var listPageParameter = new ListPageParameter() { PageIndex = hobbyCollectionPageList.PageIndex, Keyword = "", PageSize = hobbyCollectionPageList.PageSize, ObjectTypeID = "", ObjectAmount = hobbyCollectionPageList.TotalCount, SortDesc = "Default", SortProperty = "Name", PageAmount = 0, SelectedObjectID = "" }; ViewBag.PageParameter = listPageParameter; return(View("~/Views/ApplicationOrganization/Hobbys/Index.cshtml", hobbyCollections)); }
public virtual async Task <List <TViewModel> > GetBoVMCollectionAsyn(ListPageParameter listPageParameter) { var boCollection = await _entityRepository.GetBoPaginateAsyn(listPageParameter); var boVMCollection = new List <TViewModel>(); // 初始化视图模型起始序号 int count = (int.Parse(listPageParameter.PageIndex) - 1) * int.Parse(listPageParameter.PageSize); foreach (var item in boCollection) { var boVM = new TViewModel(); item.MapToViewModel <TEntity, TViewModel>(boVM); boVM.OrderNumber = (++count).ToString(); boVMCollection.Add(boVM); } return(boVMCollection); }
public async Task <IActionResult> List(string keywork, string listPageParaJson) { var listPagePara = new ListPageParameter(); if (listPageParaJson != null) { listPagePara = Newtonsoft.Json.JsonConvert.DeserializeObject <ListPageParameter>(listPageParaJson); } var anCollection = new List <AnAssociation>(); if (!String.IsNullOrEmpty(keywork)) { Expression <Func <AnAssociation, bool> > condtion = x => x.Name.Contains(keywork) || x.User.Name.Contains(keywork) || x.SchoolAddress.Contains(keywork); anCollection = await _anAssociationExtension.GetAll().Include(x => x.User).Include(x => x.Avatar).Where(condtion).Where(x => x.IsDisable).ToListAsync(); } else { anCollection = await _anAssociationExtension.GetAll().Include(x => x.User).Include(x => x.Avatar).Where(x => x.IsDisable).ToListAsync(); } var activityTermPageList = IQueryableExtensions.ToPaginatedList(anCollection.AsQueryable(), listPagePara.PageIndex, 12); var anAssociationCollections = new List <AnAssociationVM>(); foreach (var activityTermPage in activityTermPageList) { var anNum = await _anAssociationAndUserExtension.GetAll().Where(x => x.AnAssociationId == activityTermPage.ID).Select(x => x.AnAssociation).ToListAsync(); anAssociationCollections.Add(new AnAssociationVM(activityTermPage) { AnAssociationNum = anNum.Count() }); } var pageGroup = PagenateGroupRepository.GetItem(activityTermPageList, 5, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; return(View("~/Views/BusinessView/AnAssociationView/_List.cshtml", anAssociationCollections)); }
public async Task <IActionResult> List(string keywork, string listPageParaJson) { var listPagePara = new ListPageParameter(); if (listPageParaJson != null && listPageParaJson != "") { listPagePara = Newtonsoft.Json.JsonConvert.DeserializeObject <ListPageParameter>(listPageParaJson); } var heVMCollection = new List <HomeExhibitionVM>(); var homeExhibitionCollection = new List <HomeExhibition>(); if (!String.IsNullOrEmpty(keywork)) { Expression <Func <HomeExhibition, bool> > condtion = x => x.Name.Contains(keywork) || x.Activity.Name.Contains(keywork) || x.Activity.User.Name.Contains(keywork); homeExhibitionCollection = await _homeExhibitionRepository.GetAll().Include(x => x.Activity).Include(x => x.Activity.User). Include(x => x.Avatar).Where(condtion).OrderBy(x => x.CreateDateTime).ToListAsync(); } else { homeExhibitionCollection = await _homeExhibitionRepository.GetAll().Include(x => x.Activity).Include(x => x.Activity.User). Include(x => x.Avatar).OrderBy(x => x.CreateDateTime).ToListAsync(); } var homeExhibitionPageList = IQueryableExtensions.ToPaginatedList(homeExhibitionCollection.AsQueryable(), listPagePara.PageIndex, listPagePara.PageSize); foreach (var item in homeExhibitionPageList) { heVMCollection.Add(new HomeExhibitionVM(item)); } var pageGroup = PagenateGroupRepository.GetItem(homeExhibitionPageList, 5, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; return(View("~/Views/GroupOrganization/HomeExhibition/_List.cshtml", heVMCollection)); }
/// <summary> /// 社团活动 /// </summary> /// <param name="keywork"></param> /// <param name="listPageParaJson"></param> /// <returns></returns> public async Task <IActionResult> ActivityList(Guid id, string listPageParaJson) { var listPagePara = new ListPageParameter(); if (listPageParaJson != null) { listPagePara = Newtonsoft.Json.JsonConvert.DeserializeObject <ListPageParameter>(listPageParaJson); } var atVMCollection = new List <ActivityTermVM>(); var activityTermCollection = await _activityTermExtension.GetAll().Include(x => x.User).Include(x => x.AnAssociation).Include(x => x.Avatar).Where(x => x.AnAssociation.ID == id).ToListAsync(); var activityTermPageList = IQueryableExtensions.ToPaginatedList(activityTermCollection.AsQueryable(), listPagePara.PageIndex, 10); var activityCollections = new List <ActivityTermVM>(); foreach (var activityTermPage in activityTermPageList) { activityCollections.Add(new ActivityTermVM(activityTermPage)); } var pageGroup = PagenateGroupRepository.GetItem(activityTermPageList, 5, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; return(View("~/Views/GroupOrganization/AnAssociation/ActivityList.cshtml", activityCollections)); }
/// <summary> /// 根据列表分页器的参数 /// </summary> /// <param name="listPageParameter"></param> /// <param name="boService"></param> /// <param name=""></param> /// <returns></returns> public async Task <List <ArticleVM> > GetboVMCollectionAsyn(ListPageParameter listPageParameter) { var pageIndex = Int16.Parse(listPageParameter.PageIndex); var pageSize = Int16.Parse(listPageParameter.PageSize); var typeID = ""; var keyword = ""; var typeName = "所有文章"; var objectAmount = 0; if (!String.IsNullOrEmpty(listPageParameter.ObjectTypeID)) { typeID = listPageParameter.ObjectTypeID; } if (!String.IsNullOrEmpty(listPageParameter.Keyword)) { keyword = listPageParameter.Keyword; } #region 1.构建与 keyword 相关的查询 lambda 表达式,用于对查询结果的过滤(给 Where 使用) Expression <Func <Article, bool> > predicateExpession = x => x.Name.Contains(keyword) || x.ArticleSecondTitle.Contains(keyword) || x.ArticleContent.Contains(keyword) || x.Description.Contains(keyword); #endregion #region 2.根据属性名称确定排序的属性的 lambda 表达式 var sortPropertyName = listPageParameter.SortProperty; var type = typeof(Article); var target = Expression.Parameter(typeof(object)); var castTarget = Expression.Convert(target, type); var getPropertyValue = Expression.Property(castTarget, sortPropertyName); var sortExpession = Expression.Lambda <Func <Article, object> >(getPropertyValue, target); #endregion PaginatedList <Article> boCollection = new PaginatedList <Article>(); //var roleId = listPageParameter.ObjectTypeID; if (String.IsNullOrEmpty(typeID)) { var tempCollection = await _boRepository.GetAllIncludingAsyn(x => x.CreatorUser); objectAmount = _boRepository.GetAll().Count(); if (listPageParameter.SortDesc == "") { boCollection = tempCollection.OrderByDescending(sortExpession).AsQueryable().ToPaginatedList(pageIndex, pageSize); } else { boCollection = tempCollection.OrderBy(sortExpession).AsQueryable().ToPaginatedList(pageIndex, pageSize); } } else { var tempCollection = await _articleInTopicRepository.GetAllIncludingAsyn(x => x.ArticleTopic, y => y.MasterArticle); var articleTopic = _articleTopicRepository.GetSingle(Guid.Parse(typeID)); var articleCollection = from x in tempCollection where x.ArticleTopic.Id == articleTopic.Id select x.MasterArticle; typeName = articleTopic.Name; objectAmount = tempCollection.Count(); if (listPageParameter.SortDesc == "") { boCollection = articleCollection.AsQueryable().OrderByDescending(sortExpession).ToPaginatedList(pageIndex, pageSize); } else { boCollection = articleCollection.AsQueryable().OrderBy(sortExpession).ToPaginatedList(pageIndex, pageSize); } } var boVMCollection = new List <ArticleVM>(); var counter = 0; foreach (var bo in boCollection) { var boVM = new ArticleVM(); _BoMapToVM(bo, boVM); boVM.OrderNumber = (++counter + (pageIndex - 1) * pageSize).ToString(); boVMCollection.Add(boVM); } listPageParameter.PageAmount = boCollection.TotalPageCount.ToString(); listPageParameter.ObjectAmount = boCollection.TotalCount.ToString(); listPageParameter.PagenateGroup = PagenateGroupRepository.GetItem <Article>(boCollection, 10, pageIndex); listPageParameter.Keyword = keyword; listPageParameter.TypeName = typeName; return(boVMCollection); }
public virtual PaginatedList <T> Paginate(Expression <Func <T, bool> > predicate, ref ListPageParameter pagePara, params Expression <Func <T, object> >[] includeProperties) { var pageIndex = 1; var pageSize = 18; pageIndex = pagePara.PageIndex; pageSize = pagePara.PageSize; #region 根据属性名称确定排序的属性的 lambda 表达式 var sortPropertyName = pagePara.SortProperty; var target = Expression.Parameter(typeof(object)); var type = typeof(T); var castTarget = Expression.Convert(target, type); var propertyArray = sortPropertyName.Split('.'); var getPropertyValue = Expression.Property(castTarget, propertyArray[0]); for (var i = 0; i < propertyArray.Count(); i++) { if (i > 0) { getPropertyValue = Expression.Property(getPropertyValue, propertyArray[i]); } } var sortExpession = Expression.Lambda <Func <T, object> >(getPropertyValue, target); #endregion PaginatedList <T> boCollection; if (pagePara.SortDesc.ToLower() == "default" || pagePara.SortDesc == "") { boCollection = Paginate(pageIndex, pageSize, sortExpession, predicate, includeProperties); } else { boCollection = PaginateDescend(pageIndex, pageSize, sortExpession, predicate, includeProperties); } pagePara.PageAmount = boCollection.TotalPageCount; pagePara.PageIndex = boCollection.PageIndex; pagePara.ObjectAmount = ((predicate == null)? GetAll(): GetAll().Where(predicate)).Count(); return(boCollection); }
public virtual PaginatedList <T> Paginate(Expression <Func <T, bool> > predicate, ref ListPageParameter pagePara) { return(Paginate(predicate, ref pagePara, null)); }
/// <summary> /// 根据列表分页器的参数 /// </summary> /// <param name="listPageParameter"></param> /// <param name="boService"></param> /// <param name=""></param> /// <returns></returns> public async Task <List <ApplicationUserVM> > GetboVMCollectionAsyn(ListPageParameter listPageParameter) { var pageIndex = Int16.Parse(listPageParameter.PageIndex); var pageSize = Int16.Parse(listPageParameter.PageSize); var typeID = ""; var keyword = ""; var typeName = "所有用户"; var objectAmount = _userManager.Users.Count(); if (!String.IsNullOrEmpty(listPageParameter.ObjectTypeID)) { typeID = listPageParameter.ObjectTypeID; } if (!String.IsNullOrEmpty(listPageParameter.Keyword)) { keyword = listPageParameter.Keyword; } #region 1.构建与 keyword 相关的查询 lambda 表达式,用于对查询结果的过滤(给 Where 使用) Expression <Func <ApplicationUser, bool> > predicateExpession = x => x.UserName.Contains(keyword) || x.ChineseFullName.Contains(keyword) || x.FirstName.Contains(keyword) || x.LastName.Contains(keyword) || x.MobileNumber.Contains(keyword); #endregion #region 2.根据属性名称确定排序的属性的 lambda 表达式 var sortPropertyName = listPageParameter.SortProperty; var type = typeof(ApplicationUser); var target = Expression.Parameter(typeof(object)); var castTarget = Expression.Convert(target, type); var getPropertyValue = Expression.Property(castTarget, sortPropertyName); var sortExpession = Expression.Lambda <Func <ApplicationUser, object> >(getPropertyValue, target); #endregion PaginatedList <ApplicationUser> boCollection = new PaginatedList <ApplicationUser>(); var roleId = listPageParameter.ObjectTypeID; if (String.IsNullOrEmpty(roleId)) { var tempCollection = _userManager.Users.Where(predicateExpession); objectAmount = tempCollection.Count(); if (listPageParameter.SortDesc == "") { boCollection = tempCollection.OrderByDescending(sortExpession).AsQueryable().ToPaginatedList(pageIndex, pageSize); } else { boCollection = tempCollection.OrderBy(sortExpession).AsQueryable().ToPaginatedList(pageIndex, pageSize); } } else { var role = await _roleManager.FindByIdAsync(roleId); var tempCollection = await _userManager.GetUsersInRoleAsync(role.Name); typeName = role.Name; objectAmount = tempCollection.Count(); if (listPageParameter.SortDesc == "") { boCollection = tempCollection.AsQueryable().OrderByDescending(sortExpession).ToPaginatedList(pageIndex, pageSize); } else { boCollection = tempCollection.AsQueryable().OrderBy(sortExpession).ToPaginatedList(pageIndex, pageSize); } } var boVMCollection = new List <ApplicationUserVM>(); var counter = 0; foreach (var user in boCollection) { var boVM = GetVMForList(user); boVM.OrderNumber = (++counter + (pageIndex - 1) * pageSize).ToString(); boVMCollection.Add(boVM); } listPageParameter.PageAmount = boCollection.TotalPageCount.ToString(); listPageParameter.ObjectAmount = boCollection.TotalCount.ToString(); listPageParameter.PagenateGroup = PagenateGroupRepository.GetItem <ApplicationUser>(boCollection, 10, pageIndex); listPageParameter.Keyword = keyword; listPageParameter.TypeName = typeName; return(boVMCollection); }
public async Task <IActionResult> Index() { ViewBag.UserLogonInformation = GetUserName(); var listPagePara = new ListPageParameter() { ObjectTypeID = "Shop", // 对应的归属类型ID PageIndex = 1, // 当前页码 PageSize = 8, // 每页数据条数 为"0"时显示所有 PageAmount = 0, // 相关对象列表分页处理分页数量 ObjectAmount = 0, // 相关的对象的总数 Keyword = "", // 当前的关键词 SortProperty = "SortCode", // 排序属性 SortDesc = "default", // 排序方向,缺省值正向 Default,前端用开关方式转为逆向:Descend SelectedObjectID = "", // 当前页面处理中处理的焦点对象 ID IsSearch = false, // 当前是否为检索 }; var typeID = ""; var keyword = ""; if (!String.IsNullOrEmpty(listPagePara.ObjectTypeID)) { typeID = listPagePara.ObjectTypeID; } if (!String.IsNullOrEmpty(listPagePara.Keyword)) { keyword = listPagePara.Keyword; } //var shCollection = await _ShopRepository.GetAllIncludingAsyn(x => x.ShopForUser,x=>x.ShopAvatar, x => x.ShopBanner); var shCollection = await _ShopRepository.PaginateAsyn(listPagePara.PageIndex, listPagePara.PageSize, x => x.SortCode, null, x => x.ShopAvatar, x => x.ShopBanner, x => x.ShopForExecuteIllegal, x => x.ShopForUser); var shVMCollection = new List <SK_WM_ShopVM>(); foreach (var sh in shCollection) { if (sh.ShopForExecuteIllegal.ShopState == (SK_WM_ShopState.ShopState.已开启).ToString()) { var shVM = new SK_WM_ShopVM(sh); var images = _ImageRepository.GetAll().Where(x => x.RelevanceObjectID == sh.ID); foreach (var img in images) { if (img.Description == "shopAvatar") { shVM.ShopAvatarPath = img.UploadPath; } if (img.Description == "shopBanner") { shVM.ShopBannerPath = img.UploadPath; } } shVMCollection.Add(shVM); } } var pageGroup = PagenateGroupRepository.GetItem <SK_WM_Shop>(shCollection, 10, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; ViewBag.GoodsType = "Admin"; return(View("../../Views/Shop/ShopManager/Index", shVMCollection)); }
public async Task <List <CoursesVM> > GetboVMCollectionAsyn(ListPageParameter listPageParameter) { var pageIndex = Int16.Parse(listPageParameter.PageIndex); var pageSize = Int16.Parse(listPageParameter.PageSize); var typeID = ""; var keyword = ""; var typeName = "所有部门人员"; if (!String.IsNullOrEmpty(listPageParameter.ObjectTypeID)) { typeID = listPageParameter.ObjectTypeID; } if (!String.IsNullOrEmpty(listPageParameter.Keyword)) { keyword = listPageParameter.Keyword; } // 根据查询创建的表达式 Expression <Func <Course, bool> > predicateExpession = ExpressionFactoryMethod.GetConditionExpression <Course>(keyword); // 获取排序属性所需要的表达式 var sortExpession = ExpressionFactoryMethod.GetPropertyExpression <Course, object>(listPageParameter.SortProperty); // 获取数据集合 var tempCollection = _boRepository.GetAllIncluding(y => y.CourseAdministrator).Where(predicateExpession); // 排序 if (String.IsNullOrEmpty(listPageParameter.SortProperty)) { tempCollection = tempCollection.OrderBy(sortExpession); } else { tempCollection = tempCollection.OrderByDescending(sortExpession); } // 按照类型获取业务对象数据 if (!String.IsNullOrEmpty(typeID)) { //tempCollection = tempCollection.Where(y => y.GradeAndClass.Id == Guid.Parse(typeID)); //typeName = _gradeRepository.GetSingle(Guid.Parse(typeID)).Name; } var isDescend = String.IsNullOrEmpty(listPageParameter.SortProperty); // 分页 var boCollection = await tempCollection.ToPaginatedListAsync(pageIndex, pageSize); var boVMCollection = new List <CoursesVM>(); var counter = 0; foreach (var bo in boCollection) { var boVM = GetVM(bo.Id); boVM.OrderNumber = (++counter).ToString(); boVMCollection.Add(boVM); } listPageParameter.PageAmount = boCollection.TotalPageCount.ToString(); listPageParameter.ObjectAmount = boCollection.TotalCount.ToString(); listPageParameter.PagenateGroup = PagenateGroupRepository.GetItem <Course>(boCollection, 10, pageIndex); listPageParameter.Keyword = keyword; listPageParameter.TypeName = typeName; return(boVMCollection); }
/// <summary> /// 用户管理入口 /// </summary> /// <returns></returns> public IActionResult Index() { var pageSize = 15; // 这参数未来要根据前端用户的显示器情况处理一下 var pageIndex = 1; var boCollection = _RoleManager.Roles; var boVMCollection = new List <ApplicationRoleVM>(); var counter = 0; foreach (var item in boCollection.OrderBy(x => x.SortCode)) { var boVM = new ApplicationRoleVM(item) { OrderNumber = (++counter).ToString() }; boVMCollection.Add(boVM); } // 提取第一个角色组的用户作为待处理的用户对象 var role = boCollection.OrderBy(x => x.SortCode).FirstOrDefault(); var userCollection = from u in _UserManager.Users where u.Roles.Select(x => x.RoleId).Contains(role.Id) select u; // 提取分页的数据,当前这是第一页,而且没有任何限制条件的 var userCollectionPageList = userCollection.ToPaginatedList(pageIndex, pageSize); var userVMCollection = new List <ApplicationUserVM>(); counter = 0; foreach (var user in userCollectionPageList) { var userVM = new ApplicationUserVM(user) { OrderNumber = (++counter).ToString() }; userVMCollection.Add(userVM); } ViewBag.UserVMCollection = userVMCollection; ViewBag.RoleName = role.DisplayName; ViewBag.RoleId = role.Id; ViewBag.WhatItIs = "Users"; // 用于为 _RoleAndUserLayout 判断调用那个 PartialView 使用的,相关的引用实例在:_RoleAndUserLayout.cshtml 大约 84-94 行 ViewBag.RolesItems = boVMCollection; // 提取当前页面关联的分页器实例 var pageGroup = PagenateGroupRepository.GetItem <ApplicationUser>(userCollectionPageList, 10, pageIndex); ViewBag.PageGroup = pageGroup; var listPageParameter = new ListPageParameter() { PageIndex = userCollectionPageList.PageIndex, Keyword = "", PageSize = userCollectionPageList.PageSize, ObjectTypeId = role.Id, ObjectAmount = userCollectionPageList.TotalCount, SortDesc = "Default", SortProperty = "UserName", PageAmount = 0, SelectedObjectId = "" }; ViewBag.PageParameter = listPageParameter; return(View("../../Views/ApplicationOrganization/ApplicationUser/Index", boVMCollection)); }
public async Task <IActionResult> List(int pageIndex) { var listPagePara = new ListPageParameter() { ObjectTypeID = "Goods", // 对应的归属类型ID PageIndex = pageIndex, // 当前页码 PageSize = 8, // 每页数据条数 为"0"时显示所有 PageAmount = 0, // 相关对象列表分页处理分页数量 ObjectAmount = 0, // 相关的对象的总数 Keyword = "", // 当前的关键词 SortProperty = "SortCode", // 排序属性 SortDesc = "default", // 排序方向,缺省值正向 Default,前端用开关方式转为逆向:Descend SelectedObjectID = "", // 当前页面处理中处理的焦点对象 ID IsSearch = false, // 当前是否为检索 }; var typeID = ""; var keyword = ""; if (!String.IsNullOrEmpty(listPagePara.ObjectTypeID)) { typeID = listPagePara.ObjectTypeID; } if (!String.IsNullOrEmpty(listPagePara.Keyword)) { keyword = listPagePara.Keyword; } var username = User.Identity.Name; var user = await _UserManager.FindByNameAsync(username); if (user == null) { return(View("../../Views/Home/Logon")); } //var pageIndex = 1; //var pageSize = 50; //var boCollection = new List<SK_WM_Goods>(); var boCollection = await _BoRepository.PaginateAsyn(listPagePara.PageIndex, listPagePara.PageSize, x => x.SortCode, null, x => x.SK_WM_GoodsCategory); var shop = await _ShopRepository.FindByAsyn(x => x.BelongToUserID == user.Id); var boVMCollection = new List <SK_WM_GoodsVM>(); var orderNumber = 0; foreach (var bo in boCollection) { //if (bo.BelongToShopID == shop.FirstOrDefault().ID.ToString()) //{ var boVM = new SK_WM_GoodsVM(bo); var images = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == bo.ID); if (images != null) { foreach (var img in images) { if (img.IsForTitle == true) { boVM.AvatarPath = img.UploadPath; } } //} boVM.OrderNumber = (++orderNumber).ToString(); boVMCollection.Add(boVM); } } var pageGroup = PagenateGroupRepository.GetItem <SK_WM_Goods>(boCollection, 10, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; //return View("../../Views/BusinessOrganization/BusinessBG/Index", boVMCollection); //} return(PartialView("../../Views/BusinessOrganization/PublicView/_List", boVMCollection)); }
/// <summary> /// 用于翻页 /// </summary> /// <param name="pageIndex"></param> /// <param name="objectTypeID"></param> /// <returns></returns> public async Task <IActionResult> IllegalShopPageList(int pageIndex, string objectTypeID) { var listPagePara = new ListPageParameter() { ObjectTypeID = objectTypeID, // 对应的归属类型ID PageIndex = pageIndex, // 当前页码 PageSize = 8, // 每页数据条数 为"0"时显示所有 PageAmount = 0, // 相关对象列表分页处理分页数量 ObjectAmount = 0, // 相关的对象的总数 Keyword = "", // 当前的关键词 SortProperty = "SortCode", // 排序属性 SortDesc = "default", // 排序方向,缺省值正向 Default,前端用开关方式转为逆向:Descend SelectedObjectID = "", // 当前页面处理中处理的焦点对象 ID IsSearch = false, // 当前是否为检索 }; var typeID = ""; var keyword = ""; if (!String.IsNullOrEmpty(listPagePara.ObjectTypeID)) { typeID = listPagePara.ObjectTypeID; } if (!String.IsNullOrEmpty(listPagePara.Keyword)) { keyword = listPagePara.Keyword; } var username = User.Identity.Name; var user = await _UserManager.FindByNameAsync(username); if (user == null) { return(View("../../Views/Home/Logon")); } var shCollection = await _ShopRepository.PaginateAsyn(listPagePara.PageIndex, listPagePara.PageSize, x => x.SortCode, null, x => x.ShopAvatar, x => x.ShopBanner, x => x.ShopForExecuteIllegal, x => x.ShopForUser); var shVMCollection = new List <SK_WM_ShopVM>(); foreach (var sh in shCollection) { var shVM = new SK_WM_ShopVM(sh); var images = _ImageRepository.GetAll().Where(x => x.RelevanceObjectID == sh.ID); foreach (var img in images) { if (img.Description == "shopAvatar") { shVM.ShopAvatarPath = img.UploadPath; } if (img.Description == "shopBanner") { shVM.ShopBannerPath = img.UploadPath; } } shVMCollection.Add(shVM); } var pageGroup = PagenateGroupRepository.GetItem <SK_WM_Shop>(shCollection, 10, listPagePara.PageIndex); ViewBag.PageGroup = pageGroup; ViewBag.PageParameter = listPagePara; ViewBag.GoodsType = "Admin"; return(PartialView("../../Views/Shop/ShopManager/_List", shVMCollection)); }