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

83 lines
2.5 KiB
C#

using System;
using Kreta.Client.Kir.Models;
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 KirKontenerStatuszDAL : DataAccessBase, IKirKontenerStatuszDAL
{
public KirKontenerStatuszDAL(DalHandler handler, GridParameters parameters) : base(handler, parameters) { }
public KirKontenerStatuszDAL(DalHandler handler) : base(handler) { }
public IKIRKontenerStatusz Get()
{
return KIRKontenerStatusz.GiveAnInstance();
}
public IKIRKontenerStatusz Get(int id)
{
var entity = KIRKontenerStatusz.GiveAnInstance();
entity.LoadByID(id);
return entity;
}
public void FullUpdate(IKIRKontenerStatusz dto)
{
var entity = dto as KIRKontenerStatusz;
entity.FullUpdate(true);
DalHelper.Commit();
}
public void Update(IKIRKontenerStatusz dto)
{
var entity = dto as KIRKontenerStatusz;
entity.FullUpdate();
DalHelper.Commit();
}
public void Insert(IKIRKontenerStatusz dto)
{
var entity = dto as KIRKontenerStatusz;
entity.Insert(true);
dto.ID = entity.ID;
DalHelper.Commit();
}
public void InsertByKirKontener(IKIRKontener kirKontener, KirKerelemModel.StatuszLekerdezesResponseModel statuszResponseModel)
{
var entity = KIRKontenerStatusz.GiveAnInstance();
if (statuszResponseModel.Messages != null)
{
Array.ForEach(statuszResponseModel.Messages, x =>
{
entity.MessageCode = x.Code;
entity.MessageSource = x.Source;
entity.MessageText = x.Type.ToString();
});
}
entity.Kod = statuszResponseModel.KontenerStatusz.KontenerStatuszKod;
entity.Leiras = statuszResponseModel.KontenerStatusz.KontenerStatuszLeiras;
entity.KIRKontenerId = kirKontener.ID;
entity.Insert();
DalHelper.Commit();
}
public void Delete(int id)
{
var entity = KIRKontenerStatusz.GiveAnInstance();
entity.LoadByID(id);
entity.Delete();
DalHelper.Commit();
}
}
}