示例#1
0
        public GetRefListsRequest(
            long?authorId, string authorUserName, long?tagUseId, string tagName,
            string titleSearch,
            DateTime?fromDate,
            PublishingStatusConditionKind publishingStatusCondition,
            int pageIndex, int pageSize,
            RefListSortKind sort
            )
        {
            AuthorId       = authorId;
            AuthorUserName = authorUserName;

            TagUseId = tagUseId;
            TagName  = tagName;

            TitleSearch = titleSearch;

            FromDate = fromDate;

            PublishingStatusCondition = publishingStatusCondition;

            PageIndex = pageIndex;
            PageSize  = pageSize;

            Sort = sort;
        }
示例#2
0
        public async Task <ActionResult> NarrowManage(
            string titleSearch = "", string tag = null,
            PublishingStatusConditionKind publishingStatusCondition = PublishingStatusConditionKind.All,
            int pageIndex        = 1,
            RefListSortKind sort = RefListSortKind.UpdatedDateDescending
            )
        {
            var user = GetUser();
            var vm   = await PrepareManagePageViewModel(
                user.Id, null, titleSearch, tag, publishingStatusCondition,
                pageIndex - 1, WebConsts.RefListsPageSize,
                sort
                );

            return(JsonNet(vm, JsonRequestBehavior.AllowGet));
        }
示例#3
0
        private async Task <ManagePageViewModel> PrepareManagePageViewModel(
            long?authorId, string userName, string titleSearch, string tag, PublishingStatusConditionKind publishingStatusCondition,
            int pageIndex, int pageSize, RefListSortKind sort
            )
        {
            var req = new GetRefListsRequest(
                authorId, userName, null, tag, titleSearch, null, publishingStatusCondition, pageIndex, pageSize, sort
                );

            var resp = await _refListHandler.GetRefListsAsync(req);

            var vm = Mapper.Map <ManagePageViewModel>(resp);

            ++vm.PageIndex;
            vm.TitleSearch = titleSearch;
            vm.TagUse      = tag;

            return(vm);
        }
示例#4
0
        private IQueryable <RefList> AppendQueryForPublishingStatus
            (IQueryable <RefList> query,
            PublishingStatusConditionKind publishingStatusCondition
            )
        {
            switch (publishingStatusCondition)
            {
            case PublishingStatusConditionKind.PublishOnly:
                query = query.Where(l => l.PublishingStatus == PublishingStatusKind.Publish);
                break;

            case PublishingStatusConditionKind.PrivateOnly:
                query = query.Where(l => l.PublishingStatus == PublishingStatusKind.Private);
                break;

            case PublishingStatusConditionKind.DraftOnly:
                query = query.Where(l => l.PublishingStatus == PublishingStatusKind.Draft);
                break;
            }
            return(query);
        }