diff --git a/MP.Data/Controllers/MpSpecController.cs b/MP.Data/Controllers/MpSpecController.cs index 535274d2..5c169377 100644 --- a/MP.Data/Controllers/MpSpecController.cs +++ b/MP.Data/Controllers/MpSpecController.cs @@ -183,11 +183,11 @@ namespace MP.Data.Controllers { dbResult = dbCtx .DbSetArticoli - .AsNoTracking() - .Where(x => (x.Azienda == azienda || azienda == "*") && (x.CodArticolo.Contains(searchVal) || x.DescArticolo.Contains(searchVal) || x.Disegno.Contains(searchVal) || string.IsNullOrEmpty(searchVal))) - .OrderBy(x => x.CodArticolo) - .Take(numRecord) - .ToList(); + .AsNoTracking() + .Where(x => (x.Azienda == azienda || azienda == "*") && (x.CodArticolo.Contains(searchVal) || x.DescArticolo.Contains(searchVal) || x.Disegno.Contains(searchVal) || string.IsNullOrEmpty(searchVal))) + .OrderBy(x => x.CodArticolo) + .Take(numRecord) + .ToList(); } return dbResult; } diff --git a/MP.SPEC/Components/DossiersFilter.razor b/MP.SPEC/Components/DossiersFilter.razor index 7a6a8689..df7df4c3 100644 --- a/MP.SPEC/Components/DossiersFilter.razor +++ b/MP.SPEC/Components/DossiersFilter.razor @@ -11,6 +11,9 @@
Seleziona i filtri per:
+
+ +
+
+ +
- @*
- - -
-
- - -
*@ diff --git a/MP.SPEC/Data/MpDataService.cs b/MP.SPEC/Data/MpDataService.cs index f0b9eaf8..12805cc6 100644 --- a/MP.SPEC/Data/MpDataService.cs +++ b/MP.SPEC/Data/MpDataService.cs @@ -180,7 +180,33 @@ namespace MP.SPEC.Data /// public async Task> ArticoliGetSearch(int numRecord, string azienda, string searchVal) { - return await Task.FromResult(dbController.ArticoliGetSearch(numRecord, azienda, searchVal)); + List result = new List(); + Stopwatch stopWatch = new Stopwatch(); + stopWatch.Start(); + string readType = "DB"; + string currKey = $"{redisArtList}:{azienda}"; + // cerco in redis dato valore sel macchina... + RedisValue rawData = redisDb.StringGet(currKey); + if (rawData.HasValue) + { + result = JsonConvert.DeserializeObject>($"{rawData}"); + readType = "REDIS"; + } + else + { + result = await Task.FromResult(dbController.ArticoliGetSearch(numRecord, azienda, searchVal)); + // serializzo e salvo... + rawData = JsonConvert.SerializeObject(result); + redisDb.StringSet(currKey, rawData, getRandTOut(redisLongTimeCache/5)); + } + if (result == null) + { + result = new List(); + } + stopWatch.Stop(); + TimeSpan ts = stopWatch.Elapsed; + Log.Debug($"ArticoliGetSearch | Read from {readType}: {ts.TotalMilliseconds}ms"); + return result; } /// @@ -388,11 +414,10 @@ namespace MP.SPEC.Data await Task.Delay(1); // chiamo stored x salvare parametri dbController.DossiersTakeParamsSnapshot(IdxMacchina, MaxSec, DtRif); - // svuoto cache redis x macchina - string currKey = $"{redisDossByMac}:{IdxMacchina}"; - redisDb.StringSet(currKey, "", TimeSpan.FromSeconds(1)); - currKey = $"{redisDossByMac}:*"; - redisDb.StringSet(currKey, "", TimeSpan.FromSeconds(1)); + // elimino cache redis... + RedisValue pattern = new RedisValue($"{redisDossByMac}:*"); + answ = await ExecFlushRedisPattern(pattern); + Log.Info($"Svuotata cache dossier | {pattern}"); return answ; } @@ -407,13 +432,13 @@ namespace MP.SPEC.Data { bool answ = false; await Task.Delay(1); + Log.Info($"Richiesta snapshot per macchina {IdxMacchina} | periodo {dtMin} --> {dtMax}"); // chiamo stored x salvare parametri dbController.DossiersTakeParamsSnapshotLast(IdxMacchina, dtMin, dtMax); - // svuoto cache redis x macchina - string currKey = $"{redisDossByMac}:{IdxMacchina}"; - redisDb.StringSet(currKey, "", TimeSpan.FromSeconds(1)); - currKey = $"{redisDossByMac}:*"; - redisDb.StringSet(currKey, "", TimeSpan.FromSeconds(1)); + // elimino cache redis... + RedisValue pattern = new RedisValue($"{redisDossByMac}:*"); + answ = await ExecFlushRedisPattern(pattern); + Log.Info($"Svuotata cache dossier | {pattern}"); return answ; } @@ -921,6 +946,7 @@ namespace MP.SPEC.Data #region Private Fields private const string redisArtByDossier = redisBaseAddr + "SPEC:Cache:ArtByDossier"; + private const string redisArtList = redisBaseAddr + "SPEC:Cache:ArtList"; private const string redisBaseAddr = "MP:"; private const string redisConfKey = redisBaseAddr + "SPEC:Cache:Config"; diff --git a/MP.SPEC/Data/SelectDossierParams.cs b/MP.SPEC/Data/SelectDossierParams.cs index 4ffac42b..e3db1ea0 100644 --- a/MP.SPEC/Data/SelectDossierParams.cs +++ b/MP.SPEC/Data/SelectDossierParams.cs @@ -15,9 +15,9 @@ namespace MP.SPEC.Data public int CurrPage { get; set; } = 1; - public DateTime DtEnd { get; set; } = Utils.InitDatetime(DateTime.Now, 5); + public DateTime DtEnd { get; set; } = Utils.InitDatetime(DateTime.Now, 15); - public DateTime DtStart { get; set; } = Utils.InitDatetime(DateTime.Now, 5).AddDays(-730); + public DateTime DtStart { get; set; } = Utils.InitDatetime(DateTime.Now, 15).AddDays(-730); public string IdxMacchina { get; set; } = "*"; diff --git a/MP.SPEC/Data/SelectOdlParams.cs b/MP.SPEC/Data/SelectOdlParams.cs index f9c089dd..87f4defe 100644 --- a/MP.SPEC/Data/SelectOdlParams.cs +++ b/MP.SPEC/Data/SelectOdlParams.cs @@ -19,7 +19,7 @@ namespace MP.SPEC.Data public int NumRec { get; set; } = 10; public int TotCount { get; set; } = 0; public DateTime DtEnd { get; set; } = Utils.InitDatetime(DateTime.Now, 5); - public DateTime DtStart { get; set; } = Utils.InitDatetime(DateTime.Now, 5).AddDays(-7); + public DateTime DtStart { get; set; } = Utils.InitDatetime(DateTime.Now, 5).AddDays(-10); public int MaxRecord { get; set; } = 100; public bool IsActive { get; set; } = true; public string SearchVal { get; set; } = "*"; diff --git a/MP.SPEC/MP.SPEC.csproj b/MP.SPEC/MP.SPEC.csproj index 048240b5..df742d8d 100644 --- a/MP.SPEC/MP.SPEC.csproj +++ b/MP.SPEC/MP.SPEC.csproj @@ -5,7 +5,7 @@ enable enable MP.SPEC - 6.16.2210.2014 + 6.16.2210.2016 diff --git a/MP.SPEC/Pages/Articoli.razor.cs b/MP.SPEC/Pages/Articoli.razor.cs index fec8a210..ffb568d3 100644 --- a/MP.SPEC/Pages/Articoli.razor.cs +++ b/MP.SPEC/Pages/Articoli.razor.cs @@ -290,7 +290,7 @@ namespace MP.SPEC.Pages private async Task reloadData() { isLoading = true; - SearchRecords = await MDService.ArticoliGetSearch(100000, selAzienda, "*"); + SearchRecords = await MDService.ArticoliGetSearch(100000, selAzienda, ""); ListRecords = SearchRecords.Skip(numRecord * (currPage - 1)).Take(numRecord).ToList(); isLoading = false; } diff --git a/MP.SPEC/Pages/ODL.razor.cs b/MP.SPEC/Pages/ODL.razor.cs index 432543ee..a29dcdd0 100644 --- a/MP.SPEC/Pages/ODL.razor.cs +++ b/MP.SPEC/Pages/ODL.razor.cs @@ -100,7 +100,7 @@ namespace MP.SPEC.Pages { // copio il filtro currFilter.DtEnd = RoundDatetime(5); - currFilter.DtStart = RoundDatetime(5).AddDays(-1); + currFilter.DtStart = RoundDatetime(5).AddDays(-10); } protected void UpdateTotCount(int newTotCount) diff --git a/MP.SPEC/Resources/ChangeLog.html b/MP.SPEC/Resources/ChangeLog.html index 7340bae7..5f180bf9 100644 --- a/MP.SPEC/Resources/ChangeLog.html +++ b/MP.SPEC/Resources/ChangeLog.html @@ -1,6 +1,6 @@ Modulo MAPOSPEC -

Versione: 6.16.2210.2014

+

Versione: 6.16.2210.2016


Note di rilascio:
  • diff --git a/MP.SPEC/Resources/VersNum.txt b/MP.SPEC/Resources/VersNum.txt index e162c512..29c80e49 100644 --- a/MP.SPEC/Resources/VersNum.txt +++ b/MP.SPEC/Resources/VersNum.txt @@ -1 +1 @@ -6.16.2210.2014 +6.16.2210.2016 diff --git a/MP.SPEC/Resources/manifest.xml b/MP.SPEC/Resources/manifest.xml index e20c57d4..e270f9ff 100644 --- a/MP.SPEC/Resources/manifest.xml +++ b/MP.SPEC/Resources/manifest.xml @@ -1,6 +1,6 @@ - 6.16.2210.2014 + 6.16.2210.2016 https://nexus.steamware.net/repository/SWS/MP-SPEC/stable/LAST/MP.SPEC.zip https://nexus.steamware.net/repository/SWS/MP-SPEC/stable/LAST/ChangeLog.html false