feat(notification): add admin rest management and deletion
Add revision-safe service and template APIs, channel mapping, and validated admin controls. Ref: IT-1601
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
using HrynCo.NotificationService.DAL.Abstract.Providers;
|
||||
|
||||
namespace HrynCo.NotificationService.Web.Controllers.Api.EmailChannels;
|
||||
|
||||
internal static class EmailChannelMapping
|
||||
{
|
||||
public static SmtpChannelSettings ToSettings(SmtpChannelSettingsDto settings) => new()
|
||||
{
|
||||
Host = settings.Host, Port = settings.Port, Username = settings.Username, Password = settings.Password,
|
||||
UseSsl = settings.UseSsl, FromEmail = settings.FromEmail, FromName = settings.FromName
|
||||
};
|
||||
|
||||
public static EmailChannelDto Map(EmailChannel channel)
|
||||
{
|
||||
var smtp = (SmtpChannelSettings)channel.Settings;
|
||||
return new EmailChannelDto(channel.Id, channel.ServiceName, channel.Priority, channel.EmailChannelType,
|
||||
new SmtpChannelSettingsDto
|
||||
{
|
||||
Host = smtp.Host, Port = smtp.Port, Username = smtp.Username, Password = smtp.Password,
|
||||
UseSsl = smtp.UseSsl, FromEmail = smtp.FromEmail, FromName = smtp.FromName
|
||||
}, channel.DailyLimit, channel.MonthlyLimit, channel.WarnThresholdPercent, channel.IsActive, channel.Created, channel.Updated);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user