public GetPageDataOutput GetPageData(GetPageDataInput input)
        {
            var pageData = _pageDataManager.GetPageDataIncludeAllProperty(input.PageName, input.PageDataName);

            return(new GetPageDataOutput()
            {
                PageData = _objectMapper.Map <PageDataDto>(pageData)
            });
        }
        public ActionResult <GetPageDataOutput> GetPageData([FromBody] GetPageDataInput input)
        {
            IEnumerable <string> permissionNames = _claimManager.GetPermissionsForClaims(User.Claims);
            var permissions = _permissionManager.GetPermissionsForCache().Where(e => permissionNames.Contains(e.Name));

            if (_pageManager.IsCanQueryPost(input.PageName, permissions) ||
                _checkPermissionService.IsAllowAccess(ApiScopeProvider.Page, true, permissions))
            {
                input.IsCheckCreator = false;
            }
            else
            {
                input.IsCheckCreator = true;
            }

            return(_pageDataQueryAppService.GetPageData(input));
        }
예제 #3
0
        /// <summary>
        /// 获取文章
        /// </summary>
        /// <param name="input"></param>
        /// <returns>如果不存在文章,需返回 null</returns>
        public GetPageDataOutput GetPageData(GetPageDataInput input)
        {
            var pageData = _pageDataManager.PostRepository.FirstOrDefault(e => e.Page.Name == input.PageName && e.Name == input.PageDataName);

            pageData.ToClick();

            Expression <Func <ContentComponentData, object> >[] propertySelectors =
            {
                e => e.SingleDatas
            };
            var componentDatas = _componentDataRepository.GetAllIncluding(propertySelectors).Where(e => e.PageDataId == pageData.Id).ToList();

            return(new GetPageDataOutput()
            {
                PageData = _objectMapper.Map <PageDataDto>(pageData),
                ContentComponentDatas = _objectMapper.Map <List <ComponentDataDto> >(componentDatas)
            });
        }
        public ActionResult <GetPageDataOutput> GetPageData([FromBody] GetPageDataInput input)
        {
            int pageId;

            if (int.TryParse(input.PageName, out pageId))
            {
                string pageName = _pageManager.GetPageNameCache(pageId);

                if (!string.IsNullOrWhiteSpace(pageName))
                {
                    input.PageName = pageName;
                }
            }

            if (!IsCanAccess(input.PageName))
            {
                throw new Abp.Authorization.AbpAuthorizationException("未授权操作");
            }

            return(_pageDataQueryAppService.GetPageData(input));
        }
예제 #5
0
        /// <summary>
        /// 获取文章
        /// </summary>
        /// <param name="input"></param>
        /// <returns>如果不存在文章,需返回 null</returns>
        public GetPageDataOutput GetPageData(GetPageDataInput input)
        {
            var pageData = _pageDataManager.PostRepository.FirstOrDefault(e => e.PageName == input.PageName && e.Name == input.PageDataName);

            if (input.IsCheckCreator == true && _abpSession.UserId != pageData.Creator.EditorId)
            {
                throw new AbpAuthorizationException("未授权操作");
            }

            pageData.ToClick();

            Expression <Func <ContentComponentData, object> >[] propertySelectors =
            {
                e => e.SingleDatas
            };
            var componentDatas = _componentDataRepository.GetAllIncluding(propertySelectors).Where(e => e.PageDataId == pageData.Id).ToList();

            return(new GetPageDataOutput()
            {
                PageData = _objectMapper.Map <PageDataDto>(pageData),
                ContentComponentDatas = _objectMapper.Map <List <ComponentDataDto> >(componentDatas)
            });
        }