コード例 #1
0
        /// <summary>
        /// 根据搜索条件获取分页数据
        /// </summary>
        public PagedList <KfMeetingMessage> GetPageList(int pageIndex, int pageSize, KfMeetingMessageDTO kfMeetingMessageDTO)
        {
            IQueryable <KfMeetingMessage> query = base.Table;

            if (kfMeetingMessageDTO.StartDate.HasValue)
            {
                query = query.Where(k => k.CreateDate >= kfMeetingMessageDTO.StartDate);
            }

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

            if (!string.IsNullOrWhiteSpace(kfMeetingMessageDTO.MessageContent))
            {
                query = query.Where(k => k.MessageContent.Contains(kfMeetingMessageDTO.MessageContent));
            }

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

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

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

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

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

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

            pageItems.TotalItemCount = count;
            return(pageItems);
        }
コード例 #2
0
        public ActionResult KfMeetingMessageListProvide(KfMeetingMessageDTO kfMeetingMessageDTO)
        {
            if (!base.HasPermission("kfmeetingmessage", PermissionOperate.view))
            {
                if (base.LoginAdmin.KfNumbers.Count == 0)
                {
                    return(null);
                }

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

            if (kfMeetingMessageDTO.MpUserId != null && kfMeetingMessageDTO.MpUserId != Guid.Empty)
            {
                KfNumber kfNumber = (KfNumber)base.LoginAdmin.KfNumbers.ToList()[0];
                kfMeetingMessageDTO.KfNumberId = kfNumber.Id;
            }

            PagedList <KfMeetingMessage> list  = _kfMeetingMessageService.GetPageList(PageIndex, PageSize, kfMeetingMessageDTO);
            IList <KfMeetingMessage>     list2 = list.OrderBy(m => m.CreateDate).ToList();

            return(SwitchJsonList <KfMeetingMessage, KfMeetingMessageDTO>(list2, list.TotalItemCount));
        }