diff --git a/MP-TAB3/MP-TAB3.csproj b/MP-TAB3/MP-TAB3.csproj
index 11369cd9..c3394505 100644
--- a/MP-TAB3/MP-TAB3.csproj
+++ b/MP-TAB3/MP-TAB3.csproj
@@ -3,7 +3,7 @@
net8.0
enable
- 6.16.2604.1109
+ 6.16.2604.2016
enable
MP_TAB3
diff --git a/MP-TAB3/Resources/ChangeLog.html b/MP-TAB3/Resources/ChangeLog.html
index f96e0f05..0ff249d2 100644
--- a/MP-TAB3/Resources/ChangeLog.html
+++ b/MP-TAB3/Resources/ChangeLog.html
@@ -1,6 +1,6 @@
Modulo MAPOSPEC
- Versione: 6.16.2604.1109
+ Versione: 6.16.2604.2016
Note di rilascio:
-
diff --git a/MP-TAB3/Resources/VersNum.txt b/MP-TAB3/Resources/VersNum.txt
index 4b72e53b..c7011c5d 100644
--- a/MP-TAB3/Resources/VersNum.txt
+++ b/MP-TAB3/Resources/VersNum.txt
@@ -1 +1 @@
-6.16.2604.1109
+6.16.2604.2016
diff --git a/MP-TAB3/Resources/manifest.xml b/MP-TAB3/Resources/manifest.xml
index 417d6863..ee301e79 100644
--- a/MP-TAB3/Resources/manifest.xml
+++ b/MP-TAB3/Resources/manifest.xml
@@ -1,6 +1,6 @@
-
- 6.16.2604.1109
+ 6.16.2604.2016
https://nexus.steamware.net/repository/SWS/MP-TAB3/stable/LAST/MP-TAB3.zip
https://nexus.steamware.net/repository/SWS/MP-TAB3/stable/LAST/ChangeLog.html
false
diff --git a/MP.Data/Controllers/MpIocController.cs b/MP.Data/Controllers/MpIocController.cs
index 41096982..c92a9e97 100644
--- a/MP.Data/Controllers/MpIocController.cs
+++ b/MP.Data/Controllers/MpIocController.cs
@@ -839,56 +839,18 @@ namespace MP.Data.Controllers
public async Task OdlLastByMaccAsync(string idxMacchina)
{
ODLExpModel answ = new();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- try
- {
- var pIdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- // attenzione: se la stored resituisce una tabella, il primo elemento va recuperato in RAM!!!
- var dbRes = (await dbCtx.DbSetODLExp
- .FromSqlRaw("EXEC stp_ODL_getLastByMacchina @IdxMacchina", pIdxMacchina)
- .AsNoTracking()
- .ToListAsync()) // Esegue la query e scarica i risultati in memoria
- .FirstOrDefault(); // Prende il primo elemento dalla lista in RAM
- answ = dbRes ?? new();
- }
- catch (Exception exc)
- {
- Log.Error($"Eccezione durante OdlCurrByMaccAsync{Environment.NewLine}{exc}");
- }
- }
- return answ;
- }
+ using var dbCtx = new MoonProContext(_configuration);
- ///
- /// Elenco ODL data macchina e periodo
- ///
- ///
- ///
- ///
- ///
- public List OdlListByMaccPeriodo(string idxMacchina, DateTime dtStart, DateTime dtEnd)
- {
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- try
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- var DataFrom = new SqlParameter("@dataFrom", dtStart);
- var DataTo = new SqlParameter("@dataTo", dtEnd);
- dbResult = dbCtx
- .DbSetODLExp
- .FromSqlRaw("EXEC stp_ODL_getByMacchinaPeriodo @IdxMacchina, @dataFrom, @dataTo", IdxMacchina, DataFrom, DataTo)
- .AsNoTracking()
- .ToList();
- }
- catch (Exception exc)
- {
- Log.Error($"Eccezione durante OdlListByMaccPeriodo{Environment.NewLine}{exc}");
- }
- }
- return dbResult;
+ var pIdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
+ // attenzione: se la stored resituisce una tabella, il primo elemento va recuperato in RAM!!!
+ var dbRes = (await dbCtx.DbSetODLExp
+ .FromSqlRaw("EXEC stp_ODL_getLastByMacchina @IdxMacchina", pIdxMacchina)
+ .AsNoTracking()
+ .ToListAsync()) // Esegue la query e scarica i risultati in memoria
+ .FirstOrDefault(); // Prende il primo elemento dalla lista in RAM
+ answ = dbRes ?? new();
+
+ return answ;
}
///
@@ -901,45 +863,17 @@ namespace MP.Data.Controllers
public async Task
> OdlListByMaccPeriodoAsync(string idxMacchina, DateTime dtStart, DateTime dtEnd)
{
List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- try
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- var DataFrom = new SqlParameter("@dataFrom", dtStart);
- var DataTo = new SqlParameter("@dataTo", dtEnd);
- dbResult = await dbCtx
- .DbSetODLExp
- .FromSqlRaw("EXEC stp_ODL_getByMacchinaPeriodo @IdxMacchina, @dataFrom, @dataTo", IdxMacchina, DataFrom, DataTo)
- .AsNoTracking()
- .ToListAsync();
- }
- catch (Exception exc)
- {
- Log.Error($"Eccezione durante OdlListByMaccPeriodoAsync{Environment.NewLine}{exc}");
- }
- }
- return dbResult;
- }
+ using var dbCtx = new MoonProContext(_configuration);
- ///
- /// Conteggio PzProd Macchina
- ///
- ///
- ///
- public PzProdModel PezziProdMacchina(string idxMacchina)
- {
- PzProdModel dbResult = new PzProdModel();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var pIdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- dbResult = (dbCtx
- .DbSetPzProd
- .FromSqlRaw("EXEC stp_PzProd_getByMacchina @IdxMacchina", pIdxMacchina)
+ var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
+ var DataFrom = new SqlParameter("@dataFrom", dtStart);
+ var DataTo = new SqlParameter("@dataTo", dtEnd);
+ dbResult = await dbCtx
+ .DbSetODLExp
+ .FromSqlRaw("EXEC stp_ODL_getByMacchinaPeriodo @IdxMacchina, @dataFrom, @dataTo", IdxMacchina, DataFrom, DataTo)
.AsNoTracking()
- .ToList())
- .FirstOrDefault(); // recupero da RAM
- }
+ .ToListAsync();
+
return dbResult;
}
@@ -951,16 +885,15 @@ namespace MP.Data.Controllers
public async Task PezziProdMacchinaAsync(string idxMacchina)
{
PzProdModel dbResult = new PzProdModel();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var pIdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- dbResult = (await dbCtx
- .DbSetPzProd
- .FromSqlRaw("EXEC stp_PzProd_getByMacchina @IdxMacchina", pIdxMacchina)
- .AsNoTracking()
- .ToListAsync())
- .FirstOrDefault(); // recupero da RAM
- }
+ using var dbCtx = new MoonProContext(_configuration);
+
+ var pIdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
+ dbResult = (await dbCtx
+ .DbSetPzProd
+ .FromSqlRaw("EXEC stp_PzProd_getByMacchina @IdxMacchina", pIdxMacchina)
+ .AsNoTracking()
+ .ToListAsync())
+ .FirstOrDefault(); // recupero da RAM
return dbResult;
}
@@ -975,54 +908,21 @@ namespace MP.Data.Controllers
public async Task> POdlGetByMaccArtAsync(string idxMacchina, string codArticolo, string codGruppo, bool onlyFree)
{
List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var pIdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- var pCodArticolo = new SqlParameter("@CodArticolo", codArticolo);
- var pCodGruppo = new SqlParameter("@CodGruppo", codGruppo);
- var pOnlyFree = new SqlParameter("@onlyFree", onlyFree);
+ using var dbCtx = new MoonProContext(_configuration);
- dbResult = await dbCtx
- .DbSetPODLExp
- .FromSqlRaw("EXEC stp_PODL_getByMaccArt @IdxMacchina, @CodArticolo, @CodGruppo, @onlyFree", pIdxMacchina, pCodArticolo, pCodGruppo, pOnlyFree)
- .AsNoTracking()
- .ToListAsync();
- }
+ var pIdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
+ var pCodArticolo = new SqlParameter("@CodArticolo", codArticolo);
+ var pCodGruppo = new SqlParameter("@CodGruppo", codGruppo);
+ var pOnlyFree = new SqlParameter("@onlyFree", onlyFree);
+
+ dbResult = await dbCtx
+ .DbSetPODLExp
+ .FromSqlRaw("EXEC stp_PODL_getByMaccArt @IdxMacchina, @CodArticolo, @CodGruppo, @onlyFree", pIdxMacchina, pCodArticolo, pCodGruppo, pOnlyFree)
+ .AsNoTracking()
+ .ToListAsync();
return dbResult;
}
- ///
- /// Effettua ricalcolo MSE x macchina indicata
- ///
- /// idx macchina da confermare
- /// Num massimo secondi di "vecchiaia" del dato
- ///
- public bool RecalcMse(string idxMacchina, int maxAgeSec)
- {
- bool answ = false;
- try
- {
- var rigaProd = StatoProdMacchina(idxMacchina, DateTime.Now);
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var MaxAgeSec = new SqlParameter("@maxAgeSec ", maxAgeSec);
- var IdxMacchina = new SqlParameter("@idxMacchina", idxMacchina);
-
- var result = dbCtx
- .Database
- .ExecuteSqlRaw("EXEC stp_MSE_recalc @maxAgeSec, @idxMacchina ", MaxAgeSec, IdxMacchina);
-
- // indico eseguito!
- answ = result > 0;
- }
- }
- catch (Exception exc)
- {
- Log.Error($"Eccezione in RecalcMse:{Environment.NewLine}{exc}");
- }
- return answ;
- }
-
///
/// Effettua ricalcolo MSE x macchina indicata
///
@@ -1031,28 +931,17 @@ namespace MP.Data.Controllers
///
public async Task RecalcMseAsync(string idxMacchina, int maxAgeSec)
{
- bool answ = false;
- try
- {
- var rigaProd = await StatoProdMacchinaAsync(idxMacchina, DateTime.Now);
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var MaxAgeSec = new SqlParameter("@maxAgeSec ", maxAgeSec);
- var IdxMacchina = new SqlParameter("@idxMacchina", idxMacchina);
+ using var dbCtx = new MoonProContext(_configuration);
- var result = await dbCtx
- .Database
- .ExecuteSqlRawAsync("EXEC stp_MSE_recalc @maxAgeSec, @idxMacchina ", MaxAgeSec, IdxMacchina);
+ var rigaProd = await StatoProdMacchinaAsync(idxMacchina, DateTime.Now);
+ var MaxAgeSec = new SqlParameter("@maxAgeSec ", maxAgeSec);
+ var IdxMacchina = new SqlParameter("@idxMacchina", idxMacchina);
- // indico eseguito!
- answ = result > 0;
- }
- }
- catch (Exception exc)
- {
- Log.Error($"Eccezione in RecalcMseAsync:{Environment.NewLine}{exc}");
- }
- return answ;
+ var result = await dbCtx
+ .Database
+ .ExecuteSqlRawAsync("EXEC stp_MSE_recalc @maxAgeSec, @idxMacchina ", MaxAgeSec, IdxMacchina);
+
+ return result != 0;
}
///
@@ -1064,23 +953,20 @@ namespace MP.Data.Controllers
///
///
///
- public async Task RegControlliInsert(string idxMacchina, int matrOpr, bool esitoOk, string note, DateTime dataOra)
+ public async Task RegControlliInsertAsync(string idxMacchina, int matrOpr, bool esitoOk, string note, DateTime dataOra)
{
- bool fatto = false;
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacc = new SqlParameter("@IdxMacchina", idxMacchina);
- var MatrOpr = new SqlParameter("@MatrOpr", matrOpr);
- var EsitoOk = new SqlParameter("@EsitoOk", esitoOk);
- var Note = new SqlParameter("@Note", note);
- var DataOra = new SqlParameter("@DataOra", dataOra);
+ using var dbCtx = new MoonProContext(_configuration);
- var result = await dbCtx
- .Database
- .ExecuteSqlRawAsync("EXEC stp_RC_insert @IdxMacchina, @MatrOpr, @EsitoOk, @Note, @DataOra", IdxMacc, MatrOpr, EsitoOk, Note, DataOra);
- fatto = result != 0;
- }
- return fatto;
+ var IdxMacc = new SqlParameter("@IdxMacchina", idxMacchina);
+ var MatrOpr = new SqlParameter("@MatrOpr", matrOpr);
+ var EsitoOk = new SqlParameter("@EsitoOk", esitoOk);
+ var Note = new SqlParameter("@Note", note);
+ var DataOra = new SqlParameter("@DataOra", dataOra);
+
+ var result = await dbCtx
+ .Database
+ .ExecuteSqlRawAsync("EXEC stp_RC_insert @IdxMacchina, @MatrOpr, @EsitoOk, @Note, @DataOra", IdxMacc, MatrOpr, EsitoOk, Note, DataOra);
+ return result != 0;
}
///
@@ -1088,24 +974,21 @@ namespace MP.Data.Controllers
///
///
///
- public async Task RegDichiarInsert(RegistroDichiarazioniModel newRec)
+ public async Task RegDichiarInsertAsync(RegistroDichiarazioniModel newRec)
{
- bool fatto = false;
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var TagCode = new SqlParameter("@TagCode", newRec.TagCode);
- var IdxMacchina = new SqlParameter("@IdxMacchina", newRec.IdxMacchina);
- var DtRec = new SqlParameter("@DtRec", newRec.DtRec);
- var MatrOpr = new SqlParameter("@MatrOpr", newRec.MatrOpr);
- var ValString = new SqlParameter("@ValString", newRec.ValString);
+ using var dbCtx = new MoonProContext(_configuration);
- var result = await dbCtx
- .Database
- .ExecuteSqlRawAsync("exec dbo.stp_DD_insertQuery @TagCode, @IdxMacchina, @DtRec, @MatrOpr, @ValString", TagCode, IdxMacchina, DtRec, MatrOpr, ValString);
- // indico eseguito!
- fatto = result > 0;
- }
- return fatto;
+ var TagCode = new SqlParameter("@TagCode", newRec.TagCode);
+ var IdxMacchina = new SqlParameter("@IdxMacchina", newRec.IdxMacchina);
+ var DtRec = new SqlParameter("@DtRec", newRec.DtRec);
+ var MatrOpr = new SqlParameter("@MatrOpr", newRec.MatrOpr);
+ var ValString = new SqlParameter("@ValString", newRec.ValString);
+
+ var result = await dbCtx
+ .Database
+ .ExecuteSqlRawAsync("exec dbo.stp_DD_insertQuery @TagCode, @IdxMacchina, @DtRec, @MatrOpr, @ValString", TagCode, IdxMacchina, DtRec, MatrOpr, ValString);
+
+ return result != 0;
}
///
@@ -1113,24 +996,20 @@ namespace MP.Data.Controllers
///
///
///
- public async Task RegDichiarUpdate(RegistroDichiarazioniModel newRec)
+ public async Task RegDichiarUpdateAsync(RegistroDichiarazioniModel newRec)
{
- bool fatto = false;
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var Original_IdxDich = new SqlParameter("@Original_IdxDich", newRec.IdxDich);
- var DtRec = new SqlParameter("@DtRec", newRec.DtRec);
- var TagCode = new SqlParameter("@TagCode", newRec.TagCode);
- var ValString = new SqlParameter("@ValString", newRec.ValString);
- var MatrOpr = new SqlParameter("@MatrOpr", newRec.MatrOpr);
+ using var dbCtx = new MoonProContext(_configuration);
- var result = await dbCtx
- .Database
- .ExecuteSqlRawAsync("exec dbo.stp_DD_updateQuery @Original_IdxDich, @DtRec, @TagCode, @ValString, @MatrOpr", Original_IdxDich, DtRec, TagCode, ValString, MatrOpr);
- // indico eseguito!
- fatto = result > 0;
- }
- return fatto;
+ var Original_IdxDich = new SqlParameter("@Original_IdxDich", newRec.IdxDich);
+ var DtRec = new SqlParameter("@DtRec", newRec.DtRec);
+ var TagCode = new SqlParameter("@TagCode", newRec.TagCode);
+ var ValString = new SqlParameter("@ValString", newRec.ValString);
+ var MatrOpr = new SqlParameter("@MatrOpr", newRec.MatrOpr);
+ var result = await dbCtx
+ .Database
+ .ExecuteSqlRawAsync("exec dbo.stp_DD_updateQuery @Original_IdxDich, @DtRec, @TagCode, @ValString, @MatrOpr", Original_IdxDich, DtRec, TagCode, ValString, MatrOpr);
+
+ return result != 0;
}
///
@@ -1138,28 +1017,23 @@ namespace MP.Data.Controllers
///
///
///
- public async Task RegScartiInsert(RegistroScartiModel newRec)
+ public async Task RegScartiInsertAsync(RegistroScartiModel newRec)
{
- bool fatto = false;
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacchina = new SqlParameter("@idxMacchina", newRec.IdxMacchina);
- var DataOra = new SqlParameter("@DataOra", newRec.DataOra);
- var Causale = new SqlParameter("@Causale", newRec.Causale);
- var Qta = new SqlParameter("@Qta", newRec.Qta);
- var Note = new SqlParameter("@Note", newRec.Note);
- var MatrOpr = new SqlParameter("@MatrOpr", newRec.MatrOpr);
+ using var dbCtx = new MoonProContext(_configuration);
- var result = await dbCtx
- .DbSetRegWithCheck
- .FromSqlRaw("exec dbo.stp_RS_Insert_withCheck @idxMacchina, @DataOra, @Causale, @Qta, @Note, @MatrOpr", IdxMacchina, DataOra, Causale, Qta, Note, MatrOpr)
- .AsNoTracking()
- .ToListAsync();
- // indico eseguito!
- // -1 = restituisce una select
- fatto = result.Count > 0;
- }
- return fatto;
+ var IdxMacchina = new SqlParameter("@idxMacchina", newRec.IdxMacchina);
+ var DataOra = new SqlParameter("@DataOra", newRec.DataOra);
+ var Causale = new SqlParameter("@Causale", newRec.Causale);
+ var Qta = new SqlParameter("@Qta", newRec.Qta);
+ var Note = new SqlParameter("@Note", newRec.Note);
+ var MatrOpr = new SqlParameter("@MatrOpr", newRec.MatrOpr);
+
+ var result = await dbCtx
+ .DbSetRegWithCheck
+ .FromSqlRaw("exec dbo.stp_RS_Insert_withCheck @idxMacchina, @DataOra, @Causale, @Qta, @Note, @MatrOpr", IdxMacchina, DataOra, Causale, Qta, Note, MatrOpr)
+ .AsNoTracking()
+ .ToListAsync();
+ return result.Count != 0;
}
///
@@ -1169,15 +1043,13 @@ namespace MP.Data.Controllers
///
public async Task RemRebootLogAddAsync(RemoteRebootLogModel newRec)
{
- bool fatto = false;
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var dbResult = dbCtx
+ using var dbCtx = new MoonProContext(_configuration);
+
+ var dbResult = dbCtx
.DbSetRemRebLog
.Add(newRec);
- fatto = await dbCtx.SaveChangesAsync() > 0;
- }
- return fatto;
+
+ return await dbCtx.SaveChangesAsync() > 0;
}
///
@@ -1186,15 +1058,13 @@ namespace MP.Data.Controllers
///
public async Task> RemRebootLogGetAllAsync()
{
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- dbResult = await dbCtx
+ using var dbCtx = new MoonProContext(_configuration);
+
+ var dbResult = await dbCtx
.DbSetRemRebLog
.AsNoTracking()
.OrderByDescending(x => x.IdxReboot)
.ToListAsync();
- }
return dbResult;
}
@@ -1204,15 +1074,12 @@ namespace MP.Data.Controllers
///
public async Task> RemRebootLogGetLastAsync()
{
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- dbResult = await dbCtx
- .DbSetRemRebLog
- .FromSqlRaw("EXEC stp_RRL_getLast")
- .AsNoTracking()
- .ToListAsync();
- }
+ using var dbCtx = new MoonProContext(_configuration);
+ var dbResult = await dbCtx
+ .DbSetRemRebLog
+ .FromSqlRaw("EXEC stp_RRL_getLast")
+ .AsNoTracking()
+ .ToListAsync();
return dbResult;
}
@@ -1222,66 +1089,14 @@ namespace MP.Data.Controllers
///
public async Task RemRebootLogKeepLastAsync(int num2keep)
{
- bool answ = false;
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var Num2keep = new SqlParameter("@num2keep", num2keep);
- var dbResult = await dbCtx
- .Database
- .ExecuteSqlRawAsync("exec dbo.stp_RRL_KeepLatest @num2keep", Num2keep);
- answ = dbResult > 0;
- }
- return answ;
- }
+ using var dbCtx = new MoonProContext(_configuration);
- ///
- /// Annulla modifiche su una specifica entity (cancel update)
- ///
- ///
- ///
- public bool RollBackEntity(object item)
- {
- bool answ = false;
- using (var dbCtx = new MoonProContext(_configuration))
- {
- try
- {
- if (dbCtx.Entry(item).State == Microsoft.EntityFrameworkCore.EntityState.Deleted || dbCtx.Entry(item).State == Microsoft.EntityFrameworkCore.EntityState.Modified)
- {
- dbCtx.Entry(item).Reload();
- }
- }
- catch (Exception exc)
- {
- Log.Error($"Eccezione in rollBackEntity{Environment.NewLine}{exc}");
- }
- }
- return answ;
- }
+ var Num2keep = new SqlParameter("@num2keep", num2keep);
+ var dbResult = await dbCtx
+ .Database
+ .ExecuteSqlRawAsync("exec dbo.stp_RRL_KeepLatest @num2keep", Num2keep);
- ///
- /// Aggiunta record SignalLog
- ///
- ///
- ///
- public bool SignalLogInsert(SignalLogModel newRec)
- {
- bool fatto = false;
- using (var dbCtx = new MoonProContext(_configuration))
- {
- try
- {
- var currRec = dbCtx
- .DbSetSignalLog
- .Add(newRec);
- dbCtx.SaveChanges();
- }
- catch (Exception exc)
- {
- Log.Error($"Eccezione durante SignalLogInsert{Environment.NewLine}{exc}");
- }
- }
- return fatto;
+ return dbResult != 0;
}
///
@@ -1291,44 +1106,13 @@ namespace MP.Data.Controllers
///
public async Task SignalLogInsertAsync(SignalLogModel newRec)
{
- bool fatto = false;
- using (var dbCtx = new MoonProContext(_configuration))
- {
- try
- {
- var currRec = dbCtx
- .DbSetSignalLog
- .Add(newRec);
- await dbCtx.SaveChangesAsync();
- }
- catch (Exception exc)
- {
- Log.Error($"Eccezione durante SignalLogInsertAsync{Environment.NewLine}{exc}");
- }
- }
- return fatto;
- }
+ using var dbCtx = new MoonProContext(_configuration);
- ///
- /// Tabella state machine eventi 2 stati data macchina e tipo evento
- ///
- ///
- ///
- public List SMES_getHwTransitions(string idxMacchina, int idxTipo)
- {
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- var IdxTipo = new SqlParameter("@IdxTipo", idxTipo);
- dbResult = dbCtx
- .DbSetSMES
- .FromSqlRaw("exec dbo.stp_TS_getByIdxMacchIdxTipoEv @IdxMacchina, @IdxTipo", IdxMacchina, IdxTipo)
- .AsNoTracking()
- .AsEnumerable()
- .ToList();
- }
- return dbResult;
+ var currRec = dbCtx
+ .DbSetSignalLog
+ .Add(newRec);
+
+ return await dbCtx.SaveChangesAsync() > 0;
}
///
@@ -1338,39 +1122,16 @@ namespace MP.Data.Controllers
///
public async Task> SMES_getHwTransitionsAsync(string idxMacchina, int idxTipo)
{
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- var IdxTipo = new SqlParameter("@IdxTipo", idxTipo);
- dbResult = await dbCtx
- .DbSetSMES
- .FromSqlRaw("exec dbo.stp_TS_getByIdxMacchIdxTipoEv @IdxMacchina, @IdxTipo", IdxMacchina, IdxTipo)
- .AsNoTracking()
- .ToListAsync();
- }
- return dbResult;
- }
+ using var dbCtx = new MoonProContext(_configuration);
+
+ var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
+ var IdxTipo = new SqlParameter("@IdxTipo", idxTipo);
+ var dbResult = await dbCtx
+ .DbSetSMES
+ .FromSqlRaw("exec dbo.stp_TS_getByIdxMacchIdxTipoEv @IdxMacchina, @IdxTipo", IdxMacchina, IdxTipo)
+ .AsNoTracking()
+ .ToListAsync();
- ///
- /// Tabella state machine eventi 2 stati data macchina e tipo evento
- ///
- ///
- ///
- public List SMES_getUserForced(string idxMacchina, int idxTipo)
- {
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- var IdxTipo = new SqlParameter("@IdxTipo", idxTipo);
- dbResult = dbCtx
- .DbSetSMES
- .FromSqlRaw("exec dbo.stp_TS_getUserForcedTrans @IdxMacchina, @IdxTipo", IdxMacchina, IdxTipo)
- .AsNoTracking()
- .AsEnumerable()
- .ToList();
- }
return dbResult;
}
@@ -1381,17 +1142,16 @@ namespace MP.Data.Controllers
///
public async Task> SMES_getUserForcedAsync(string idxMacchina, int idxTipo)
{
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- var IdxTipo = new SqlParameter("@IdxTipo", idxTipo);
- dbResult = await dbCtx
- .DbSetSMES
- .FromSqlRaw("exec dbo.stp_TS_getUserForcedTrans @IdxMacchina, @IdxTipo", IdxMacchina, IdxTipo)
- .AsNoTracking()
- .ToListAsync();
- }
+ using var dbCtx = new MoonProContext(_configuration);
+
+ var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
+ var IdxTipo = new SqlParameter("@IdxTipo", idxTipo);
+ var dbResult = await dbCtx
+ .DbSetSMES
+ .FromSqlRaw("exec dbo.stp_TS_getUserForcedTrans @IdxMacchina, @IdxTipo", IdxMacchina, IdxTipo)
+ .AsNoTracking()
+ .ToListAsync();
+
return dbResult;
}
@@ -1421,41 +1181,15 @@ namespace MP.Data.Controllers
///
public async Task> StateMachineIngressiAsync(int idxFam)
{
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxFamIn = new SqlParameter("@IdxFamigliaIngresso", idxFam);
- dbResult = await dbCtx
- .DbSetSMI
- .FromSqlRaw("exec dbo.stp_TRI_getByIdxFamIng @IdxFamigliaIngresso", IdxFamIn)
- .AsNoTracking()
- .ToListAsync();
- }
- return dbResult;
- }
+ using var dbCtx = new MoonProContext(_configuration);
+
+ var IdxFamIn = new SqlParameter("@IdxFamigliaIngresso", idxFam);
+ var dbResult = await dbCtx
+ .DbSetSMI
+ .FromSqlRaw("exec dbo.stp_TRI_getByIdxFamIng @IdxFamigliaIngresso", IdxFamIn)
+ .AsNoTracking()
+ .ToListAsync();
- ///
- /// Stato prod macchina (completo)
- ///
- ///
- ///
- ///
- public StatoProdModel StatoProdMacchina(string idxMacchina, DateTime dtReq)
- {
- StatoProdModel dbResult = new StatoProdModel();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- var DataOra = new SqlParameter("@DataOra ", dtReq);
- var rawData = dbCtx
- .DbSetStatoProd
- .FromSqlRaw("EXEC stp_StatoProd_getByMacchina @IdxMacchina, @DataOra ", IdxMacchina, DataOra)
- .AsNoTracking()
- .AsEnumerable()
- .ToList();
- dbResult = rawData
- .FirstOrDefault();
- }
return dbResult;
}
@@ -1467,36 +1201,17 @@ namespace MP.Data.Controllers
///
public async Task StatoProdMacchinaAsync(string idxMacchina, DateTime dtReq)
{
- StatoProdModel dbResult = new StatoProdModel();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
- var DataOra = new SqlParameter("@DataOra ", dtReq);
- dbResult = (await dbCtx
- .DbSetStatoProd
- .FromSqlRaw("EXEC stp_StatoProd_getByMacchina @IdxMacchina, @DataOra ", IdxMacchina, DataOra)
- .AsNoTracking()
- .ToListAsync())
- .FirstOrDefault();
- }
- return dbResult;
- }
+ using var dbCtx = new MoonProContext(_configuration);
+
+ var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
+ var DataOra = new SqlParameter("@DataOra ", dtReq);
+ var dbResult = (await dbCtx
+ .DbSetStatoProd
+ .FromSqlRaw("EXEC stp_StatoProd_getByMacchina @IdxMacchina, @DataOra ", IdxMacchina, DataOra)
+ .AsNoTracking()
+ .ToListAsync())
+ .FirstOrDefault();
- ///
- /// Intera vista v_MSFD
- ///
- ///
- public List VMSFDGetAll()
- {
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- dbResult = dbCtx
- .DbSetMSFD
- .AsNoTracking()
- .OrderBy(x => x.IdxMacchina)
- .ToList();
- }
return dbResult;
}
@@ -1506,43 +1221,14 @@ namespace MP.Data.Controllers
///
public async Task> VMSFDGetAllAsync()
{
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- try
- {
- dbResult = await dbCtx
- .DbSetMSFD
- .AsNoTracking()
- .OrderBy(x => x.IdxMacchina)
- .ToListAsync();
- }
- catch (Exception exc)
- {
- }
- }
- return dbResult;
- }
+ using var dbCtx = new MoonProContext(_configuration);
- ///
- /// Vista v_MSFD x singola macchina (da stored) - singolo record
- ///
- ///
- ///
- public List VMSFDGetByMacc(string idxMacc)
- {
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacc);
+ var dbResult = await dbCtx
+ .DbSetMSFD
+ .AsNoTracking()
+ .OrderBy(x => x.IdxMacchina)
+ .ToListAsync();
- dbResult = dbCtx
- .DbSetMSFD
- .FromSqlRaw("exec dbo.stp_MSFD_getMacc @IdxMacchina", IdxMacchina)
- .AsNoTracking()
- .AsEnumerable()
- .ToList();
- }
return dbResult;
}
@@ -1553,39 +1239,16 @@ namespace MP.Data.Controllers
///
public async Task VMSFDGetByMaccAsync(string idxMacc)
{
- VMSFDModel? dbResult = null;
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacc);
- dbResult = (await dbCtx
+ using var dbCtx = new MoonProContext(_configuration);
+
+ var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacc);
+ var dbResult = (await dbCtx
.DbSetMSFD
.FromSqlRaw("exec dbo.stp_MSFD_getMacc @IdxMacchina", IdxMacchina)
.AsNoTracking()
.ToListAsync())
.FirstOrDefault();
- }
- return dbResult;
- }
- ///
- /// Vista v_MSFD delle machine MULTI filtrato x macchina (da stored)
- ///
- ///
- ///
- public List VMSFDGetMultiByMacc(string idxMacc)
- {
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacc);
-
- dbResult = dbCtx
- .DbSetMSFD
- .FromSqlRaw("exec dbo.stp_MSFD_getMulti @IdxMacchina", IdxMacchina)
- .AsNoTracking()
- .AsEnumerable()
- .ToList();
- }
return dbResult;
}
@@ -1596,17 +1259,16 @@ namespace MP.Data.Controllers
///
public async Task> VMSFDGetMultiByMaccAsync(string idxMacc)
{
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacc);
+ using var dbCtx = new MoonProContext(_configuration);
- dbResult = await dbCtx
+ var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacc);
+
+ var dbResult = await dbCtx
.DbSetMSFD
.FromSqlRaw("exec dbo.stp_MSFD_getMulti @IdxMacchina", IdxMacchina)
.AsNoTracking()
.ToListAsync();
- }
+
return dbResult;
}
diff --git a/MP.Data/Services/TabDataService.cs b/MP.Data/Services/TabDataService.cs
index 727f0bdd..b12f9bc2 100644
--- a/MP.Data/Services/TabDataService.cs
+++ b/MP.Data/Services/TabDataService.cs
@@ -2581,7 +2581,7 @@ namespace MP.Data.Services
}
catch (Exception exc)
{
- string logMsg = $"Eccezione in RegControlliInsert | macchina: {idxMacchina} | DataOra: {dataOra} | MatrOpr: {matrOpr} | Qta {esitoOk} | Note: {note}{Environment.NewLine}{exc}";
+ string logMsg = $"Eccezione in RegControlliInsertAsync | macchina: {idxMacchina} | DataOra: {dataOra} | MatrOpr: {matrOpr} | Qta {esitoOk} | Note: {note}{Environment.NewLine}{exc}";
Log.Error(logMsg);
}
return answ;
@@ -2696,7 +2696,7 @@ namespace MP.Data.Services
}
catch (Exception exc)
{
- string logMsg = $"Eccezione in RegDichiarInsert | macchina: {newRec.IdxMacchina} | DtRec: {newRec.DtRec} | TagCode: {newRec.TagCode} | MatrOpr: {newRec.MatrOpr} | ValString {newRec.ValString}{Environment.NewLine}{exc}";
+ string logMsg = $"Eccezione in RegDichiarInsertAsync | macchina: {newRec.IdxMacchina} | DtRec: {newRec.DtRec} | TagCode: {newRec.TagCode} | MatrOpr: {newRec.MatrOpr} | ValString {newRec.ValString}{Environment.NewLine}{exc}";
Log.Error(logMsg);
}
return answ;
@@ -2719,7 +2719,7 @@ namespace MP.Data.Services
}
catch (Exception exc)
{
- string logMsg = $"Eccezione in RegDichiarUpdate | macchina: {newRec.IdxMacchina} | DtRec: {newRec.DtRec} | TagCode: {newRec.TagCode} | MatrOpr: {newRec.MatrOpr} | ValString {newRec.ValString}{Environment.NewLine}{exc}";
+ string logMsg = $"Eccezione in RegDichiarUpdateAsync | macchina: {newRec.IdxMacchina} | DtRec: {newRec.DtRec} | TagCode: {newRec.TagCode} | MatrOpr: {newRec.MatrOpr} | ValString {newRec.ValString}{Environment.NewLine}{exc}";
Log.Error(logMsg);
}
return answ;
@@ -2783,7 +2783,7 @@ namespace MP.Data.Services
}
catch (Exception exc)
{
- string logMsg = $"Eccezione in RegScartiInsert | macchina: {newRec.IdxMacchina} | DataOra: {newRec.DataOra} | Causale: {newRec.Causale} | MatrOpr: {newRec.MatrOpr} | Qta {newRec.Qta} | Note: {newRec.Note}{Environment.NewLine}{exc}";
+ string logMsg = $"Eccezione in RegScartiInsertAsync | macchina: {newRec.IdxMacchina} | DataOra: {newRec.DataOra} | Causale: {newRec.Causale} | MatrOpr: {newRec.MatrOpr} | Qta {newRec.Qta} | Note: {newRec.Note}{Environment.NewLine}{exc}";
Log.Error(logMsg);
}
return answ;
@@ -2902,71 +2902,64 @@ namespace MP.Data.Services
///
///
///
- public async Task> resetDatiMacchina(string idxMacchina)
+ public async Task> ResetDatiMacchinaAsync(string idxMacchina)
{
Dictionary answ = new Dictionary();
+
+ // verifico il timeout che cambia a seconda che sia vero o falso insEnabled...
+ int tOutShort = 0;
+ int tOutLong = 0;
+ ConfigGetVal("TmOut.MS.S", ref tOutShort);
+ ConfigGetVal("TmOut.MS.L", ref tOutLong);
+ int redDtMacTOut = tOutLong;
+
// inizio con un bel reset...
string currKey = $"{redisBaseKey}:MSFD";
await FlushCache(currKey);
- var tabMSFD = await VMSFDGetByMacc(idxMacchina);
- if (tabMSFD != null && tabMSFD.Count > 0)
+ var rigaMSFD = await VMSFDGetByMaccAsync(idxMacchina);
+ if (rigaMSFD != null)
{
- var rigaMSFD = tabMSFD.FirstOrDefault();
- // ora provo a compilare...
- try
- {
- // salvo 1:1 i valori... STATO
- answ.Add("IdxMicroStato", $"{rigaMSFD.IdxMicroStato}");
- answ.Add("IdxStato", $"{rigaMSFD.IdxStato}");
- answ.Add("CodArticolo", $"{rigaMSFD.CodArticolo}");
- answ.Add("insEnabled", $"{rigaMSFD.InsEnabled}");
- answ.Add("sLogEnabled", $"{rigaMSFD.SLogEnabled}");
- answ.Add("pallet", $"{rigaMSFD.Pallet}");
- answ.Add("CodArticolo_A", $"{rigaMSFD.CodArticoloA}");
- answ.Add("CodArticolo_B", $"{rigaMSFD.CodArticoloB}");
- answ.Add("TempoCicloBase", $"{rigaMSFD.TempoCicloBase}");
- answ.Add("PzPalletProd", $"{rigaMSFD.PzPalletProd}");
- answ.Add("MatrOpr", $"{rigaMSFD.MatrOpr}");
- answ.Add("lastVal", $"{rigaMSFD.LastVal}");
- answ.Add("TCBase", $"{rigaMSFD.TempoCicloBase}");
+ // salvo 1:1 i valori... STATO
+ answ.Add("IdxMicroStato", $"{rigaMSFD.IdxMicroStato}");
+ answ.Add("IdxStato", $"{rigaMSFD.IdxStato}");
+ answ.Add("CodArticolo", $"{rigaMSFD.CodArticolo}");
+ answ.Add("insEnabled", $"{rigaMSFD.InsEnabled}");
+ answ.Add("sLogEnabled", $"{rigaMSFD.SLogEnabled}");
+ answ.Add("pallet", $"{rigaMSFD.Pallet}");
+ answ.Add("CodArticolo_A", $"{rigaMSFD.CodArticoloA}");
+ answ.Add("CodArticolo_B", $"{rigaMSFD.CodArticoloB}");
+ answ.Add("TempoCicloBase", $"{rigaMSFD.TempoCicloBase}");
+ answ.Add("PzPalletProd", $"{rigaMSFD.PzPalletProd}");
+ answ.Add("MatrOpr", $"{rigaMSFD.MatrOpr}");
+ answ.Add("lastVal", $"{rigaMSFD.LastVal}");
+ answ.Add("TCBase", $"{rigaMSFD.TempoCicloBase}");
- //...e SETUP
- answ.Add("CodMacc", rigaMSFD.Codmacchina);
- answ.Add("IdxFamIn", $"{rigaMSFD.IdxFamigliaIngresso}");
- answ.Add("Multi", $"{rigaMSFD.Multi}");
- answ.Add("BitFilt", $"{rigaMSFD.BitFilt}");
- answ.Add("MaxVal", $"{rigaMSFD.MaxVal}");
- answ.Add("BSR", $"{rigaMSFD.Bsr}");
- answ.Add("ExplodeBit", $"{rigaMSFD.ExplodeBit}");
- answ.Add("NumBit", $"{rigaMSFD.NumBit}");
- answ.Add("IdxFamMacc", $"{rigaMSFD.IdxFamiglia}");
- answ.Add("simplePallet", $"{rigaMSFD.SimplePallet}");
- answ.Add("palletChange", $"{rigaMSFD.PalletChange}");
- // cerco dati master/slave...
- var macSlave = await Macchine2Slave();
- var mastList = macSlave
- .Where(x => x.IdxMacchina.Equals(idxMacchina, StringComparison.InvariantCultureIgnoreCase))
- .ToList();
- var slaveList = macSlave
- .Where(x => x.IdxMacchinaSlave.Equals(idxMacchina, StringComparison.InvariantCultureIgnoreCase))
- .ToList();
+ //...e SETUP
+ answ.Add("CodMacc", rigaMSFD.Codmacchina);
+ answ.Add("IdxFamIn", $"{rigaMSFD.IdxFamigliaIngresso}");
+ answ.Add("Multi", $"{rigaMSFD.Multi}");
+ answ.Add("BitFilt", $"{rigaMSFD.BitFilt}");
+ answ.Add("MaxVal", $"{rigaMSFD.MaxVal}");
+ answ.Add("BSR", $"{rigaMSFD.Bsr}");
+ answ.Add("ExplodeBit", $"{rigaMSFD.ExplodeBit}");
+ answ.Add("NumBit", $"{rigaMSFD.NumBit}");
+ answ.Add("IdxFamMacc", $"{rigaMSFD.IdxFamiglia}");
+ answ.Add("simplePallet", $"{rigaMSFD.SimplePallet}");
+ answ.Add("palletChange", $"{rigaMSFD.PalletChange}");
- string isMaster = mastList.Count > 0 ? "1" : "0";
- string isSlave = slaveList.Count > 0 ? "1" : "0";
- answ.Add("Master", isMaster);
- answ.Add("Slave", isSlave);
- }
- catch (Exception exc)
- {
- Log.Error($"Errore in compilazione dati MSFD:{Environment.NewLine}{exc}");
- }
+ // cerco dati master/slave...
+ var macSlave = await Macchine2Slave();
+ var mastList = macSlave
+ .Where(x => x.IdxMacchina.Equals(idxMacchina, StringComparison.InvariantCultureIgnoreCase))
+ .ToList();
+ var slaveList = macSlave
+ .Where(x => x.IdxMacchinaSlave.Equals(idxMacchina, StringComparison.InvariantCultureIgnoreCase))
+ .ToList();
+ string isMaster = mastList.Count > 0 ? "1" : "0";
+ string isSlave = slaveList.Count > 0 ? "1" : "0";
+ answ.Add("Master", isMaster);
+ answ.Add("Slave", isSlave);
- // verifico il timeout che cambia a seconda che sia vero o falso insEnabled...
- int tOutShort = 0;
- int tOutLong = 0;
- ConfigGetVal("TmOut.MS.S", ref tOutShort);
- ConfigGetVal("TmOut.MS.L", ref tOutLong);
- int redDtMacTOut = tOutLong;
try
{
redDtMacTOut = (answ["insEnabled"].ToLower() == "true") ? tOutShort : tOutLong;
@@ -3014,7 +3007,7 @@ namespace MP.Data.Services
};
var result = dbTabController.MicroStatoMacchinaUpsert(newRecMS);
// reset in _redisConn
- await resetDatiMacchina(idxMacchina);
+ await ResetDatiMacchinaAsync(idxMacchina);
}
///
@@ -3625,7 +3618,7 @@ namespace MP.Data.Services
}
else
{
- result = dbIocController.VMSFDGetAll();
+ result = await dbIocController.VMSFDGetAllAsync();
// serializzo e salvo...
rawData = JsonConvert.SerializeObject(result);
await _redisDb.StringSetAsync(currKey, rawData, UltraFastCache);
@@ -3644,35 +3637,35 @@ namespace MP.Data.Services
///
///
///
- public async Task> VMSFDGetByMacc(string idxMacc)
+ public async Task VMSFDGetByMaccAsync(string idxMacc)
{
// setup parametri costanti
string source = "DB";
Stopwatch sw = new Stopwatch();
sw.Start();
- List? result = new List();
+ VMSFDModel? result = null;
// cerco in _redisConn...
string currKey = $"{redisBaseKey}:MSFD:MACCH:{idxMacc}";
RedisValue rawData = await _redisDb.StringGetAsync(currKey);
//if (!string.IsNullOrEmpty($"{rawData}"))
if (rawData.HasValue)
{
- result = JsonConvert.DeserializeObject>($"{rawData}");
+ result = JsonConvert.DeserializeObject($"{rawData}");
source = "REDIS";
}
else
{
- result = dbIocController.VMSFDGetByMacc(idxMacc);
+ result = await dbIocController.VMSFDGetByMaccAsync(idxMacc);
// serializzo e salvo...
rawData = JsonConvert.SerializeObject(result);
await _redisDb.StringSetAsync(currKey, rawData, UltraFastCache);
}
if (result == null)
{
- result = new List();
+ result = new();
}
sw.Stop();
- Log.Debug($"VMSFDGetByMacc | {source} | {sw.Elapsed.TotalMilliseconds}ms");
+ Log.Debug($"VMSFDGetByMaccAsync | {source} | {sw.Elapsed.TotalMilliseconds}ms");
return result;
}
@@ -3699,7 +3692,7 @@ namespace MP.Data.Services
}
else
{
- result = dbIocController.VMSFDGetMultiByMacc(idxMacc);
+ result = await dbIocController.VMSFDGetMultiByMaccAsync(idxMacc);
// serializzo e salvo...
rawData = JsonConvert.SerializeObject(result);
await _redisDb.StringSetAsync(currKey, rawData, LongCache);
diff --git a/MP.IOC/Controllers/BenchController.cs b/MP.IOC/Controllers/BenchController.cs
index ca3aeea5..e8b5d3c8 100644
--- a/MP.IOC/Controllers/BenchController.cs
+++ b/MP.IOC/Controllers/BenchController.cs
@@ -99,7 +99,7 @@ namespace MP.IOC.Controllers
/// api/Bench/FindSMI?id=60&idxMS=3&valore=1
[HttpGet("FindSMI")]
- public string FindSMI(int? id, int? idxMS, int? valore)
+ public async Task FindSMI(int? id, int? idxMS, int? valore)
{
string answ = "ND";
Stopwatch stopWatch = new Stopwatch();
@@ -126,7 +126,7 @@ namespace MP.IOC.Controllers
if (!trovato)
{
// ricarico tabella!
- KeyValuePair[] valori = DService.StateMachInByKey(idxFamIn);
+ KeyValuePair[] valori = await DService.StateMachInByKeyAsync(idxFamIn);
answ = string.Format("Ricaricata SMI per famiglia {0}
", fiHASH);
}
@@ -318,7 +318,7 @@ namespace MP.IOC.Controllers
///
///
[HttpGet("StateMachineIn")]
- public string StateMachineIn(int? id)
+ public async Task StateMachineIn(int? id)
{
string answ = "ND";
long splitTime = 0;
@@ -335,7 +335,7 @@ namespace MP.IOC.Controllers
answ = "";
try
{
- KeyValuePair[] valori = DService.StateMachInByKey(idxFamIn);
+ KeyValuePair[] valori = await DService.StateMachInByKeyAsync(idxFamIn);
splitTime = stopWatch.ElapsedMilliseconds;
foreach (var item in valori)
{
diff --git a/MP.IOC/Data/MpDataService.cs b/MP.IOC/Data/MpDataService.cs
index fba6be1b..d96f350b 100644
--- a/MP.IOC/Data/MpDataService.cs
+++ b/MP.IOC/Data/MpDataService.cs
@@ -2431,37 +2431,6 @@ namespace MP.IOC.Data
return result;
}
- ///
- /// Restitusice elenco KVP
- /// currKey: IdxMacchina
- /// value: IdxFamigliaIngresso
- ///
- ///
- ///
- public KeyValuePair[] mTabMSMI(string idxMacchina)
- {
- // hard coded dimensione vettore DatiMacchine
- KeyValuePair[] answ = new KeyValuePair[1];
- // iniziualizzo con un valore... 0/0
- answ[0] = new KeyValuePair("0", "0");
- // ORA recupero da memoria redis...
- try
- {
- var currHash = Utils.RedKeyMsmi(idxMacchina);
- answ = RedisGetHash(currHash);
- // se è vuoto... leggo da DB e popolo!
- if (answ.Length == 0)
- {
- answ = resetMSMI(idxMacchina);
- }
- }
- catch (Exception exc)
- {
- Log.Error($"Errore in compilazione Tabella Multi State Machine Ingressi x Redis:{Environment.NewLine}{exc}");
- }
- return answ;
- }
-
///
/// Restitusice elenco KVP (async) per evitare blocchi quando chiamato da metodi asincroni
///
@@ -3286,12 +3255,12 @@ namespace MP.IOC.Data
ValString = valore,
TagCode = label
};
- await IocDbController.RegDichiarInsert(recDich);
+ await IocDbController.RegDichiarInsertAsync(recDich);
break;
case "RC":
bool esitoOk = valNum != 0;
- await IocDbController.RegControlliInsert(idxMacchina, matrOpr, esitoOk, valore, dataOraEvento);
+ await IocDbController.RegControlliInsertAsync(idxMacchina, matrOpr, esitoOk, valore, dataOraEvento);
break;
case "RS":
@@ -3304,7 +3273,7 @@ namespace MP.IOC.Data
Note = valore,
MatrOpr = matrOpr
};
- await IocDbController.RegScartiInsert(recSca);
+ await IocDbController.RegScartiInsertAsync(recSca);
break;
default:
@@ -3346,23 +3315,6 @@ namespace MP.IOC.Data
return answ;
}
- ///
- /// Restituisce il contapezzi come CONTEGGIO da TCRilevati per la macchina
- ///
- ///
- ///
- public int pzCounterTc(string idxMacchina)
- {
- int answ = -1;
- DateTime dataRif = DateTime.Now;
- var datiProd = StatoProdMacchina(idxMacchina, dataRif);
- if (datiProd != null)
- {
- answ = datiProd.PzTotODL;
- }
- return answ;
- }
-
///
/// Restituisce il contapezzi come CONTEGGIO da TCRilevati per la macchina - ASYNC
///
@@ -3740,33 +3692,6 @@ namespace MP.IOC.Data
/// currKey: IdxMacchina
/// value: IdxFamigliaIngresso
///
- ///
- ///
- public KeyValuePair[] resetMSMI(string idxMacchina)
- {
- var currHash = Utils.RedKeyMsmi(idxMacchina);
- //currTask = RedisGetHash(redKey);
- // recupero records
- var tabMSMI = IocDbController.VMSFDGetMultiByMacc(idxMacchina);
-
- KeyValuePair[] answ = new KeyValuePair[tabMSMI.Count];
- // salvo tutti i valori StateMachineIngressi...
- int i = 0;
- foreach (var item in tabMSMI)
- {
- answ[i] = new KeyValuePair(item.IdxMacchina, item.IdxFamigliaIngresso.ToString());
- i++;
- }
- // verifico il timeout (default 60 sec...)
- var sTOutSmi = tryGetConfig("TmOut.MSMI").Result;
- int tOut = 60;
- int.TryParse(sTOutSmi, out tOut);
- tOut = tOut <= 60 ? 60 : tOut;
- // salvo in redis!
- RedisSetHash(currHash, answ, tOut);
- return answ;
- }
-
///
///
public async Task[]> resetMSMIAsync(string idxMacchina)
@@ -3909,58 +3834,6 @@ namespace MP.IOC.Data
return answ;
}
- ///
- /// Processa registrazione di un counter x una data macchina IOB
- ///
- ///
- /// contapezzi
- ///
- public string saveCounter(string idxMacchina, string counter)
- {
- string answ = "0";
- // inizio processing vero e proprio INPUT...
- if (!string.IsNullOrEmpty(idxMacchina))
- {
- if (!string.IsNullOrEmpty(counter))
- {
- int newCounter = -1;
- int.TryParse(counter, out newCounter);
- // se il conteggio è >= 0 SALVO come nuovo conteggio...
- if (newCounter >= 0)
- {
- var currKey = Utils.RedKeyPzCount(idxMacchina, MpIoNS);
- RedisValue rawData = redisDb.StringGet(currKey);
- if (!rawData.HasValue)
- {
- // salvo per + tempo...
- redisDb.StringSet(currKey, answ.ToString());
- answ = counter;
- }
- else
- {
- int currCount = pzCounterTc(idxMacchina);
- answ = currCount.ToString();
- // salvo per meno tempo...
- redisDb.StringSet(currKey, answ, TimeSpan.FromSeconds(5));
- }
- }
- }
- else
- {
- string errore = "Errore: parametro counter vuoto";
- Log.Error(errore);
- answ = errore;
- }
- }
- else
- {
- string errore = "Errore: parametro macchina vuoto";
- Log.Info(errore);
- answ = errore;
- }
- return answ;
- }
-
///
/// Processa registrazione di un counter x una data macchina IOB
///
@@ -4038,27 +3911,6 @@ namespace MP.IOC.Data
return fatto;
}
- ///
- /// salva il segnale di "microstato" (segnale)
- ///
- /// idx macchina
- /// valore ingresso
- /// data-ora evento (server)
- /// contatore sequenza dati inviati
- ///
- public bool saveSigLog(string idxMacchina, string valore, DateTime dtEve, int contatore)
- {
- SignalLogModel newRec = new SignalLogModel()
- {
- IdxMacchina = idxMacchina,
- DtCurr = DateTime.Now,
- DtEve = dtEve,
- Contatore = contatore,
- Valore = valore
- };
- return IocDbController.SignalLogInsert(newRec);
- }
-
///
/// salva il segnale di "microstato" (segnale) ASYNC
///
@@ -4136,37 +3988,6 @@ namespace MP.IOC.Data
return answ;
}
- ///
- /// Restitusice elenco KVP dei campi della State Machine ingressi nel formato
- /// currKey: cState_nVal (current MICRO-STATE + "_" + new Value)
- /// value: iTipoEv_nState (IdxTipoEv da trasmettere + New MICRO-STATE
- ///
- ///
- ///
- public KeyValuePair[] StateMachInByKey(int idxFamIn)
- {
- // hard coded dimensione vettore DatiMacchine
- KeyValuePair[] answ = new KeyValuePair[1];
- // iniziualizzo con un valore... 0/0
- answ[0] = new KeyValuePair("0", "0");
- // ORA recupero da memoria redis...
- try
- {
- var currHash = Utils.GetHashSMI(idxFamIn);
- answ = RedisGetHash(currHash);
- // se è vuoto... leggo da DB e popolo!
- if (answ.Length == 0)
- {
- answ = resetSMI(idxFamIn);
- }
- }
- catch (Exception exc)
- {
- Log.Error($"Errore in compilazione State Machine Ingressi x Redis:{Environment.NewLine}{exc}");
- }
- return answ;
- }
-
///
/// Restitusice elenco KVP dei campi della State Machine ingressi nel formato
/// currKey: cState_nVal (current MICRO-STATE + "_" + new Value)
@@ -4840,43 +4661,6 @@ namespace MP.IOC.Data
return result;
}
- ///
- /// Resetta (rileggendo) i dati della State Machine ingressi nel formato
- /// currKey: cState_nVal (current MICRO-STATE + "_" + new Value)
- /// value: iTipoEv_nState (IdxTipoEv da trasmettere + New MICRO-STATE)
- ///
- ///
- ///
- private KeyValuePair[] resetSMI(int idxFamIn)
- {
- var currHash = Utils.GetHashSMI(idxFamIn);
- // leggo da DB...
- var tabSMI = IocDbController.StateMachineIngressi(idxFamIn);
-
- KeyValuePair[] answ = new KeyValuePair[tabSMI.Count];
- // salvo tutti i valori StateMachineIngressi...
- int i = 0;
- string key = "";
- string val = "";
- foreach (var item in tabSMI)
- {
- key = string.Format("{0}_{1}", item.IdxMicroStato, item.ValoreIngresso);
- val = string.Format("{0}_{1}", item.IdxTipoEvento, item.NextIdxMicroStato);
- answ[i] = new KeyValuePair(key, val);
- i++;
- }
- // verifico il timeout (default 60 sec...)
- var sTOutSmi = tryGetConfig("TmOut.SMI").Result;
- int tOut = 60;
- if (!string.IsNullOrEmpty(sTOutSmi))
- {
- int.TryParse(sTOutSmi, out tOut);
- }
- // salvo in redis!
- RedisSetHash(currHash, answ, tOut);
- return answ;
- }
-
///
/// Resetta (rileggendo) i dati della State Machine ingressi nel formato
/// currKey: cState_nVal (current MICRO-STATE + "_" + new Value)
@@ -4994,37 +4778,6 @@ namespace MP.IOC.Data
return answ;
}
- ///
- /// Stato prod macchina (completo)
- ///
- ///
- ///
- ///
- private StatoProdModel StatoProdMacchina(string idxMacchina, DateTime dtReq, bool forceDb = false)
- {
- // setup parametri costanti
- StatoProdModel? result = new StatoProdModel();
- // cerco in _redisConn...
- string currKey = $"{Utils.redisStatoProd}:{idxMacchina}:{dtReq:HHmm}";
- RedisValue rawData = redisDb.StringGet(currKey);
- if (rawData.HasValue && !forceDb)
- {
- result = JsonConvert.DeserializeObject($"{rawData}");
- }
- else
- {
- result = IocDbController.StatoProdMacchina(idxMacchina, dtReq);
- // serializzo e salvo...
- rawData = JsonConvert.SerializeObject(result);
- redisDb.StringSet(currKey, rawData, TimeSpan.FromSeconds(5));
- }
- if (result == null)
- {
- result = new StatoProdModel();
- }
- return result;
- }
-
///
/// Stato prod macchina (completo)
///
diff --git a/MP.IOC/MP.IOC.csproj b/MP.IOC/MP.IOC.csproj
index d02afa01..c70be8e4 100644
--- a/MP.IOC/MP.IOC.csproj
+++ b/MP.IOC/MP.IOC.csproj
@@ -4,7 +4,7 @@
net8.0
enable
enable
- 6.16.2604.2010
+ 6.16.2604.2016
diff --git a/MP.IOC/Resources/ChangeLog.html b/MP.IOC/Resources/ChangeLog.html
index 208bcf27..4403a765 100644
--- a/MP.IOC/Resources/ChangeLog.html
+++ b/MP.IOC/Resources/ChangeLog.html
@@ -1,6 +1,6 @@
Modulo MP-IOC
- Versione: 6.16.2604.2010
+ Versione: 6.16.2604.2016
Note di rilascio:
-
diff --git a/MP.IOC/Resources/VersNum.txt b/MP.IOC/Resources/VersNum.txt
index f93ea23a..c7011c5d 100644
--- a/MP.IOC/Resources/VersNum.txt
+++ b/MP.IOC/Resources/VersNum.txt
@@ -1 +1 @@
-6.16.2604.2010
+6.16.2604.2016
diff --git a/MP.IOC/Resources/manifest.xml b/MP.IOC/Resources/manifest.xml
index ddfff283..2aa02cce 100644
--- a/MP.IOC/Resources/manifest.xml
+++ b/MP.IOC/Resources/manifest.xml
@@ -1,6 +1,6 @@
-
- 6.16.2604.2010
+ 6.16.2604.2016
https://nexus.steamware.net/repository/SWS/MP-IOC/stable/LAST/MP.IOC.zip
https://nexus.steamware.net/repository/SWS/MP-IOC/stable/LAST/ChangeLog.html
false