Ancora update gestione conf prod

This commit is contained in:
Samuele Locatelli
2023-10-04 15:50:15 +02:00
parent 44a65629b0
commit 6855e0c58b
21 changed files with 396 additions and 195 deletions
+3 -3
View File
@@ -324,14 +324,14 @@ namespace MP.Data.Controllers
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public StatoProdModel StatoProdMacchina(string idxMacchina)
public PzProdModel PezziProdMacchina(string idxMacchina)
{
StatoProdModel dbResult = new StatoProdModel();
PzProdModel dbResult = new PzProdModel();
using (var dbCtx = new MoonProContext(_configuration))
{
var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
dbResult = dbCtx
.DbSetStatoProd
.DbSetPzProd
.FromSqlRaw("EXEC stp_PzProd_getByMacchina @IdxMacchina", IdxMacchina)
.AsNoTracking()
.FirstOrDefault();
+3 -3
View File
@@ -1349,14 +1349,14 @@ namespace MP.Data.Controllers
/// </summary>
/// <param name="idxMacchina"></param>
/// <returns></returns>
public StatoProdModel StatoProdMacchina(string idxMacchina)
public PzProdModel PezziProdMacchina(string idxMacchina)
{
StatoProdModel dbResult = new StatoProdModel();
PzProdModel dbResult = new PzProdModel();
using (var dbCtx = new MoonProContext(_configuration))
{
var IdxMacchina = new SqlParameter("@IdxMacchina", idxMacchina);
dbResult = dbCtx
.DbSetStatoProd
.DbSetPzProd
.FromSqlRaw("EXEC stp_PzProd_getByMacchina @IdxMacchina", IdxMacchina)
.AsNoTracking()
.FirstOrDefault();
+25
View File
@@ -113,6 +113,31 @@ namespace MP.Data.Controllers
return dbResult;
}
/// <summary>
/// Stato prod macchina (completo)
/// </summary>
/// <param name="idxMacchina"></param>
/// <param name="dtReq"></param>
/// <returns></returns>
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;
}
#endregion Public Methods
#region Private Fields
+20
View File
@@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
#nullable disable
// <Auto-Generated>
// This is here so CodeMaid doesn't reorganize this document
// </Auto-Generated>
namespace MP.Data.DatabaseModels
{
public partial class PzProdModel
{
[Key]
public string idxMacchina { get; set; } = "NA";
public int pezziNonConfermati { get; set; } = 0;
public DateTime DataFrom { get; set; } = DateTime.Now;
public DateTime DataTo { get; set; } = DateTime.Now;
}
}
+7 -1
View File
@@ -13,7 +13,13 @@ namespace MP.Data.DatabaseModels
{
[Key]
public string idxMacchina { get; set; } = "NA";
public int pezziNonConfermati { get; set; } = 0;
public int IdxOdl { get; set; } = 0;
public int PzTotODL { get; set; } = 0;
public int PzConfScarto { get; set; } = 0;
public int PzConfBuoni { get; set; } = 0;
public int PzRichODL { get; set; } = 0;
public int Pz2RecTot { get; set; } = 0;
public int Pz2RecScarto { get; set; } = 0;
public DateTime DataFrom { get; set; } = DateTime.Now;
public DateTime DataTo { get; set; } = DateTime.Now;
}
+4 -1
View File
@@ -52,7 +52,7 @@ namespace MP.Data
public virtual DbSet<FluxLog> DbSetFluxLog { get; set; }
public virtual DbSet<DossierModel> DbSetDossiers { get; set; }
public virtual DbSet<StatODLModel> DbSetStatOdl { get; set; }
public virtual DbSet<StatoProdModel> DbSetStatoProd { get; set; }
public virtual DbSet<PzProdModel> DbSetPzProd { get; set; }
public virtual DbSet<EventListModel> DbSetEvList { get; set; }
public virtual DbSet<VocabolarioModel> DbSetVocabolario { get; set; }
public virtual DbSet<AnagOperatoriModel> DbOperatori { get; set; }
@@ -63,6 +63,7 @@ namespace MP.Data
public virtual DbSet<Macchine2SlaveModel> DbSetM2S { get; set; }
public virtual DbSet<TransizioneIngressiModel> DbSetSMI { get; set; }
public virtual DbSet<KeepAliveModel> DbSetKeepAlive { get; set; }
public virtual DbSet<StatoProdModel> DbSetStatoProd { get; set; }
public virtual DbSet<ST_Act> DbSetStAct { get; set; }
public virtual DbSet<ST_ActRow> DbSetStActRow { get; set; }
@@ -72,6 +73,8 @@ namespace MP.Data
public virtual DbSet<ST_Template> DbSetStTemplate { get; set; }
public virtual DbSet<ST_TemplateRows> DbSetStTemplateRows { get; set; }
#endregion Public Properties
#region Private Methods
+12
View File
@@ -122,6 +122,18 @@ namespace MP.Data.Services
}
return answ;
}
public int GetConfInt(string chiave)
{
int answ = 0;
int.TryParse(GetConf(chiave), out answ);
return answ;
}
public bool GetConfBool(string chiave)
{
bool answ = false;
bool.TryParse(GetConf(chiave), out answ);
return answ;
}
+38
View File
@@ -195,6 +195,44 @@ namespace MP.Data.Services
return result;
}
/// <summary>
/// Stato prod macchina (completo)
/// </summary>
/// <param name="idxMacchina"></param>
/// <param name="dtReq"></param>
/// <returns></returns>
public async Task<StatoProdModel> StatoProdMacchina(string idxMacchina, DateTime dtReq)
{
// setup parametri costanti
string source = "DB";
Stopwatch sw = new Stopwatch();
sw.Start();
StatoProdModel? result = new StatoProdModel();
// cerco in redis...
string currKey = $"{redisBaseKey}:StatoProd:{idxMacchina}:{dtReq:HHmmss}";
RedisValue rawData = await redisDb.StringGetAsync(currKey);
if (!string.IsNullOrEmpty($"{rawData}"))
{
result = JsonConvert.DeserializeObject<StatoProdModel>($"{rawData}");
source = "REDIS";
}
else
{
result = dbController.StatoProdMacchina(idxMacchina, dtReq);
// serializzp e salvo...
rawData = JsonConvert.SerializeObject(result);
await redisDb.StringSetAsync(currKey, rawData, UltraFastCache);
}
if (result == null)
{
result = new StatoProdModel();
}
sw.Stop();
Log.Debug($"StatoProdMacchina | {source} | {sw.Elapsed.TotalMilliseconds}ms");
return result;
}
#endregion Public Methods
#region Protected Fields