Continuo metodi x gestione Enroll apps

This commit is contained in:
Samuele Locatelli
2025-01-03 11:16:52 +01:00
parent 5c1c4fd79f
commit 8e2ea9e05e
13 changed files with 279 additions and 67 deletions
+55 -37
View File
@@ -739,11 +739,10 @@ namespace LiMan.DB.Controllers
//Log.Info("Dispose di GWMSController");
}
/// <summary>
/// Elimino una richiesta enroll (anche se già approvata...)
/// </summary>
/// <param name="delRec">record da eliminare</param>
/// <param name="idReq">ID record da eliminare</param>
public bool EnrollReqDelete(int idReq)
{
bool fatto = false;
@@ -766,36 +765,23 @@ namespace LiMan.DB.Controllers
}
return fatto;
}
/// <summary>
/// Elimino eventuali richieste non approvate e scadute
/// Elenco Enroll Attivi (non completati/cancellati)
/// </summary>
/// <param name="delRec">record da eliminare</param>
public bool EnrollReqPurgeInvalid(int idReq)
/// <returns></returns>
public List<EnrollRequestModel> EnrollReqGetActive()
{
bool fatto = false;
List<EnrollRequestModel> dbResult = new List<EnrollRequestModel>();
using (LMDbContext localDbCtx = new LMDbContext(_configuration))
{
List<EnrollRequestModel> item2del = new List<EnrollRequestModel>();
// cerco in primis richieste NON associate a licenza
var list2check = localDbCtx
.DbSetEnrollReq
.Where(x => x.IdxLic == 0)
.ToList();
var list2del = list2check
.Where(x => x.IsScaduta)
.ToList();
if (list2del != null)
{
localDbCtx
.DbSetEnrollReq
.RemoveRange(list2del);
// salvo
int numDone = localDbCtx.SaveChanges();
fatto = numDone != 0;
}
dbResult = localDbCtx
.DbSetEnrollReq
.Where(x => x.DtAppr == null)
.OrderByDescending(x => x.DtReq)
.ToList();
}
return fatto;
return dbResult;
}
/// <summary>
@@ -814,20 +800,20 @@ namespace LiMan.DB.Controllers
}
return dbResult;
}
/// <summary>
/// Elenco Enroll Attivi (non completati/cancellati)
/// Recupero richiesta da ID (oppure empty...)
/// </summary>
/// <param name="idReq"></param>
/// <returns></returns>
public List<EnrollRequestModel> EnrollReqGetActive()
public EnrollRequestModel EnrollReqGetById(int idReq)
{
List<EnrollRequestModel> dbResult = new List<EnrollRequestModel>();
EnrollRequestModel dbResult = new EnrollRequestModel();
using (LMDbContext localDbCtx = new LMDbContext(_configuration))
{
dbResult = localDbCtx
.DbSetEnrollReq
.Where(x => x.DtAppr == null)
.OrderByDescending(x => x.DtReq)
.ToList();
.FirstOrDefault(x => x.IdReq==idReq);
}
return dbResult;
}
@@ -852,14 +838,44 @@ namespace LiMan.DB.Controllers
return dbResult;
}
/// <summary>
/// Elimino eventuali richieste non approvate e scadute
/// </summary>
public bool EnrollReqPurgeInvalid()
{
bool fatto = false;
using (LMDbContext localDbCtx = new LMDbContext(_configuration))
{
List<EnrollRequestModel> item2del = new List<EnrollRequestModel>();
// cerco in primis richieste NON associate a licenza
var list2check = localDbCtx
.DbSetEnrollReq
.Where(x => x.IdxLic == 0)
.ToList();
var list2del = list2check
.Where(x => x.IsScaduta)
.ToList();
if (list2del != null)
{
localDbCtx
.DbSetEnrollReq
.RemoveRange(list2del);
// salvo
int numDone = localDbCtx.SaveChanges();
fatto = numDone != 0;
}
}
return fatto;
}
/// <summary>
/// Upsert record richiesta enroll
/// </summary>
/// <param name="newRec"></param>
/// <returns></returns>
public bool EnrollReqUpsert(EnrollRequestModel newRec)
public int EnrollReqUpsert(EnrollRequestModel newRec)
{
bool answ = false;
int answ = 0;
using (LMDbContext localDbCtx = new LMDbContext(_configuration))
{
try
@@ -878,15 +894,17 @@ namespace LiMan.DB.Controllers
currData.IdxLic = newRec.IdxLic;
// segno aggiornato
localDbCtx.Entry(currData).State = EntityState.Modified;
localDbCtx.SaveChanges();
answ = newRec.IdReq;
}
else
{
localDbCtx
var result = localDbCtx
.DbSetEnrollReq
.Add(newRec);
localDbCtx.SaveChanges();
answ = newRec.IdReq;
}
localDbCtx.SaveChanges();
answ = true;
}
catch (Exception exc)
{