Refactor TestEnvelopeMailController for clarity

Updated using directives, added Obsolete attributes, and improved error handling in SendAccessCode method. Enhanced code clarity while preserving overall structure.
This commit is contained in:
tekh 2025-06-27 13:14:14 +02:00
parent d6cbd0597e
commit e628309734

View File

@ -1,48 +1,50 @@
using DigitalData.Core.DTO; using DigitalData.Core.Abstraction.Application.DTO;
using EnvelopeGenerator.Application.Contracts.Services; using EnvelopeGenerator.Application.Contracts.Services;
using EnvelopeGenerator.Application.DTOs.EnvelopeReceiver; using EnvelopeGenerator.Application.DTOs.EnvelopeReceiver;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using System.Net;
namespace EnvelopeGenerator.Web.Controllers.Test namespace EnvelopeGenerator.Web.Controllers.Test;
[ApiController]
[Route("api/test/[controller]")]
public class TestEnvelopeMailController : ControllerBase
{ {
[ApiController] private readonly ILogger<TestEnvelopeMailController> _logger;
[Route("api/test/[controller]")] [Obsolete("Use MediatR")]
public class TestEnvelopeMailController : ControllerBase private readonly IEnvelopeMailService _mailService;
[Obsolete("Use MediatR")]
private readonly IEnvelopeReceiverService _envRcvService;
[Obsolete("Use MediatR")]
public TestEnvelopeMailController(ILogger<TestEnvelopeMailController> logger, IEnvelopeMailService envelopeMailService, IEnvelopeReceiverService envelopeReceiverService)
{ {
private readonly ILogger<TestEnvelopeMailController> _logger; _logger = logger;
private readonly IEnvelopeMailService _mailService; _mailService = envelopeMailService;
private readonly IEnvelopeReceiverService _envRcvService; _envRcvService = envelopeReceiverService;
}
public TestEnvelopeMailController(ILogger<TestEnvelopeMailController> logger, IEnvelopeMailService envelopeMailService, IEnvelopeReceiverService envelopeReceiverService) [HttpGet]
{ [Obsolete("Use MediatR")]
_logger = logger; public async Task<IActionResult> SendAccessCode([FromQuery] string envelopeReceiverId = "ZDlmYjZmYjctNTBhNS00NTcyLWI5NTQtYzJjYmY4N2UwZmZhOjowRDI3MkEwNTdGMjRBMkY3MEZDMzM3QkRBQzA1MjYxRjU3NTI2QzgxQ0IyMUE5NzE1RjA1NTJFQzdFNjIwNjY1")
_mailService = envelopeMailService; {
_envRcvService = envelopeReceiverService; return await _envRcvService.ReadByEnvelopeReceiverIdAsync(envelopeReceiverId: envelopeReceiverId).ThenAsync<EnvelopeReceiverDto, IActionResult>(
} SuccessAsync: async er =>
{
[HttpGet]
public async Task<IActionResult> SendAccessCode([FromQuery] string envelopeReceiverId = "ZDlmYjZmYjctNTBhNS00NTcyLWI5NTQtYzJjYmY4N2UwZmZhOjowRDI3MkEwNTdGMjRBMkY3MEZDMzM3QkRBQzA1MjYxRjU3NTI2QzgxQ0IyMUE5NzE1RjA1NTJFQzdFNjIwNjY1") var mailRes = await _mailService.SendAccessCodeAsync(envelopeReceiverDto: er);
{ if (mailRes.IsFailed)
return await _envRcvService.ReadByEnvelopeReceiverIdAsync(envelopeReceiverId: envelopeReceiverId).ThenAsync<EnvelopeReceiverDto, IActionResult>(
SuccessAsync: async er =>
{ {
_logger.LogNotice(mailRes);
return StatusCode(500, mailRes.Notices);
}
return Ok();
var mailRes = await _mailService.SendAccessCodeAsync(envelopeReceiverDto: er); },
if (mailRes.IsFailed) Fail: (messages, notices) =>
{ {
_logger.LogNotice(mailRes); _logger.LogNotice(notices);
return StatusCode(500, mailRes.Notices); return StatusCode(500, notices);
} });
return Ok();
},
Fail: (messages, notices) =>
{
_logger.LogNotice(notices);
return StatusCode(500, notices);
});
}
} }
} }