Compare commits

...

18 Commits

Author SHA1 Message Date
Samuele Locatelli 4b04feedff Merge branch 'release/UpgradeMapoCoreAll' 2022-07-07 18:58:34 +02:00
Samuele Locatelli e99def8664 Update LAND x refresh pagina 2022-07-07 18:57:34 +02:00
Samuele Locatelli a8744cfc56 Refresh STATS
- page reload
- Nuget upgrade
2022-07-07 18:52:53 +02:00
Samuele Locatelli 03761b81ec Merge tag 'UpgradeMapoMon' into develop
Update mapo MON x verificare reboot da Jetco
2022-07-07 18:49:28 +02:00
Samuele Locatelli dd4f403b7a Merge branch 'release/UpgradeMapoMon' 2022-07-07 18:49:16 +02:00
Samuele Locatelli c7d1ca046c Update/refresh MON:
- cambio logica reload blazor x MON
- update nuget vari
- rimozione warnings
2022-07-07 18:48:33 +02:00
Samuele Locatelli 2c3494f9f0 Merge tag 'UpdateAboutColorCheck' into develop
Update comportamento colori x About page e check licenze
2022-07-06 13:31:10 +02:00
Samuele Locatelli 7dc0aef175 Merge branch 'release/UpdateAboutColorCheck' 2022-07-06 13:30:49 +02:00
Samuele Locatelli e2afe6a586 Update display a + colori x check licenze 2022-07-06 13:30:22 +02:00
Samuele Locatelli e3ed9a7f35 Merge tag 'FixAboutPageError' into develop
Sistemato About page e suo errore x licenze cannate
2022-07-06 10:11:29 +02:00
Samuele Locatelli db003d2bc3 Merge branch 'release/FixAboutPageError' 2022-07-06 10:11:16 +02:00
Samuele Locatelli c203ab6eb3 Fix comportamento pagina About x check licenze 2022-07-06 10:10:50 +02:00
Samuele Locatelli c10633b6f1 Merge branch 'develop' 2022-07-05 10:00:30 +02:00
Samuele Locatelli a9fd0e2f83 Ancora fix sel reparto 2022-07-05 10:00:21 +02:00
Samuele Locatelli 112c73aea1 Merge tag 'FixSelReprtoAndSelEnabled' into develop
Fix: esclusi i gruppi con sel enabled se NON fossero tipo REPARTO
2022-07-05 09:57:19 +02:00
Samuele Locatelli 9e8e885ef9 Merge branch 'release/FixSelReprtoAndSelEnabled' 2022-07-05 09:56:59 +02:00
Samuele Locatelli 1f964ded92 Fix selezione gruppi
- prende SOLO reparto
- escluso gruppi con selEnabled
2022-07-05 09:56:28 +02:00
Samuele Locatelli eeba41cb5c Merge tag 'FixQrCodeJsConsoleLog' into develop
Eliminato console log inutile
2022-07-04 19:14:20 +02:00
33 changed files with 330 additions and 213 deletions
+8 -1
View File
@@ -30,7 +30,14 @@ namespace Egw.Core
{ {
string passPhrase = string.Format("{0}|{1}", cliente.PadLeft(50, ':'), applicativo); string passPhrase = string.Format("{0}|{1}", cliente.PadLeft(50, ':'), applicativo);
plainAuthKey = SteamCrypto.DecryptString(authKey, passPhrase); // uso combinazione cliente+applicativo come passphrase! plainAuthKey = SteamCrypto.DecryptString(authKey, passPhrase); // uso combinazione cliente+applicativo come passphrase!
answ = Convert.ToDateTime(plainAuthKey.Replace(string.Format("{0}#{1}-", cliente, applicativo.PadLeft(20, '-')), "").Replace(string.Format("%{0}%", licenze), "")); string datePart = plainAuthKey.Replace($"{cliente}#{applicativo.PadLeft(20, '-')}-", "").Replace($"%{licenze}%", "");
//string datePart = plainAuthKey.Replace(string.Format("{0}#{1}-", cliente, applicativo.PadLeft(20, '-')), "").Replace(string.Format("%{0}%", licenze), "");
// se non avesse "bonificato" la parte num licenze (es non corrisponde al max) forzo il trim
if (datePart.Contains("%"))
{
datePart = datePart.Substring(0, datePart.IndexOf("%"));
}
answ = Convert.ToDateTime(datePart);
} }
catch (Exception exc) catch (Exception exc)
{ {
+1 -1
View File
@@ -42,7 +42,7 @@ namespace MP.AppAuth.Controllers
{ {
dbResult = localDbCtx dbResult = localDbCtx
.DbSetAnagraficaGruppi .DbSetAnagraficaGruppi
.Where(x => x.TipoGruppo == codTipo || x.SelEnabled) .Where(x => x.TipoGruppo == codTipo)
.ToList(); .ToList();
} }
return dbResult; return dbResult;
+6 -6
View File
@@ -9,18 +9,18 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.10" /> <PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.6" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="5.0.10"> <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="6.0.6">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference> </PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="5.0.10" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="6.0.6" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.10" /> <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="6.0.6" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="5.0.10"> <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.6">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference> </PackageReference>
<PackageReference Include="NLog" Version="4.7.11" /> <PackageReference Include="NLog" Version="5.0.1" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
+6 -6
View File
@@ -12,14 +12,14 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.4" /> <PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.6" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="6.0.4" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="6.0.6" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="6.0.4" /> <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="6.0.6" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.4"> <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.6">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference> </PackageReference>
<PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="6.0.4" /> <PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="6.0.6" />
<PackageReference Include="NLog" Version="4.7.15" /> <PackageReference Include="NLog" Version="5.0.1" />
</ItemGroup> </ItemGroup>
</Project> </Project>
+5 -5
View File
@@ -3,7 +3,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFramework>net6.0</TargetFramework> <TargetFramework>net6.0</TargetFramework>
<RootNamespace>MP.Land</RootNamespace> <RootNamespace>MP.Land</RootNamespace>
<Version>6.15.2207.0419</Version> <Version>6.15.2207.0718</Version>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
@@ -45,14 +45,14 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="DiffMatchPatch" Version="1.0.3" /> <PackageReference Include="DiffMatchPatch" Version="1.0.3" />
<PackageReference Include="Majorsoft.Blazor.Components.Debounce" Version="1.5.0" /> <PackageReference Include="Majorsoft.Blazor.Components.Debounce" Version="1.5.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="5.0.10"> <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="6.0.6">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference> </PackageReference>
<PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="6.0.6" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="5.0.2" /> <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="6.0.6" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" /> <PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
<PackageReference Include="NLog.Web.AspNetCore" Version="4.14.0" /> <PackageReference Include="NLog.Web.AspNetCore" Version="5.0.0" />
<PackageReference Include="RestSharp" Version="107.1.2" /> <PackageReference Include="RestSharp" Version="107.1.2" />
</ItemGroup> </ItemGroup>
+2 -2
View File
@@ -64,7 +64,7 @@
<b>@Applicazione</b> <b>@Applicazione</b>
</div> </div>
</div> </div>
<div class="d-flex justify-content-between"> <div class="d-flex justify-content-between @licenseCss">
<div class="px-2"> <div class="px-2">
<i class="fa fa-users" aria-hidden="true"></i> Licenze: <i class="fa fa-users" aria-hidden="true"></i> Licenze:
</div> </div>
@@ -80,7 +80,7 @@
<b>@($"{Scadenza:yyyy/MM/dd}")</b> <b>@($"{Scadenza:yyyy/MM/dd}")</b>
</div> </div>
</div> </div>
<div class="d-flex justify-content-between"> <div class="d-flex justify-content-between @licenseCss">
<div class="px-2"> <div class="px-2">
<i class="fa fa-key" aria-hidden="true"></i> Key <i class="fa fa-key" aria-hidden="true"></i> Key
</div> </div>
+35 -23
View File
@@ -14,24 +14,27 @@ using Microsoft.JSInterop;
using MP.Land; using MP.Land;
using MP.Land.Shared; using MP.Land.Shared;
using MP.Land.Data; using MP.Land.Data;
using NLog;
namespace MP.Land.Pages namespace MP.Land.Pages
{ {
public partial class About public partial class About
{ {
protected string Titolo = ""; private static NLog.Logger Log = LogManager.GetCurrentClassLogger();
protected string Messaggio = ""; private string Titolo = "";
private string Messaggio = "";
protected string ServerStatus = "SrvState"; private string ServerStatus = "SrvState";
protected string Installazione = "Inst"; private string Installazione = "Inst";
protected string Applicazione = "App"; private string Applicazione = "App";
protected string Licenze = "#"; private string Licenze = "#";
protected DateTime Scadenza = DateTime.Today; private DateTime Scadenza = DateTime.Today;
protected string MastKey = "########################"; private string MastKey = "########################";
protected string mainCss = "alert alert-info"; private string mainCss = "alert alert-info";
protected string remSrvCss = "bg-danger text-warning"; private string remSrvCss = "bg-warning text-secondary";
protected string expDateCss = "bg-danger text-warning"; private string expDateCss = "bg-warning text-secondary";
private string licenseCss = "bg-warning text-secondary";
protected override async Task OnInitializedAsync() protected override async Task OnInitializedAsync()
{ {
@@ -45,24 +48,33 @@ namespace MP.Land.Pages
int cDelay = 5; int cDelay = 5;
// recupero dati // recupero dati
await Task.Delay(cDelay); await Task.Delay(cDelay);
LicServ.InitAkv(); try
Installazione = LicServ.Installazione; {
Applicazione = LicServ.Applicazione; LicServ.InitAkv();
MastKey = LicServ.MasterKey; // verifico stati
await Task.Delay(cDelay); ServerStatus = await LicServ.checkLimanServer();
var fatto = await LicServ.RefreshLicense(); Installazione = LicServ.Installazione;
await Task.Delay(cDelay); Applicazione = LicServ.Applicazione;
Licenze = $"{LicServ.NumLicDb}/{LicServ.NumLicRemote}"; MastKey = LicServ.MasterKey;
// verifico stati await Task.Delay(cDelay);
ServerStatus = await LicServ.checkLimanServer(); var fatto = await LicServ.RefreshLicense();
await Task.Delay(cDelay);
Licenze = $"{LicServ.NumLicDb}/{LicServ.NumLicRemote}";
licenseCss = "";
}
catch(Exception exc)
{
licenseCss = "bg-dark text-warning";
Log.Error($"Eccezione in reloadLicenseData:{Environment.NewLine}{exc}");
}
bool okRemoteSrv = ServerStatus == "OK"; bool okRemoteSrv = ServerStatus == "OK";
bool okScadenza = LicServ.checkLicenseActive(LicServ.MasterKey); bool okScadenza = LicServ.checkLicenseActive(LicServ.MasterKey);
bool okNumLic = (LicServ.NumLicDb <= LicServ.NumLicRemote); bool okNumLic = (LicServ.NumLicDb <= LicServ.NumLicRemote);
// aggiornamento css secondo status colore da check // aggiornamento css secondo status colore da check
mainCss = okNumLic ? "alert alert-success shadowBox" : "alert alert-warning shadowBox"; mainCss = okNumLic ? "alert alert-success shadowBox" : "alert alert-warning shadowBox";
expDateCss = okScadenza ? "d-flex justify-content-between" : "d-flex justify-content-between bg-danger text-warning"; expDateCss = okScadenza ? "" : "bg-danger text-warning";
remSrvCss = okRemoteSrv ? "d-flex justify-content-between" : "d-flex justify-content-between bg-danger text-warning"; remSrvCss = okRemoteSrv ? "" : "bg-danger text-warning";
await Task.Delay(cDelay); await Task.Delay(cDelay);
} }
+23 -4
View File
@@ -36,11 +36,30 @@
<a class="dismiss">🗙</a> <a class="dismiss">🗙</a>
</div> </div>
@* Riconnessione server app: https://www.syncfusion.com/faq/how-do-i-reconnect-blazor-server-side-automatically *@ @*Gestione autoriconnessione: https://github.com/dotnet/aspnetcore/issues/38305 (vedere anche https://docs.microsoft.com/it-it/aspnet/core/blazor/fundamentals/signalr?view=aspnetcore-6.0#modify-the-reconnection-handler-blazor-server)*@
<script> <script>
Blazor.defaultReconnectionHandler._reconnectCallback = function (d) { //Blazor.start().then(() => {
document.location.reload(); // Blazor.defaultReconnectionHandler._reconnectionDisplay = {
} // show: () => { },
// update: (d) => { },
// rejected: (d) => document.location.reload()
// };
//});
Blazor.start().then(() => {
Object.defineProperty(Blazor.defaultReconnectionHandler, '_reconnectionDisplay', {
get() {
return this.__reconnectionDisplay;
},
set(value) {
this.__reconnectionDisplay = {
show: () => value.show(),
update: (d) => value.update(d),
rejected: (d) => document.location.reload()
}
}
});
});
</script> </script>
<!-- inside of body section and after the div/app tag --> <!-- inside of body section and after the div/app tag -->
+1 -1
View File
@@ -1,6 +1,6 @@
<body> <body>
<i>Modulo gestione Programmi MAPO</i> <i>Modulo gestione Programmi MAPO</i>
<h4>Versione: 6.15.2207.0419</h4> <h4>Versione: 6.15.2207.0718</h4>
<br /> <br />
Note di rilascio: Note di rilascio:
<ul> <ul>
+1 -1
View File
@@ -1 +1 @@
6.15.2207.0419 6.15.2207.0718
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<item> <item>
<version>6.15.2207.0419</version> <version>6.15.2207.0718</version>
<url>https://nexus.steamware.net/repository/SWS/MP-LAND/stable/LAST/MP.Land.zip</url> <url>https://nexus.steamware.net/repository/SWS/MP-LAND/stable/LAST/MP.Land.zip</url>
<changelog>https://nexus.steamware.net/repository/SWS/MP-LAND/stable/LAST/ChangeLog.html</changelog> <changelog>https://nexus.steamware.net/repository/SWS/MP-LAND/stable/LAST/ChangeLog.html</changelog>
<mandatory>false</mandatory> <mandatory>false</mandatory>
+2 -2
View File
@@ -18,8 +18,8 @@
"Redis": "localhost:6379,defaultDatabase=1,keepAlive=180,asyncTimeout=5000" "Redis": "localhost:6379,defaultDatabase=1,keepAlive=180,asyncTimeout=5000"
} }
//"ConnectionStrings": { //"ConnectionStrings": {
// "DefaultConnection": "Server=SQL2016PROD;Database=Valvital_MoonPro_Prod;Trusted_Connection=True;MultipleActiveResultSets=true", // "DefaultConnection": "Server=SQL2016PROD;Database=Jetco_MoonPro_Prod;Trusted_Connection=True;MultipleActiveResultSets=true",
// "MP.Land": "Server=SQL2016PROD;Database=Valvital_MoonPro_Prod;User ID=sa;Password=keyhammer16;integrated security=False;MultipleActiveResultSets=True;App=MP.Land;", // "MP.Land": "Server=SQL2016PROD;Database=Jetco_MoonPro_Prod;User ID=sa;Password=keyhammer16;integrated security=False;MultipleActiveResultSets=True;App=MP.Land;",
// "Redis": "localhost:6379,defaultDatabase=11,keepAlive=180,asyncTimeout=5000" // "Redis": "localhost:6379,defaultDatabase=11,keepAlive=180,asyncTimeout=5000"
//} //}
} }
-38
View File
@@ -7,41 +7,3 @@
</div> </div>
</div> </div>
@code {
Version version = typeof(Program).Assembly.GetName().Version;
protected override async Task OnInitializedAsync()
{
StartTimer();
}
public void Dispose()
{
aTimer.Stop();
aTimer.Dispose();
}
private static System.Timers.Timer aTimer;
public void StartTimer()
{
int tOutPeriod = 1000;
//int.TryParse(Configuration["ReloadStatusTimer"], out tOutPeriod);
aTimer = new System.Timers.Timer(tOutPeriod);
aTimer.Elapsed += ElapsedTimer;
aTimer.Enabled = true;
aTimer.Start();
}
public void ElapsedTimer(Object source, System.Timers.ElapsedEventArgs e)
{
var pUpd = Task.Run(async () =>
{
//await ReloadData();
await Task.Delay(1);
await InvokeAsync(StateHasChanged);
});
pUpd.Wait();
}
}
+55
View File
@@ -0,0 +1,55 @@
namespace MP.Mon.Components
{
public partial class CmpFooter
{
#region Public Methods
public void Dispose()
{
aTimer.Stop();
aTimer.Dispose();
}
public void ElapsedTimer(object? source, System.Timers.ElapsedEventArgs e)
{
var pUpd = Task.Run(async () =>
{
//await ReloadData();
await Task.Delay(1);
await InvokeAsync(StateHasChanged);
});
pUpd.Wait();
}
public void StartTimer()
{
int tOutPeriod = 1000;
//int.TryParse(Configuration["ReloadStatusTimer"], out tOutPeriod);
aTimer = new System.Timers.Timer(tOutPeriod);
aTimer.Elapsed += ElapsedTimer;
aTimer.Enabled = true;
aTimer.Start();
}
#endregion Public Methods
#region Protected Methods
protected override async Task OnInitializedAsync()
{
var currAssembly = typeof(Program).Assembly.GetName();
version = currAssembly.Version != null ? currAssembly.Version : new Version();
StartTimer();
await Task.Delay(1);
}
#endregion Protected Methods
#region Private Fields
private static System.Timers.Timer aTimer = null!;
private Version version = null!;
#endregion Private Fields
}
}
+1 -1
View File
@@ -54,7 +54,7 @@
{ {
<div class="d-flex justify-content-between pt-0 pb-2 px-1 fontSmall"> <div class="d-flex justify-content-between pt-0 pb-2 px-1 fontSmall">
<div class="px-1 text-uppercase"><b>@CurrRecord.DescrizioneStato</b></div> <div class="px-1 text-uppercase"><b>@CurrRecord.DescrizioneStato</b></div>
<div class="px-1 ps-0">@getMinSec((decimal)CurrRecord.Durata)</div> <div class="px-1 ps-0">@getMinSec(getDecimal(@CurrRecord.Durata))</div>
</div> </div>
} }
@if (hasRow(3)) @if (hasRow(3))
+14 -3
View File
@@ -140,7 +140,7 @@ namespace MP.Mon.Components
aTimer.Dispose(); aTimer.Dispose();
} }
public void ElapsedTimer(Object source, System.Timers.ElapsedEventArgs e) public void ElapsedTimer(object? source, System.Timers.ElapsedEventArgs e)
{ {
var pUpd = Task.Run(async () => var pUpd = Task.Run(async () =>
{ {
@@ -168,7 +168,7 @@ namespace MP.Mon.Components
{ {
StartTimer(); StartTimer();
Random rnd = new Random(); Random rnd = new Random();
//await Task.Delay(rnd.Next(500)); await Task.Delay(rnd.Next(5));
dataLoaded = true; dataLoaded = true;
setupConf(); setupConf();
} }
@@ -219,13 +219,24 @@ namespace MP.Mon.Components
return answ; return answ;
} }
private decimal getDecimal(object? rawData)
{
decimal answ = 0;
if (rawData != null)
{
decimal.TryParse($"{rawData}", out answ);
}
return answ;
}
private string getMinSec(decimal? currTimeMin) private string getMinSec(decimal? currTimeMin)
{ {
string answ = "nd"; string answ = "nd";
TimeSpan tSpan = new TimeSpan(0); TimeSpan tSpan = new TimeSpan(0);
try try
{ {
tSpan = TimeSpan.FromMinutes((double)currTimeMin); double cTimeMin = currTimeMin != null ? (double)currTimeMin : 0;
tSpan = TimeSpan.FromMinutes(cTimeMin);
answ = $"{tSpan:mm}:{tSpan:ss}"; answ = $"{tSpan:mm}:{tSpan:ss}";
} }
catch catch
+1 -86
View File
@@ -1,90 +1,5 @@
{ {
"IobSetup": { "IobSetup": {
"***": [ "***": []
{
"ColNum": 1,
"RowNum": 5,
"TagCss": "fontSmall",
"TagName": "Feed Over",
"TagLocation": "MoonPro:SQL2016DEV:MoonPro:FLOG:***:FEED_OVER"
},
{
"ColNum": 2,
"RowNum": 5,
"TagCss": "fontSmall",
"TagName": "Rapid Over",
"TagLocation": "MoonPro:SQL2016DEV:MoonPro:FLOG:***:RAPID_OVER"
}
],
"SIMUL_01": [
{
"ColNum": 1,
"RowNum": 6,
"TagCss": "fontSmall",
"TagName": "Power",
"TagLocation": "MoonPro:SQL2016DEV:MoonPro:FLOG:SIMUL_01:POWER_01"
}
],
"SIMUL_02": [
{
"ColNum": 1,
"RowNum": 6,
"TagCss": "fontSmall",
"TagName": "Power",
"TagLocation": "MoonPro:SQL2016DEV:MoonPro:FLOG:SIMUL_02:POWER_01"
}
],
"GIACO_ICOEL_001": [
{
"ColNum": 1,
"RowNum": 1,
"TagName": "Vel",
"TagLocation": "FluxData:TonnOra"
},
{
"ColNum": 2,
"RowNum": 1,
"TagName": "Vel",
"TagLocation": "FluxData:PezziMin"
},
{
"ColNum": 1,
"RowNum": 2,
"TagName": "Batch SX",
"TagLocation": "FluxData:BatchL1"
},
{
"ColNum": 2,
"RowNum": 2,
"TagName": "Batch DX",
"TagLocation": "FluxData:BatchL2"
}
],
"GIACO_ICOEL_002": [
{
"ColNum": 1,
"RowNum": 1,
"TagName": "Vel",
"TagLocation": "FluxData:TonnOra"
},
{
"ColNum": 2,
"RowNum": 1,
"TagName": "Vel",
"TagLocation": "FluxData:PezziMin"
},
{
"ColNum": 1,
"RowNum": 2,
"TagName": "Batch SX",
"TagLocation": "FluxData:BatchL1"
},
{
"ColNum": 2,
"RowNum": 2,
"TagName": "Batch DX",
"TagLocation": "FluxData:BatchL2"
}
]
} }
} }
+90
View File
@@ -0,0 +1,90 @@
{
"IobSetup": {
"***": [
{
"ColNum": 1,
"RowNum": 5,
"TagCss": "fontSmall",
"TagName": "Feed Over",
"TagLocation": "MoonPro:SQL2016DEV:MoonPro:FLOG:***:FEED_OVER"
},
{
"ColNum": 2,
"RowNum": 5,
"TagCss": "fontSmall",
"TagName": "Rapid Over",
"TagLocation": "MoonPro:SQL2016DEV:MoonPro:FLOG:***:RAPID_OVER"
}
],
"SIMUL_01": [
{
"ColNum": 1,
"RowNum": 6,
"TagCss": "fontSmall",
"TagName": "Power",
"TagLocation": "MoonPro:SQL2016DEV:MoonPro:FLOG:SIMUL_01:POWER_01"
}
],
"SIMUL_02": [
{
"ColNum": 1,
"RowNum": 6,
"TagCss": "fontSmall",
"TagName": "Power",
"TagLocation": "MoonPro:SQL2016DEV:MoonPro:FLOG:SIMUL_02:POWER_01"
}
],
"GIACO_ICOEL_001": [
{
"ColNum": 1,
"RowNum": 1,
"TagName": "Vel",
"TagLocation": "FluxData:TonnOra"
},
{
"ColNum": 2,
"RowNum": 1,
"TagName": "Vel",
"TagLocation": "FluxData:PezziMin"
},
{
"ColNum": 1,
"RowNum": 2,
"TagName": "Batch SX",
"TagLocation": "FluxData:BatchL1"
},
{
"ColNum": 2,
"RowNum": 2,
"TagName": "Batch DX",
"TagLocation": "FluxData:BatchL2"
}
],
"GIACO_ICOEL_002": [
{
"ColNum": 1,
"RowNum": 1,
"TagName": "Vel",
"TagLocation": "FluxData:TonnOra"
},
{
"ColNum": 2,
"RowNum": 1,
"TagName": "Vel",
"TagLocation": "FluxData:PezziMin"
},
{
"ColNum": 1,
"RowNum": 2,
"TagName": "Batch SX",
"TagLocation": "FluxData:BatchL1"
},
{
"ColNum": 2,
"RowNum": 2,
"TagName": "Batch DX",
"TagLocation": "FluxData:BatchL2"
}
]
}
}
+5 -5
View File
@@ -11,14 +11,14 @@ namespace MP.Mon.Data
{ {
#region Public Fields #region Public Fields
public static MP.Data.Controllers.MpMonController dbController; public static MP.Data.Controllers.MpMonController dbController { get; set; } = null!;
#endregion Public Fields #endregion Public Fields
#region Private Fields #region Private Fields
private static IConfiguration _configuration; private static IConfiguration _configuration = null!;
private static ILogger<MpDataService> _logger; private static ILogger<MpDataService> _logger = null!;
private static NLog.Logger Log = LogManager.GetCurrentClassLogger(); private static NLog.Logger Log = LogManager.GetCurrentClassLogger();
@@ -100,10 +100,10 @@ namespace MP.Mon.Data
{ {
string outVal = ""; string outVal = "";
// cerco in REDIS la conf x l'IOB // cerco in REDIS la conf x l'IOB
string rawData = redisDb.StringGet(redKey); var rawData = redisDb.StringGet(redKey);
if (!string.IsNullOrEmpty(rawData)) if (!string.IsNullOrEmpty(rawData))
{ {
outVal = rawData; outVal = $"{rawData}";
} }
return outVal; return outVal;
} }
+9 -3
View File
@@ -4,7 +4,7 @@
<TargetFramework>net6.0</TargetFramework> <TargetFramework>net6.0</TargetFramework>
<Nullable>enable</Nullable> <Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings> <ImplicitUsings>enable</ImplicitUsings>
<Version>6.15.2206.616</Version> <Version>6.15.2207.718</Version>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
@@ -30,14 +30,20 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" /> <PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
<PackageReference Include="NLog" Version="4.7.15" /> <PackageReference Include="NLog" Version="5.0.1" />
<PackageReference Include="StackExchange.Redis" Version="2.5.61" /> <PackageReference Include="StackExchange.Redis" Version="2.6.48" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\MP.Data\MP.Data.csproj" /> <ProjectReference Include="..\MP.Data\MP.Data.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Content Update="Conf\iobTagsConf.office.json">
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup> <ItemGroup>
<None Update="logs\.placeholder"> <None Update="logs\.placeholder">
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+3 -2
View File
@@ -59,7 +59,7 @@ namespace MP.Mon.Pages
slowTimer.Dispose(); slowTimer.Dispose();
} }
public void ElapsedFastTimer(Object source, System.Timers.ElapsedEventArgs e) public void ElapsedFastTimer(object? source, System.Timers.ElapsedEventArgs e)
{ {
var pUpd = Task.Run(async () => var pUpd = Task.Run(async () =>
{ {
@@ -70,9 +70,10 @@ namespace MP.Mon.Pages
pUpd.Wait(); pUpd.Wait();
} }
public async void ElapsedSlowTimer(Object source, System.Timers.ElapsedEventArgs e) public async void ElapsedSlowTimer(object? source, System.Timers.ElapsedEventArgs e)
{ {
ListMSE = null; ListMSE = null;
await Task.Delay(1);
NavManager.NavigateTo(NavManager.Uri); NavManager.NavigateTo(NavManager.Uri);
} }
+23 -4
View File
@@ -28,11 +28,30 @@
<a class="dismiss">🗙</a> <a class="dismiss">🗙</a>
</div> </div>
@* Riconnessione server app: https://www.syncfusion.com/faq/how-do-i-reconnect-blazor-server-side-automatically *@ @*Gestione autoriconnessione: https://github.com/dotnet/aspnetcore/issues/38305 (vedere anche https://docs.microsoft.com/it-it/aspnet/core/blazor/fundamentals/signalr?view=aspnetcore-6.0#modify-the-reconnection-handler-blazor-server)*@
<script> <script>
Blazor.defaultReconnectionHandler._reconnectCallback = function (d) { //Blazor.start().then(() => {
document.location.reload(); // Blazor.defaultReconnectionHandler._reconnectionDisplay = {
} // show: () => { },
// update: (d) => { },
// rejected: (d) => document.location.reload()
// };
//});
Blazor.start().then(() => {
Object.defineProperty(Blazor.defaultReconnectionHandler, '_reconnectionDisplay', {
get() {
return this.__reconnectionDisplay;
},
set(value) {
this.__reconnectionDisplay = {
show: () => value.show(),
update: (d) => value.update(d),
rejected: (d) => document.location.reload()
}
}
});
});
</script> </script>
<script src="_framework/blazor.server.js"></script> <script src="_framework/blazor.server.js"></script>
+1 -1
View File
@@ -1,6 +1,6 @@
<body> <body>
<i>Modulo MON MAPO</i> <i>Modulo MON MAPO</i>
<h4>Versione: 6.15.2206.616</h4> <h4>Versione: 6.15.2207.718</h4>
<br /> Note di rilascio: <br /> Note di rilascio:
<ul> <ul>
<li> <li>
+1 -1
View File
@@ -1 +1 @@
6.15.2206.616 6.15.2207.718
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<item> <item>
<version>6.15.2206.616</version> <version>6.15.2207.718</version>
<url>https://nexus.steamware.net/repository/SWS/MP-MON/stable/LAST/MP.Mon.zip</url> <url>https://nexus.steamware.net/repository/SWS/MP-MON/stable/LAST/MP.Mon.zip</url>
<changelog>https://nexus.steamware.net/repository/SWS/MP-MON/stable/LAST/ChangeLog.html</changelog> <changelog>https://nexus.steamware.net/repository/SWS/MP-MON/stable/LAST/ChangeLog.html</changelog>
<mandatory>false</mandatory> <mandatory>false</mandatory>
+6 -6
View File
@@ -4,7 +4,7 @@
<TargetFramework>net6.0</TargetFramework> <TargetFramework>net6.0</TargetFramework>
<RootNamespace>MP.Stats</RootNamespace> <RootNamespace>MP.Stats</RootNamespace>
<UserSecretsId>826e877c-ba70-4253-84cb-d0b1cafd4440</UserSecretsId> <UserSecretsId>826e877c-ba70-4253-84cb-d0b1cafd4440</UserSecretsId>
<Version>6.15.2205.2311</Version> <Version>6.15.2207.0718</Version>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
@@ -185,12 +185,12 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="ElmahCore" Version="2.1.1" /> <PackageReference Include="ElmahCore" Version="2.1.2" />
<PackageReference Include="ElmahCore.Common" Version="2.1.1" /> <PackageReference Include="ElmahCore.Common" Version="2.1.2" />
<PackageReference Include="ElmahCore.Sql" Version="2.1.1" /> <PackageReference Include="ElmahCore.Sql" Version="2.1.2" />
<PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="6.0.4" /> <PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="6.0.6" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" /> <PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
<PackageReference Include="NLog.Web.AspNetCore" Version="4.14.0" /> <PackageReference Include="NLog.Web.AspNetCore" Version="5.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
+1
View File
@@ -110,6 +110,7 @@ namespace MP.Stats.Pages
; ;
private async Task HandleRedraw() private async Task HandleRedraw()
{ {
await Task.Delay(1);
// calcolo hist frequenza con EFCore: https://entityframeworkcore.com/knowledge-base/60871048/group-by-and-to-dictionary-in-ef-core-3-1 // calcolo hist frequenza con EFCore: https://entityframeworkcore.com/knowledge-base/60871048/group-by-and-to-dictionary-in-ef-core-3-1
randData = RandomizeData(); randData = RandomizeData();
//var histDict = randData.GroupBy(r => r).Select(g => new //var histDict = randData.GroupBy(r => r).Select(g => new
+23 -4
View File
@@ -33,11 +33,30 @@
<a class="dismiss">🗙</a> <a class="dismiss">🗙</a>
</div> </div>
@* Riconnessione server app: https://www.syncfusion.com/faq/how-do-i-reconnect-blazor-server-side-automatically *@ @*Gestione autoriconnessione: https://github.com/dotnet/aspnetcore/issues/38305 (vedere anche https://docs.microsoft.com/it-it/aspnet/core/blazor/fundamentals/signalr?view=aspnetcore-6.0#modify-the-reconnection-handler-blazor-server)*@
<script> <script>
Blazor.defaultReconnectionHandler._reconnectCallback = function (d) { //Blazor.start().then(() => {
document.location.reload(); // Blazor.defaultReconnectionHandler._reconnectionDisplay = {
} // show: () => { },
// update: (d) => { },
// rejected: (d) => document.location.reload()
// };
//});
Blazor.start().then(() => {
Object.defineProperty(Blazor.defaultReconnectionHandler, '_reconnectionDisplay', {
get() {
return this.__reconnectionDisplay;
},
set(value) {
this.__reconnectionDisplay = {
show: () => value.show(),
update: (d) => value.update(d),
rejected: (d) => document.location.reload()
}
}
});
});
</script> </script>
<script src="_framework/blazor.server.js"></script> <script src="_framework/blazor.server.js"></script>
@@ -7,6 +7,6 @@ by editing this MSBuild file. In order to learn more about this please visit htt
<PropertyGroup> <PropertyGroup>
<TimeStampOfAssociatedLegacyPublishXmlFile /> <TimeStampOfAssociatedLegacyPublishXmlFile />
<EncryptedPassword>AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAA+11nhJeDSkeTlSej+COD3AAAAAACAAAAAAADZgAAwAAAABAAAACFCXZ0UR7Czo59aaRCHU5QAAAAAASAAACgAAAAEAAAACYlKt9E6s77uEikpKwyhdQYAAAAUwae989LovFbsfjRp69HCVpyUQZbqLyYFAAAAMW8mLSAxWmKaOvB4nkDgUpS27/b</EncryptedPassword> <EncryptedPassword>AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAA+11nhJeDSkeTlSej+COD3AAAAAACAAAAAAADZgAAwAAAABAAAACFCXZ0UR7Czo59aaRCHU5QAAAAAASAAACgAAAAEAAAACYlKt9E6s77uEikpKwyhdQYAAAAUwae989LovFbsfjRp69HCVpyUQZbqLyYFAAAAMW8mLSAxWmKaOvB4nkDgUpS27/b</EncryptedPassword>
<History>True|2022-02-26T17:24:32.0833123Z;False|2022-02-26T18:24:15.3994092+01:00;False|2022-02-26T18:23:44.8358586+01:00;True|2021-05-26T19:49:30.0427896+02:00;False|2021-05-26T19:49:14.9065510+02:00;True|2021-05-25T17:48:33.3901785+02:00;True|2021-05-25T17:46:09.2063020+02:00;True|2021-05-25T17:42:47.8167539+02:00;True|2021-05-25T17:22:03.1877438+02:00;True|2021-05-25T17:21:05.1565775+02:00;True|2021-05-25T16:26:34.1426996+02:00;True|2021-05-25T16:14:28.2842402+02:00;True|2021-05-25T15:02:11.7131495+02:00;</History> <History>True|2022-07-05T08:07:03.1380003Z;True|2022-02-26T18:24:32.0833123+01:00;False|2022-02-26T18:24:15.3994092+01:00;False|2022-02-26T18:23:44.8358586+01:00;True|2021-05-26T19:49:30.0427896+02:00;False|2021-05-26T19:49:14.9065510+02:00;True|2021-05-25T17:48:33.3901785+02:00;True|2021-05-25T17:46:09.2063020+02:00;True|2021-05-25T17:42:47.8167539+02:00;True|2021-05-25T17:22:03.1877438+02:00;True|2021-05-25T17:21:05.1565775+02:00;True|2021-05-25T16:26:34.1426996+02:00;True|2021-05-25T16:14:28.2842402+02:00;True|2021-05-25T15:02:11.7131495+02:00;</History>
</PropertyGroup> </PropertyGroup>
</Project> </Project>
@@ -7,6 +7,6 @@ by editing this MSBuild file. In order to learn more about this please visit htt
<PropertyGroup> <PropertyGroup>
<TimeStampOfAssociatedLegacyPublishXmlFile /> <TimeStampOfAssociatedLegacyPublishXmlFile />
<EncryptedPassword>AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAA+11nhJeDSkeTlSej+COD3AAAAAACAAAAAAADZgAAwAAAABAAAAB3zVMW24A4himhWJ5CNqgeAAAAAASAAACgAAAAEAAAAA7IL1n8zHn2/ljDNL4/zlsYAAAAgAEg9RYKHV0xl3wnafZiN9Q954GOBAvdFAAAACSBJkwDndNTiIrUuk7zJls84fN1</EncryptedPassword> <EncryptedPassword>AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAA+11nhJeDSkeTlSej+COD3AAAAAACAAAAAAADZgAAwAAAABAAAAB3zVMW24A4himhWJ5CNqgeAAAAAASAAACgAAAAEAAAAA7IL1n8zHn2/ljDNL4/zlsYAAAAgAEg9RYKHV0xl3wnafZiN9Q954GOBAvdFAAAACSBJkwDndNTiIrUuk7zJls84fN1</EncryptedPassword>
<History>True|2022-02-26T17:24:42.6534875Z;True|2021-05-26T19:49:44.3836006+02:00;</History> <History>True|2022-07-05T08:06:48.2207580Z;True|2022-02-26T18:24:42.6534875+01:00;True|2021-05-26T19:49:44.3836006+02:00;</History>
</PropertyGroup> </PropertyGroup>
</Project> </Project>
+1 -1
View File
@@ -1,6 +1,6 @@
<body> <body>
<i>Modulo statistiche MAPO</i> <i>Modulo statistiche MAPO</i>
<h4>Versione: 6.15.2205.2311</h4> <h4>Versione: 6.15.2207.0718</h4>
<br /> <br />
Note di rilascio: Note di rilascio:
<ul> <ul>
+1 -1
View File
@@ -1 +1 @@
6.15.2205.2311 6.15.2207.0718
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<item> <item>
<version>6.15.2205.2311</version> <version>6.15.2207.0718</version>
<url>https://nexus.steamware.net/repository/SWS/MP-STATS/stable/LAST/MP.Stats.zip</url> <url>https://nexus.steamware.net/repository/SWS/MP-STATS/stable/LAST/MP.Stats.zip</url>
<changelog>https://nexus.steamware.net/repository/SWS/MP-STATS/stable/LAST/ChangeLog.html</changelog> <changelog>https://nexus.steamware.net/repository/SWS/MP-STATS/stable/LAST/ChangeLog.html</changelog>
<mandatory>false</mandatory> <mandatory>false</mandatory>