diff --git a/EgwProxy.DataLayer/Controllers/LogMachineController.cs b/EgwProxy.DataLayer/Controllers/LogMachineController.cs index e4f714b..a8f029b 100644 --- a/EgwProxy.DataLayer/Controllers/LogMachineController.cs +++ b/EgwProxy.DataLayer/Controllers/LogMachineController.cs @@ -6,6 +6,7 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; +using static System.Data.Entity.Infrastructure.Design.Executor; namespace EgwProxy.DataLayer.Controllers { @@ -71,6 +72,41 @@ namespace EgwProxy.DataLayer.Controllers } } + + /// + /// Aggiorna i record indicati inserendo dataora corrente x DtSent + /// + /// + /// + public bool SetDtSent(List rec2upd) + { + bool done = false; + using (DatabaseContext localDbCtx = new DatabaseContext(DbConfig.CONNECTION_STRING)) + { + DateTime adesso = DateTime.Now; + foreach (var item in rec2upd) + { + var currRec = localDbCtx + .DbSetLogMac + .Where(x => x.DtSent == null && x.LogDbId == item.LogDbId) + .FirstOrDefault(); + if (currRec != null) + { + currRec.DtSent = adesso; + } + + + // indico modificato + localDbCtx.Entry(currRec).State = System.Data.Entity.EntityState.Modified; + + } + // Salvataggio finale + localDbCtx.SaveChanges(); + } + + return done; + } + #endregion Public Methods #region Private Fields diff --git a/MagMan.Data.Tenant/Controllers/TenantController.cs b/MagMan.Data.Tenant/Controllers/TenantController.cs index 4025be5..5b4592f 100644 --- a/MagMan.Data.Tenant/Controllers/TenantController.cs +++ b/MagMan.Data.Tenant/Controllers/TenantController.cs @@ -553,12 +553,6 @@ namespace MagMan.Data.Tenant.Controllers { try { -#if false - // aggiungo records - dbCtx - .DbSetLogMac - .AddRange(recList); -#endif // verifico record x data/progetto... foreach (var item in recList) { diff --git a/TestConsoleApp/Program.cs b/TestConsoleApp/Program.cs index 23b5b45..60f4cd8 100644 --- a/TestConsoleApp/Program.cs +++ b/TestConsoleApp/Program.cs @@ -197,7 +197,7 @@ namespace DemoApp // carico dal DB primi 50 rec e li invio 10 alla volta... LogMachineController lmc = new LogMachineController(); - int num2send = 50; + int num2send = 20; int batchSize = 10; int numSent = 0; var recList = lmc.GetUnsentAsc(num2send); @@ -216,6 +216,8 @@ namespace DemoApp var res = commLib.LogMachineSend(listDto); if (res) { + // registro dati inviati... + lmc.SetDtSent(currList); Console.WriteLine($"Inviati {batchSize}rec | {numSent} --> {numSent + batchSize}"); numSent += batchSize; }