TiamGrid is in progress...

This commit is contained in:
jozsef.b@aycode.com 2024-05-31 09:23:10 +02:00
parent 767a5b20fc
commit 494c5b26bb
9 changed files with 323 additions and 104 deletions

View File

@ -13,7 +13,7 @@ public class SignalRTags : AcSignalRTags
[SignalMessageTag(typeof(SignalPostJsonDataMessage<Transfer>), typeof(SignalResponseMessage<string>), null, null)] [SignalMessageTag(typeof(SignalPostJsonDataMessage<Transfer>), typeof(SignalResponseMessage<string>), null, null)]
public const int UpdateTransferAsync = 7; public const int UpdateTransferAsync = 7;
public const int AddTransferAsync = 8; public const int AddTransferAsync = 8;
public const int DeleteTransferAsync = 9; public const int RemoveTransferAsync = 9;
public const int GetCompaniesAsync = 10; public const int GetCompaniesAsync = 10;
public const int UpdateCompanyAsync = 11; public const int UpdateCompanyAsync = 11;
public const int CreateCompanyAsync = 12; public const int CreateCompanyAsync = 12;

View File

@ -27,7 +27,7 @@
@inject IServiceProviderDataService serviceProviderDataService @inject IServiceProviderDataService serviceProviderDataService
@inject IUserDataService userDataService @inject IUserDataService userDataService
@inject ISessionService sessionService @inject ISessionService sessionService
@inject DevAdminSignalClient devAdminSignalClient; @inject AdminSignalRClient AdminSignalRClient;
<PageTitle>Admin - Companies</PageTitle> <PageTitle>Admin - Companies</PageTitle>
<div class="text-center m-5"> <div class="text-center m-5">
@ -333,7 +333,7 @@
//remove orderData from orderData array //remove orderData from orderData array
_logger.Info($"companyData deleting; companyId: {company.Id}"); _logger.Info($"companyData deleting; companyId: {company.Id}");
var response = await devAdminSignalClient.PostDataAsync(SignalRTags.DeleteCompanyAsync, company); var response = await AdminSignalRClient.PostDataAsync(SignalRTags.DeleteCompanyAsync, company);
//resultCompany = await serviceProviderDataService.DeleteServiceProviderAsync(company.Id); //resultCompany = await serviceProviderDataService.DeleteServiceProviderAsync(company.Id);
//await UpdateDataAsync(); //await UpdateDataAsync();

View File

