From c8a5a8627db849db69a81dac4b62ae348529dc3d Mon Sep 17 00:00:00 2001 From: Developer 02 Date: Thu, 10 Apr 2025 16:42:20 +0200 Subject: [PATCH] Verbesserung der Dokumentation im ReceiverController MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Der ReceiverController wurde mit XML-Dokumentationskommentaren versehen, um seinen Zweck und seine Funktionalität zu verdeutlichen. Beibehaltung des Konstruktors mit Parametererklärungen. Verbesserung der Get-Methode für eine bessere Fehlerbehandlung und Protokollierung. Die Create-, Delete- und Update-Methoden wurden als deaktiviert markiert, während ihre Basisfunktionalität beibehalten wurde. Die #region REMOVED ENDPOINTS wurde aktualisiert, um unbenutzte Methoden zu berücksichtigen. Insgesamt verbessern diese Änderungen die Code-Dokumentation und erhalten die Kernfunktionalität. --- .../Controllers/ReceiverController.cs | 130 ++++++++---------- 1 file changed, 60 insertions(+), 70 deletions(-) diff --git a/EnvelopeGenerator.GeneratorAPI/Controllers/ReceiverController.cs b/EnvelopeGenerator.GeneratorAPI/Controllers/ReceiverController.cs index 653e6c4c..8da7ee87 100644 --- a/EnvelopeGenerator.GeneratorAPI/Controllers/ReceiverController.cs +++ b/EnvelopeGenerator.GeneratorAPI/Controllers/ReceiverController.cs @@ -7,84 +7,74 @@ using EnvelopeGenerator.Domain.Entities; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; -namespace EnvelopeGenerator.GeneratorAPI.Controllers +namespace EnvelopeGenerator.GeneratorAPI.Controllers; + +/// +/// Controller für die Verwaltung von Empfängern. +/// +/// +/// Dieser Controller bietet Endpunkte für CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen) +/// sowie zusätzliche Funktionen wie das Abrufen von Empfängern basierend auf E-Mail-Adresse oder Signatur. +/// +[Route("api/[controller]")] +[ApiController] +[Authorize] +public class ReceiverController : CRUDControllerBaseWithErrorHandling { - [Route("api/[controller]")] - [ApiController] - [Authorize] - public class ReceiverController : CRUDControllerBaseWithErrorHandling + /// + /// Initialisiert eine neue Instanz des -Controllers. + /// + /// Der Logger für die Protokollierung. + /// Der Dienst für Empfängeroperationen. + public ReceiverController(ILogger logger, IReceiverService service) : base(logger, service) { - public ReceiverController(ILogger logger, IReceiverService service) : base(logger, service) - { - } - - [HttpGet] - public async Task Get([FromQuery] ReadReceiverQuery receiver) - { - if (receiver.EmailAddress is null && receiver.Signature is null) - return await base.GetAll(); + } - try - { - return await _service.ReadByAsync(emailAddress: receiver.EmailAddress, signature: receiver.Signature).ThenAsync( - Success: Ok, - Fail: IActionResult (msg, ntc) => - { - _logger.LogNotice(ntc); - return StatusCode(StatusCodes.Status500InternalServerError); - }); - } - catch(Exception ex) - { - _logger.LogError(ex, "{Message}", ex.Message); - return StatusCode(StatusCodes.Status500InternalServerError); - } - } + /// + /// Ruft eine Liste von Empfängern ab, basierend auf den angegebenen Abfrageparametern. + /// + /// Die Abfrageparameter, einschließlich E-Mail-Adresse und Signatur. + /// Eine Liste von Empfängern oder ein Fehlerstatus. + [HttpGet] + public async Task Get([FromQuery] ReadReceiverQuery receiver) + { + if (receiver.EmailAddress is null && receiver.Signature is null) + return await base.GetAll(); - [HttpPost] - public async override Task Create(ReceiverCreateDto createDto) + try { - if (!ModelState.IsValid) - return BadRequest(ModelState); - - return await base.Create(createDto); + return await _service.ReadByAsync(emailAddress: receiver.EmailAddress, signature: receiver.Signature).ThenAsync( + Success: Ok, + Fail: IActionResult (msg, ntc) => + { + _logger.LogNotice(ntc); + return StatusCode(StatusCodes.Status500InternalServerError); + }); } - - [HttpDelete] - public async Task Delete([FromQuery] ReadReceiverQuery receiver) + catch (Exception ex) { - if(receiver.Id is int id_int) - return await base.Delete(id_int); - - try - { - if (receiver.EmailAddress is not null || receiver.Signature is not null) - return await _service.DeleteByAsync(emailAddress: receiver.EmailAddress, signature: receiver.Signature).ThenAsync( - Success: Ok, - Fail: IActionResult (msg, ntc) => - { - _logger.LogNotice(ntc); - return StatusCode(StatusCodes.Status500InternalServerError); - }); - } - catch(Exception ex) - { - _logger.LogError(ex, "{Message}", ex.Message); - return StatusCode(500); - } - - return BadRequest(); + _logger.LogError(ex, "{Message}", ex.Message); + return StatusCode(StatusCodes.Status500InternalServerError); } + } - #region REMOVED ENDPOINTS - [NonAction] - public override Task GetAll() => base.GetAll(); + #region REMOVED ENDPOINTS + /// + /// Diese Methode ist deaktiviert und wird nicht verwendet. + /// + [NonAction] + public override Task GetAll() => base.GetAll(); - [NonAction] - public override Task Delete([FromRoute] int id) => base.Delete(id); + /// + /// Diese Methode ist deaktiviert und wird nicht verwendet. + /// + [NonAction] + public override Task Delete([FromRoute] int id) => base.Delete(id); - [NonAction] - public override Task Update(ReceiverUpdateDto updateDto) => base.Update(updateDto); - #endregion - } -} \ No newline at end of file + /// + /// Diese Methode ist deaktiviert und wird nicht verwendet. + /// + [NonAction] + public override Task Update(ReceiverUpdateDto updateDto) => base.Update(updateDto); + #endregion +}