diff --git a/Resources/ChangeLog.html b/Resources/ChangeLog.html
index 48c7945..9bcf216 100644
--- a/Resources/ChangeLog.html
+++ b/Resources/ChangeLog.html
@@ -1,6 +1,6 @@
WebDoorCreator - Egalware
- Version: 0.9.2402.1617
+ Version: 0.9.2402.1618
Release note:
-
diff --git a/Resources/VersNum.txt b/Resources/VersNum.txt
index 55ec3f0..8a91594 100644
--- a/Resources/VersNum.txt
+++ b/Resources/VersNum.txt
@@ -1 +1 @@
-0.9.2402.1617
+0.9.2402.1618
diff --git a/Resources/manifest.xml b/Resources/manifest.xml
index 1d6d525..0dc6a94 100644
--- a/Resources/manifest.xml
+++ b/Resources/manifest.xml
@@ -1,6 +1,6 @@
-
- 0.9.2402.1617
+ 0.9.2402.1618
http://nexus.steamware.net/repository/SWS/WDC/stable/WDC.UI.zip
http://nexus.steamware.net/repository/SWS/WDC/stable/ChangeLog.html
false
diff --git a/WebDoorCreator.API/Controllers/DoorImageController.cs b/WebDoorCreator.API/Controllers/DoorImageController.cs
index 1182a56..50fbe88 100644
--- a/WebDoorCreator.API/Controllers/DoorImageController.cs
+++ b/WebDoorCreator.API/Controllers/DoorImageController.cs
@@ -23,6 +23,7 @@ namespace WebDoorCreator.API.Controllers
{
Log.Info("Starting DoorImageController");
_configuration = configuration;
+ WaitReloadSvg = _configuration.GetValue("RuntimeOpt:WaitReloadSvg");
QDService = cQDService;
WDService = cWDCService;
Log.Info("Avviato DoorImageController");
@@ -48,7 +49,11 @@ namespace WebDoorCreator.API.Controllers
if (string.IsNullOrEmpty(svgContent))
{
// richiede ricalcolo img
- await SendRecalcReq(DoorId);
+ svgContent = await SendRecalcReq(DoorId);
+ }
+ // se fosse vuoto...
+ if (string.IsNullOrEmpty(svgContent))
+ {
// legge img vuota
svgContent = QDService.DoorGetMissingSvg();
}
@@ -104,6 +109,8 @@ namespace WebDoorCreator.API.Controllers
private static Logger Log = LogManager.GetCurrentClassLogger();
+ private int WaitReloadSvg = 100;
+
#endregion Private Fields
#region Private Properties
@@ -121,8 +128,9 @@ namespace WebDoorCreator.API.Controllers
///
///
///
- private async Task SendRecalcReq(int DoorId)
+ private async Task SendRecalcReq(int DoorId)
{
+ string answ = "";
// richiede ricalcolo img
List doorIdList = new List() { $"{DoorId}" };
// chiamo reset richieste
@@ -135,6 +143,12 @@ namespace WebDoorCreator.API.Controllers
// versione corrente del DDF generato
int currVers = await QDService.SendCalcReq(DoorId, currDDF);
}
+
+ // attende ...
+ await Task.Delay(WaitReloadSvg);
+ // riprova lettura
+ answ = await QDService.DoorGetLastSvg(DoorId);
+ return answ;
}
#endregion Private Methods
diff --git a/WebDoorCreator.API/appsettings.json b/WebDoorCreator.API/appsettings.json
index 36b1131..38b45a4 100644
--- a/WebDoorCreator.API/appsettings.json
+++ b/WebDoorCreator.API/appsettings.json
@@ -28,6 +28,7 @@
"TimbCheck": "samuele.locatelli@egalware.com"
},
"RuntimeOpt": {
+ "WaitReloadSvg": 200,
"VetoRemoveProcessing": 5,
"StatSampleSize": 30,
"LogTimingEnable": true
diff --git a/WebDoorCreator.UI/Components/DoorDef/DoorDefinition.razor.cs b/WebDoorCreator.UI/Components/DoorDef/DoorDefinition.razor.cs
index 9ec4885..2382dac 100644
--- a/WebDoorCreator.UI/Components/DoorDef/DoorDefinition.razor.cs
+++ b/WebDoorCreator.UI/Components/DoorDef/DoorDefinition.razor.cs
@@ -36,6 +36,10 @@ namespace WebDoorCreator.UI.Components.DoorDef
#region Protected Properties
protected bool B_doorOpUpd { get; set; } = false;
+
+ [Inject]
+ protected IConfiguration configuration { get; set; } = null!;
+
protected OrderStatusViewModel? currOrder { get; set; } = null;
protected string DoorSvgContent { get; set; } = "";
@@ -95,7 +99,7 @@ namespace WebDoorCreator.UI.Components.DoorDef
protected override async Task OnInitializedAsync()
{
- await Task.Delay(1);
+ WaitReloadSvg = configuration.GetValue("RuntimeOpt:WaitReloadSvg");
var uri = NavManager.ToAbsoluteUri(NavManager.Uri);
//if (QueryHelpers.ParseQuery(uri.Query).TryGetValue("idOrd", out var _idOrd) && QueryHelpers.ParseQuery(uri.Query).TryGetValue("idDoor", out var _idDoor))
//{
@@ -120,7 +124,11 @@ namespace WebDoorCreator.UI.Components.DoorDef
if (string.IsNullOrEmpty(DoorSvgContent))
{
// richiede ricalcolo img
- await SendRecalcReq(idDoor);
+ DoorSvgContent = await SendRecalcReq(idDoor);
+ }
+ // se fosse vuoto...
+ if (string.IsNullOrEmpty(DoorSvgContent))
+ {
// legge img vuota
DoorSvgContent = QDService.DoorGetMissingSvg();
}
@@ -174,6 +182,8 @@ namespace WebDoorCreator.UI.Components.DoorDef
private static Logger Log = LogManager.GetCurrentClassLogger();
+ private int WaitReloadSvg = 100;
+
#endregion Private Fields
#region Private Properties
@@ -231,8 +241,9 @@ namespace WebDoorCreator.UI.Components.DoorDef
///
///
///
- private async Task SendRecalcReq(int DoorId)
+ private async Task SendRecalcReq(int DoorId)
{
+ string answ = "";
// richiede ricalcolo img
List doorIdList = new List() { $"{DoorId}" };
// chiamo reset richieste
@@ -245,6 +256,12 @@ namespace WebDoorCreator.UI.Components.DoorDef
// versione corrente del DDF generato
int currVers = await QDService.SendCalcReq(DoorId, currDDF);
}
+
+ // attende ...
+ await Task.Delay(WaitReloadSvg);
+ // riprova lettura
+ answ = await QDService.DoorGetLastSvg(DoorId);
+ return answ;
}
private void WDService_EA_DoorOpUpdated()
diff --git a/WebDoorCreator.UI/Controllers/DoorImageController.cs b/WebDoorCreator.UI/Controllers/DoorImageController.cs
index a152930..9798cae 100644
--- a/WebDoorCreator.UI/Controllers/DoorImageController.cs
+++ b/WebDoorCreator.UI/Controllers/DoorImageController.cs
@@ -17,6 +17,7 @@ namespace WebDoorCreator.UI.Controllers
{
Log.Info("Starting DoorImageController");
_configuration = configuration;
+ WaitReloadSvg = _configuration.GetValue("RuntimeOpt:WaitReloadSvg");
QDService = cQDService;
WDService = cWDCService;
Log.Info("Avviato DoorImageController");
@@ -41,7 +42,11 @@ namespace WebDoorCreator.UI.Controllers
if (string.IsNullOrEmpty(svgContent))
{
// richiede ricalcolo img
- await SendRecalcReq(DoorId);
+ svgContent = await SendRecalcReq(DoorId);
+ }
+ // se fosse vuoto...
+ if (string.IsNullOrEmpty(svgContent))
+ {
// legge img vuota
svgContent = QDService.DoorGetMissingSvg();
}
@@ -53,9 +58,9 @@ namespace WebDoorCreator.UI.Controllers
#region Private Fields
- private static IConfiguration _configuration = null!;
-
private static Logger Log = LogManager.GetCurrentClassLogger();
+ private IConfiguration _configuration = null!;
+ private int WaitReloadSvg = 100;
#endregion Private Fields
@@ -74,8 +79,9 @@ namespace WebDoorCreator.UI.Controllers
///
///
///
- private async Task SendRecalcReq(int DoorId)
+ private async Task SendRecalcReq(int DoorId)
{
+ string answ = "";
// richiede ricalcolo img
List doorIdList = new List() { $"{DoorId}" };
// chiamo reset richieste
@@ -88,6 +94,12 @@ namespace WebDoorCreator.UI.Controllers
// versione corrente del DDF generato
int currVers = await QDService.SendCalcReq(DoorId, currDDF);
}
+
+ // attende ...
+ await Task.Delay(WaitReloadSvg);
+ // riprova lettura
+ answ = await QDService.DoorGetLastSvg(DoorId);
+ return answ;
}
#endregion Private Methods
diff --git a/WebDoorCreator.UI/WebDoorCreator.UI.csproj b/WebDoorCreator.UI/WebDoorCreator.UI.csproj
index 447bac3..4529181 100644
--- a/WebDoorCreator.UI/WebDoorCreator.UI.csproj
+++ b/WebDoorCreator.UI/WebDoorCreator.UI.csproj
@@ -3,7 +3,7 @@
net6.0
enable
- 0.9.2402.1617
+ 0.9.2402.1618
enable
aspnet-WebDoorCreator.UI-dfe95fed-1398-4144-bd43-8b3a765d6608
diff --git a/WebDoorCreator.UI/appsettings.json b/WebDoorCreator.UI/appsettings.json
index 8896543..4478533 100644
--- a/WebDoorCreator.UI/appsettings.json
+++ b/WebDoorCreator.UI/appsettings.json
@@ -31,6 +31,7 @@
"DisableWDCMigrate": true
},
"RuntimeOpt": {
+ "WaitReloadSvg": 200,
"VetoRemoveProcessing": 5,
"MaxDayCalcCache": 7,
"BaseUrl": "/WDC/UI",