Resolve all high-severity architecture review findings

This commit is contained in:
Joseph Doherty
2026-09-09 16:13:58 -04:00
parent 8bfe65512e
commit 146a13238f
192 changed files with 3160 additions and 753 deletions
@@ -1,3 +1,6 @@
@using ZB.MOM.WW.ScadaBridge.CentralUI.Services
@using ZB.MOM.WW.ScadaBridge.Commons.Messages.Management
@inject IServiceProvider MutationServices
@page "/notifications/sms"
@using ZB.MOM.WW.ScadaBridge.Security
@using ZB.MOM.WW.ScadaBridge.Commons.Interfaces.Repositories
@@ -245,48 +248,18 @@
try
{
if (_editingSms != null)
if (_editingSms is null && typedAuthToken is null)
{
_editingSms.AccountSid = _accountSid.Trim();
_editingSms.FromNumber = string.IsNullOrWhiteSpace(_fromNumber) ? null : _fromNumber.Trim();
_editingSms.MessagingServiceSid = string.IsNullOrWhiteSpace(_messagingServiceSid)
? null
: _messagingServiceSid.Trim();
_editingSms.ApiBaseUrl = string.IsNullOrWhiteSpace(_apiBaseUrl) ? null : _apiBaseUrl.Trim();
// Preserve-if-blank: only overwrite the stored token when a new value was typed.
if (typedAuthToken != null)
{
_editingSms.AuthToken = typedAuthToken;
}
_editingSms.ConnectionTimeoutSeconds = _connectionTimeoutSeconds;
_editingSms.MaxRetries = _maxRetries;
_editingSms.RetryDelay = TimeSpan.FromSeconds(_retryDelaySeconds);
await NotificationRepository.UpdateSmsConfigurationAsync(_editingSms);
_formError = "Auth Token is required.";
return;
}
else
{
if (typedAuthToken == null)
{
_formError = "Auth Token is required.";
return;
}
var sms = new SmsConfigurationEntity(
_accountSid.Trim(),
string.IsNullOrWhiteSpace(_fromNumber) ? null : _fromNumber.Trim())
{
MessagingServiceSid = string.IsNullOrWhiteSpace(_messagingServiceSid)
? null
: _messagingServiceSid.Trim(),
ApiBaseUrl = string.IsNullOrWhiteSpace(_apiBaseUrl) ? null : _apiBaseUrl.Trim(),
AuthToken = typedAuthToken,
ConnectionTimeoutSeconds = _connectionTimeoutSeconds,
MaxRetries = _maxRetries,
RetryDelay = TimeSpan.FromSeconds(_retryDelaySeconds),
};
await NotificationRepository.AddSmsConfigurationAsync(sms);
}
await NotificationRepository.SaveChangesAsync();
var from = string.IsNullOrWhiteSpace(_fromNumber) ? null : _fromNumber.Trim();
var messaging = string.IsNullOrWhiteSpace(_messagingServiceSid) ? null : _messagingServiceSid.Trim();
await MutationServices.ExecuteConfigurationAsync(_editingSms is not null
? new UpdateSmsConfigCommand(_editingSms.Id, _accountSid.Trim(), from, messaging, _apiBaseUrl?.Trim() ?? "", typedAuthToken,
_connectionTimeoutSeconds, _maxRetries, TimeSpan.FromSeconds(_retryDelaySeconds))
: new CreateSmsConfigCommand(_accountSid.Trim(), from, messaging, _apiBaseUrl?.Trim(), typedAuthToken,
_connectionTimeoutSeconds, _maxRetries, TimeSpan.FromSeconds(_retryDelaySeconds)));
_showForm = false;
_toast.ShowSuccess("SMS configuration saved.");
await LoadAsync();