diff --git a/src/Controllers/AssetsController.cs b/src/Controllers/AssetsController.cs index d961049..a7152ce 100644 --- a/src/Controllers/AssetsController.cs +++ b/src/Controllers/AssetsController.cs @@ -4,6 +4,7 @@ using Berufsschule_HAM.Services; using System.Text.Json; using Novell.Directory.Ldap; using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc.ModelBinding; [Authorize] [Route("[controller]")] @@ -107,26 +108,26 @@ public class AssetsController : Controller } } - [HttpGet("Delete")] - public async Task Delete(string cn) + [HttpDelete("Delete")] + public async Task Delete([BindRequired] string cn) { - AssetsDeleteResponseModel response; + AssetsResponseModel response; return await Task.Run(async () => { if (cn is null) { - response = new AssetsDeleteResponseModel(false, AssetsDeleteErrorEnum.CnIsNull); + response = new AssetsResponseModel(false, "Cn was not provided."); return response; } try { await _ldap.DeleteAssetAsync(cn); - response = new AssetsDeleteResponseModel(true, AssetsDeleteErrorEnum.None); + response = new AssetsResponseModel(true); } catch (Exception e) { - response = new AssetsDeleteResponseModel(false, AssetsDeleteErrorEnum.UnableToDeleteAsset, e.Message); + response = new AssetsResponseModel(false, e.Message); } return response; diff --git a/src/Models/AssetsDeleteResponseModel.cs b/src/Models/AssetsDeleteResponseModel.cs deleted file mode 100644 index 590991f..0000000 --- a/src/Models/AssetsDeleteResponseModel.cs +++ /dev/null @@ -1,14 +0,0 @@ -public class AssetsDeleteResponseModel(bool successful, AssetsDeleteErrorEnum errorReason, string exception = "none") -{ - public bool Success { get; set; } = successful; - public AssetsDeleteErrorEnum Reason { get; set; } = errorReason; - - public string? Exception { get; set; } = exception; -} - -public enum AssetsDeleteErrorEnum -{ - None, - CnIsNull, - UnableToDeleteAsset -} \ No newline at end of file diff --git a/src/Models/AssetsResponseModel.cs b/src/Models/AssetsResponseModel.cs new file mode 100644 index 0000000..3adcf47 --- /dev/null +++ b/src/Models/AssetsResponseModel.cs @@ -0,0 +1,7 @@ +public class AssetsResponseModel(bool successful, string exception = "none") +{ + public bool Success { get; set; } = successful; + + public string? Exception { get; set; } = exception; +} +