Refactor ReadReceiverNameQuery and improve validation

- Removed parameters from ReadReceiverNameQuery, simplifying its structure.
- Added null check for EmailAddress in GetReceiverName method to enhance input validation.
This commit is contained in:
Developer 02 2025-05-09 10:53:44 +02:00
parent 5ce6c25393
commit 7f97fd3113
2 changed files with 4 additions and 3 deletions

View File

@ -6,8 +6,6 @@ namespace EnvelopeGenerator.Application.Envelopes.Queries.ReceiverName;
/// Eine Abfrage, um die zuletzt verwendete Anrede eines Empfängers zu ermitteln, /// Eine Abfrage, um die zuletzt verwendete Anrede eines Empfängers zu ermitteln,
/// damit diese für zukünftige Umschläge wiederverwendet werden kann. /// damit diese für zukünftige Umschläge wiederverwendet werden kann.
/// </summary> /// </summary>
/// <param name="Envelope">Der Umschlag, für den die Anrede des Empfängers ermittelt werden soll.</param> public record ReadReceiverNameQuery() : ReadReceiverQuery
/// <param name="OnlyLast">Gibt an, ob nur die zuletzt verwendete Anrede zurückgegeben werden soll.</param>
public record ReadReceiverNameQuery(EnvelopeQuery? Envelope = null, bool OnlyLast = true) : ReadReceiverQuery
{ {
} }

View File

@ -125,6 +125,9 @@ public class EnvelopeReceiverController : ControllerBase
[HttpGet("salute")] [HttpGet("salute")]
public async Task<IActionResult> GetReceiverName([FromQuery] ReadReceiverNameQuery receiverName) public async Task<IActionResult> GetReceiverName([FromQuery] ReadReceiverNameQuery receiverName)
{ {
if (receiverName.EmailAddress is null)
return BadRequest();
return await _erService.ReadLastUsedReceiverNameByMail(receiverName.EmailAddress).ThenAsync( return await _erService.ReadLastUsedReceiverNameByMail(receiverName.EmailAddress).ThenAsync(
Success: res => res is null ? Ok(string.Empty) : Ok(res), Success: res => res is null ? Ok(string.Empty) : Ok(res),
Fail: IActionResult (msg, ntc) => Fail: IActionResult (msg, ntc) =>