From 997e9213f2ca4028256ae8148398df29e1bb928a Mon Sep 17 00:00:00 2001 From: sbwalker Date: Mon, 23 Dec 2024 14:09:54 -0500 Subject: [PATCH] updated default module template to use Service consistently --- .../Client/Services/[Module]Service.cs | 4 +- .../Server/Controllers/[Module]Controller.cs | 44 +++++++++---------- 2 files changed, 23 insertions(+), 25 deletions(-) diff --git a/Oqtane.Server/wwwroot/Modules/Templates/External/Client/Services/[Module]Service.cs b/Oqtane.Server/wwwroot/Modules/Templates/External/Client/Services/[Module]Service.cs index 23f10772..94baa74d 100644 --- a/Oqtane.Server/wwwroot/Modules/Templates/External/Client/Services/[Module]Service.cs +++ b/Oqtane.Server/wwwroot/Modules/Templates/External/Client/Services/[Module]Service.cs @@ -21,7 +21,7 @@ namespace [Owner].Module.[Module].Services public async Task Get[Module]Async(int [Module]Id, int ModuleId) { - return await GetJsonAsync(CreateAuthorizationPolicyUrl($"{Apiurl}/{[Module]Id}", EntityNames.Module, ModuleId)); + return await GetJsonAsync(CreateAuthorizationPolicyUrl($"{Apiurl}/{[Module]Id}/{ModuleId}", EntityNames.Module, ModuleId)); } public async Task Add[Module]Async(Models.[Module] [Module]) @@ -36,7 +36,7 @@ namespace [Owner].Module.[Module].Services public async Task Delete[Module]Async(int [Module]Id, int ModuleId) { - await DeleteAsync(CreateAuthorizationPolicyUrl($"{Apiurl}/{[Module]Id}", EntityNames.Module, ModuleId)); + await DeleteAsync(CreateAuthorizationPolicyUrl($"{Apiurl}/{[Module]Id}/{ModuleId}", EntityNames.Module, ModuleId)); } } } diff --git a/Oqtane.Server/wwwroot/Modules/Templates/External/Server/Controllers/[Module]Controller.cs b/Oqtane.Server/wwwroot/Modules/Templates/External/Server/Controllers/[Module]Controller.cs index 559f9697..5dd25b2b 100644 --- a/Oqtane.Server/wwwroot/Modules/Templates/External/Server/Controllers/[Module]Controller.cs +++ b/Oqtane.Server/wwwroot/Modules/Templates/External/Server/Controllers/[Module]Controller.cs @@ -5,31 +5,32 @@ using Microsoft.AspNetCore.Http; using Oqtane.Shared; using Oqtane.Enums; using Oqtane.Infrastructure; -using [Owner].Module.[Module].Repository; +using [Owner].Module.[Module].Services; using Oqtane.Controllers; using System.Net; +using System.Threading.Tasks; namespace [Owner].Module.[Module].Controllers { [Route(ControllerRoutes.ApiRoute)] public class [Module]Controller : ModuleControllerBase { - private readonly I[Module]Repository _[Module]Repository; + private readonly I[Module]Service _[Module]Service; - public [Module]Controller(I[Module]Repository [Module]Repository, ILogManager logger, IHttpContextAccessor accessor) : base(logger, accessor) + public [Module]Controller(I[Module]Service [Module]Service, ILogManager logger, IHttpContextAccessor accessor) : base(logger, accessor) { - _[Module]Repository = [Module]Repository; + _[Module]Service = [Module]Service; } // GET: api/?moduleid=x [HttpGet] [Authorize(Policy = PolicyNames.ViewModule)] - public IEnumerable Get(string moduleid) + public async Task> Get(string moduleid) { int ModuleId; if (int.TryParse(moduleid, out ModuleId) && IsAuthorizedEntityId(EntityNames.Module, ModuleId)) { - return _[Module]Repository.Get[Module]s(ModuleId); + return await _[Module]Service.Get[Module]sAsync(ModuleId); } else { @@ -40,18 +41,18 @@ namespace [Owner].Module.[Module].Controllers } // GET api//5 - [HttpGet("{id}")] + [HttpGet("{id}/{moduleid}")] [Authorize(Policy = PolicyNames.ViewModule)] - public Models.[Module] Get(int id) + public async Task Get(int id, int moduleid) { - Models.[Module] [Module] = _[Module]Repository.Get[Module](id); + Models.[Module] [Module] = await _[Module]Service.Get[Module]Async(id, moduleid); if ([Module] != null && IsAuthorizedEntityId(EntityNames.Module, [Module].ModuleId)) { return [Module]; } else { - _logger.Log(LogLevel.Error, this, LogFunction.Security, "Unauthorized [Module] Get Attempt {[Module]Id}", id); + _logger.Log(LogLevel.Error, this, LogFunction.Security, "Unauthorized [Module] Get Attempt {[Module]Id} {ModuleId}", id, moduleid); HttpContext.Response.StatusCode = (int)HttpStatusCode.Forbidden; return null; } @@ -60,12 +61,11 @@ namespace [Owner].Module.[Module].Controllers // POST api/ [HttpPost] [Authorize(Policy = PolicyNames.EditModule)] - public Models.[Module] Post([FromBody] Models.[Module] [Module]) + public async Task Post([FromBody] Models.[Module] [Module]) { if (ModelState.IsValid && IsAuthorizedEntityId(EntityNames.Module, [Module].ModuleId)) { - [Module] = _[Module]Repository.Add[Module]([Module]); - _logger.Log(LogLevel.Information, this, LogFunction.Create, "[Module] Added {[Module]}", [Module]); + [Module] = await _[Module]Service.Add[Module]Async([Module]); } else { @@ -79,12 +79,11 @@ namespace [Owner].Module.[Module].Controllers // PUT api//5 [HttpPut("{id}")] [Authorize(Policy = PolicyNames.EditModule)] - public Models.[Module] Put(int id, [FromBody] Models.[Module] [Module]) + public async Task Put(int id, [FromBody] Models.[Module] [Module]) { - if (ModelState.IsValid && [Module].[Module]Id == id && IsAuthorizedEntityId(EntityNames.Module, [Module].ModuleId) && _[Module]Repository.Get[Module]([Module].[Module]Id, false) != null) + if (ModelState.IsValid && [Module].[Module]Id == id && IsAuthorizedEntityId(EntityNames.Module, [Module].ModuleId)) { - [Module] = _[Module]Repository.Update[Module]([Module]); - _logger.Log(LogLevel.Information, this, LogFunction.Update, "[Module] Updated {[Module]}", [Module]); + [Module] = await _[Module]Service.Update[Module]Async([Module]); } else { @@ -96,19 +95,18 @@ namespace [Owner].Module.[Module].Controllers } // DELETE api//5 - [HttpDelete("{id}")] + [HttpDelete("{id}/{moduleid}")] [Authorize(Policy = PolicyNames.EditModule)] - public void Delete(int id) + public async Task Delete(int id, int moduleid) { - Models.[Module] [Module] = _[Module]Repository.Get[Module](id); + Models.[Module] [Module] = await _[Module]Service.Get[Module]Async(id, moduleid); if ([Module] != null && IsAuthorizedEntityId(EntityNames.Module, [Module].ModuleId)) { - _[Module]Repository.Delete[Module](id); - _logger.Log(LogLevel.Information, this, LogFunction.Delete, "[Module] Deleted {[Module]Id}", id); + await _[Module]Service.Delete[Module]Async(id, [Module].ModuleId); } else { - _logger.Log(LogLevel.Error, this, LogFunction.Security, "Unauthorized [Module] Delete Attempt {[Module]Id}", id); + _logger.Log(LogLevel.Error, this, LogFunction.Security, "Unauthorized [Module] Delete Attempt {[Module]Id} {ModuleId}", id, moduleid); HttpContext.Response.StatusCode = (int)HttpStatusCode.Forbidden; } }