From 40bdce1141bf7ff4c84dec008993345dfe5f00bb Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Fri, 19 Nov 2021 19:40:13 +0100 Subject: [PATCH] riorg codice controller DB --- REMAN/NKC.Data/Controllers/NKCController.cs | 157 ++++++++++++-------- 1 file changed, 92 insertions(+), 65 deletions(-) diff --git a/REMAN/NKC.Data/Controllers/NKCController.cs b/REMAN/NKC.Data/Controllers/NKCController.cs index 3451499..708820e 100644 --- a/REMAN/NKC.Data/Controllers/NKCController.cs +++ b/REMAN/NKC.Data/Controllers/NKCController.cs @@ -3,29 +3,52 @@ using Microsoft.Extensions.Configuration; using NKC.Data.DbModels; using NKC.Data.DTO; using NLog; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace NKC.Data.Controllers { public class NKCController : IDisposable { + #region Private Fields + private static IConfiguration _configuration; private static NLog.Logger Log = LogManager.GetCurrentClassLogger(); + #endregion Private Fields + + #region Public Constructors + public NKCController(IConfiguration configuration) { _configuration = configuration; } + + #endregion Public Constructors + + #region Public Methods + + public bool DbForceMigrate() + { + bool answ = false; + using (NKCContext localDbCtx = new NKCContext(_configuration)) + { + try + { + localDbCtx.DbForceMigrate(); + answ = true; + } + catch (Exception exc) + { + Log.Error($"Eccezione in DbForceMigrate"); + } + } + return answ; + } + public void Dispose() { Log.Info("Dispose di NKCController"); } - public List MaterialsGetAll() { List dbResult = new List(); @@ -53,7 +76,6 @@ namespace NKC.Data.Controllers return dbResult; } - public List RemnantsGetAll() { List dbResult = new List(); @@ -81,22 +103,77 @@ namespace NKC.Data.Controllers return dbResult; } - public bool DbForceMigrate() + public bool RemnantsUpsert(RemnantsModel updItem) { - bool answ = false; + bool done = false; using (NKCContext localDbCtx = new NKCContext(_configuration)) { + try { - localDbCtx.DbForceMigrate(); - answ = true; + RemnantsModel currData = localDbCtx + .DbSetRemnants + .Where(x => x.RemnID == updItem.RemnID) + .FirstOrDefault(); + if (currData != null) + { + // aggiungo record variazione quantità... + int delta = updItem.QtyAvail - currData.QtyAvail; + MovMagModel recMovMag = new MovMagModel() + { + DtRec=DateTime.Now, + RemnID=updItem.RemnID, + QtyRec=delta + }; + localDbCtx.DbSetMovMag.Add(recMovMag); + + // aggiorno valori + currData.MatID = updItem.MatID; + currData.DtMod = updItem.DtMod; + currData.Location = updItem.Location; + currData.Note = updItem.Note; + currData.QtyAvail = updItem.QtyAvail; + currData.LMm = updItem.LMm; + currData.WMm = updItem.WMm; + currData.TMm = updItem.TMm; + localDbCtx.Entry(currData).State = EntityState.Modified; + } + else + { + // aggiungo record variazione quantità... + MovMagModel recMovMag = new MovMagModel() + { + DtRec = DateTime.Now, + RemnID = updItem.RemnID, + QtyRec = updItem.QtyAvail + }; + localDbCtx.DbSetMovMag.Add(recMovMag); + + // aggiungo record puntuale + currData = new RemnantsModel() + { + MatID = updItem.MatID, + DtMod = updItem.DtMod, + Location = updItem.Location, + Note = updItem.Note, + QtyAvail = updItem.QtyAvail, + LMm = updItem.LMm, + WMm = updItem.WMm, + TMm = updItem.TMm + }; + localDbCtx + .DbSetRemnants + .Add(currData); + } + localDbCtx.SaveChanges(); + done = true; } catch (Exception exc) { - Log.Error($"Eccezione in DbForceMigrate"); + Log.Error($"Eccezione in PlantUpdate:{Environment.NewLine}{exc}"); } } - return answ; + return done; } /// @@ -124,56 +201,6 @@ namespace NKC.Data.Controllers return answ; } - public bool RemnantsUpsert(RemnantsModel updItem) - { - bool done = false; - using (NKCContext localDbCtx = new NKCContext(_configuration)) - { - try - { - RemnantsModel currData = localDbCtx - .DbSetRemnants - .Where(x => x.RemnID == updItem.RemnID) - .FirstOrDefault(); - if (currData != null) - { - // aggiorno valori - currData.MatID = updItem.MatID; - currData.DtMod = updItem.DtMod; - currData.Location = updItem.Location; - currData.Note = updItem.Note; - currData.QtyAvail = updItem.QtyAvail; - currData.LMm = updItem.LMm; - currData.WMm = updItem.WMm; - currData.TMm = updItem.TMm; - localDbCtx.Entry(currData).State = EntityState.Modified; - } - else - { - currData = new RemnantsModel() - { - MatID = updItem.MatID, - DtMod = updItem.DtMod, - Location = updItem.Location, - Note = updItem.Note, - QtyAvail = updItem.QtyAvail, - LMm = updItem.LMm, - WMm = updItem.WMm, - TMm = updItem.TMm - }; - localDbCtx - .DbSetRemnants - .Add(currData); - } - localDbCtx.SaveChanges(); - done = true; - } - catch (Exception exc) - { - Log.Error($"Eccezione in PlantUpdate:{Environment.NewLine}{exc}"); - } - } - return done; - } + #endregion Public Methods } -} +} \ No newline at end of file