Merge branch 'release/FixDataInsertOverflow'
This commit is contained in:
@@ -38,7 +38,8 @@ namespace GWMS.Data.Controllers
|
||||
/// <returns></returns>
|
||||
public DateTime DateRoundEnd(DateTime dateOrig, int minInt)
|
||||
{
|
||||
int minRound = (int)Math.Ceiling((double)dateOrig.Minute / minInt) * minInt;
|
||||
// calcolo con minuto + 0.5 per poter arrotondare in modo corretto sennò se 0 min e qualche secondo --> diventa floor e arrotonda x difetto...
|
||||
int minRound = (int)Math.Ceiling(((double)dateOrig.Minute + 0.5) / minInt) * minInt;
|
||||
DateTime roundDate = dateOrig.Date.AddHours(dateOrig.Hour).AddMinutes(minRound);
|
||||
return roundDate;
|
||||
}
|
||||
|
||||
@@ -330,11 +330,14 @@ namespace GWMS.UI.Controllers
|
||||
{
|
||||
// conversione dati
|
||||
List<PlantLogModel> plData = rawData.fluxData.Select(jpl => _DataService.convertFluxToPL(currPlant.PlantId, jpl)).ToList();
|
||||
Log.Trace($"flogJson | {id} | Convertiti {plData.Count} record");
|
||||
//insert!
|
||||
fatto = await _DataService.PlantLogInsert(plData);
|
||||
Log.Trace($"flogJson | {id} | PlantLogInsert --> esito: {fatto}");
|
||||
|
||||
// effettuo SEMPRE verifica per ricalcolo ordini...
|
||||
await _DataService.checkLevels();
|
||||
Log.Trace($"flogJson | {id} | chiamata checkLevels");
|
||||
}
|
||||
}
|
||||
if (fatto)
|
||||
|
||||
@@ -599,6 +599,7 @@ namespace GWMS.UI.Data
|
||||
.GroupBy(g => g.FluxType)
|
||||
.Select(s => s.First().FluxType)
|
||||
.ToList();
|
||||
|
||||
foreach (var item in fluxList)
|
||||
{
|
||||
// cerco se c'è valore...
|
||||
@@ -611,17 +612,19 @@ namespace GWMS.UI.Data
|
||||
}
|
||||
|
||||
// cerco se ho record > valore minimo x ogni flusso ricevuto
|
||||
List<PlantLogModel> insCandidates = newItems.Where(x => x.FluxType == item && x.DtEvent >= dateLimit).ToList();
|
||||
List<PlantLogModel> insCandidates = newItems.Where(x => x.FluxType == item && x.DtEvent >= dateLimit).OrderBy(x => x.DtEvent).ToList();
|
||||
|
||||
while (insCandidates.Count > 0)
|
||||
int num2ins = insCandidates.Count;
|
||||
while (num2ins > 0)
|
||||
{
|
||||
var newRec = insCandidates.First();
|
||||
// il primo lo accodo da inserire
|
||||
item2insert.Add(newRec);
|
||||
// calcolo nuovo veto
|
||||
dateLimit = dbController.DateRoundEnd(newRec.DtEvent, IntervalMin);
|
||||
// ...e se ho record accodo
|
||||
insCandidates = newItems.Where(x => x.FluxType == item && x.DtEvent >= dateLimit).ToList();
|
||||
// ...e se ho record > data limite accodo
|
||||
insCandidates = newItems.Where(x => x.FluxType == item && x.DtEvent > dateLimit).OrderBy(x => x.DtEvent).ToList();
|
||||
num2ins = insCandidates.Count;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -634,6 +637,7 @@ namespace GWMS.UI.Data
|
||||
// invalido i vari valori in cache
|
||||
await distributedCache.RemoveAsync($"DATA:PLANTS:LastFlux:{PlantId}");
|
||||
await distributedCache.RemoveAsync($"DATA:PLANTS:ListDTO");
|
||||
Log.Trace($"PlantLogInsert | PlantId: {PlantId} | Completato insert {item2insert.Count} rec");
|
||||
}
|
||||
|
||||
// restituisco
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net5.0</TargetFramework>
|
||||
<Version>1.0.2110.0115</Version>
|
||||
<Version>1.0.2110.0119</Version>
|
||||
<UserSecretsId>95c9f021-52d1-4390-a670-5810b7b777b0</UserSecretsId>
|
||||
<EnableNETAnalyzers>true</EnableNETAnalyzers>
|
||||
<RunAnalyzersDuringBuild>true</RunAnalyzersDuringBuild>
|
||||
|
||||
+2
-1
@@ -147,7 +147,8 @@ namespace GWMS.UI
|
||||
.AddHealthChecksUI(s =>
|
||||
{
|
||||
s.AddHealthCheckEndpoint("GWMS_Services", "health");
|
||||
s.SetEvaluationTimeInSeconds(60);
|
||||
s.SetEvaluationTimeInSeconds(30);
|
||||
//s.SetEvaluationTimeInSeconds(60);
|
||||
s.SetMinimumSecondsBetweenFailureNotifications(120);
|
||||
s.SetApiMaxActiveRequests(5);
|
||||
s.SetHeaderText("GWMS Health Check Status");
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
"sKey": "M3T@n0"
|
||||
},
|
||||
"TimeoutOffline": 3,
|
||||
//"IntervalMin": 2,
|
||||
"IntervalMin": 60,
|
||||
"MaxLogRecord": 360,
|
||||
"ZCodeUrl": "https://qrcode.steamware.net/",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<body>
|
||||
<i>GWMS - Gas Warehouse Management System</i>
|
||||
<h4>Versione: 1.0.2110.0115</h4>
|
||||
<h4>Versione: 1.0.2110.0119</h4>
|
||||
<br /> Note di rilascio:
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
@@ -1 +1 @@
|
||||
1.0.2110.0115
|
||||
1.0.2110.0119
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<item>
|
||||
<version>1.0.2110.0115</version>
|
||||
<version>1.0.2110.0119</version>
|
||||
<url>http://nexus.steamware.net/repository/SWS/GWMS/stable/0/GWMS.UI.zip</url>
|
||||
<changelog>http://nexus.steamware.net/repository/SWS/GWMS/stable/0/ChangeLog.html</changelog>
|
||||
<mandatory>false</mandatory>
|
||||
|
||||
Reference in New Issue
Block a user