Esempio n. 1
0
        public ActionResult KfMeetingListProvide(KfMeetingDTO kfMeetingDTO)
        {
            if (!base.HasPermission("kfmeeting", PermissionOperate.view))
            {
                if (base.LoginAdmin.KfNumbers.Count == 0)
                {
                    return(null);
                }

                KfNumber kfNumber = (KfNumber)base.LoginAdmin.KfNumbers.ToList()[0];
                kfMeetingDTO.KfNumberId = kfNumber.Id;
            }

            PagedList <KfMeeting> list = _kfMeetingService.GetPageList(PageIndex, PageSize, kfMeetingDTO);

            return(SwitchJsonList <KfMeeting, KfMeetingDTO>(list, list.TotalItemCount));
        }
Esempio n. 2
0
        /// <summary>
        /// 根据搜索条件获取分页数据
        /// </summary>
        public PagedList <KfMeeting> GetPageList(int pageIndex, int pageSize, KfMeetingDTO kfMeetingDTO)
        {
            IQueryable <KfMeeting> query = base.Table;

            if (kfMeetingDTO.MeetingStartDate.HasValue)
            {
                query = query.Where(k => k.CreateDate >= kfMeetingDTO.MeetingStartDate);
            }

            if (kfMeetingDTO.MeetingEndDate.HasValue)
            {
                DateTime dtEndDate = ((DateTime)kfMeetingDTO.MeetingEndDate).AddDays(1);
                query = query.Where(k => k.CreateDate <= dtEndDate);
            }

            if (!string.IsNullOrWhiteSpace(kfMeetingDTO.NickName))
            {
                query = query.Where(k => k.KfNumber.NickName == kfMeetingDTO.NickName);
            }

            if (kfMeetingDTO.KfNumberId != null && kfMeetingDTO.KfNumberId != Guid.Empty)
            {
                query = query.Where(k => k.KfNumberId == kfMeetingDTO.KfNumberId);
            }

            query = query.OrderByDescending("CreateDate");
            int count = query.Count();

            if (pageIndex == 1)
            {
                query = query.Take <KfMeeting>(pageSize);
            }
            else
            {
                query = query.Skip <KfMeeting>((pageIndex - 1) * pageSize).Take <KfMeeting>(pageSize);
            }

            PagedList <KfMeeting> pageItems = new PagedList <KfMeeting>(query.ToList(), pageIndex, pageSize);

            pageItems.TotalItemCount = count;
            return(pageItems);
        }