- Fix gestione Task su multi-gruppo
MacchineEnergy:
- update gestione nuove view
This commit is contained in:
Samuele Locatelli
2025-07-03 15:45:23 +02:00
parent 22668e8a8f
commit 1f4b48ac8c
22 changed files with 629 additions and 607 deletions
+46 -1
View File
@@ -323,7 +323,7 @@ namespace MP.TaskMan.Controllers
{
dbResult = dbCtx
.DbSetTaskList
.Where(x => (TType == Task2ExeType.ND || x.TType == TType))
.Where(x => (TType == Task2ExeType.ALL || x.TType == TType))
.OrderBy(x => x.Ordinal)
.ToList();
}
@@ -388,6 +388,50 @@ namespace MP.TaskMan.Controllers
return done;
}
/// <summary>
/// Riordino record di un dato gruppo (da richiamare post cambio gruppo...)
/// </summary>
/// <param name="codGroup"></param>
/// <returns></returns>
public bool TaskListReorder(int codGroup)
{
bool done = false;
using (var dbCtx = new TaskContext(_configuration))
{
// in primis recupero i record del gruppo ordinati
var currList = dbCtx
.DbSetTaskList
.Where(x => x.Group == codGroup)
.OrderBy(x => x.Ordinal)
.ThenBy(x => x.TaskId)
.ToList();
int newIdx = 0;
int numRec = currList.Count;
// li verifico in base al loro id attuale...
foreach (var item in currList)
{
newIdx++;
// se va cambiato lo riassegno
if (item.Ordinal != newIdx)
{
item.Ordinal = newIdx;
dbCtx.Entry(item).State = EntityState.Modified;
}
}
// salvo!
try
{
dbCtx.SaveChanges();
done = true;
}
catch (Exception exc)
{
Log.Error($"Eccezione in TaskListReorder{Environment.NewLine}{exc}");
}
}
return done;
}
/// <summary>
/// Upsert record TaskList
/// </summary>
@@ -407,6 +451,7 @@ namespace MP.TaskMan.Controllers
if (currData != null)
{
currData.Ordinal = rec2upd.Ordinal;
currData.Group = rec2upd.Group;
currData.Enabled = rec2upd.Enabled;
currData.Name = rec2upd.Name;
currData.Descript = rec2upd.Descript;