diff --git a/MP.Data/Controllers/MpStatsController.cs b/MP.Data/Controllers/MpStatsController.cs
index d02a1c02..a1ebf01f 100644
--- a/MP.Data/Controllers/MpStatsController.cs
+++ b/MP.Data/Controllers/MpStatsController.cs
@@ -167,10 +167,16 @@ namespace MP.Data.Controllers
///
/// Elenco tabella DDB da filtro
///
- ///
- ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
///
- public List StatDdbGetAll(DateTime DataStart, DateTime DataEnd, string IdxMacchina, int IdxODL, string KeyRichiesta, string CodArticolo)
+ public List StatDdbGetAll(DateTime DataStart, DateTime DataEnd, string IdxMacchina, int IdxODL, string KeyRichiesta, string CodArticolo, int FirstRecord, int NumRecord)
{
List dbResult = new List();
@@ -180,15 +186,37 @@ namespace MP.Data.Controllers
var idxODL = new SqlParameter("@IdxODL", IdxODL);
var keyRichiesta = new SqlParameter("@KeyRichiesta", KeyRichiesta);
var codArticolo = new SqlParameter("@CodArticolo", CodArticolo);
+ var firstRecord = new SqlParameter("@FirstRecord", FirstRecord);
+ var numRecord = new SqlParameter("@NumRecord", NumRecord);
dbResult = dbCtx
.DbSetDdbTurni
- .FromSqlRaw("EXEC stp_UI_DDBTurni_GetByFilter @dataFrom,@dataTo,@idxMacchina,@IdxODL,@KeyRichiesta,@CodArticolo", dataFrom, dataTo, idxMacchina, idxODL, keyRichiesta, codArticolo)
+ .FromSqlRaw("EXEC stp_UI_DDBTurni_GetByFilter @dataFrom,@dataTo,@idxMacchina,@IdxODL,@KeyRichiesta,@CodArticolo,@FirstRecord,@NumRecord", dataFrom, dataTo, idxMacchina, idxODL, keyRichiesta, codArticolo, firstRecord, numRecord)
.ToList();
return dbResult;
}
+ ///
+ /// Elenco tabella DDB da filtro
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public int StatDdbGetCount(DateTime DataStart, DateTime DataEnd, string IdxMacchina, int IdxODL, string KeyRichiesta, string CodArticolo)
+ {
+ var dbResult = dbCtx
+ .DbSetDdbTurni
+ .Where(x => (x.IdxMacchina == IdxMacchina || IdxMacchina == "*") && (x.IdxOdl == IdxODL || IdxODL == -999) && (x.KeyRichiesta == KeyRichiesta || KeyRichiesta == "*") && (x.CodArticolo == CodArticolo || CodArticolo == "*") && (x.InizioPeriodo >= DataStart && x.InizioPeriodo <= DataEnd))
+ .Count();
+
+ return dbResult;
+ }
+
///
/// Elenco tabella ODL da filtro
///
diff --git a/MP.Stats/MP.Stats.csproj b/MP.Stats/MP.Stats.csproj
index ad113c8f..656f4e78 100644
--- a/MP.Stats/MP.Stats.csproj
+++ b/MP.Stats/MP.Stats.csproj
@@ -4,7 +4,7 @@
net5.0
MP.Stats
826e877c-ba70-4253-84cb-d0b1cafd4440
- 1.0.2106.1716
+ 1.0.2106.1914
diff --git a/MP.Stats/Pages/Diario.razor.cs b/MP.Stats/Pages/Diario.razor.cs
index 7d658435..109581d3 100644
--- a/MP.Stats/Pages/Diario.razor.cs
+++ b/MP.Stats/Pages/Diario.razor.cs
@@ -54,18 +54,7 @@ namespace MP.Stats.Pages
[Inject]
protected MpStatsService StatService { get; set; }
- protected int totalCount
- {
- get
- {
- int answ = 0;
- if (SearchRecords != null)
- {
- answ = SearchRecords.Count;
- }
- return answ;
- }
- }
+ protected int totalCount { get; set; } = 0;
#endregion Protected Properties
@@ -74,7 +63,9 @@ namespace MP.Stats.Pages
private async Task reloadData()
{
isLoading = true;
+ totalCount = await StatService.StatDdbGetCount(currFilter, MessageService.SearchVal);
SearchRecords = await StatService.StatDdbGetAll(currFilter, MessageService.SearchVal);
+ // faccio paginazione SOLO NELLA DECINA attuale... (quindi non tutte le pagine ma solo subset)
ListRecords = SearchRecords.Skip(numRecord * (currPage - 1)).Take(numRecord).ToList();
isLoading = false;
}