diff --git a/MP.Data/Controllers/MpInveController.cs b/MP.Data/Controllers/MpInveController.cs index b4bb4cb9..c638a36a 100644 --- a/MP.Data/Controllers/MpInveController.cs +++ b/MP.Data/Controllers/MpInveController.cs @@ -123,6 +123,7 @@ namespace MP.Data.Controllers } return dbResult; } + /// /// Elenco Scansioni Totali /// @@ -153,6 +154,24 @@ namespace MP.Data.Controllers } return dbResult; } + /// + /// Elenco Scansioni per valore, operatore e sessione + /// + /// + public ScanDataModel ScanByValueSessionOpr(string scanData, int InveSessId, string idOpr) + { + ScanDataModel dbResult = new ScanDataModel(); + using (var dbCtx = new MoonPro_InveContext(_configuration)) + { + dbResult = dbCtx + .DbScanData + .Where(x => (x.ScanValue == scanData) && (x.InveSessID == InveSessId) && (x.UserScan == idOpr)) + .AsNoTracking() + .OrderByDescending(x => x.DtScan) + .FirstOrDefault(); + } + return dbResult; + } /// /// Elenco Scansioni dato Id sessione inventario @@ -586,15 +605,6 @@ namespace MP.Data.Controllers List dbResult = new List(); using (var dbCtx = new MoonPro_InveContext(_configuration)) { -#if false - dbResult = dbCtx - .DbInveSess - .Where(x => x.DtStart >= FromDate && x.DtStart <= ToDate && x.DtEnd != null) - .Include(m => m.AnagMagNav) - .AsNoTracking() - .OrderByDescending(x => x.DtStart) - .ToList(); -#endif dbResult = dbCtx .DbInveSess .Where(x => x.Transferred) diff --git a/MP.INVE/Data/MiDataService.cs b/MP.INVE/Data/MiDataService.cs index c388a37f..daa4bb91 100644 --- a/MP.INVE/Data/MiDataService.cs +++ b/MP.INVE/Data/MiDataService.cs @@ -392,6 +392,20 @@ namespace MP.INVE.Data return result; } + public ScanDataModel ScanByValueSessionOpr(string scanData, int inveSessId, string Opr) + { + string source = ""; + Stopwatch stopWatch = new Stopwatch(); + stopWatch.Start(); + ScanDataModel? result = new ScanDataModel(); + result = dbController.ScanByValueSessionOpr(scanData, inveSessId, Opr); + source = "DB"; + stopWatch.Stop(); + TimeSpan ts = stopWatch.Elapsed; + Log.Debug($"ScanByValueSessionOpr Read from {source}: {ts.TotalMilliseconds}ms"); + return result; + } + public List ScanBySession(int idSessione) { string source = "";