@ -20,13 +20,14 @@
@using AyCode.Core.Helpers @using AyCode.Core.Helpers
@using AyCode.Interfaces.Entities @using AyCode.Interfaces.Entities
@using TIAM.Services @using TIAM.Services
@using TIAMSharedUI.Shared.Components
@layout AdminLayout @layout AdminLayout
@inject IEnumerable<IAcLogWriterClientBase> LogWriters @inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inject IStringLocalizer<TIAMResources> localizer @inject IStringLocalizer<TIAMResources> localizer
@inject IWizardProcessor wizardProcessor @inject IWizardProcessor wizardProcessor
@inject ITransferDataService transferDataService @inject ITransferDataService transferDataService
@inject ISessionService sessionService @inject ISessionService sessionService
@inject DevAdminSignalClient devAdminSignalClient; @inject AdminSignalRClient AdminSignalRClient;
<PageTitle>Transfers</PageTitle> <PageTitle>Transfers</PageTitle>
<div class="text-center m-5"> <div class="text-center m-5">
@ -78,14 +79,24 @@
Click="ColumnChooserButton_Click" /> Click="ColumnChooserButton_Click" />
</div> </div>
<DxGrid @ref="Grid2" <TiamGrid @ref="TransferGrid"
Data="TransferDataList" TDataItem="Transfer"
AutoCollapseDetailRow="AutoCollapseDetailRow" Logger="_logger"
KeyboardNavigationEnabled="true" SignalRClient="AdminSignalRClient"
GetAllMessageTag="SignalRTags.GetTransfersAsync"
AddMessageTag="SignalRTags.AddTransferAsync"
UpdateMessageTag="SignalRTags.UpdateTransferAsync"
RemoveMessageTag="SignalRTags.RemoveTransferAsync"
OnDataSourceChanged="DataSourceChanged"
OnDataSourceItemChanged="DataSourceItemChanged"
OnDataItemDeleting="DataItemDeleting"
CustomizeElement="Grid_CustomizeElement" CustomizeElement="Grid_CustomizeElement"
CustomizeEditModel="Grid_CustomizeEditModel" CustomizeEditModel="Grid_CustomizeEditModel"
EditModelSaving="Grid_EditModelSaving" EditModelSaving="Grid_EditModelSaving"
DataItemDeleting="Grid_DataItemDeleting"
AutoCollapseDetailRow="AutoCollapseDetailRow"
KeyboardNavigationEnabled="true"
EditMode="GridEditMode.EditForm" EditMode="GridEditMode.EditForm"
ColumnResizeMode="GridColumnResizeMode.NextColumn" ColumnResizeMode="GridColumnResizeMode.NextColumn"
ShowFilterRow="true" ShowFilterRow="true"
@ -124,7 +135,7 @@
</DxGridDataColumn> </DxGridDataColumn>
</Columns> </Columns>
<DetailRowTemplate> <DetailRowTemplate>
<Grid_MasterDetail_NestedGrid_DetailContent Customer="(TIAM.Entities.Transfers.Transfer)context.DataItem" KeyboardNavigationEnabled="true" /> <Grid_MasterDetail_NestedGrid_DetailContent Customer="(Transfer)context.DataItem" KeyboardNavigationEnabled="true" />
</DetailRowTemplate> </DetailRowTemplate>
<EditFormTemplate Context="EditFormContext"> <EditFormTemplate Context="EditFormContext">
@{ @{
@ -163,8 +174,7 @@
</EditFormTemplate> </EditFormTemplate>
</DxGrid> </TiamGrid>
</div> </div>
</DxTabPage> </DxTabPage>
@ -208,13 +218,12 @@
//public Transfer myModel = new Transfer(); //public Transfer myModel = new Transfer();
public List<Transfer> TransferDataList { get; set; } //public List<Transfer> TransferDataList { get; set; }
bool PopupVisible { get; set; } bool PopupVisible { get; set; }
IGrid Grid2 { get; set; } TiamGrid<Transfer> TransferGrid { get; set; }
object MasterGridData { get; set; }
bool AutoCollapseDetailRow { get; set; } bool AutoCollapseDetailRow { get; set; }
public List<string> IgnoreList = public List<string> IgnoreList =
@ -306,19 +315,19 @@
void Grid_CustomizeElement(GridCustomizeElementEventArgs e) void Grid_CustomizeElement(GridCustomizeElementEventArgs e)
{ {
if (e.ElementType == GridElementType.DataRow && (System.Byte)e.Grid.GetRowValue(e.VisibleIndex, "TransferStatusType") == 5) if (e.ElementType == GridElementType.DataRow && (byte)e.Grid.GetRowValue(e.VisibleIndex, "TransferStatusType") == 5)
{ {
e.CssClass = "bg-important"; e.CssClass = "bg-important";
} }
else if (e.ElementType == GridElementType.DataRow && (System.Byte)e.Grid.GetRowValue(e.VisibleIndex, "TransferStatusType") > 5 && (System.Byte)e.Grid.GetRowValue(e.VisibleIndex, "TransferStatusType") < 35) else if (e.ElementType == GridElementType.DataRow && (byte)e.Grid.GetRowValue(e.VisibleIndex, "TransferStatusType") > 5 && (byte)e.Grid.GetRowValue(e.VisibleIndex, "TransferStatusType") < 35)
{ {
e.CssClass = "bg-attention"; e.CssClass = "bg-attention";
} }
else if (e.ElementType == GridElementType.DataRow && (System.Byte)e.Grid.GetRowValue(e.VisibleIndex, "TransferStatusType") == 35) else if (e.ElementType == GridElementType.DataRow && (byte)e.Grid.GetRowValue(e.VisibleIndex, "TransferStatusType") == 35)
{ {
e.CssClass = "bg-finished"; e.CssClass = "bg-finished";
} }
else if (e.ElementType == GridElementType.DataRow && (System.Byte)e.Grid.GetRowValue(e.VisibleIndex, "TransferStatusType") > 35) else if (e.ElementType == GridElementType.DataRow && (byte)e.Grid.GetRowValue(e.VisibleIndex, "TransferStatusType") > 35)
{ {
e.CssClass = "bg-cancel"; e.CssClass = "bg-cancel";
} }
@ -345,16 +354,14 @@
transferEditModel.ContactEmail = "your@email.address"; transferEditModel.ContactEmail = "your@email.address";
} }
async Task Grid_DataItemDeleting(GridDataItemDeletingEventArgs e) async Task DataItemDeleting(GridDataItemDeletingEventArgs e)
{ {
var transfer = (Transfer)e.DataItem; _logger.Info($"ManageTransfers OnItemDeleting");
//await NwindDataService.RemoveEmployeeAsync((EditableEmployee)e.DataItem); // var transfer = (Transfer)e.DataItem;
//remove orderData from orderData array // _logger.Info("ManageTransfers delete");
_logger.Info("transfer delete"); // PostDataToServerAsync(transfer, SignalRTags.DeleteTransferAsync, true).Forget();
// //await UpdateDataAsync();
PostDataToServerAsync(transfer, SignalRTags.DeleteTransferAsync, true).Forget();
//await UpdateDataAsync();
} }
@ -375,9 +382,9 @@
{ {
_logger.Info("PostDataToServerAsync called; transferId " + transfer.Id); _logger.Info("PostDataToServerAsync called; transferId " + transfer.Id);
RefreshDataSources(transfer, isDelete); //egyből látszódik a változás a grid-ben, nem csak a callback lefutásakor! felhasználóbarátabb... - J. RefreshAppointments(transfer, isDelete); //egyből látszódik a változás a grid-ben, nem csak a callback lefutásakor! felhasználóbarátabb... - J.
return devAdminSignalClient.PostDataAsync(messageTag, transfer, repsonse => return AdminSignalRClient.PostDataAsync(messageTag, transfer, repsonse =>
{ {
if (repsonse.Status != SignalResponseStatus.Success || repsonse.ResponseData == null) if (repsonse.Status != SignalResponseStatus.Success || repsonse.ResponseData == null)
{ {
@ -385,23 +392,23 @@
return; return;
} }
RefreshDataSources(repsonse.ResponseData, isDelete); RefreshAppointments(repsonse.ResponseData, isDelete);
StateHasChanged(); StateHasChanged();
}); });
//transfer = await devAdminSignalClient.PostDataAsync(SignalRTags.UpdateTransferAsync, transfer); //transfer = await devAdminSignalClient.PostDataAsync(SignalRTags.UpdateTransferAsync, transfer);
} }
private void RefreshDataSources(Transfer transfer, bool isDelete) private void RefreshAppointments(Transfer transfer, bool isDelete)
{ {
var transferIndex = TransferDataList.FindIndex(x => x.Id == transfer.Id); // var transferIndex = TransferDataList.FindIndex(x => x.Id == transfer.Id);
if (isDelete && transferIndex > -1) TransferDataList.RemoveAt(transferIndex); // if (isDelete && transferIndex > -1) TransferDataList.RemoveAt(transferIndex);
else // else
{ // {
if (transferIndex > -1) TransferDataList[transferIndex] = transfer; // if (transferIndex > -1) TransferDataList[transferIndex] = transfer;
else TransferDataList.Add(transfer); // else TransferDataList.Add(transfer);
} // }
var appointmentIndex = AppointmentModels.FindIndex(x => x.SourceId == transfer.Id); var appointmentIndex = AppointmentModels.FindIndex(x => x.SourceId == transfer.Id);
if (isDelete && appointmentIndex > -1) AppointmentModels.RemoveAt(appointmentIndex); if (isDelete && appointmentIndex > -1) AppointmentModels.RemoveAt(appointmentIndex);
@ -418,12 +425,12 @@
{ {
_logger.Info("UpdateAllDataAsync called"); _logger.Info("UpdateAllDataAsync called");
return devAdminSignalClient.GetAllAsync<List<Transfer>>(SignalRTags.GetTransfersAsync, response => return AdminSignalRClient.GetAllAsync<List<Transfer>>(SignalRTags.GetTransfersAsync, response =>
{ {
if (response.Status == SignalResponseStatus.Error) if (response.Status == SignalResponseStatus.Error)
return; return;
InitializeDataSources(response.ResponseData ?? []); InitializeAppointments(response.ResponseData ?? []);
StateHasChanged(); StateHasChanged();
}); });
} }
@ -432,7 +439,7 @@
{ {
_logger = new LoggerClient<ManageTransfers>(LogWriters.ToArray()); _logger = new LoggerClient<ManageTransfers>(LogWriters.ToArray());
UpdateAllDataAsync().Forget(); //UpdateAllDataAsync().Forget();
//var transfers = await devAdminSignalClient.GetAllAsync<List<Transfer>>(SignalRTags.GetTransfersAsync); //var transfers = await devAdminSignalClient.GetAllAsync<List<Transfer>>(SignalRTags.GetTransfersAsync);
//InitializeDataSources(transfers ?? []); //InitializeDataSources(transfers ?? []);
@ -443,12 +450,13 @@
return base.OnInitializedAsync(); return base.OnInitializedAsync();
} }
private void InitializeDataSources(List<Transfer> transferDataList) private void InitializeAppointments(ICollection<Transfer> transferDataList)
{ {
TransferDataList = transferDataList; _logger.Info("InitializeAppointments called");
AppointmentModels = new List<AppointmentModel>(TransferDataList.Count);
foreach (var transfer in TransferDataList) AppointmentModels = new List<AppointmentModel>(transferDataList.Count);
foreach (var transfer in transferDataList)
{ {
// var bnm = DataStorage.CreateAppointmentItem(); // var bnm = DataStorage.CreateAppointmentItem();
// bnm.Start = transfer.Appointment; // bnm.Start = transfer.Appointment;
@ -486,7 +494,7 @@
void ColumnChooserButton_Click() void ColumnChooserButton_Click()
{ {
Grid2.ShowColumnChooser(); TransferGrid.ShowColumnChooser();
} }
@ -494,7 +502,7 @@
{ {
if (firstRender) if (firstRender)
{ {
Grid2.ExpandDetailRow(0); TransferGrid.ExpandDetailRow(0);
} }
} }
void AutoCollapseDetailRow_Changed(bool newValue) void AutoCollapseDetailRow_Changed(bool newValue)
@ -502,16 +510,22 @@
AutoCollapseDetailRow = newValue; AutoCollapseDetailRow = newValue;
if (!newValue) return; if (!newValue) return;
Grid2.BeginUpdate(); TransferGrid.BeginUpdate();
Grid2.CollapseAllDetailRows(); TransferGrid.CollapseAllDetailRows();
Grid2.ExpandDetailRow(0); TransferGrid.ExpandDetailRow(0);
Grid2.EndUpdate(); TransferGrid.EndUpdate();
}
} }
private void DataSourceChanged(IList<Transfer> transfers)
{
_logger.Info("DataSourceChanged called");
InitializeAppointments(transfers);
}
private void DataSourceItemChanged(Transfer transfer)
{
_logger.Info("DataSourceItemChanged called");
}
} }

View File

@ -28,10 +28,8 @@ else
//public PopupMessageBox PopupMessageBox { get; private set; } = default!; //public PopupMessageBox PopupMessageBox { get; private set; } = default!;
[Parameter] [Parameter] public string LoggerCategory { get; set; }
public string LoggerCategory { get; set; } [Parameter] public EventCallback<Exception> OnError { get; set; }
[Parameter]
public EventCallback<Exception> OnError { get; set; }
protected override void OnInitialized() protected override void OnInitialized()
{ {
@ -78,3 +76,4 @@ else
_currentError = null; _currentError = null;
} }
} }

View File

@ -0,0 +1,184 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using AyCode.Core.Helpers;
using AyCode.Interfaces.Entities;
using AyCode.Services.Loggers;
using AyCode.Services.SignalRs;
using AyCode.Utils.Extensions;
using DevExpress.Blazor;
using DevExpress.Blazor.Internal;
using Microsoft.AspNetCore.Components;
using Newtonsoft.Json.Linq;
using TIAM.Entities.Transfers;
using TIAM.Services;
using TIAMWebApp.Shared.Application.Services;
using TIAMWebApp.Shared.Application.Utility;
namespace TIAMSharedUI.Shared.Components
{
public class TiamGrid<TDataItem> : DxGrid where TDataItem : class, IEntityGuid
{
private bool _initialParametersSet;
private IList<TDataItem>? _dataSource;
public TiamGrid() : base()
{ }
[Parameter] public LoggerClient Logger { get; set; }
[Parameter] public string GridName { get; set; }
[Parameter] public AcSignalRClientBase SignalRClient { get; set; }
[Parameter] public int GetAllMessageTag { get; set; }
[Parameter] public int GetItemMessageTag { get; set; }
[Parameter] public int AddMessageTag { get; set; }
[Parameter] public int UpdateMessageTag { get; set; }
[Parameter] public int RemoveMessageTag { get; set; }
[Parameter]
[DefaultValue(null)]
[System.Diagnostics.CodeAnalysis.SuppressMessage("Usage", "BL0007:Component parameters should be auto properties", Justification = "<Pending>")]
public IList<TDataItem>? DataSource
{
get
{
if (_dataSource == null && Data != null)
{
Logger.Error($"{GridName} Use the DataSource parameter instead of Data!");
throw new NullReferenceException($"{GridName} Use the DataSource parameter instead of Data!");
}
return _dataSource;
}
set
{
_dataSource = value;
Data = _dataSource;
OnDataSourceChanged.InvokeAsync(_dataSource);
}
}
protected override void OnInitialized()
{
base.OnInitialized();
}
protected override async Task OnAfterRenderAsync(bool firstRender)
{
await base.OnAfterRenderAsync(firstRender);
if (firstRender) RefreshDataSourceAsync().Forget();
}
[Parameter]
public EventCallback<GridDataItemDeletingEventArgs> OnDataItemDeleting{ get; set; }
protected new EventCallback<GridDataItemDeletingEventArgs> DataItemDeleting { get; set; }
[Parameter]
public EventCallback<GridDataItemDeletingEventArgs> OnDataItemDeleted { get; set; }
[Parameter]
public EventCallback<IList<TDataItem>> OnDataSourceChanged { get; set; }
[Parameter]
public EventCallback<TDataItem> OnDataSourceItemChanged { get; set; }
private async Task OnItemDeleting(GridDataItemDeletingEventArgs e)
{
Logger.Info($"{GridName} OnItemDeleting");
await OnDataItemDeleting.InvokeAsync(e);
if (e.Cancel)
{
Logger.Debug($"{GridName} OnItemDeleting canceled");
return;
}
var dataItem = e.DataItem as TDataItem;
//PostDataToServerAsync(transfer, SignalRTags.DeleteTransferAsync, true).Forget();
//await UpdateDataAsync();
Logger.Info($"{GridName} OnDataItemDeleted");
await OnDataItemDeleted.InvokeAsync(e);
}
public Task RefreshDataSourceAsync()
{
Logger.Info($"{GridName} UpdateAllDataAsync called");
return SignalRClient.GetAllAsync<IList<TDataItem>>(GetAllMessageTag, response =>
{
if (response.Status == SignalResponseStatus.Error)
return;
BeginUpdate();
DataSource = response.ResponseData ?? [];
EndUpdate();
InvokeAsync(StateHasChanged).Forget();
});
}
private Task PostDataToServerAsync(TDataItem transfer, int messageTag, bool isDelete = false)
{
Logger.Info($"{GridName} PostDataToServerAsync called; transferId " + transfer.Id);
RefreshDataSourceItem(transfer, isDelete); //egyből látszódik a változás a grid-ben, nem csak a callback lefutásakor! felhasználóbarátabb... - J.
return SignalRClient.PostDataAsync(messageTag, transfer, repsonse =>
{
if (repsonse.Status != SignalResponseStatus.Success || repsonse.ResponseData == null)
{
RefreshDataSourceAsync().Forget();
return;
}
RefreshDataSourceItem(repsonse.ResponseData, isDelete);
InvokeAsync(StateHasChanged).Forget();
});
//transfer = await devAdminSignalClient.PostDataAsync(SignalRTags.UpdateTransferAsync, transfer);
}
public void RefreshDataSourceItem(TDataItem dataItem, bool isDelete)
{
var transferIndex = _dataSource.FindIndex(x => x.Id == dataItem.Id);
if (isDelete && transferIndex > -1) _dataSource.RemoveAt(transferIndex);
else
{
if (transferIndex > -1) _dataSource[transferIndex] = dataItem;
else _dataSource.Add(dataItem);
}
OnDataSourceItemChanged.InvokeAsync(dataItem);
}
protected override Task SetParametersAsyncCore(ParameterView parameters)
{
if (!_initialParametersSet)
{
base.DataItemDeleting = EventCallback.Factory.Create<GridDataItemDeletingEventArgs>(this, OnItemDeleting);
//ShowFilterRow = true;
//PageSize = 4;
//ShowGroupPanel = true;
//AllowSort = false;
_initialParametersSet = true;
}
return base.SetParametersAsyncCore(parameters);
}
protected override void OnParametersSet()
{
base.OnParametersSet();
if (GridName.IsNullOrWhiteSpace()) GridName = $"[{typeof(TDataItem).Name}Grid]";
}
}
}

View File

@ -0,0 +1,19 @@
@using TIAMWebApp.Shared.Application.Utility
@using AyCode.Core.Extensions
@using AyCode.Services.Loggers
@using AyCode.Utils.Extensions
@inject IJSRuntime jsRuntime
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inherits DxGrid
@* @implements IGrid *@
@* @typeparam TDataType *@
@* <div>
@ChildContent
</div>
*@
@code {
}

View File

@ -44,7 +44,7 @@ builder.Services.AddSingleton(x => new ResourceManager("TIAMWebApp.Client.Resour
builder.Services.AddSingleton<IAcLogWriterClientBase, BrowserConsoleLogWriter>(); builder.Services.AddSingleton<IAcLogWriterClientBase, BrowserConsoleLogWriter>();
builder.Services.AddSingleton<IAcLogWriterClientBase, SignaRClientLogItemWriter>(); builder.Services.AddSingleton<IAcLogWriterClientBase, SignaRClientLogItemWriter>();
//builder.Services.AddSingleton<IAcLogWriterClientBase, HttpClientLogItemWriter>(); //builder.Services.AddSingleton<IAcLogWriterClientBase, HttpClientLogItemWriter>();
builder.Services.AddSingleton<DevAdminSignalClient>(); builder.Services.AddSingleton<AdminSignalRClient>();
builder.Services.AddSingleton<SignalRService>(); builder.Services.AddSingleton<SignalRService>();
builder.Services.AddSingleton<SumupService>(); builder.Services.AddSingleton<SumupService>();
builder.Services.AddScoped<AuthenticationStateProvider, CustomAuthStateProvider>(); builder.Services.AddScoped<AuthenticationStateProvider, CustomAuthStateProvider>();

View File

@ -21,7 +21,7 @@ using TIAMWebApp.Shared.Application.Utility;
namespace TIAMWebApp.Shared.Application.Services namespace TIAMWebApp.Shared.Application.Services
{ {
public class DevAdminSignalClient(IEnumerable<IAcLogWriterClientBase> logWriters) : AcSignalRClientBase("DevAdminHub", logWriters); public class AdminSignalRClient(IEnumerable<IAcLogWriterClientBase> logWriters) : AcSignalRClientBase("DevAdminHub", logWriters);
public abstract class AcSignalRClientBase : IAcSignalRHubClient public abstract class AcSignalRClientBase : IAcSignalRHubClient
{ {
@ -162,6 +162,9 @@ namespace TIAMWebApp.Shared.Application.Services
public virtual Task SendMessageToServerAsync<TResponseData>(int messageTag, ISignalRMessage? message, Action<ISignalResponseMessage<TResponseData?>> responseCallback) public virtual Task SendMessageToServerAsync<TResponseData>(int messageTag, ISignalRMessage? message, Action<ISignalResponseMessage<TResponseData?>> responseCallback)
{ {
if (messageTag == 0)
Logger.Error($"SendMessageToServerAsync; messageTag == 0");
var requestId = AcDomain.NextUniqueInt32; var requestId = AcDomain.NextUniqueInt32;
_responseByRequestId[requestId] = new Action<ISignalResponseMessage<string>>(responseMessage => _responseByRequestId[requestId] = new Action<ISignalResponseMessage<string>>(responseMessage =>

View File

@ -29,14 +29,14 @@ namespace TIAMWebApp.Shared.Application.Services
private readonly ISecureStorageHandler secureStorageHandler; private readonly ISecureStorageHandler secureStorageHandler;
private readonly LoggerClient<ServiceProviderDataService> _logger; private readonly LoggerClient<ServiceProviderDataService> _logger;
private DevAdminSignalClient _devAdminSignalClient; private AdminSignalRClient _adminSignalRClient;
public ServiceProviderDataService(HttpClient http, ISecureStorageHandler secureStorageHandler, DevAdminSignalClient devAdminSignalClient, IEnumerable<IAcLogWriterClientBase> logWriters) public ServiceProviderDataService(HttpClient http, ISecureStorageHandler secureStorageHandler, AdminSignalRClient adminSignalRClient, IEnumerable<IAcLogWriterClientBase> logWriters)
{ {
this.http = http; this.http = http;
this.secureStorageHandler = secureStorageHandler; this.secureStorageHandler = secureStorageHandler;
_devAdminSignalClient = devAdminSignalClient; _adminSignalRClient = adminSignalRClient;
_logger = new LoggerClient<ServiceProviderDataService>(logWriters.ToArray()); _logger = new LoggerClient<ServiceProviderDataService>(logWriters.ToArray());
} }
@ -98,7 +98,7 @@ namespace TIAMWebApp.Shared.Application.Services
//17. //17.
public Task GetPropertiesByOwnerIdAsync(Guid id, Action<Dictionary<Guid, string>?> callback) public Task GetPropertiesByOwnerIdAsync(Guid id, Action<Dictionary<Guid, string>?> callback)
{ {
return _devAdminSignalClient.GetByIdAsync<Dictionary<Guid, string>>(SignalRTags.GetPropertiesByOwnerIdAsync, id, response => return _adminSignalRClient.GetByIdAsync<Dictionary<Guid, string>>(SignalRTags.GetPropertiesByOwnerIdAsync, id, response =>
{ {
if (response.Status == SignalResponseStatus.Error) if (response.Status == SignalResponseStatus.Error)
callback.Invoke(null); callback.Invoke(null);
@ -112,7 +112,7 @@ namespace TIAMWebApp.Shared.Application.Services
//17. //17.
public async Task<Dictionary<Guid, string>?> GetPropertiesByOwnerIdAsync(Guid id) public async Task<Dictionary<Guid, string>?> GetPropertiesByOwnerIdAsync(Guid id)
{ {
var companyPropertiesByOwner = await _devAdminSignalClient.GetByIdAsync<Dictionary<Guid, string>>(SignalRTags.GetPropertiesByOwnerIdAsync, id); var companyPropertiesByOwner = await _adminSignalRClient.GetByIdAsync<Dictionary<Guid, string>>(SignalRTags.GetPropertiesByOwnerIdAsync, id);
if (companyPropertiesByOwner != null) _logger.DetailConditional($"companyPropertiesByOwner: {string.Join("; ", companyPropertiesByOwner.Values)}"); if (companyPropertiesByOwner != null) _logger.DetailConditional($"companyPropertiesByOwner: {string.Join("; ", companyPropertiesByOwner.Values)}");
return companyPropertiesByOwner; return companyPropertiesByOwner;
@ -146,7 +146,7 @@ namespace TIAMWebApp.Shared.Application.Services
//16. //16.
public async Task<List<Company>> GetServiceProvidersAsync() public async Task<List<Company>> GetServiceProvidersAsync()
{ {
var companies = await _devAdminSignalClient.GetAllAsync<List<Company>>(SignalRTags.GetCompaniesAsync); var companies = await _adminSignalRClient.GetAllAsync<List<Company>>(SignalRTags.GetCompaniesAsync);
if (companies != null) _logger.DetailConditional($"companies: {string.Join("; ", companies.Count)}"); if (companies != null) _logger.DetailConditional($"companies: {string.Join("; ", companies.Count)}");
return companies; return companies;
@ -167,7 +167,7 @@ namespace TIAMWebApp.Shared.Application.Services
//14. //14.
public async Task<Company> UpdateServiceProviderAsync(Company company) public async Task<Company> UpdateServiceProviderAsync(Company company)
{ {
var result = await _devAdminSignalClient.PostDataAsync(SignalRTags.UpdateCompanyAsync, company); var result = await _adminSignalRClient.PostDataAsync(SignalRTags.UpdateCompanyAsync, company);
return result; return result;
} }