kreta/Kreta.DataAccessManual/KirKontenerElemDAL.cs
2024-03-13 00:33:46 +01:00

79 lines
2.1 KiB
C#

using System.Linq;
using Kreta.DataAccess.Interfaces;
using Kreta.DataAccessManual.Interfaces;
using Kreta.DataAccessManual.Util;
using Kreta.Framework.Util;
using SDA.Kreta.Entities;
namespace Kreta.DataAccessManual
{
internal class KirKontenerElemDAL : DataAccessBase, IKirKontenerElemDAL
{
public KirKontenerElemDAL(DalHandler handler, GridParameters parameters) : base(handler, parameters) { }
public KirKontenerElemDAL(DalHandler handler) : base(handler) { }
public IKIRKontenerElem Get()
{
return KIRKontenerElem.GiveAnInstance();
}
public IKIRKontenerElem Get(int id)
{
var entity = KIRKontenerElem.GiveAnInstance();
entity.LoadByID(id);
return entity;
}
public void FullUpdate(IKIRKontenerElem dto)
{
var entity = dto as KIRKontenerElem;
entity.FullUpdate(true);
DalHelper.Commit();
}
public void Update(IKIRKontenerElem dto)
{
var entity = dto as KIRKontenerElem;
entity.FullUpdate();
DalHelper.Commit();
}
public void Insert(IKIRKontenerElem dto)
{
var entity = dto as KIRKontenerElem;
entity.Insert(true);
dto.ID = entity.ID;
DalHelper.Commit();
}
public void Delete(int id)
{
var entity = KIRKontenerElem.GiveAnInstance();
entity.LoadByID(id);
entity.KIRKontenerElemStatusz.RemoveAll();
entity.Delete();
DalHelper.Commit();
}
public void DeleteManyByNebulo(int id)
{
var entity = Nebulo.GiveAnInstance();
entity.LoadByID(id);
var kirKontenerElemStatuszEntity = entity.KIRKontenerElem;
var kirKontenerElemStatuszEntityList = kirKontenerElemStatuszEntity.Where(x => !x.Torolt).ToList();
kirKontenerElemStatuszEntityList.ForEach(x =>
{
x.KIRKontenerElemStatusz.DeleteAll();
x.Delete();
DalHelper.Commit();
});
}
}
}