Browse Source

Merge pull request #21756 from abpframework/salihozkara/docs

Fix: Docs permission problem
pull/21776/head
Gizem Mutu Kurt 1 year ago
committed by GitHub
parent
commit
5f13f2931d
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 16
      modules/docs/.abpstudio/state.json
  2. 11
      modules/docs/Default.abprun.json
  3. 6
      modules/docs/Volo.Docs.abpsln
  4. 3
      modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Documents/IDocumentAdminAppService.cs
  5. 7
      modules/docs/src/Volo.Docs.Admin.Application/Volo/Docs/Admin/Documents/DocumentAdminAppService.cs
  6. 6
      modules/docs/src/Volo.Docs.Admin.HttpApi.Client/ClientProxies/Volo/Docs/Admin/DocumentsAdminClientProxy.Generated.cs
  7. 23
      modules/docs/src/Volo.Docs.Admin.HttpApi.Client/ClientProxies/Volo/Docs/Admin/docs-admin-generate-proxy.json
  8. 14
      modules/docs/src/Volo.Docs.Admin.HttpApi.Client/Volo.Docs.Admin.HttpApi.Client.abppkg
  9. 8
      modules/docs/src/Volo.Docs.Admin.HttpApi/Volo/Docs/Admin/DocumentsAdminController.cs
  10. 11
      modules/docs/src/Volo.Docs.Admin.Web/Pages/Docs/Admin/Documents/Index.cshtml.cs
  11. 13
      modules/docs/src/Volo.Docs.Admin.Web/Volo.Docs.Admin.Web.abppkg
  12. 7
      modules/docs/src/Volo.Docs.Admin.Web/wwwroot/client-proxies/docs-admin-proxy.js

16
modules/docs/.abpstudio/state.json

@ -0,0 +1,16 @@
{
"selectedKubernetesProfile": null,
"solutionRunner": {
"selectedProfile": "Default",
"targetFrameworks": [],
"applicationsStartingWithoutBuild": [],
"applicationBatchStartStates": [
{
"profile": "Default",
"applicationOrFolder": "VoloDocs.Web",
"value": 0
}
],
"folderBatchStartStates": []
}
}

11
modules/docs/Default.abprun.json

@ -0,0 +1,11 @@
{
"metadata": {},
"applications": {
"VoloDocs.Web": {
"type": "dotnet-project",
"path": "app/VoloDocs.Web/VoloDocs.Web.csproj",
"launchUrl": "https://localhost:5001",
"kubernetesService": null
}
}
}

6
modules/docs/Volo.Docs.abpsln

@ -3,5 +3,11 @@
"Volo.Docs": {
"path": "Volo.Docs.abpmdl"
}
},
"id": "c1d848e0-0b53-461b-824a-8533ba1fd82b",
"runProfiles": {
"Default": {
"path": "Default.abprun.json"
}
}
}

3
modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Documents/IDocumentAdminAppService.cs

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;
using Volo.Docs.Admin.Projects;
namespace Volo.Docs.Admin.Documents
{
@ -21,5 +22,7 @@ namespace Volo.Docs.Admin.Documents
Task ReindexAsync(Guid documentId);
Task<List<DocumentInfoDto>> GetFilterItemsAsync();
Task<List<ProjectWithoutDetailsDto>> GetProjectsAsync();
}
}

7
modules/docs/src/Volo.Docs.Admin.Application/Volo/Docs/Admin/Documents/DocumentAdminAppService.cs

@ -8,6 +8,7 @@ using Volo.Abp;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;
using Volo.Abp.Caching;
using Volo.Docs.Admin.Projects;
using Volo.Docs.Caching;
using Volo.Docs.Documents;
using Volo.Docs.Documents.FullSearch.Elastic;
@ -220,6 +221,12 @@ namespace Volo.Docs.Admin.Documents
return ObjectMapper.Map<List<DocumentInfo>, List<DocumentInfoDto>>(documents);
}
public virtual async Task<List<ProjectWithoutDetailsDto>> GetProjectsAsync()
{
var projects = await _projectRepository.GetListWithoutDetailsAsync();
return ObjectMapper.Map<List<ProjectWithoutDetails>, List<ProjectWithoutDetailsDto>>(projects);
}
private async Task UpdateDocumentUpdateInfoCache(Document document)
{

6
modules/docs/src/Volo.Docs.Admin.HttpApi.Client/ClientProxies/Volo/Docs/Admin/DocumentsAdminClientProxy.Generated.cs

@ -9,6 +9,7 @@ using Volo.Abp.Http.Client;
using Volo.Abp.Http.Client.ClientProxying;
using Volo.Abp.Http.Modeling;
using Volo.Docs.Admin.Documents;
using Volo.Docs.Admin.Projects;
// ReSharper disable once CheckNamespace
namespace Volo.Docs.Admin;
@ -69,4 +70,9 @@ public partial class DocumentsAdminClientProxy : ClientProxyBase<IDocumentAdminA
{
return await RequestAsync<List<DocumentInfoDto>>(nameof(GetFilterItemsAsync));
}
public virtual async Task<List<ProjectWithoutDetailsDto>> GetProjectsAsync()
{
return await RequestAsync<List<ProjectWithoutDetailsDto>>(nameof(GetProjectsAsync));
}
}

