public async Task <IActionResult> Index() { int getCount = 4;//获取条目数 var datas = await this._anAssociationExtension.GetAll().Include(x => x.Avatar).ToListAsync(); var anAssociationRecommend = new List <AnAssociationVM>(); foreach (var item in datas) { var anVM = new AnAssociationVM(item); anVM.AnAssociationNum = (await _anAssociationAndUserExtension.GetAll().Where(x => x.AnAssociation.ID == item.ID).ToListAsync()).Count; anAssociationRecommend.Add(anVM); } var listAns = anAssociationRecommend.OrderByDescending(s => s.CreateDataTime).OrderByDescending(s => s.AnAssociationNum).Take(getCount).ToList(); ViewBag.ListAns = listAns; var userCount = 9;//默认获取9个人 var users = await _userExtension.GetAll().Include(s => s.Avatar).ToListAsync(); userCount = userCount > users.Count ? users.Count : userCount; //判断是否够9个人 var ran = new Random(); var index = 0; var interests = new List <ApplicationUser>();//用于存储随机相同兴趣的人 for (int i = 0; i < userCount; i++) { index = ran.Next(0, users.Count()); interests.Add(users[index]); users.RemoveAt(index); } ViewBag.InterestUsers = interests; return(View("~/Views/BusinessView/AnAssociationView/Index.cshtml")); }
public async Task <IActionResult> Detailed(Guid id) { var entity = await _anAssociationRepository.GetSingleAsyn(id, x => x.User, x => x.User.Avatar, x => x.Avatar); //获取社团用户 var anAdminUsers = await _anAssociationAndUserExtension.GetAll().Include(x => x.User).Where(x => x.AnAssociationId == entity.ID).ToListAsync(); var AnAdmins = new List <ApplicationUser>(); //获取社团管理者 foreach (var item in anAdminUsers) { if (item.AnJurisdictionManager == AnJurisdiction.Admin) { AnAdmins.Add(await _userExtension.GetAll().Include(x => x.Avatar).Where(x => x.Id == item.User.Id).FirstOrDefaultAsync()); } } ViewBag.AnAdmins = AnAdmins; var entityVM = new AnAssociationVM(entity); var acNum = await _activityTermExtension.GetAll().Include(x => x.AnAssociation).Where(x => x.AnAssociation.ID == id).ToListAsync(); entityVM.acNum = acNum.Count; entityVM.userNum = anAdminUsers.Count(); return(View("~/Views/BusinessView/AnAssociationView/_Detailed.cshtml", entityVM)); }
/// <summary> /// 增或者编辑人员数据的处理 /// </summary> /// <param name="id">活动对象的ID属性值,如果这个值在系统中找不到具体的对象,则看成是新建对象。</param> /// <returns></returns> public async Task <IActionResult> CreateOrEdit(Guid id) { var an = await _anAssociationRepository.GetSingleAsyn(id, x => x.User); if (an == null) { an = new AnAssociation(); } var anVM = new AnAssociationVM(an); return(View("~/Views/GroupOrganization/AnAssociation/CreateOrEdit.cshtml", anVM)); }
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)); }
/// <summary> /// 根据ID查询对应的活动信息, /// </summary> /// <param name="id"></param> /// <returns></returns> public async Task <IActionResult> Detail(Guid id) { var anAssociation = await _anAssociationRepository.GetSingleAsyn(id, x => x.User); var anVM = new AnAssociationVM(anAssociation); //获取图片 anVM.Images = await _businessImageRepository.GetAll().Where(x => x.RelevanceObjectID == id).ToListAsync(); //获取社团管理员的数量和用户的数量 var anUser = _anAssociationAndUserExtension.GetAll().OrderByDescending(x => x.AnJurisdictionManager).Include(x => x.User).Include(x => x.User.Avatar).Where(x => x.AnAssociationId == id); ViewBag.AnManagerNumber = (await anUser.Where(x => x.AnJurisdictionManager == AnJurisdiction.Founder || x.AnJurisdictionManager == AnJurisdiction.Admin).ToListAsync()).Count(); ViewBag.UserNumber = anUser.Count(); anVM.Members = anUser.ToList(); //获取社团活动 var activity = await _activityTermExtension.GetAll().Include(x => x.AnAssociation).Where(x => x.AnAssociation.ID == id).ToListAsync(); //anVM.Activitys = activity; ViewBag.ActivityNumber = activity.Count(); return(PartialView("~/Views/GroupOrganization/AnAssociation/_Detail.cshtml", anVM)); }
public async Task <IActionResult> SingAndExchange(int index) { var datas = await _anassociationExtension.GetAll().Include(x => x.Avatar).ToListAsync(); datas = datas.Skip(index * pageSize).Take(pageSize).ToList(); var flag = false; var anAssociations = new List <AnAssociationVM>(); if (datas.Count() == 0) { datas = (await _anassociationExtension.GetAllAsyn()).Take(pageSize).ToList(); flag = true; } foreach (var item in datas) { var anVm = new AnAssociationVM(item) { AnAssociationNum = (await _anassociationAndUserExtension.GetAll().Where(x => x.AnAssociationId == item.ID).ToListAsync()).Count }; anAssociations.Add(anVm); } return(Json(new { Items = anAssociations, ifLastIndex = flag })); }
/// <summary> /// 用于存储或更新活动 /// </summary> /// <param name="anVM"></param> /// <returns></returns> public async Task <IActionResult> Sava([Bind("ID,UserId,Name,SchoolAddress,CreateDataTime,MaxNumber,Description")] AnAssociationVM anVM) { var an = await _anAssociationRepository.GetSingleAsyn(anVM.ID); if (an == null) { an = new AnAssociation(); var userclaims = User.Claims.FirstOrDefault(); var userData = await _userManager.FindByIdAsync(userclaims.Value.ToString()); an.User = userData; var anFounder = new AnAssociationAndUser() { User = userData, AnAssociationId = anVM.ID, AnJurisdictionManager = AnJurisdiction.Founder }; an.IsDisable = true; _anAssociationAndUserExtension.Add(anFounder); } anVM.MapToAn(an); var savaStatus = await _anAssociationRepository.AddOrEditAndSaveAsyn(an); if (an == null) { _anAssociationAndUserExtension.Save(); } if (savaStatus) { return(RedirectToAction("Index")); } else { ModelState.AddModelError("", "数据保存出现异常,无法创建活动。"); return(View("~/Views/GroupOrganization/AnAssociation/CreateOrEdit.cshtml", anVM)); } }