diff --git a/WebDoorCreator.UI/Components/Hardware/HardwareNewPanel.razor b/WebDoorCreator.UI/Components/Hardware/HardwareNewPanel.razor
index 4bfdacf..56073e0 100644
--- a/WebDoorCreator.UI/Components/Hardware/HardwareNewPanel.razor
+++ b/WebDoorCreator.UI/Components/Hardware/HardwareNewPanel.razor
@@ -1,12 +1,19 @@
@if (DoorOpList != null)
{
-
- @foreach (var item in DoorOpList)
- {
-
-
-
- }
-
+ @if (isLoading)
+ {
+
+ }
+ else
+ {
+
+ @foreach (var item in DoorOpList)
+ {
+
+
+
+ }
+
+ }
}
diff --git a/WebDoorCreator.UI/Components/Hardware/HardwareNewPanel.razor.cs b/WebDoorCreator.UI/Components/Hardware/HardwareNewPanel.razor.cs
index 32916f8..8db9840 100644
--- a/WebDoorCreator.UI/Components/Hardware/HardwareNewPanel.razor.cs
+++ b/WebDoorCreator.UI/Components/Hardware/HardwareNewPanel.razor.cs
@@ -70,7 +70,7 @@ namespace WebDoorCreator.UI.Components.Hardware
{
DOPEventArgs currArgs = (DOPEventArgs)e;
// SE sono sula porta indicata + objId corretto --> refresh
- if (currArgs.DoorId == DoorId)//&& currArgs.ObjectId == obid )
+ if (currArgs.DoorId == DoorId && currArgs.ObjectId == HwCode)
{
var pupd = InvokeAsync(async () => await ReloadData());
}
@@ -126,14 +126,18 @@ namespace WebDoorCreator.UI.Components.Hardware
#region Private Methods
+ protected bool isLoading { get; set; } = false;
+
private async Task ReloadData()
{
+ isLoading = true;
var ListRecord = await WDCService.DoorOpGetByDoorId(DoorId);
var tempListVal = await WDCService.ListValuesGetAll(HwCode, "Folder");
if (ListRecord != null)
{
DoorOpList = ListRecord.Where(x => (x.DoorId == DoorId) && (x.ObjectId == HwCode)).ToList();
}
+ isLoading = false;
}
#endregion Private Methods
diff --git a/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor.cs b/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor.cs
index 2536702..99400ae 100644
--- a/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor.cs
+++ b/WebDoorCreator.UI/Components/Hardware/HwSingleInstance.razor.cs
@@ -5,6 +5,7 @@ using Newtonsoft.Json;
using WebDoorCreator.Data.DbModels;
using WebDoorCreator.Data.Services;
using WebDoorCreator.UI.Data;
+using static WebDoorCreator.UI.Data.WDCRefreshService;
namespace WebDoorCreator.UI.Components.Hardware
{
@@ -231,6 +232,35 @@ namespace WebDoorCreator.UI.Components.Hardware
await FullReloadData();
}
+
+#if false
+
+ private void WDCRefresh_EA_ConfDoorOp(object? sender, EventArgs e)
+ {
+ DOPEventArgs currArgs = (DOPEventArgs)e;
+ // SE sono sula porta indicata + objId corretto --> refresh
+ if (currArgs.DoorId == DoorOpInst.DoorId && currArgs.DoorOpId == DoorOpInst.DoorOpId && currArgs.ObjectId == DoorOpInst.ObjectId)//&& currArgs.ObjectId == obid )
+ {
+ var pupd = InvokeAsync(async () => await FullReloadData());
+ }
+ }
+
+ public void Dispose()
+ {
+ WDCRefresh.EA_ConfDoorOp -= WDCRefresh_EA_ConfDoorOp;
+ }
+
+ [Inject]
+ protected WDCRefreshService WDCRefresh { get; set; } = null!;
+
+ protected override async Task OnInitializedAsync()
+ {
+ await FullReloadData();
+ await Task.Delay(1);
+ WDCRefresh.EA_ConfDoorOp += WDCRefresh_EA_ConfDoorOp;
+ }
+#endif
+
protected string translate(string lemma)
{
string answ = "";