23
modules/docs/src/Volo.Docs.Admin.HttpApi.Client/ClientProxies/docs-admin-generate-proxy.json → modules/docs/src/Volo.Docs.Admin.HttpApi.Client/ClientProxies/Volo/Docs/Admin/docs-admin-generate-proxy.json

@ -125,6 +125,14 @@
"type": "System.Collections.Generic.List<Volo.Docs.Admin.Documents.DocumentInfoDto>",
"typeSimple": "[Volo.Docs.Admin.Documents.DocumentInfoDto]"
}
},
{
"name": "GetProjectsAsync",
"parametersOnMethod": [],
"returnValue": {
"type": "System.Collections.Generic.List<Volo.Docs.Admin.Projects.ProjectWithoutDetailsDto>",
"typeSimple": "[Volo.Docs.Admin.Projects.ProjectWithoutDetailsDto]"
}
}
]
}
@ -558,6 +566,21 @@
},
"allowAnonymous": null,
"implementFrom": "Volo.Docs.Admin.Documents.IDocumentAdminAppService"
},
"GetProjectsAsync": {
"uniqueName": "GetProjectsAsync",
"name": "GetProjectsAsync",
"httpMethod": "GET",
"url": "api/docs/admin/documents/GetProjects",
"supportedVersions": [],
"parametersOnMethod": [],
"parameters": [],
"returnValue": {
"type": "System.Collections.Generic.List<Volo.Docs.Admin.Projects.ProjectWithoutDetailsDto>",
"typeSimple": "[Volo.Docs.Admin.Projects.ProjectWithoutDetailsDto]"
},
"allowAnonymous": null,
"implementFrom": "Volo.Docs.Admin.Documents.IDocumentAdminAppService"
}
}
},

14
modules/docs/src/Volo.Docs.Admin.HttpApi.Client/Volo.Docs.Admin.HttpApi.Client.abppkg

@ -1,3 +1,15 @@
{
"role": "lib.http-api-client"
"role": "lib.http-api-client",
"proxies": {
"csharp": {
"VoloDocs.Web-docs-admin": {
"applicationName": "VoloDocs.Web",
"module": "docs-admin",
"url": "https://localhost:5001",
"folder": "ClientProxies\\Volo\\Docs\\Admin",
"serviceType": "application",
"withoutContracts": true
}
}
}
}

8
modules/docs/src/Volo.Docs.Admin.HttpApi/Volo/Docs/Admin/DocumentsAdminController.cs

@ -7,6 +7,7 @@ using Volo.Abp;
using Volo.Abp.Application.Dtos;
using Volo.Abp.AspNetCore.Mvc;
using Volo.Docs.Admin.Documents;
using Volo.Docs.Admin.Projects;
namespace Volo.Docs.Admin
{
@ -71,5 +72,12 @@ namespace Volo.Docs.Admin
{
return await _documentAdminAppService.GetFilterItemsAsync();
}
[HttpGet]
[Route("GetProjects")]
public virtual Task<List<ProjectWithoutDetailsDto>> GetProjectsAsync()
{
return _documentAdminAppService.GetProjectsAsync();
}
}
}

11
modules/docs/src/Volo.Docs.Admin.Web/Pages/Docs/Admin/Documents/Index.cshtml.cs

@ -2,23 +2,24 @@ using System.Collections.Generic;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Volo.Docs.Admin.Documents;
using Volo.Docs.Admin.Projects;
namespace Volo.Docs.Admin.Pages.Docs.Admin.Documents;
[Authorize(DocsAdminPermissions.Projects.Default)]
[Authorize(DocsAdminPermissions.Documents.Default)]
public class IndexModel : DocsAdminPageModel
{
private readonly IProjectAdminAppService _projectAdminAppService;
private readonly IDocumentAdminAppService _documentAdminAppService;
public List<ProjectWithoutDetailsDto> Projects { get; set; }
public IndexModel(IProjectAdminAppService projectAdminAppService)
public IndexModel(IDocumentAdminAppService documentAdminAppService)
{
_projectAdminAppService = projectAdminAppService;
_documentAdminAppService = documentAdminAppService;
}
public virtual async Task<IActionResult> OnGet()
{
Projects = await _projectAdminAppService.GetListWithoutDetailsAsync();
Projects = await _documentAdminAppService.GetProjectsAsync();
return Page();
}
}

13
modules/docs/src/Volo.Docs.Admin.Web/Volo.Docs.Admin.Web.abppkg

@ -1,3 +1,14 @@
{
"role": "lib.mvc"
"role": "lib.mvc",
"proxies": {
"Javascript": {
"VoloDocs.Web-docs-admin": {
"applicationName": "VoloDocs.Web",
"module": "docs-admin",
"url": "https://localhost:5001",
"output": "wwwroot/client-proxies",
"serviceType": "application"
}
}
}
}

7
modules/docs/src/Volo.Docs.Admin.Web/wwwroot/client-proxies/docs-admin-proxy.js

@ -68,6 +68,13 @@
}, ajaxParams));
};
volo.docs.admin.documentsAdmin.getProjects = function(ajaxParams) {
return abp.ajax($.extend(true, {
url: abp.appPath + 'api/docs/admin/documents/GetProjects',
type: 'GET'
}, ajaxParams));
};
})();
// controller volo.docs.admin.projectsAdmin

Loading…
Cancel
Save