SPEC: continuo pagina setup TemplateKit

This commit is contained in:
Samuele Locatelli
2025-04-09 19:14:33 +02:00
parent 18f60cda6d
commit ef3dad095d
23 changed files with 602 additions and 450 deletions
+122
View File
@@ -13,6 +13,7 @@ using System.Linq;
using System.Threading.Tasks;
using static EgwCoreLib.Utils.DtUtils;
using MP.Core.DTO;
using MP.Data.Translate;
namespace MP.Data.Controllers
{
@@ -30,6 +31,47 @@ namespace MP.Data.Controllers
#region Public Methods
/// <summary>
/// Elenco di tutti i counter coi valori correnti
/// </summary>
/// <returns></returns>
public List<AnagCountersModel> AnagCounters()
{
List<AnagCountersModel> dbResult = new List<AnagCountersModel>();
using (var dbCtx = new MoonProContext(_configuration))
{
dbResult = dbCtx
.DbSetAnagCount
.AsNoTracking()
.ToList();
}
return dbResult;
}
/// <summary>
/// Stacca un nuovo counter x il tipo richiesto
/// </summary>
/// <returns></returns>
public AnagCountersModel AnagCountersGetNext(string cntType)
{
AnagCountersModel answ = new AnagCountersModel();
using (var dbCtx = new MoonProContext(_configuration))
{
var pCntType = new SqlParameter("@CntType", cntType);
var dbResult = dbCtx
.DbSetAnagCount
.FromSqlRaw("EXEC dbo.stp_getNextNumb @CntType", pCntType)
.AsNoTracking()
.FirstOrDefault();
if (dbResult != null)
{
answ = dbResult;
}
}
return answ;
}
/// <summary>
/// Elenco Gruppi tipo Azienda
/// </summary>
@@ -1587,6 +1629,86 @@ namespace MP.Data.Controllers
return answ;
}
/// <summary>
/// Elimina record
/// </summary>
/// <param name="rec2del"></param>
public bool TemplateKitDelete(TemplateKitModel rec2del)
{
bool fatto = false;
using (var dbCtx = new MoonProContext(_configuration))
{
var actRec = dbCtx
.DbSetTempKit
.Where(x => x.CodArtParent == rec2del.CodArtParent && x.CodArtChild == rec2del.CodArtChild)
.FirstOrDefault();
// se ci fosse aggiorno...
if (actRec != null)
{
dbCtx
.DbSetTempKit
.Remove(actRec);
}
var res = dbCtx.SaveChanges();
fatto = res != 0;
}
return fatto;
}
/// <summary>
/// Elenco template da ricerca
/// </summary>
/// <param name="codParent"></param>
/// <param name="codCHild"></param>
/// <returns></returns>
public List<TemplateKitModel> TemplateKitFilt(string codParent, string codChild)
{
List<TemplateKitModel> dbResult = new List<TemplateKitModel>();
using (var dbCtx = new MoonProContext(_configuration))
{
dbResult = dbCtx
.DbSetTempKit
.Where(x => (string.IsNullOrEmpty(codParent) && string.IsNullOrEmpty(codChild)) || (x.CodArtParent.Contains(codParent) && !string.IsNullOrEmpty(codParent)) || (x.CodArtChild.Contains(codChild) && !string.IsNullOrEmpty(codChild)))
.AsNoTracking()
.ToList();
}
return dbResult;
}
/// <summary>
/// Esegue upsert record
/// </summary>
/// <param name="editRec"></param>
public bool TemplateKitUpsert(TemplateKitModel editRec)
{
bool fatto = false;
using (var dbCtx = new MoonProContext(_configuration))
{
var actRec = dbCtx
.DbSetTempKit
.Where(x => x.CodArtParent == editRec.CodArtParent && x.CodArtChild == editRec.CodArtChild)
.FirstOrDefault();
// se ci fosse aggiorno...
if (actRec == null)
{
dbCtx
.DbSetTempKit
.Add(editRec);
}
else
{
actRec.CodArtParent = editRec.CodArtParent;
actRec.CodArtChild = editRec.CodArtChild;
actRec.Qty = editRec.Qty;
dbCtx.Entry(actRec).State = EntityState.Modified;
}
var res = dbCtx.SaveChanges();
fatto = res != 0;
}
return fatto;
}
/// <summary>
/// Elenco Vocabolario (completo)
/// </summary>