diff --git a/Core.Thalos.DAL.API/Controllers/ModuleController.cs b/Core.Thalos.DAL.API/Controllers/ModuleController.cs index b9e9678..0fac060 100644 --- a/Core.Thalos.DAL.API/Controllers/ModuleController.cs +++ b/Core.Thalos.DAL.API/Controllers/ModuleController.cs @@ -66,7 +66,7 @@ namespace LSA.Core.Thalos.API.Controllers var result = await service.GetModuleById(_id, cancellationToken); if (result == null) - return NotFound("Entity not found"); + return NotFound("Module not found"); return Ok(result); } @@ -112,6 +112,10 @@ namespace LSA.Core.Thalos.API.Controllers public async Task ChangeModuleStatus([FromRoute] string _id, [FromRoute] StatusEnum newStatus, CancellationToken cancellationToken) { var result = await service.ChangeModuleStatus(_id, newStatus, cancellationToken); + + if (result == null) + return NotFound("Module not found"); + return Ok(result); } @@ -133,7 +137,7 @@ namespace LSA.Core.Thalos.API.Controllers { var result = await service.DeleteModule(_id, cancellationToken); if (result == null) - return NotFound("Entity not found"); + return NotFound("Module not found"); return Ok(result); } diff --git a/Core.Thalos.DAL.API/Controllers/PermissionController.cs b/Core.Thalos.DAL.API/Controllers/PermissionController.cs index ff3372b..75c32b6 100644 --- a/Core.Thalos.DAL.API/Controllers/PermissionController.cs +++ b/Core.Thalos.DAL.API/Controllers/PermissionController.cs @@ -9,7 +9,6 @@ using Core.Thalos.BuildingBlocks; using Core.Thalos.Provider.Contracts; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; -using Microsoft.Graph; using PermissionRequest = Core.Thalos.Domain.Contexts.Onboarding.Request.PermissionRequest; using StatusEnum = Core.Blueprint.Mongo.StatusEnum; @@ -91,7 +90,7 @@ namespace LSA.Core.Thalos.API.Controllers if (result == null) { - return NotFound("Entity not found"); + return NotFound("Permission not found"); } return Ok(result); @@ -162,6 +161,10 @@ namespace LSA.Core.Thalos.API.Controllers public async Task ChangePermissionStatus([FromRoute] string _id, [FromRoute] StatusEnum newStatus, CancellationToken cancellationToken) { var result = await service.ChangePermissionStatus(_id, newStatus, cancellationToken).ConfigureAwait(false); + + if (result == null) + return NotFound("Permission not found"); + return Ok(result); } diff --git a/Core.Thalos.DAL.API/Controllers/RoleController.cs b/Core.Thalos.DAL.API/Controllers/RoleController.cs index 2955977..aebbb0e 100644 --- a/Core.Thalos.DAL.API/Controllers/RoleController.cs +++ b/Core.Thalos.DAL.API/Controllers/RoleController.cs @@ -60,7 +60,7 @@ namespace LSA.Core.Thalos.API.Controllers if (result == null) { - return NotFound("Entity not found"); + return NotFound("Role not found"); } return Ok(result); @@ -126,6 +126,10 @@ namespace LSA.Core.Thalos.API.Controllers public async Task ChangeRoleStatus([FromRoute] string _id, [FromRoute] StatusEnum newStatus, CancellationToken cancellationToken) { var result = await service.ChangeRoleStatus(_id, newStatus, cancellationToken).ConfigureAwait(false); + + if (result == null) + return NotFound("Role not found"); + return Ok(result); } diff --git a/Core.Thalos.DAL.API/Controllers/TenantController.cs b/Core.Thalos.DAL.API/Controllers/TenantController.cs index 27c6be9..ef20b3d 100644 --- a/Core.Thalos.DAL.API/Controllers/TenantController.cs +++ b/Core.Thalos.DAL.API/Controllers/TenantController.cs @@ -7,6 +7,7 @@ using Asp.Versioning; using Core.Thalos.BuildingBlocks; using Core.Thalos.Provider.Contracts; +using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using StatusEnum = Core.Blueprint.Mongo.StatusEnum; using TenantRequest = Core.Thalos.Domain.Contexts.Onboarding.Request.TenantRequest; @@ -21,7 +22,7 @@ namespace LSA.Core.Thalos.API.Controllers [Produces(MimeTypes.ApplicationJson)] [Consumes(MimeTypes.ApplicationJson)] [ApiController] - // [Authorize(AuthenticationSchemes = Schemes.DefaultScheme)] + [Authorize(AuthenticationSchemes = Schemes.DefaultScheme)] public class TenantController(ITenantProvider service) : ControllerBase { /// @@ -35,7 +36,7 @@ namespace LSA.Core.Thalos.API.Controllers [Consumes(MimeTypes.ApplicationJson)] [Produces(MimeTypes.ApplicationJson)] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] - // [Permission("TenantManagement.Read, RoleManagement.Read")] + [Permission("TenantManagement.Read, RoleManagement.Read")] public async Task GetAllTenantsAsync(CancellationToken cancellationToken) { var result = await service.GetAllTenants(cancellationToken).ConfigureAwait(false); @@ -56,14 +57,14 @@ namespace LSA.Core.Thalos.API.Controllers [Consumes(MimeTypes.ApplicationJson)] [Produces(MimeTypes.ApplicationJson)] [ProducesResponseType(typeof(TenantAdapter), StatusCodes.Status200OK)] - // [Permission("TenantManagement.Read")] + [Permission("TenantManagement.Read")] public async Task GetTenantByIdAsync([FromRoute] string _id, CancellationToken cancellationToken) { var result = await service.GetTenantById(_id, cancellationToken).ConfigureAwait(false); if (result == null) { - return NotFound("Entity not found"); + return NotFound("Tenant not found"); } return Ok(result); @@ -80,7 +81,7 @@ namespace LSA.Core.Thalos.API.Controllers /// The service internal error. [HttpPost] [ProducesResponseType(typeof(TenantAdapter), StatusCodes.Status201Created)] - // [Permission("TenantManagement.Write")] + [Permission("TenantManagement.Write")] public async Task CreateTenantAsync([FromBody] TenantRequest newTenant, CancellationToken cancellationToken) { var result = await service.CreateTenant(newTenant, cancellationToken).ConfigureAwait(false); @@ -103,7 +104,7 @@ namespace LSA.Core.Thalos.API.Controllers [Consumes(MimeTypes.ApplicationJson)] [Produces(MimeTypes.ApplicationJson)] [ProducesResponseType(typeof(TenantAdapter), StatusCodes.Status200OK)] - // [Permission("TenantManagement.Write")] + [Permission("TenantManagement.Write")] public async Task UpdateTenantAsync([FromRoute] string _id, [FromBody] TenantAdapter entity, CancellationToken cancellationToken) { if (_id != entity._Id) @@ -112,7 +113,9 @@ namespace LSA.Core.Thalos.API.Controllers } var result = await service.UpdateTenant(entity, cancellationToken).ConfigureAwait(false); - return Ok(result); + + if (result is not null) return Ok(result); + else return NotFound("Tenant not found"); } /// @@ -129,10 +132,14 @@ namespace LSA.Core.Thalos.API.Controllers [Consumes(MimeTypes.ApplicationJson)] [Produces(MimeTypes.ApplicationJson)] [ProducesResponseType(typeof(TenantAdapter), StatusCodes.Status200OK)] - // [Permission("TenantManagement.Write")] + [Permission("TenantManagement.Write")] public async Task ChangeTenantStatus([FromRoute] string _id, [FromRoute] StatusEnum newStatus, CancellationToken cancellationToken) { var result = await service.ChangeTenantStatus(_id, newStatus, cancellationToken).ConfigureAwait(false); + + if (result == null) + return NotFound("Tenant not found"); + return Ok(result); } @@ -148,7 +155,7 @@ namespace LSA.Core.Thalos.API.Controllers [HttpDelete] [Route(Routes.Id)] [ProducesResponseType(typeof(TenantAdapter), StatusCodes.Status200OK)] - // [Permission("TenantManagement.Write")] + [Permission("TenantManagement.Write")] public async Task DeleteTenantAsync([FromRoute] string _id, CancellationToken cancellationToken) { var result = await service.DeleteTenant(_id, cancellationToken).ConfigureAwait(false); diff --git a/Core.Thalos.DAL.API/Controllers/UserController.cs b/Core.Thalos.DAL.API/Controllers/UserController.cs index 705f4a7..6b7add9 100644 --- a/Core.Thalos.DAL.API/Controllers/UserController.cs +++ b/Core.Thalos.DAL.API/Controllers/UserController.cs @@ -9,7 +9,6 @@ using Core.Thalos.BuildingBlocks; using Core.Thalos.Provider.Contracts; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; -using Microsoft.Graph; using StatusEnum = Core.Blueprint.Mongo.StatusEnum; using UserRequest = Core.Thalos.Domain.Contexts.Onboarding.Request.UserRequest; @@ -54,7 +53,7 @@ namespace LSA.Core.Thalos.API.Controllers public async Task GetUserById([FromRoute] string _id, CancellationToken cancellationToken) { var result = await service.GetUserById(_id, cancellationToken).ConfigureAwait(false); - return result == null ? NotFound("Entity not found") : Ok(result); + return result == null ? NotFound("User not found") : Ok(result); } /// @@ -171,6 +170,10 @@ namespace LSA.Core.Thalos.API.Controllers public async Task ChangeUserStatus([FromRoute] string _id, [FromRoute] StatusEnum newStatus, CancellationToken cancellationToken) { var result = await service.ChangeUserStatus(_id, newStatus, cancellationToken).ConfigureAwait(false); + + if (result == null) + return NotFound("User not found"); + return Ok(result); } diff --git a/Core.Thalos.Domain/Core.Thalos.Domain.csproj b/Core.Thalos.Domain/Core.Thalos.Domain.csproj index 710df0c..d8a522a 100644 --- a/Core.Thalos.Domain/Core.Thalos.Domain.csproj +++ b/Core.Thalos.Domain/Core.Thalos.Domain.csproj @@ -8,7 +8,7 @@ - + diff --git a/Core.Thalos.Provider/Contracts/IModuleProvider.cs b/Core.Thalos.Provider/Contracts/IModuleProvider.cs index d8275cd..5a07f66 100644 --- a/Core.Thalos.Provider/Contracts/IModuleProvider.cs +++ b/Core.Thalos.Provider/Contracts/IModuleProvider.cs @@ -62,7 +62,7 @@ namespace Core.Thalos.Provider.Contracts /// /// A representing the asynchronous execution of the service. /// - ValueTask ChangeModuleStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken); + ValueTask ChangeModuleStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken); /// /// Updates a Module by its identifier. @@ -72,7 +72,7 @@ namespace Core.Thalos.Provider.Contracts /// /// A representing the asynchronous execution of the service. /// - ValueTask UpdateModule(ModuleAdapter entity, CancellationToken cancellationToken); + ValueTask UpdateModule(ModuleAdapter entity, CancellationToken cancellationToken); /// /// Deletes a Module by its identifier. diff --git a/Core.Thalos.Provider/Contracts/IPermissionProvider.cs b/Core.Thalos.Provider/Contracts/IPermissionProvider.cs index bfcafe6..fc86211 100644 --- a/Core.Thalos.Provider/Contracts/IPermissionProvider.cs +++ b/Core.Thalos.Provider/Contracts/IPermissionProvider.cs @@ -62,7 +62,7 @@ namespace Core.Thalos.Provider.Contracts /// /// A representing the asynchronous execution of the service. /// - ValueTask ChangePermissionStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken); + ValueTask ChangePermissionStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken); /// /// Updates a Permission. @@ -72,7 +72,7 @@ namespace Core.Thalos.Provider.Contracts /// /// A representing the asynchronous execution of the service. /// - ValueTask UpdatePermission(PermissionAdapter entity, CancellationToken cancellationToken); + ValueTask UpdatePermission(PermissionAdapter entity, CancellationToken cancellationToken); /// /// Deletes a Permission by its identifier. diff --git a/Core.Thalos.Provider/Contracts/IRoleProvider.cs b/Core.Thalos.Provider/Contracts/IRoleProvider.cs index 52f5966..bbf25a7 100644 --- a/Core.Thalos.Provider/Contracts/IRoleProvider.cs +++ b/Core.Thalos.Provider/Contracts/IRoleProvider.cs @@ -52,7 +52,7 @@ namespace Core.Thalos.Provider.Contracts /// /// A representing the asynchronous execution of the service. /// - ValueTask ChangeRoleStatus(string _id, Core.Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken); + ValueTask ChangeRoleStatus(string _id, Core.Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken); /// /// Updates a Role. @@ -62,7 +62,7 @@ namespace Core.Thalos.Provider.Contracts /// /// A representing the asynchronous execution of the service. /// - ValueTask UpdateRole(RoleAdapter entity, CancellationToken cancellationToken); + ValueTask UpdateRole(RoleAdapter entity, CancellationToken cancellationToken); /// /// Adds an application to the Role's list of applications. diff --git a/Core.Thalos.Provider/Contracts/ITenantProvider.cs b/Core.Thalos.Provider/Contracts/ITenantProvider.cs index 85892e8..91a8e6d 100644 --- a/Core.Thalos.Provider/Contracts/ITenantProvider.cs +++ b/Core.Thalos.Provider/Contracts/ITenantProvider.cs @@ -52,7 +52,7 @@ namespace Core.Thalos.Provider.Contracts /// /// A representing the asynchronous execution of the service. /// - ValueTask ChangeTenantStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken); + ValueTask ChangeTenantStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken); /// /// Updates a Tenant. @@ -62,7 +62,7 @@ namespace Core.Thalos.Provider.Contracts /// /// A representing the asynchronous execution of the service. /// - ValueTask UpdateTenant(TenantAdapter entity, CancellationToken cancellationToken); + ValueTask UpdateTenant(TenantAdapter entity, CancellationToken cancellationToken); /// /// Deletes a Tenant by its identifier. diff --git a/Core.Thalos.Provider/Contracts/IUserProvider.cs b/Core.Thalos.Provider/Contracts/IUserProvider.cs index 68777f0..915e175 100644 --- a/Core.Thalos.Provider/Contracts/IUserProvider.cs +++ b/Core.Thalos.Provider/Contracts/IUserProvider.cs @@ -72,7 +72,7 @@ namespace Core.Thalos.Provider.Contracts /// /// A representing the asynchronous execution of the service. /// - ValueTask ChangeUserStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken); + ValueTask ChangeUserStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken); /// /// Updates a User. @@ -82,7 +82,7 @@ namespace Core.Thalos.Provider.Contracts /// /// A representing the asynchronous execution of the service. /// - ValueTask UpdateUser(UserAdapter entity, CancellationToken cancellationToken); + ValueTask UpdateUser(UserAdapter entity, CancellationToken cancellationToken); /// /// Logs in the User. diff --git a/Core.Thalos.Provider/Core.Thalos.Provider.csproj b/Core.Thalos.Provider/Core.Thalos.Provider.csproj index b5c0c23..23ec797 100644 --- a/Core.Thalos.Provider/Core.Thalos.Provider.csproj +++ b/Core.Thalos.Provider/Core.Thalos.Provider.csproj @@ -11,7 +11,7 @@ - + diff --git a/Core.Thalos.Provider/Providers/Onboarding/ModuleProvider.cs b/Core.Thalos.Provider/Providers/Onboarding/ModuleProvider.cs index 838abf6..4663a20 100644 --- a/Core.Thalos.Provider/Providers/Onboarding/ModuleProvider.cs +++ b/Core.Thalos.Provider/Providers/Onboarding/ModuleProvider.cs @@ -131,12 +131,17 @@ namespace Core.Thalos.Provider.Providers.Onboarding /// /// A representing the asynchronous execution of the service. /// - public async ValueTask ChangeModuleStatus(string _id, StatusEnum newStatus, CancellationToken cancellationToken) + public async ValueTask ChangeModuleStatus(string _id, StatusEnum newStatus, CancellationToken cancellationToken) { var entity = await repository.FindByIdAsync(_id); - entity.Status = newStatus; - await repository.ReplaceOneAsync(entity); - return entity; + + if (entity is not null) + { + entity.Status = newStatus; + + return repository.ReplaceOneAsync(entity).Result; + } + else return null; } /// @@ -147,10 +152,10 @@ namespace Core.Thalos.Provider.Providers.Onboarding /// /// A representing the asynchronous execution of the service. /// - public async ValueTask UpdateModule(ModuleAdapter entity, CancellationToken cancellationToken) + public async ValueTask UpdateModule(ModuleAdapter entity, CancellationToken cancellationToken) { - await repository.ReplaceOneAsync(entity); - return entity; + var updatedEntity = await repository.ReplaceOneAsync(entity); + return updatedEntity; } /// diff --git a/Core.Thalos.Provider/Providers/Onboarding/PermissionProvider.cs b/Core.Thalos.Provider/Providers/Onboarding/PermissionProvider.cs index 5cb2955..fe2780a 100644 --- a/Core.Thalos.Provider/Providers/Onboarding/PermissionProvider.cs +++ b/Core.Thalos.Provider/Providers/Onboarding/PermissionProvider.cs @@ -130,12 +130,17 @@ namespace Core.Thalos.Provider.Providers.Onboarding /// /// A representing the asynchronous execution of the service. /// - public async ValueTask ChangePermissionStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken) + public async ValueTask ChangePermissionStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken) { var entity = await repository.FindByIdAsync(_id); - entity.Status = newStatus; - await repository.ReplaceOneAsync(entity); - return entity; + + if (entity is not null) + { + entity.Status = newStatus; + + return repository.ReplaceOneAsync(entity).Result; + } + else return null; } /// @@ -146,10 +151,10 @@ namespace Core.Thalos.Provider.Providers.Onboarding /// /// A representing the asynchronous execution of the service. /// - public async ValueTask UpdatePermission(PermissionAdapter entity, CancellationToken cancellationToken) + public async ValueTask UpdatePermission(PermissionAdapter entity, CancellationToken cancellationToken) { - await repository.ReplaceOneAsync(entity); - return entity; + var updatedEntity = await repository.ReplaceOneAsync(entity); + return updatedEntity; } /// diff --git a/Core.Thalos.Provider/Providers/Onboarding/RoleProvider.cs b/Core.Thalos.Provider/Providers/Onboarding/RoleProvider.cs index fb24faf..9adfdc7 100644 --- a/Core.Thalos.Provider/Providers/Onboarding/RoleProvider.cs +++ b/Core.Thalos.Provider/Providers/Onboarding/RoleProvider.cs @@ -100,13 +100,17 @@ namespace Core.Thalos.Provider.Providers.Onboarding /// /// A representing the asynchronous execution of the service. /// - public async ValueTask ChangeRoleStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken) + public async ValueTask ChangeRoleStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken) { var entity = await repository.FindByIdAsync(_id); - entity.Status = newStatus; - await repository.ReplaceOneAsync(entity); - return entity; + if (entity is not null) + { + entity.Status = newStatus; + + return repository.ReplaceOneAsync(entity).Result; + } + else return null; } /// @@ -117,10 +121,10 @@ namespace Core.Thalos.Provider.Providers.Onboarding /// /// A representing the asynchronous execution of the service. /// - public async ValueTask UpdateRole(RoleAdapter entity, CancellationToken cancellationToken) + public async ValueTask UpdateRole(RoleAdapter entity, CancellationToken cancellationToken) { - await repository.ReplaceOneAsync(entity); - return entity; + var updatedEntity = await repository.ReplaceOneAsync(entity); + return updatedEntity; } /// diff --git a/Core.Thalos.Provider/Providers/Onboarding/TenantProvider.cs b/Core.Thalos.Provider/Providers/Onboarding/TenantProvider.cs index 005cf33..b8e4534 100644 --- a/Core.Thalos.Provider/Providers/Onboarding/TenantProvider.cs +++ b/Core.Thalos.Provider/Providers/Onboarding/TenantProvider.cs @@ -99,13 +99,17 @@ namespace Core.Thalos.Provider.Providers.Onboarding /// /// A representing the asynchronous execution of the service. /// - public async ValueTask ChangeTenantStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken) + public async ValueTask ChangeTenantStatus(string _id, Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken) { var entity = await repository.FindByIdAsync(_id); - entity.Status = newStatus; - await repository.ReplaceOneAsync(entity); - return entity; + if (entity is not null) + { + entity.Status = newStatus; + + return repository.ReplaceOneAsync(entity).Result; + } + else return null; } /// @@ -116,10 +120,10 @@ namespace Core.Thalos.Provider.Providers.Onboarding /// /// A representing the asynchronous execution of the service. /// - public async ValueTask UpdateTenant(TenantAdapter entity, CancellationToken cancellationToken) + public async ValueTask UpdateTenant(TenantAdapter entity, CancellationToken cancellationToken) { - await repository.ReplaceOneAsync(entity); - return entity; + var updatedEntity = await repository.ReplaceOneAsync(entity); + return updatedEntity; } /// diff --git a/Core.Thalos.Provider/Providers/Onboarding/UserProvider.cs b/Core.Thalos.Provider/Providers/Onboarding/UserProvider.cs index 3f28857..8188bd2 100644 --- a/Core.Thalos.Provider/Providers/Onboarding/UserProvider.cs +++ b/Core.Thalos.Provider/Providers/Onboarding/UserProvider.cs @@ -146,14 +146,17 @@ namespace Core.Thalos.Provider.Providers.Onboarding /// The new status of the user. /// A representing /// the asynchronous execution of the service. - public async ValueTask ChangeUserStatus(string _id, Core.Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken) + public async ValueTask ChangeUserStatus(string _id, Core.Blueprint.Mongo.StatusEnum newStatus, CancellationToken cancellationToken) { var entity = await repository.FindByIdAsync(_id); - entity.Status = newStatus; - await repository.ReplaceOneAsync(entity); + if (entity is not null) + { + entity.Status = newStatus; - return entity; + return repository.ReplaceOneAsync(entity).Result; + } + else return null; } /// @@ -163,11 +166,10 @@ namespace Core.Thalos.Provider.Providers.Onboarding /// The User mongo identifier. /// A representing /// the asynchronous execution of the service. - public async ValueTask UpdateUser(UserAdapter entity, CancellationToken cancellationToken) + public async ValueTask UpdateUser(UserAdapter entity, CancellationToken cancellationToken) { - await repository.ReplaceOneAsync(entity); - - return entity; + var updatedEntity = await repository.ReplaceOneAsync(entity); + return updatedEntity; } ///