diff --git a/MP.Data/Controllers/MpSpecController.cs b/MP.Data/Controllers/MpSpecController.cs
index 0d23400f..72f9e623 100644
--- a/MP.Data/Controllers/MpSpecController.cs
+++ b/MP.Data/Controllers/MpSpecController.cs
@@ -4,15 +4,12 @@ using Microsoft.Extensions.Configuration;
using MP.Data.DatabaseModels;
using MP.Data.DTO;
using NLog;
-using NLog.LayoutRenderers;
using System;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using System.Linq;
-using System.Runtime.InteropServices;
using System.Threading.Tasks;
-using ZXing;
using static EgwCoreLib.Utils.DtUtils;
namespace MP.Data.Controllers
@@ -551,7 +548,9 @@ namespace MP.Data.Controllers
///
///
///
- /// Restitusice list dei record statistiche raccolti (da integrare a quelli rpesenti in Redis...)
+ ///
+ /// Restitusice list dei record statistiche raccolti (da integrare a quelli rpesenti in Redis...)
+ ///
public async Task> FluxLogDataRedux(string idxMaccSel, List fluxList, Periodo currPeriodo, Enum.ValSelection valMode, Enum.DataInterval intReq, int maxItem)
{
List procStats = new List();
@@ -562,12 +561,15 @@ namespace MP.Data.Controllers
case Enum.DataInterval.minute:
step = TimeSpan.FromMinutes(1.00 / maxItem);
break;
+
case Enum.DataInterval.hour:
step = TimeSpan.FromHours(1.00 / maxItem);
break;
+
case Enum.DataInterval.day:
step = TimeSpan.FromDays(1.00 / maxItem);
break;
+
default:
break;
}
@@ -592,7 +594,8 @@ namespace MP.Data.Controllers
// dbContext x ogni singolo flusso
using (var dbCtx = new MoonProContext(_configuration))
{
- // li processo per intervallo richiesto, cercando dati nel periodo e selezionando VC
+ // li processo per intervallo richiesto, cercando dati nel periodo e
+ // selezionando VC
while (!setCompleted)
{
// ora recupero TUTTI i dati della macchina
@@ -611,7 +614,6 @@ namespace MP.Data.Controllers
}
List listPeriodi = new List();
-
switch (valMode)
{
case Enum.ValSelection.First:
@@ -620,12 +622,14 @@ namespace MP.Data.Controllers
// salvo periodo!
listPeriodi.Add(new Periodo(recStart.dtEvento, dtCursEnd));
break;
+
case Enum.ValSelection.Last:
// recupero ultimo item
var recEnd = currFlux.LastOrDefault();
// salvo periodo!
listPeriodi.Add(new Periodo(dtCursStart, recEnd.dtEvento));
break;
+
case Enum.ValSelection.Center:
int idx = 1;
// per iniziare mi metto a 1/(n+1) rec come step
@@ -644,6 +648,7 @@ namespace MP.Data.Controllers
// aggiungo ultimo...
listPeriodi.Add(new Periodo(recCent.dtEvento.AddSeconds(1), dtCursEnd));
break;
+
default:
break;
}
@@ -682,6 +687,31 @@ namespace MP.Data.Controllers
return procStats;
}
+ ///
+ /// Elenco ultimi n record flux log dato macchina e flusso (ordinato x data registrazione)
+ ///
+ /// Data massima x eventi
+ /// Data minima x eventi
+ /// * = tutte, altrimenti solo x una data macchina
+ /// *=tutti, altrimenti solo selezionato
+ /// numero massimo record da restituire
+ ///
+ public List FluxLogGetLastFilt(DateTime DtMax, DateTime DtMin, string IdxMacchina, string CodFlux, int MaxRec)
+ {
+ List dbResult = new List();
+ using (var dbCtx = new MoonProContext(_configuration))
+ {
+ dbResult = dbCtx
+ .DbSetFluxLog
+ .AsNoTracking()
+ .Where(x => (x.dtEvento >= DtMin && x.dtEvento <= DtMax) && (IdxMacchina == "*" || x.IdxMacchina == IdxMacchina) && (CodFlux == "*" || x.CodFlux == CodFlux))
+ .OrderByDescending(x => x.dtEvento)
+ .Take(MaxRec)
+ .ToList();
+ }
+ return dbResult;
+ }
+
///
/// Stored manutenzione del DB
///
@@ -708,62 +738,13 @@ namespace MP.Data.Controllers
var dbResult = dbCtx
.Database
.ExecuteSqlRaw("EXEC man.stp_Utility_Maintanance");
- //.ExecuteSqlRaw("EXEC man.stp_Utility_Maintanance @FlgExec, @FlgUpdStat, @FlgSave, @min_page_count, @min_avg_fragmentation_in_percent, @max_avg_fragmentation_per_rebuild", pFlgExec, pFlgUpdStat, pFlgSave, pMinPgCnt, pMinAvgFrag, pMaxAvgFrag);
+ //.ExecuteSqlRaw("EXEC man.stp_Utility_Maintanance @FlgExec, @FlgUpdStat, @FlgSave, @min_page_count, @min_avg_fragmentation_in_percent, @max_avg_fragmentation_per_rebuild", pFlgExec, pFlgUpdStat, pFlgSave, pMinPgCnt, pMinAvgFrag, pMaxAvgFrag);
fatto = true;
}
Log.Info($"FINE ForceDbMaint");
return fatto;
}
- ///
- /// Inserimento record risultati deduplica FluxLog
- ///
- ///
- ///
- protected bool LogFLDedupInsert(List rec2ins)
- {
- bool fatto = false;
- using (var dbCtx = new MoonProContext(_configuration))
- {
- try
- {
- dbCtx.DbSetLogFLDedup.AddRange(rec2ins);
- var res = dbCtx.SaveChanges();
- fatto = res != 0;
- }
- catch (Exception exc)
- {
- Log.Error($"Errore in fase inserimento log dedup x FL{Environment.NewLine}{exc}");
- }
- }
- return fatto;
- }
-
- ///
- /// Elenco ultimi n record flux log dato macchina e flusso (ordinato x data registrazione)
- ///
- /// Data massima x eventi
- /// Data minima x eventi
- /// * = tutte, altrimenti solo x una data macchina
- /// *=tutti, altrimenti solo selezionato
- /// numero massimo record da restituire
- ///
- public List FluxLogGetLastFilt(DateTime DtMax, DateTime DtMin, string IdxMacchina, string CodFlux, int MaxRec)
- {
- List dbResult = new List();
- using (var dbCtx = new MoonProContext(_configuration))
- {
- dbResult = dbCtx
- .DbSetFluxLog
- .AsNoTracking()
- .Where(x => (x.dtEvento >= DtMin && x.dtEvento <= DtMax) && (IdxMacchina == "*" || x.IdxMacchina == IdxMacchina) && (CodFlux == "*" || x.CodFlux == CodFlux))
- .OrderByDescending(x => x.dtEvento)
- .Take(MaxRec)
- .ToList();
- }
- return dbResult;
- }
-
///
/// Elenco giacenze
///
diff --git a/MP.Data/DatabaseModels/LogFLDedupModel.cs b/MP.Data/DatabaseModels/LogFLDedupModel.cs
deleted file mode 100644
index 4e3ffee1..00000000
--- a/MP.Data/DatabaseModels/LogFLDedupModel.cs
+++ /dev/null
@@ -1,40 +0,0 @@
-using System;
-using System.ComponentModel.DataAnnotations;
-using System.ComponentModel.DataAnnotations.Schema;
-
-
-#nullable disable
-//
-// This is here so CodeMaid doesn't reorganize this document
-//
-namespace MP.Data.DatabaseModels
-{
- [Table("LogFLDedup")]
- public partial class LogFLDedupModel
- {
- #region Public Properties
-
- [Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
- public int DedupIdx { get; set; } = 0;
-
- [MaxLength(50)]
- public string IdxMacchina { get; set; } = "";
-
- [MaxLength(50)]
- public string CodFlux { get; set; } = "";
-
- public DateTime DtRif { get; set; }=DateTime.Now;
-
- ///
- /// Num record processati
- ///
- public int NumRec { get; set; } = 0;
-
- ///
- /// Tempo processing (secondi)
- ///
- public double ProcTime { get; set; } = 1;
-
- #endregion Public Properties
- }
-}
\ No newline at end of file
diff --git a/MP.Data/MoonProContext.cs b/MP.Data/MoonProContext.cs
index 54fd7757..43503dc5 100644
--- a/MP.Data/MoonProContext.cs
+++ b/MP.Data/MoonProContext.cs
@@ -89,10 +89,7 @@ namespace MP.Data
public virtual DbSet DbSetStTemplateRows { get; set; }
public virtual DbSet DbSetCommenti { get; set; }
- public virtual DbSet DbSetFNQ { get; set; }
- public virtual DbSet DbSetLogFLDedup { get; set; }
-
-
+ public virtual DbSet DbSetFNQ { get; set; }
public virtual DbSet DbSetVSEB { get; set; }
public virtual DbSet DbSetVSODL { get; set; }