diff --git a/MP.MONO.Data/Controllers/MpDbController.cs b/MP.MONO.Data/Controllers/MpDbController.cs
index ea562a7..de2852c 100644
--- a/MP.MONO.Data/Controllers/MpDbController.cs
+++ b/MP.MONO.Data/Controllers/MpDbController.cs
@@ -362,6 +362,81 @@ namespace MP.MONO.Data.Controllers
return dbResult;
}
+ ///
+ /// genera elenco Task Schedulati missing da schema + attualmente presenti...
+ ///
+ ///
+ ///
+ public async Task SchedMaintTaskCreateMissing(int MachineId)
+ {
+ bool answ = false;
+ using (MapoMonoContext localDbCtx = new MapoMonoContext())
+ {
+ try
+ {
+ List missTask = new List();
+
+ List? allTask = localDbCtx
+ .DbSetPMTask
+ .Where(x => x.MachineId == MachineId)
+ .Include(i => i.CounterNav)
+ .ToList();
+
+ // analizzo task per idx del PMTask
+ var reqTask = allTask
+ .Select(x => x.PMTaskId)
+ .ToList();
+
+ var openTask = localDbCtx
+ .DbSetSMTask
+ .Where(x => x.DtExecution == DateTime.MinValue)
+ .Include(m => m.PMTaskeNav)
+ .ToList();
+
+ var currTask = openTask
+ .Where(x => x.PMTaskeNav.MachineId == MachineId)
+ .Select(x => x.PMTaskId)
+ .ToList();
+
+ // elenco dei SOLI task presenti
+ var listTaskOk = currTask.Intersect(reqTask).ToList();
+
+ // dall'elenco di quelli originali elimino presenti --> ho elenco mancanti...
+ foreach (var iTask in allTask)
+ {
+ // se non nell'elenco aggiungo...
+ if (!listTaskOk.Exists(x => x == iTask.PMTaskId))
+ {
+ missTask.Add(iTask);
+ }
+ }
+
+ var newRecs = missTask.Select(x => new ScheduledMaintModel()
+ {
+ CCode = x.CCode,
+ DtCreation = DateTime.Now,
+ ExpiryVal = x.ExpiryVal,
+ PMTaskId = x.PMTaskId,
+ CountStartVal = x.CounterNav.ActualVal
+ }).ToList();
+
+ localDbCtx
+ .DbSetSMTask
+ .AddRange(newRecs);
+
+ // salvo
+ localDbCtx.SaveChanges();
+ answ = true;
+ }
+ catch (Exception exc)
+ {
+ Log.Error($"Eccezione durante SchedMaintTaskGetFilt{Environment.NewLine}{exc}");
+ }
+ }
+ await Task.Delay(1);
+ return answ;
+ }
+
///
/// Recupero elenco Task Schedulati (ultimi dato "skip")
///
@@ -406,17 +481,17 @@ namespace MP.MONO.Data.Controllers
///
///
///
- public async Task SchedMaintTaskSetDone(int MachineId, int SMTaskId, DateTime ExecDT,string ExecUser)
+ public async Task SchedMaintTaskSetDone(int MachineId, int SMTaskId, DateTime ExecDT, string ExecUser)
{
bool answ = false;
using (MapoMonoContext localDbCtx = new MapoMonoContext())
{
try
{
- var dbResult = localDbCtx
- .DbSetSMTask
- .Where(x => x.PMTaskeNav.MachineId == MachineId && x.SMTaskId == SMTaskId)
- .FirstOrDefault();
+ var dbResult = localDbCtx
+ .DbSetSMTask
+ .Where(x => x.PMTaskeNav.MachineId == MachineId && x.SMTaskId == SMTaskId)
+ .FirstOrDefault();
if (dbResult != null)
{
dbResult.DtExecution = ExecDT;
@@ -434,79 +509,6 @@ namespace MP.MONO.Data.Controllers
return answ;
}
- ///
- /// genera elenco Task Schedulati missing da schema + attualmente presenti...
- ///
- ///
- ///
- public async Task SchedMaintTaskCreateMissing(int MachineId)
- {
- bool answ = false;
- using (MapoMonoContext localDbCtx = new MapoMonoContext())
- {
- try
- {
- List missTask = new List();
-
- List? allTask = localDbCtx
- .DbSetPMTask
- .Where(x => x.MachineId == MachineId)
- .ToList();
-
- // analizzo task per idx del PMTask
- var reqTask = allTask
- .Select(x => x.PMTaskId)
- .ToList();
-
- var openTask = localDbCtx
- .DbSetSMTask
- .Where(x => x.DtExecution == DateTime.MinValue)
- .Include(m => m.PMTaskeNav)
- .ToList();
-
- var currTask = openTask
- .Where(x => x.PMTaskeNav.MachineId == MachineId)
- .Select(x => x.PMTaskId)
- .ToList();
-
- // elenco dei SOLI task presenti
- var listTaskOk = currTask.Intersect(reqTask).ToList();
-
- // dall'elenco di quelli originali elimino presenti --> ho elenco mancanti...
- foreach (var iTask in allTask)
- {
- // se non nell'elenco aggiungo...
- if (!listTaskOk.Exists(x => x == iTask.PMTaskId))
- {
- missTask.Add(iTask);
- }
- }
-
- var newRecs = missTask.Select(x => new ScheduledMaintModel()
- {
- CCode = x.CCode,
- DtCreation = DateTime.Now,
- ExpiryVal = x.ExpiryVal,
- PMTaskId = x.PMTaskId
- }).ToList();
-
- localDbCtx
- .DbSetSMTask
- .AddRange(newRecs);
-
- // salvo
- localDbCtx.SaveChanges();
- answ = true;
- }
- catch (Exception exc)
- {
- Log.Error($"Eccezione durante SchedMaintTaskGetFilt{Environment.NewLine}{exc}");
- }
- }
- await Task.Delay(1);
- return answ;
- }
-
#endregion Public Methods
#region Private Fields
diff --git a/MP.MONO.UI/Components/SchedMaintTask.razor.cs b/MP.MONO.UI/Components/SchedMaintTask.razor.cs
index 5f20544..f6388cc 100644
--- a/MP.MONO.UI/Components/SchedMaintTask.razor.cs
+++ b/MP.MONO.UI/Components/SchedMaintTask.razor.cs
@@ -22,8 +22,18 @@ namespace MP.MONO.UI.Components
// FARE!!! filtro macchina
private int MachineId = 1;
+ ///
+ /// Valore limite (in ore) per indicare come rosso una scadenza
+ ///
+ private int redLim = 24 * 2;
+
private List? SearchRecords = null;
+ ///
+ /// Valore limite (in ore) per indicare come giallo una scadenza
+ ///
+ private int yelLim = 24 * 7;
+
#endregion Private Fields
#region Private Properties
@@ -45,8 +55,13 @@ namespace MP.MONO.UI.Components
}
}
+ private int currSMTaskId { get; set; } = 0;
+ private DateTime execDate { get; set; } = DateTime.Today.AddHours(DateTime.Now.Hour);
+ private string execName { get; set; } = "";
private bool isLoading { get; set; } = false;
+ private int LimitDayPeriod { get; set; } = 7;
+
private int MaxRecord
{
get
@@ -64,6 +79,11 @@ namespace MP.MONO.UI.Components
}
}
+ private string modalShow
+ {
+ get => showTaskConf ? "show" : "hide";
+ }
+
private int numRecord
{
get => _numRecord;
@@ -92,6 +112,8 @@ namespace MP.MONO.UI.Components
}
}
+ private bool showTaskConf { get; set; } = false;
+
private int totalCount
{
get
@@ -109,6 +131,19 @@ namespace MP.MONO.UI.Components
#region Private Methods
+ private async Task ConfirmDone()
+ {
+ // se ho dataora ed esecutore...
+ if (!string.IsNullOrEmpty(execName) && currSMTaskId > 0)
+ {
+ // salvo!
+ bool fatto = await MMDataService.SchedMaintTaskSetDone(MachineId, currSMTaskId, execDate, execName);
+
+ // rigenero!
+ await RegenTask();
+ }
+ }
+
private void ForceReload(int newNum)
{
numRecord = newNum;
@@ -125,38 +160,6 @@ namespace MP.MONO.UI.Components
await ReloadData();
}
- private bool showTaskConf { get; set; } = false;
-
- private void ShowConfirm(int SMTaskId)
- {
- showTaskConf = !showTaskConf;
- currSMTaskId = SMTaskId;
- }
-
- private DateTime execDate { get; set; } = DateTime.Today.AddHours(DateTime.Now.Hour);
-
- private string execName { get; set; } = "";
-
- private int currSMTaskId { get; set; } = 0;
-
- private string modalShow
- {
- get => showTaskConf ? "show" : "hide";
- }
-
- private async Task ConfirmDone()
- {
- // se ho dataora ed esecutore...
- if (!string.IsNullOrEmpty(execName) && currSMTaskId > 0)
- {
- // salvo!
- bool fatto = await MMDataService.SchedMaintTaskSetDone(MachineId, currSMTaskId, execDate, execName);
-
- // rigenero!
- await RegenTask();
- }
- }
-
private async Task ReloadData()
{
isLoading = true;
@@ -169,6 +172,12 @@ namespace MP.MONO.UI.Components
isLoading = false;
}
+ private void ShowConfirm(int SMTaskId)
+ {
+ showTaskConf = !showTaskConf;
+ currSMTaskId = SMTaskId;
+ }
+
private async Task ToggleCompleted()
{
await Task.Delay(1);
@@ -176,17 +185,6 @@ namespace MP.MONO.UI.Components
await Task.Delay(1);
}
- private int LimitDayPeriod { get; set; } = 7;
-
- ///
- /// Valore limite (in ore) per indicare come rosso una scadenza
- ///
- private int redLim = 24 * 2;
- ///
- /// Valore limite (in ore) per indicare come giallo una scadenza
- ///
- private int yelLim = 24 * 7;
-
#endregion Private Methods
}
}
\ No newline at end of file
diff --git a/MP.MONO.UI/Data/CurrentDataService.cs b/MP.MONO.UI/Data/CurrentDataService.cs
index baaebf9..bb6f054 100644
--- a/MP.MONO.UI/Data/CurrentDataService.cs
+++ b/MP.MONO.UI/Data/CurrentDataService.cs
@@ -345,7 +345,6 @@ namespace MP.MONO.UI.Data
return await Task.FromResult(dbResult);
}
-
///
/// Registro esecuzione task schedualto
///