From 37bff78ced4020bf5ed64a15af4d518578ba2fa1 Mon Sep 17 00:00:00 2001 From: Ahmet Date: Tue, 29 Dec 2020 14:41:21 +0300 Subject: [PATCH] page application services are seperated to admin and public --- .../CmsKit/Admin}/Pages/CheckUrlInputDto.cs | 3 +- .../CmsKit/Admin}/Pages/CreatePageInputDto.cs | 3 +- .../Pages/CreatePageWithContentInputDto.cs | 4 +- .../Admin/Pages/IPageAdminAppService.cs} | 7 +--- .../Volo/CmsKit/Admin}/Pages/PageDto.cs | 2 +- .../CmsKit/Admin}/Pages/PageWithContentDto.cs | 2 +- .../Admin}/Pages/UpdatePageContentInputDto.cs | 4 +- .../CmsKit/Admin}/Pages/UpdatePageInputDto.cs | 3 +- ...CmsKitAdminApplicationAutoMapperProfile.cs | 6 +-- .../Admin/Pages/PageAdminAppService.cs} | 14 ++----- .../CmsKit/Admin/Page/PageAdminController.cs} | 37 ++++++++----------- ...msKitCommonApplicationAutoMapperProfile.cs | 2 - .../CmsKit/Public/Pages/IPageAppService.cs | 10 +++++ .../Volo/CmsKit/Public/Pages/PageDto.cs | 14 +++++++ .../CmsKit/Public/Pages/PageAppService.cs | 22 +++++++++++ .../PublicApplicationAutoMapperProfile.cs | 4 ++ .../Public/Pages/PagesPublicController.cs | 26 +++++++++++++ .../Pages/CmsKit/Pages/Index.cshtml | 5 +-- .../Pages/CmsKit/Pages/Index.cshtml.cs | 5 ++- .../Shared/Components/Pages/Default.cshtml | 2 +- .../Pages/DefaultPageViewComponent.cs | 4 +- 21 files changed, 115 insertions(+), 64 deletions(-) rename modules/cms-kit/src/{Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit => Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin}/Pages/CheckUrlInputDto.cs (73%) rename modules/cms-kit/src/{Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit => Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin}/Pages/CreatePageInputDto.cs (82%) rename modules/cms-kit/src/{Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit => Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin}/Pages/CreatePageWithContentInputDto.cs (80%) rename modules/cms-kit/src/{Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/IPageAppService.cs => Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/IPageAdminAppService.cs} (77%) rename modules/cms-kit/src/{Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit => Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin}/Pages/PageDto.cs (87%) rename modules/cms-kit/src/{Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit => Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin}/Pages/PageWithContentDto.cs (90%) rename modules/cms-kit/src/{Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit => Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin}/Pages/UpdatePageContentInputDto.cs (66%) rename modules/cms-kit/src/{Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit => Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin}/Pages/UpdatePageInputDto.cs (82%) rename modules/cms-kit/src/{Volo.CmsKit.Common.Application/Volo/CmsKit/Pages/PageAppService.cs => Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs} (88%) rename modules/cms-kit/src/{Volo.CmsKit.Common.HttpApi/Volo/CmsKit/Controllers/Pages/PageController.cs => Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Page/PageAdminController.cs} (57%) create mode 100644 modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Public/Pages/IPageAppService.cs create mode 100644 modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Public/Pages/PageDto.cs create mode 100644 modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Public/Pages/PageAppService.cs create mode 100644 modules/cms-kit/src/Volo.CmsKit.Public.HttpApi/Volo/CmsKit/Public/Pages/PagesPublicController.cs rename modules/cms-kit/src/{Volo.CmsKit.Common.Web => Volo.CmsKit.Public.Web}/Pages/CmsKit/Pages/Index.cshtml (71%) rename modules/cms-kit/src/{Volo.CmsKit.Common.Web => Volo.CmsKit.Public.Web}/Pages/CmsKit/Pages/Index.cshtml.cs (83%) rename modules/cms-kit/src/{Volo.CmsKit.Common.Web => Volo.CmsKit.Public.Web}/Pages/CmsKit/Shared/Components/Pages/Default.cshtml (86%) rename modules/cms-kit/src/{Volo.CmsKit.Common.Web => Volo.CmsKit.Public.Web}/Pages/CmsKit/Shared/Components/Pages/DefaultPageViewComponent.cs (90%) diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/CheckUrlInputDto.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CheckUrlInputDto.cs similarity index 73% rename from modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/CheckUrlInputDto.cs rename to modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CheckUrlInputDto.cs index e46dca2353..abb1d81c12 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/CheckUrlInputDto.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CheckUrlInputDto.cs @@ -1,7 +1,6 @@ using System.ComponentModel.DataAnnotations; -using Volo.Abp.Validation; -namespace Volo.CmsKit.Pages +namespace Volo.CmsKit.Admin.Pages { public class CheckUrlInputDto { diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/CreatePageInputDto.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageInputDto.cs similarity index 82% rename from modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/CreatePageInputDto.cs rename to modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageInputDto.cs index b6ce4990f9..50c7a68f32 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/CreatePageInputDto.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageInputDto.cs @@ -1,7 +1,6 @@ using System.ComponentModel.DataAnnotations; -using Volo.Abp.Validation; -namespace Volo.CmsKit.Pages +namespace Volo.CmsKit.Admin.Pages { public class CreatePageInputDto { diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/CreatePageWithContentInputDto.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageWithContentInputDto.cs similarity index 80% rename from modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/CreatePageWithContentInputDto.cs rename to modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageWithContentInputDto.cs index d9905b83a5..bff09b595b 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/CreatePageWithContentInputDto.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/CreatePageWithContentInputDto.cs @@ -1,8 +1,6 @@ using System.ComponentModel.DataAnnotations; -using Volo.Abp.Validation; -using Volo.CmsKit.Contents; -namespace Volo.CmsKit.Pages +namespace Volo.CmsKit.Admin.Pages { public class CreatePageWithContentInputDto { diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/IPageAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/IPageAdminAppService.cs similarity index 77% rename from modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/IPageAppService.cs rename to modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/IPageAdminAppService.cs index ef9c8082df..048d2d89c7 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/IPageAppService.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/IPageAdminAppService.cs @@ -1,14 +1,11 @@ using System; using System.Threading.Tasks; -using JetBrains.Annotations; -namespace Volo.CmsKit.Pages +namespace Volo.CmsKit.Admin.Pages { - public interface IPageAppService + public interface IPageAdminAppService { Task GetAsync(Guid id); - - Task GetByUrlAsync([NotNull] string url); Task CreatePageAsync(CreatePageInputDto input); diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/PageDto.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/PageDto.cs similarity index 87% rename from modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/PageDto.cs rename to modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/PageDto.cs index e2a10d39b5..e8750ce07b 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/PageDto.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/PageDto.cs @@ -1,7 +1,7 @@ using System; using Volo.Abp.Application.Dtos; -namespace Volo.CmsKit.Pages +namespace Volo.CmsKit.Admin.Pages { public class PageDto : EntityDto { diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/PageWithContentDto.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/PageWithContentDto.cs similarity index 90% rename from modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/PageWithContentDto.cs rename to modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/PageWithContentDto.cs index b9ed14ab0d..2d592c5bba 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/PageWithContentDto.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/PageWithContentDto.cs @@ -2,7 +2,7 @@ using Volo.Abp.Application.Dtos; using Volo.CmsKit.Contents; -namespace Volo.CmsKit.Pages +namespace Volo.CmsKit.Admin.Pages { public class PageWithContentDto : EntityDto { diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/UpdatePageContentInputDto.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageContentInputDto.cs similarity index 66% rename from modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/UpdatePageContentInputDto.cs rename to modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageContentInputDto.cs index 7a1a89b955..f6d46167c8 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/UpdatePageContentInputDto.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageContentInputDto.cs @@ -1,8 +1,6 @@ using System.ComponentModel.DataAnnotations; -using Volo.Abp.Validation; -using Volo.CmsKit.Contents; -namespace Volo.CmsKit.Pages +namespace Volo.CmsKit.Admin.Pages { public class UpdatePageContentInputDto { diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/UpdatePageInputDto.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageInputDto.cs similarity index 82% rename from modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/UpdatePageInputDto.cs rename to modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageInputDto.cs index 7180d296a3..eb831fee45 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo/CmsKit/Pages/UpdatePageInputDto.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo/CmsKit/Admin/Pages/UpdatePageInputDto.cs @@ -1,7 +1,6 @@ using System.ComponentModel.DataAnnotations; -using Volo.Abp.Validation; -namespace Volo.CmsKit.Pages +namespace Volo.CmsKit.Admin.Pages { public class UpdatePageInputDto { diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/CmsKitAdminApplicationAutoMapperProfile.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/CmsKitAdminApplicationAutoMapperProfile.cs index 59c8058590..e1062daa92 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/CmsKitAdminApplicationAutoMapperProfile.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/CmsKitAdminApplicationAutoMapperProfile.cs @@ -1,4 +1,6 @@ using AutoMapper; +using Volo.CmsKit.Admin.Pages; +using Volo.CmsKit.Pages; namespace Volo.CmsKit.Admin { @@ -6,9 +8,7 @@ namespace Volo.CmsKit.Admin { public CmsKitAdminApplicationAutoMapperProfile() { - /* You can configure your AutoMapper mapping configuration here. - * Alternatively, you can split your mapping configurations - * into multiple profile classes for a better organization. */ + CreateMap(); } } } diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo/CmsKit/Pages/PageAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs similarity index 88% rename from modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo/CmsKit/Pages/PageAppService.cs rename to modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs index cc7c177873..6778dd7916 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo/CmsKit/Pages/PageAppService.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo/CmsKit/Admin/Pages/PageAdminAppService.cs @@ -3,15 +3,16 @@ using System.Threading; using System.Threading.Tasks; using Volo.Abp; using Volo.CmsKit.Contents; +using Volo.CmsKit.Pages; -namespace Volo.CmsKit.Pages +namespace Volo.CmsKit.Admin.Pages { - public class PageAppService : CmsKitAppServiceBase, IPageAppService + public class PageAdminAppService : CmsKitAdminAppServiceBase, IPageAdminAppService { protected readonly IPageRepository PageRepository; protected readonly IContentRepository ContentRepository; - public PageAppService(IPageRepository pageRepository, IContentRepository contentRepository) + public PageAdminAppService(IPageRepository pageRepository, IContentRepository contentRepository) { PageRepository = pageRepository; ContentRepository = contentRepository; @@ -24,13 +25,6 @@ namespace Volo.CmsKit.Pages return ObjectMapper.Map(page); } - public virtual async Task GetByUrlAsync(string url) - { - var page = await PageRepository.GetByUrlAsync(url); - - return ObjectMapper.Map(page); - } - public virtual async Task CreatePageAsync(CreatePageInputDto input) { var page = await CreatePageAsync(input.Title, input.Url, input.Description); diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi/Volo/CmsKit/Controllers/Pages/PageController.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Page/PageAdminController.cs similarity index 57% rename from modules/cms-kit/src/Volo.CmsKit.Common.HttpApi/Volo/CmsKit/Controllers/Pages/PageController.cs rename to modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Page/PageAdminController.cs index d16dc97ef1..4e37848e37 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi/Volo/CmsKit/Controllers/Pages/PageController.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo/CmsKit/Admin/Page/PageAdminController.cs @@ -2,76 +2,69 @@ using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using Volo.Abp; -using Volo.CmsKit.Pages; +using Volo.CmsKit.Admin.Pages; -namespace Volo.CmsKit.Controllers.Pages +namespace Volo.CmsKit.Admin.Page { [RemoteService(Name = CmsKitCommonRemoteServiceConsts.RemoteServiceName)] [Area("cms-kit")] - [Route("api/cms-kit/pages")] - public class PageController : CmsKitControllerBase, IPageAppService + [Route("api/cms-kit-admin/pages")] + public class PageAdminController : CmsKitAdminController, IPageAdminAppService { - protected readonly IPageAppService PageAppService; + protected readonly IPageAdminAppService PageAdminAppService; - public PageController(IPageAppService pageAppService) + public PageAdminController(IPageAdminAppService pageAdminAppService) { - PageAppService = pageAppService; + PageAdminAppService = pageAdminAppService; } [HttpGet] [Route("{id}")] public virtual Task GetAsync(Guid id) { - return PageAppService.GetAsync(id); + return PageAdminAppService.GetAsync(id); } - - [HttpGet] - [Route("url/{url}")] - public Task GetByUrlAsync(string url) - { - return PageAppService.GetByUrlAsync(url); - } - + [HttpPost] [Route("create")] public virtual Task CreatePageAsync(CreatePageInputDto input) { - return PageAppService.CreatePageAsync(input); + return PageAdminAppService.CreatePageAsync(input); } [HttpPost] [Route("create-with-content")] public virtual Task CreatePageWithContentAsync(CreatePageWithContentInputDto input) { - return PageAppService.CreatePageWithContentAsync(input); + return PageAdminAppService.CreatePageWithContentAsync(input); } [HttpPut] [Route("{id}")] public virtual Task UpdatePageAsync(Guid id, UpdatePageInputDto input) { - return PageAppService.UpdatePageAsync(id, input); + return PageAdminAppService.UpdatePageAsync(id, input); } [HttpPost] [Route("does-url-exist")] public virtual Task DoesUrlExistAsync(CheckUrlInputDto input) { - return PageAppService.DoesUrlExistAsync(input); + return PageAdminAppService.DoesUrlExistAsync(input); } [HttpPut] [Route("update-content/{id}")] public virtual Task UpdatePageContentAsync(Guid id, UpdatePageContentInputDto input) { - return PageAppService.UpdatePageContentAsync(id, input); + return PageAdminAppService.UpdatePageContentAsync(id, input); } [HttpDelete] [Route("{id}")] public virtual Task DeleteAsync(Guid id) { - return PageAppService.DeleteAsync(id); + return PageAdminAppService.DeleteAsync(id); } } } \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo/CmsKit/CmsKitCommonApplicationAutoMapperProfile.cs b/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo/CmsKit/CmsKitCommonApplicationAutoMapperProfile.cs index b0c6388c30..67242c71de 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo/CmsKit/CmsKitCommonApplicationAutoMapperProfile.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo/CmsKit/CmsKitCommonApplicationAutoMapperProfile.cs @@ -12,8 +12,6 @@ namespace Volo.CmsKit CreateMap(); CreateMap(); - - CreateMap(); } } } diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Public/Pages/IPageAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Public/Pages/IPageAppService.cs new file mode 100644 index 0000000000..d8ea8f1751 --- /dev/null +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Public/Pages/IPageAppService.cs @@ -0,0 +1,10 @@ +using System.Threading.Tasks; +using JetBrains.Annotations; + +namespace Volo.CmsKit.Public.Pages +{ + public interface IPageAppService + { + Task GetByUrlAsync([NotNull] string url); + } +} \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Public/Pages/PageDto.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Public/Pages/PageDto.cs new file mode 100644 index 0000000000..49798d5202 --- /dev/null +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo/CmsKit/Public/Pages/PageDto.cs @@ -0,0 +1,14 @@ +using System; +using Volo.Abp.Application.Dtos; + +namespace Volo.CmsKit.Public.Pages +{ + public class PageDto : EntityDto + { + public string Title { get; set; } + + public string Url { get; set; } + + public string Description { get; set; } + } +} \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Public/Pages/PageAppService.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Public/Pages/PageAppService.cs new file mode 100644 index 0000000000..38f4406cab --- /dev/null +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Public/Pages/PageAppService.cs @@ -0,0 +1,22 @@ +using System.Threading.Tasks; +using Volo.CmsKit.Pages; + +namespace Volo.CmsKit.Public.Pages +{ + public class PageAppService : CmsKitPublicAppServiceBase, IPageAppService + { + protected readonly IPageRepository PageRepository; + + public PageAppService(IPageRepository pageRepository) + { + PageRepository = pageRepository; + } + + public virtual async Task GetByUrlAsync(string url) + { + var page = await PageRepository.GetByUrlAsync(url); + + return ObjectMapper.Map(page); + } + } +} \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Public/PublicApplicationAutoMapperProfile.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Public/PublicApplicationAutoMapperProfile.cs index 3ac2d1949b..6da6723829 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Public/PublicApplicationAutoMapperProfile.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo/CmsKit/Public/PublicApplicationAutoMapperProfile.cs @@ -1,7 +1,9 @@ using AutoMapper; using Volo.Abp.AutoMapper; using Volo.CmsKit.Comments; +using Volo.CmsKit.Pages; using Volo.CmsKit.Public.Comments; +using Volo.CmsKit.Public.Pages; using Volo.CmsKit.Public.Ratings; using Volo.CmsKit.Ratings; using Volo.CmsKit.Users; @@ -22,6 +24,8 @@ namespace Volo.CmsKit.Public .Ignore(x=> x.Author); CreateMap(); + + CreateMap(); } } } diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi/Volo/CmsKit/Public/Pages/PagesPublicController.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi/Volo/CmsKit/Public/Pages/PagesPublicController.cs new file mode 100644 index 0000000000..45dda25ab5 --- /dev/null +++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi/Volo/CmsKit/Public/Pages/PagesPublicController.cs @@ -0,0 +1,26 @@ +using System.Threading.Tasks; +using Microsoft.AspNetCore.Mvc; +using Volo.Abp; + +namespace Volo.CmsKit.Public.Pages +{ + [RemoteService(Name = CmsKitPublicRemoteServiceConsts.RemoteServiceName)] + [Area("cms-kit")] + [Route("api/cms-kit-public/comments")] + public class PagesPublicController + { + protected readonly IPageAppService PageAppService; + + public PagesPublicController(IPageAppService pageAppService) + { + PageAppService = pageAppService; + } + + [HttpGet] + [Route("url/{url}")] + public Task GetByUrlAsync(string url) + { + return PageAppService.GetByUrlAsync(url); + } + } +} \ No newline at end of file diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Pages/Index.cshtml b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Pages/Index.cshtml similarity index 71% rename from modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Pages/Index.cshtml rename to modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Pages/Index.cshtml index 486b1c78c1..47e73b8b19 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Pages/Index.cshtml +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Pages/Index.cshtml @@ -1,9 +1,8 @@ @page "{pageUrl}" @using Microsoft.AspNetCore.Mvc.Localization @using Volo.CmsKit.Localization -@using Volo.CmsKit.Web.Pages.CmsKit.Pages -@using Volo.CmsKit.Web.Pages.CmsKit.Shared.Components.Pages -@model IndexModel +@using Volo.CmsKit.Public.Web.Pages.CmsKit.Shared.Components.Pages +@model Volo.CmsKit.Public.Web.Pages.CmsKit.Pages.IndexModel @inject IHtmlLocalizer L @await Component.InvokeAsync(typeof(DefaultPageViewComponent), diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Pages/Index.cshtml.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Pages/Index.cshtml.cs similarity index 83% rename from modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Pages/Index.cshtml.cs rename to modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Pages/Index.cshtml.cs index f0ecfbc9c2..1d5dca0940 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Pages/Index.cshtml.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Pages/Index.cshtml.cs @@ -1,8 +1,9 @@ using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; -using Volo.CmsKit.Pages; +using Volo.CmsKit.Public.Pages; +using Volo.CmsKit.Web.Pages; -namespace Volo.CmsKit.Web.Pages.CmsKit.Pages +namespace Volo.CmsKit.Public.Web.Pages.CmsKit.Pages { public class IndexModel : CommonPageModel { diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Shared/Components/Pages/Default.cshtml b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Pages/Default.cshtml similarity index 86% rename from modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Shared/Components/Pages/Default.cshtml rename to modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Pages/Default.cshtml index 87a326c7ff..6691880ad5 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Shared/Components/Pages/Default.cshtml +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Pages/Default.cshtml @@ -2,7 +2,7 @@ @using Microsoft.AspNetCore.Mvc.RazorPages @using Volo.CmsKit.Web.Pages.CmsKit.Shared.Components.Contents -@model Volo.CmsKit.Web.Pages.CmsKit.Shared.Components.Pages.PageViewModel +@model Volo.CmsKit.Public.Web.Pages.CmsKit.Shared.Components.Pages.PageViewModel diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Shared/Components/Pages/DefaultPageViewComponent.cs b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Pages/DefaultPageViewComponent.cs similarity index 90% rename from modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Shared/Components/Pages/DefaultPageViewComponent.cs rename to modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Pages/DefaultPageViewComponent.cs index 62689f6bc1..450b7ad97e 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Pages/CmsKit/Shared/Components/Pages/DefaultPageViewComponent.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Pages/CmsKit/Shared/Components/Pages/DefaultPageViewComponent.cs @@ -2,9 +2,9 @@ using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using Volo.Abp.AspNetCore.Mvc; -using Volo.CmsKit.Pages; +using Volo.CmsKit.Public.Pages; -namespace Volo.CmsKit.Web.Pages.CmsKit.Shared.Components.Pages +namespace Volo.CmsKit.Public.Web.Pages.CmsKit.Shared.Components.Pages { [ViewComponent(Name = "CmsDefaultPage")] public class DefaultPageViewComponent : AbpViewComponent