calcolo al volo dati x charting

This commit is contained in:
Samuele E. Locatelli
2021-05-22 16:34:22 +02:00
parent 2e9a774a47
commit 39d1eddb20
3 changed files with 17 additions and 43 deletions
-29
View File
@@ -261,35 +261,6 @@ namespace MP.Stats.Data
return await Task.FromResult(dbResult);
}
public async Task<List<ChartKV>> StatScartiGetPareto(SelectData CurrFilter, string searchVal = "")
{
List<ChartKV> statResult = new List<ChartKV>();
string cacheKey = getCacheKey("MP:STATS:SCARTI:PARETO", CurrFilter);
string rawData;
var redisDataList = await distributedCache.GetAsync(cacheKey);
if (redisDataList != null)
{
rawData = Encoding.UTF8.GetString(redisDataList);
statResult = JsonConvert.DeserializeObject<List<ChartKV>>(rawData);
}
else
{
// recupero dal DB (eventualmente con cache)
var dbResult = await StatScartiGetAll(CurrFilter, searchVal);
// faccio conteggio...
statResult = dbResult
.GroupBy(x => x.Causale)
.Select(y => new ChartKV() { label = y.First().Descrizione, value = y.Sum(c => c.Qta) })
.OrderByDescending(x => x.value)
.ToList();
rawData = JsonConvert.SerializeObject(statResult);
redisDataList = Encoding.UTF8.GetBytes(rawData);
await distributedCache.SetAsync(cacheKey, redisDataList, cacheOpt);
}
return await Task.FromResult(statResult);
}
public async Task<List<MP.Data.DatabaseModels.TurniOee>> StatTurniOeeGetAllAsync(DateTime DataStart, DateTime DataEnd, string IdxMacchina, int IdxODL, string KeyRichiesta, string CodArticolo, string searchVal = "")
{
return await Task.FromResult(dbController.StatTurniOeeGetAll(DataStart, DataEnd, IdxMacchina, IdxODL, KeyRichiesta, CodArticolo));