// 套程式-線上報名 public ActionResult List(int?page) { page = page ?? 1; ApplyListViewModel model = new ApplyListViewModel(); using (var applymodule = new ApplyFrontModule()) { model = applymodule.GetList((int)page); } return(View(model)); }
/// <summary> /// [前台] 列表分頁處理 /// </summary> /// <param name="data"></param> /// <param name="page"></param> /// <returns></returns> public ApplyListViewModel ListPagination(ref ApplyListViewModel model, int page, int pageSize) { int startRow = 0; PaginationResult paginationResult = null; if (pageSize > 0) { //分頁 startRow = (page - 1) * pageSize; paginationResult = new PaginationResult() { CurrentPage = page, DataCount = model.ListData.Count(), PageSize = pageSize, FirstPage = 1, LastPage = model.ListData.Count() == 0 ? 1 : Convert.ToInt32(Math.Ceiling((decimal)model.ListData.Count() / pageSize)) }; } model.ListData = model.ListData.Skip(startRow).Take(pageSize).ToList(); model.Pagination = paginationResult; return(model); }
public ApplyListViewModel GetList(int page, bool getContent = false) { ApplyListViewModel model = new ApplyListViewModel(); var data = DB.OLACT .AsEnumerable() .OrderByDescending(o => o.PUB_DT_STR).ThenByDescending(a => a.SQ) .Select(s => new ApplyListViewDataModel() { ID = s.ID, ActivityDateTimeDescription = s.ACT_DATE_DESC, ApplyDateRange = string.Concat(s.APPLY_DATE_BEGIN, "~", s.APPLY_DATE_END), Sort = s.SQ, Title = s.ACTITLE, Remark = s.ACT_CONTENT }) .ToList(); using (var actModule = new ActivityModule()) { foreach (var d in data) { d.GroupApplyLimit = DB.OLACTGROUP.Where(o => o.MAP_ACT_ID == d.ID).Sum(o => o.TEAM_APPLY_LIMIT); d.Registered = DB.APPLY.Where(g => g.MAP_ACT_ID == d.ID).Count(); d.ActivityStatus = actModule.ActivityStatusCheckByID((int)d.ID); } } model.ListData = data; foreach (var d in data) { PublicMethodRepository.HtmlDecode(d); } if (!getContent) { model = this.ListPagination(ref model, page, Convert.ToInt32(PublicMethodRepository.GetConfigAppSetting("DefaultPageSize"))); } return(model); }