Merge branch 'Release/UpdateInProdDataOdl'

This commit is contained in:
Samuele Locatelli
2025-11-14 16:52:28 +01:00
11 changed files with 34 additions and 33 deletions
+18 -17
View File
@@ -284,7 +284,7 @@ namespace MP_TAB3.Components
string evText = "Registrata ANNULLAMENTO ATTREZZAGGIO per ODL {0}";
StringBuilder sb = new StringBuilder();
sb.AppendLine(String.Format(evText, idxODLCurr));
await processaEvento(IdxMaccSel, idxEvento, sb.ToString(), idxODLCurr);
await processaEvento(IdxMaccSel, idxEvento, sb.ToString(), idxODLCurr, DateTime.Now);
await advStep(currStep++);
// resetta PODL e rimuove ODL x poi TOGLIERE info di setup su macchina corrente
@@ -300,7 +300,7 @@ namespace MP_TAB3.Components
await Task.Delay(50);
await TabDServ.OdlFineProd(idxOdlAltra, idxMaccAltraTav, DateTime.Now);
sb.AppendLine(String.Format(evText, idxOdlAltra));
await processaEvento(idxMaccAltraTav, idxEvento, String.Format(evText, idxOdlAltra), idxOdlAltra);
await processaEvento(idxMaccAltraTav, idxEvento, String.Format(evText, idxOdlAltra), idxOdlAltra, DateTime.Now);
// resetta PODL e rimuove ODL x poi TOGLIERE info di setup su macchina corrente
await TabDServ.OdlClearSetup(idxOdlAltra, idxMaccAltraTav);
@@ -501,7 +501,7 @@ namespace MP_TAB3.Components
string evText = "Registrata inizio produzione per ODL {0}";
StringBuilder sb = new StringBuilder();
sb.AppendLine(String.Format(evText, idxODLStart));
await processaEvento(IdxMaccSel, idxEvento, sb.ToString(), idxODLStart);
await processaEvento(IdxMaccSel, idxEvento, sb.ToString(), idxODLStart, DateTime.Now);
// indico INIZIO SETUP su REDIS come EXE della macchina...
string ts = string.Format("{0:yyMMdd}T{0:HHmmss.fff}Z", DateTime.Now);
TabDServ.addTask4Machine(IdxMaccSel, taskType.stopSetup, $"TS:{ts}|MATR:{MatrOpr}|ODL:{idxODLStart}");
@@ -513,7 +513,7 @@ namespace MP_TAB3.Components
var tabOdlAltra = await TabDServ.OdlCurrByMacc(idxMaccAltraTav, true);
int idxOdlAltra = tabOdlAltra.IdxOdl;
sb.AppendLine(String.Format(evText, idxOdlAltra));
await processaEvento(idxMaccAltraTav, idxEvento, String.Format(evText, idxOdlAltra), idxOdlAltra);
await processaEvento(idxMaccAltraTav, idxEvento, String.Format(evText, idxOdlAltra), idxOdlAltra, DateTime.Now);
// invio su seconda tavola
TabDServ.addTask4Machine(idxMaccAltraTav, taskType.stopSetup, $"TS:{ts}|MATR: {MatrOpr}| Master Machine: {IdxMaccSel}");
}
@@ -530,7 +530,7 @@ namespace MP_TAB3.Components
// invio chiusura attrezzaggio
ts = string.Format("{0:yyMMdd}T{0:HHmmss.fff}Z", DateTime.Now);
string outData = $"TS:{ts}|MATR:{MatrOpr}|ODL:{idxODLStart}";
await processaEvento(machine.IdxMacchinaSlave, idxEvento, sb.ToString(), idxODLStart);
await processaEvento(machine.IdxMacchinaSlave, idxEvento, sb.ToString(), idxODLStart, DateTime.Now);
TabDServ.addTask4Machine(machine.IdxMacchinaSlave, taskType.fixStopSetup, outData);
}
@@ -675,7 +675,8 @@ namespace MP_TAB3.Components
string evText = "Registrato inizio attrezzaggio per ODL {0}";
StringBuilder sb = new StringBuilder();
sb.AppendLine(String.Format(evText, idxODL_curr));
await processaEvento(IdxMaccSel, idxEvento, sb.ToString(), idxODL_curr);
DateTime dtEvAttr = DateTime.Now;
await processaEvento(IdxMaccSel, idxEvento, sb.ToString(), idxODL_curr, dtEvAttr);
await advStep(currStep++);
// aggiungo articolo, commessa, richiesta pezzi...
try
@@ -708,11 +709,12 @@ namespace MP_TAB3.Components
if (idxOdlAltra > 0)
{
sb.AppendLine("---");
await TabDServ.OdlFineProd(idxOdlAltra, idxMaccAltraTav, DateTime.Now);
await Task.Delay(50);
await TabDServ.OdlFineProd(idxOdlAltra, idxMaccAltraTav, dtEvAttr);
//await Task.Delay(50);
evText = $"Registrato inizio attrezzaggio per ODL {idxOdlAltra} (setup seconda tavola)";
sb.AppendLine(evText);
await processaEvento(idxMaccAltraTav, idxEvento, evText, idxOdlAltra);
// attrezzo con ritardo
await processaEvento(idxMaccAltraTav, idxEvento, evText, idxOdlAltra, dtEvAttr.AddMilliseconds(50));
}
lblOut = sb.ToString().Replace("---", "<br/>");
}
@@ -857,7 +859,7 @@ namespace MP_TAB3.Components
string evText = "Registrata fine produzione per ODL {0}";
StringBuilder sb = new StringBuilder();
sb.AppendLine(String.Format(evText, idxODLCurr));
await processaEvento(IdxMaccSel, idxEvento, sb.ToString(), idxODLCurr);
await processaEvento(IdxMaccSel, idxEvento, sb.ToString(), idxODLCurr, DateTime.Now);
await advStep(currStep++);
// se è multi processo ANCHE x altra tavola...
if (isMulti)
@@ -868,7 +870,7 @@ namespace MP_TAB3.Components
await TabDServ.OdlFineProd(idxOdlAltra, idxMaccAltraTav, DateTime.Now);
await Task.Delay(50);
sb.AppendLine(String.Format(evText, idxOdlAltra));
await processaEvento(idxMaccAltraTav, idxEvento, String.Format(evText, idxOdlAltra), idxOdlAltra);
await processaEvento(idxMaccAltraTav, idxEvento, String.Format(evText, idxOdlAltra), idxOdlAltra, DateTime.Now);
}
await advStep(currStep++);
// se è master --> chiamo update child!
@@ -896,7 +898,7 @@ namespace MP_TAB3.Components
// effettuo split su nuovo ODL
await TabDServ.OdlSplit(idxODLCurr, MatrOpr, IdxMaccSel, currOdl.Tcassegnato, PzPallet, $"Fine Produzione, Sospensione ODL {idxODLCurr}, generato residuo con pari TCiclo: {currOdl.Tcassegnato}", false, 0);
// processo chiusura setup
await processaEvento(IdxMaccSel, idxEvento, $"Registrata fine produzione per ODL {idxODLCurr}, nuovo ODL per quantità residua", idxODLCurr);
await processaEvento(IdxMaccSel, idxEvento, $"Registrata fine produzione per ODL {idxODLCurr}, nuovo ODL per quantità residua", idxODLCurr, DateTime.Now);
await advStep(currStep++);
// se è multi processo ANCHE x altra tavola...
@@ -907,7 +909,7 @@ namespace MP_TAB3.Components
// effettuo split su nuovo ODL
await TabDServ.OdlSplit(idxOdlAltra, MatrOpr, idxMaccAltraTav, tabOdlAltra.Tcassegnato, PzPallet, $"Fine Produzione, Sospensione ODL {idxOdlAltra}, generato residuo con pari TCiclo: {tabOdlAltra.Tcassegnato}", false, 0);
// processo chiusura setup
await processaEvento(idxMaccAltraTav, idxEvento, $"Registrata fine produzione per ODL {idxOdlAltra}, nuovo ODL per quantità residua", idxOdlAltra);
await processaEvento(idxMaccAltraTav, idxEvento, $"Registrata fine produzione per ODL {idxOdlAltra}, nuovo ODL per quantità residua", idxOdlAltra, DateTime.Now);
}
await advStep(currStep++);
// se è master --> chiamo update child!
@@ -1147,7 +1149,7 @@ namespace MP_TAB3.Components
string evText = "Registrato Riattrezzaggio ODL (old :{0})";
StringBuilder sb = new StringBuilder();
sb.AppendLine(String.Format(evText, idxODLSplit));
await processaEvento(IdxMaccSel, idxEvento, sb.ToString(), idxODLSplit);
await processaEvento(IdxMaccSel, idxEvento, sb.ToString(), idxODLSplit, DateTime.Now);
await advStep(currStep++);
// update buttons...
checkAll();
@@ -1724,11 +1726,10 @@ namespace MP_TAB3.Components
/// <param name="idxEvento"></param>
/// <param name="userMsg"></param>
/// <param name="idxODL"></param>
private async Task processaEvento(string idxMaccCurr, int idxEvento, string userMsg, int idxODL)
private async Task processaEvento(string idxMaccCurr, int idxEvento, string userMsg, int idxODL, DateTime adesso)
{
inputComandoMapo inCmd;
inputComandoMapo inCmd2;
DateTime adesso = DateTime.Now;
inputComandoMapo inCmd2;
var rigaStato = TabDServ.StatoMacchina(idxMaccCurr);
// processo evento...
EventListModel newRec = new EventListModel()
+1 -1
View File
@@ -3,7 +3,7 @@
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<Nullable>enable</Nullable>
<Version>6.16.2509.1211</Version>
<Version>6.16.2511.1312</Version>
<ImplicitUsings>enable</ImplicitUsings>
<RootNamespace>MP_TAB3</RootNamespace>
</PropertyGroup>
+1 -1
View File
@@ -1,6 +1,6 @@
<body>
<i>Modulo MAPOSPEC </i>
<h4>Versione: 6.16.2509.1211</h4>
<h4>Versione: 6.16.2511.1312</h4>
<br /> Note di rilascio:
<ul>
<li>
+1 -1
View File
@@ -1 +1 @@
6.16.2509.1211
6.16.2511.1312
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<item>
<version>6.16.2509.1211</version>
<version>6.16.2511.1312</version>
<url>https://nexus.steamware.net/repository/SWS/MP-TAB3/stable/LAST/MP-TAB3.zip</url>
<changelog>https://nexus.steamware.net/repository/SWS/MP-TAB3/stable/LAST/ChangeLog.html</changelog>
<mandatory>false</mandatory>
+1 -1
View File
@@ -30,7 +30,7 @@ namespace MP.Data.Services
if (TrackData.ContainsKey(CallName))
{
var reqRec = TrackData[CallName];
answ = $"{CallName} | {reqRec.NumCall} x {reqRec.AvgTime:N3}ms | min: {reqRec.MinTime:N3} | MAX: {reqRec.MaxTime:N3}";
answ = $"{CallName} | {reqRec.NumCall} x {reqRec.AvgTime:N3}ms | min: {reqRec.MinTime:N3}ms | MAX: {reqRec.MaxTime:N3}ms";
// se richiede reset --> effettuo
if (resetCount)
{
+6 -6
View File
@@ -3466,10 +3466,10 @@ namespace MP.Data.Services
StatoProdModel? result = new StatoProdModel();
// cerco in redisConn...
string currKey = $"{redisBaseKey}:StatoProd:{idxMacchina}:{dtReq:HHmm}";
RedisValue rawData = redisDb.StringGet(currKey);
#if false
RedisValue rawData = await redisDb.StringGetAsync(currKey);
RedisValue rawData = redisDb.StringGet(currKey);
#endif
RedisValue rawData = await redisDb.StringGetAsync(currKey);
//if (!string.IsNullOrEmpty($"{rawData}"))
if (rawData.HasValue)
{
@@ -3481,10 +3481,10 @@ namespace MP.Data.Services
result = dbTabController.StatoProdMacchina(idxMacchina, dtReq);
// serializzo e salvo...
rawData = JsonConvert.SerializeObject(result);
redisDb.StringSet(currKey, rawData, UltraFastCache);
#if false
await redisDb.StringSetAsync(currKey, rawData, UltraFastCache);
redisDb.StringSet(currKey, rawData, UltraFastCache);
#endif
await redisDb.StringSetAsync(currKey, rawData, UltraFastCache);
}
if (result == null)
{
@@ -3496,7 +3496,7 @@ namespace MP.Data.Services
#endif
string callName = $"StatoProdMacchina.{source}";
int numRec = esCollect.RecordCall(callName, sw.Elapsed.TotalMilliseconds);
if (numRec >= nRecLog)
if (numRec >= nRecLog || true)
{
Log.Debug(esCollect.GetCallSum(callName, true));
}
@@ -4057,7 +4057,7 @@ namespace MP.Data.Services
.Where(ep => redisConn.GetServer(ep).IsConnected && !redisConn.GetServer(ep).IsReplica)
.FirstOrDefault();
// sepattern è "*" elimino intero DB...
// se pattern è "*" elimino intero DB...
if (masterEndpoint != null && (pat2Flush.Equals(new RedisValue("*")) || pat2Flush == RedisValue.Null))
{
redisConn.GetServer(masterEndpoint).FlushDatabase(database: redisDb.Database);
+2 -2
View File
@@ -4,8 +4,8 @@
<TargetFramework>net6.0</TargetFramework>
<RootNamespace>MP.Stats</RootNamespace>
<UserSecretsId>826e877c-ba70-4253-84cb-d0b1cafd4440</UserSecretsId>
<Version>6.16.2509.1211</Version>
<Version>6.16.2509.1211</Version>
<Version>6.16.2510.1508</Version>
<Version>6.16.2510.1508</Version>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<NoWarn>$(NoWarn);1591</NoWarn>
<SatelliteResourceLanguages>en</SatelliteResourceLanguages>
+1 -1
View File
@@ -1,6 +1,6 @@
<body>
<i>Modulo statistiche MAPO</i>
<h4>Versione: 6.16.2509.1211</h4>
<h4>Versione: 6.16.2510.1508</h4>
<br />
Note di rilascio:
<ul>
+1 -1
View File
@@ -1 +1 @@
6.16.2509.1211
6.16.2510.1508
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<item>
<version>6.16.2509.1211</version>
<version>6.16.2510.1508</version>
<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>
<mandatory>false</mandatory>