kreta/Kreta.DataAccessGenerated/Entities/KIRKontener.cs
2024-03-13 00:33:46 +01:00

853 lines
29 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using Kreta.DataAccess.Interfaces;
using Kreta.Framework;
using Kreta.Framework.Actions;
using Kreta.Framework.Collections;
using Kreta.Framework.Collections.Generic;
using Kreta.Framework.Entities;
using Kreta.Framework.Entities.Generic;
using Kreta.Framework.Exceptions;
namespace SDA.Kreta.Entities
{
/// <summary>
/// Az UML modell KIRKontener entitásának megvalósítása.
/// </summary>
/// <remarks>A kód teljes egészében generált, kézi módosítása nem megengedett!</remarks>
[Entity("KIRKontener")]
// alapértelmezett EntityHistoryMode
public class KIRKontener : Entity, IKIRKontener
{
internal protected KIRKontener()
: base()
{
}
public class AttributeInfo
{
public const string CelSzolgaltatas = "CelSzolgaltatas";
public const string IARAzonosito = "IARAzonosito";
public const string KontenerId = "KontenerId";
public const string IntezmenyAzonosito = "IntezmenyAzonosito";
public const string ValaszKod = "ValaszKod";
}
public class AttributeLengthInfo
{
public const int CelSzolgaltatasLength = 20;
public const int IARAzonositoLength = 100;
public const int KontenerIdLength = 25;
public const int IntezmenyAzonositoLength = 30;
public const int ValaszKodLength = 30;
}
#region General
private KIRKontenerDA m_DA = new KIRKontenerDA();
protected static KIRKontener FakeKIRKontener { get; set; }
public static KIRKontener GiveAnInstance()
{
KIRKontener result = FakeKIRKontener == null
? new KIRKontener()
: (KIRKontener)FakeKIRKontener.MemberwiseClone();
result.Reset();
result.SetDefaultData();
return result;
}
protected void SetDefaultData()
{
if (UserContext.Instance != null)
{
if (UserContext.Instance.IntezmenyId > 0)
{
IntezmenyId = UserContext.Instance.IntezmenyId;
}
if (UserContext.Instance.AktivTanevId > 0)
{
TanevId = UserContext.Instance.AktivTanevId;
}
m_State = EntityState.Uninitialized;
}
}
protected override IEntityDataAccessor GetDataAccessor() { return m_DA; }
protected internal virtual IEntityDataAccessor InheritedDA { get { return null; } }
[Obsolete("Ezt ne használjátok, mert mindenhova bele kellene fogalmazni a tanév szűrést is! Meg fog majd szűnni!")]
public static IEntityCollection<KIRKontener> LoadAll()
{
return LoadWithFilter("");
}
[Obsolete("Ezt ne használjátok, mert mindenhova bele kellene fogalmazni a tanév szűrést is! Meg fog majd szűnni!")]
public static IEntityCollection<KIRKontener> LoadAll(ColumnFilterMode columnFilterMode, IEnumerable<string> columns)
{
return LoadWithFilter("", columnFilterMode, columns);
}
[Obsolete("Ezt ne használjátok, mert mindenhova bele kellene fogalmazni a tanév szűrést is! Meg fog majd szűnni!")]
public static IEntityCollection<KIRKontener> LoadWithFilter(string filter, Dictionary<string, object> commandParameters = null)
{
var result = new EntityCollection<KIRKontener>();
new KIRKontenerDA().LoadWithFilter(result, filter, commandParameters);
return result;
}
[Obsolete("Ezt ne használjátok, mert mindenhova bele kellene fogalmazni a tanév szűrést is! Meg fog majd szűnni!")]
public static IEntityCollection<KIRKontener> LoadWithFilter(string filter, ColumnFilterMode columnFilterMode, IEnumerable<string> columns, Dictionary<string, object> commandParameters = null)
{
var result = new EntityCollection<KIRKontener>();
new KIRKontenerDA().LoadWithFilter(result, filter, columnFilterMode, columns, commandParameters);
return result;
}
protected override void StoreOriginalValues()
{
base.StoreOriginalValues();
OriginalValues.Add("CelSzolgaltatas", (object)m_CelSzolgaltatas);
OriginalValues.Add("IARAzonosito", (object)m_IARAzonosito);
OriginalValues.Add("KontenerId", (object)m_KontenerId);
OriginalValues.Add("IntezmenyAzonosito", (object)m_IntezmenyAzonosito);
OriginalValues.Add("ValaszKod", (object)m_ValaszKod);
OriginalValues.Add("FelhasznaloId", (m_FelhasznaloId < 0 ? (object)DBNull.Value : (object)m_FelhasznaloId));
OriginalValues.Add("IntezmenyId", (m_IntezmenyId < 0 ? (object)DBNull.Value : (object)m_IntezmenyId));
OriginalValues.Add("TanevId", (m_TanevId < 0 ? (object)DBNull.Value : (object)m_TanevId));
}
#endregion
#region Ellenőrzés
protected override void Validate(bool skipValidateAttributes = false)
{
base.Validate();
if (!skipValidateAttributes)
{
// korlátos hosszúságú mezők ellenőrzése...
if (m_CelSzolgaltatas != null && m_CelSzolgaltatas.Length > 20)
{
throw new InvalidEntityAttributeException("KIRKontener", "CelSzolgaltatas", EntityAttributeError.TooLong);
}
if (m_IARAzonosito != null && m_IARAzonosito.Length > 100)
{
throw new InvalidEntityAttributeException("KIRKontener", "IARAzonosito", EntityAttributeError.TooLong);
}
if (m_KontenerId != null && m_KontenerId.Length > 25)
{
throw new InvalidEntityAttributeException("KIRKontener", "KontenerId", EntityAttributeError.TooLong);
}
if (m_IntezmenyAzonosito != null && m_IntezmenyAzonosito.Length > 30)
{
throw new InvalidEntityAttributeException("KIRKontener", "IntezmenyAzonosito", EntityAttributeError.TooLong);
}
if (m_ValaszKod != null && m_ValaszKod.Length > 30)
{
throw new InvalidEntityAttributeException("KIRKontener", "ValaszKod", EntityAttributeError.TooLong);
}
}
// kötelező asszociációk ellenőrzése...
if (m_FelhasznaloId == -1) { throw new InvalidEntityAttributeException("KIRKontener", "FelhasznaloId", EntityAttributeError.Empty); }
if (m_IntezmenyId == -1) { throw new InvalidEntityAttributeException("KIRKontener", "IntezmenyId", EntityAttributeError.Empty); }
if (m_TanevId == -1) { throw new InvalidEntityAttributeException("KIRKontener", "TanevId", EntityAttributeError.Empty); }
}
#endregion
#region Alaphelyzetbe állítás
protected override void Reset()
{
base.Reset();
// alaphelyzetbe állítjuk az egyszerű mezőket
this.m_CelSzolgaltatas = "";
this.m_IARAzonosito = "";
this.m_KontenerId = "";
this.m_IntezmenyAzonosito = "";
this.m_ValaszKod = "";
// alaphelyzetbe állítjuk az asszociációkból származó mezőket
this.m_KIRKontenerElem = null; // EntityCollection
this.m_KIRKontenerStatusz = null; // EntityCollection
this.m_FelhasznaloId = -1;
this.m_Felhasznalo = null; // Entity
this.m_IntezmenyId = -1;
this.m_Intezmeny = null; // Entity
this.m_TanevId = -1;
this.m_Tanev = null; // Entity
}
#endregion
protected override void DeAssociateBeforeDelete(bool runHandler = false)
{
// Nem kaszkád törölhető asszociációk ellenőrzése, hogy üresek-e...
if (this.KIRKontenerElem.Count > 0)
{
throw new EntityDeleteFailedException("KIRKontener", "KIRKontenerElem", EntityUtil.GetAssociationDescription("T_KIRKONTENERELEM_OSSZES", "C_KIRKONTENERID")); // nincs kapcsolotabla
}
if (this.KIRKontenerStatusz.Count > 0)
{
throw new EntityDeleteFailedException("KIRKontener", "KIRKontenerStatusz", EntityUtil.GetAssociationDescription("T_KIRKONTENERSTATUSZ_OSSZES", "C_KIRKONTENERID")); // nincs kapcsolotabla
}
// Felhasznalo esetében mi mutatunk a másikra: startrole: *, endrole: 1
// Intezmeny esetében mi mutatunk a másikra: startrole: *, endrole: 1
// Tanev esetében mi mutatunk a másikra: startrole: *, endrole: 1
// kaszkád törlések...
}
#region Mezők és tulajdonságok
#region Egyszerű mezők
#region CelSzolgaltatas
protected internal string m_CelSzolgaltatas;
/// <summary>
/// Azon szolgáltatás kódja, amelyhez a kérelemnek el kell jutnia
/// </summary>
[EntityProperty("CelSzolgaltatas", EntityPropertyBaseType.ValueType, typeof(string), EntityCopyMethod.ShallowCopy)]
public virtual string CelSzolgaltatas
{
get
{
return m_CelSzolgaltatas;
}
set
{
CheckModifyable();
if (m_CelSzolgaltatas == value) return;
m_CelSzolgaltatas = value;
FieldModified("CelSzolgaltatas", value);
}
}
#endregion
#region IARAzonosito
protected internal string m_IARAzonosito;
/// <summary>
/// A beküldo KRÉTA azonosítója (KRE[OM azonosító]-[az adott OM-hez tartozó kréták közül a beküldo kréta sorszáma])
/// </summary>
[EntityProperty("IARAzonosito", EntityPropertyBaseType.ValueType, typeof(string), EntityCopyMethod.ShallowCopy)]
public virtual string IARAzonosito
{
get
{
return m_IARAzonosito;
}
set
{
CheckModifyable();
if (m_IARAzonosito == value) return;
m_IARAzonosito = value;
FieldModified("IARAzonosito", value);
}
}
#endregion
#region KontenerId
protected internal string m_KontenerId;
/// <summary>
/// A beküdött konténer (kérelemcsoport) azonosítója, krétánként egyedinek kell lennie
/// </summary>
[EntityProperty("KontenerId", EntityPropertyBaseType.ValueType, typeof(string), EntityCopyMethod.ShallowCopy)]
public virtual string KontenerId
{
get
{
return m_KontenerId;
}
set
{
CheckModifyable();
if (m_KontenerId == value) return;
m_KontenerId = value;
FieldModified("KontenerId", value);
}
}
#endregion
#region IntezmenyAzonosito
protected internal string m_IntezmenyAzonosito;
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
[EntityProperty("IntezmenyAzonosito", EntityPropertyBaseType.ValueType, typeof(string), EntityCopyMethod.ShallowCopy)]
public virtual string IntezmenyAzonosito
{
get
{
return m_IntezmenyAzonosito;
}
set
{
CheckModifyable();
if (m_IntezmenyAzonosito == value) return;
m_IntezmenyAzonosito = value;
FieldModified("IntezmenyAzonosito", value);
}
}
#endregion
#region ValaszKod
protected internal string m_ValaszKod;
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
[EntityProperty("ValaszKod", EntityPropertyBaseType.ValueType, typeof(string), EntityCopyMethod.ShallowCopy)]
public virtual string ValaszKod
{
get
{
return m_ValaszKod;
}
set
{
CheckModifyable();
if (m_ValaszKod == value) return;
m_ValaszKod = value;
FieldModified("ValaszKod", value);
}
}
#endregion
#endregion
#region Asszociációkkal kapcsolatos dolgok
protected internal virtual bool LoadByKIRKontenerElemId(int id)
{
return m_DA.LoadByKIRKontenerElemId(id, this);
}
protected internal virtual bool LoadByKIRKontenerStatuszId(int id)
{
return m_DA.LoadByKIRKontenerStatuszId(id, this);
}
#region KIRKontener (*) -> Felhasznalo (1)
protected internal int m_FelhasznaloId = -1;
/// <summary>
/// A(z) Felhasznalo asszociáció végpontjának ID-ja.
/// </summary>
/// <remarks>
/// - Insert() előtt célszerű kitölteni
/// - Update() nincs rá hatással: ezt a mezőt nem frissíti
/// - LoadByID() felhozza ezt a mezőt
/// </remarks>
public virtual int FelhasznaloId
{
get
{
return InternalFelhasznaloId;
}
set
{
InternalFelhasznaloId = value;
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal int InternalFelhasznaloId
{
get
{
if (m_Felhasznalo != null)
{
return m_Felhasznalo.ID;
}
else
{
return m_FelhasznaloId;// XXX az meg nem teljesen OK
}
}
set
{
CheckModifyable();
if (m_FelhasznaloId != value)
{
m_FelhasznaloId = value;
m_Felhasznalo = null;
FieldModified("FelhasznaloId", value);
}
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal void ModifyFelhasznalo(Felhasznalo value)
{
m_FelhasznaloId = value != null ? value.ID : -1;
m_Felhasznalo = value;
FieldModified("FelhasznaloId", value != null ? (object)value.ID : DBNull.Value);
}
protected internal void SetFelhasznalo(Felhasznalo value)
{
m_Felhasznalo = value;
if (value != null)
{
m_FelhasznaloId = value.ID;
}
else
{
m_FelhasznaloId = -1;
}
}
protected Felhasznalo m_Felhasznalo = null;
IFelhasznalo IKIRKontener.Felhasznalo
{
get { return Felhasznalo; }
set { Felhasznalo = value as Felhasznalo; }
}
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
/// <remarks>
/// Az UML modellben szereplő KIRKontener és Felhasznalo entitások közötti asszociáció megvalósítása.
/// </remarks>
[EntityProperty("Felhasznalo", EntityPropertyBaseType.Entity, typeof(Felhasznalo), EntityCopyMethod.ShallowCopy)]
public virtual Felhasznalo Felhasznalo
{
get
{
if ((m_Felhasznalo == null) && (m_FelhasznaloId != -1))
{
SDA.Kreta.Entities.Felhasznalo partner = SDA.Kreta.Entities.Felhasznalo.GiveAnInstance();
partner.LoadByID(m_FelhasznaloId);
this.SetFelhasznalo(partner);
}
// természetesen null-t adunk vissza, ha nem tudtunk felhozni semmit
return m_Felhasznalo;
}
set
{
CheckModifyable();
if (value != null)
{
if ((m_Felhasznalo == null) || (value.ID != m_Felhasznalo.ID))
{
if (value.State != EntityState.Initialized)
{
throw new EntityStateException(value.State);
}
if ((this.State != EntityState.New))
{
// Lista van a másik oldalon, úgyhogy a lista DA-ját használjuk
SDA.Kreta.Entities.Felhasznalo_KIRKontener_DA da = new Felhasznalo_KIRKontener_DA(value);
da.AddItem(this);
this.SetFelhasznalo(value);
}
else
{
this.SetFelhasznalo(value);
}
FieldModified("FelhasznaloId", value.ID);
}
}
else
{
// ki kell törölni a kapcsolatot az adatbázisban
this.SetFelhasznalo(null);
UpdateAssociations();
FieldModified("FelhasznaloId", DBNull.Value);
}
}
}
#endregion
#region KIRKontener (*) -> Intezmeny (1)
protected internal int m_IntezmenyId = -1;
/// <summary>
/// A(z) Intezmeny asszociáció végpontjának ID-ja.
/// </summary>
/// <remarks>
/// - Insert() előtt célszerű kitölteni
/// - Update() nincs rá hatással: ezt a mezőt nem frissíti
/// - LoadByID() felhozza ezt a mezőt
/// </remarks>
public virtual int IntezmenyId
{
get
{
return InternalIntezmenyId;
}
set
{
InternalIntezmenyId = value;
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal int InternalIntezmenyId
{
get
{
if (m_Intezmeny != null)
{
return m_Intezmeny.ID;
}
else
{
return m_IntezmenyId;// XXX az meg nem teljesen OK
}
}
set
{
CheckModifyable();
if (m_IntezmenyId != value)
{
m_IntezmenyId = value;
m_Intezmeny = null;
FieldModified("IntezmenyId", value);
}
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal void ModifyIntezmeny(Intezmeny value)
{
m_IntezmenyId = value != null ? value.ID : -1;
m_Intezmeny = value;
FieldModified("IntezmenyId", value != null ? (object)value.ID : DBNull.Value);
}
protected internal void SetIntezmeny(Intezmeny value)
{
m_Intezmeny = value;
if (value != null)
{
m_IntezmenyId = value.ID;
}
else
{
m_IntezmenyId = -1;
}
}
protected Intezmeny m_Intezmeny = null;
IIntezmeny IKIRKontener.Intezmeny
{
get { return Intezmeny; }
set { Intezmeny = value as Intezmeny; }
}
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
/// <remarks>
/// Az UML modellben szereplő KIRKontener és Intezmeny entitások közötti asszociáció megvalósítása.
/// </remarks>
[EntityProperty("Intezmeny", EntityPropertyBaseType.Entity, typeof(Intezmeny), EntityCopyMethod.ShallowCopy)]
public virtual Intezmeny Intezmeny
{
get
{
if ((m_Intezmeny == null) && (m_IntezmenyId != -1))
{
SDA.Kreta.Entities.Intezmeny partner = SDA.Kreta.Entities.Intezmeny.GiveAnInstance();
partner.LoadByID(m_IntezmenyId);
this.SetIntezmeny(partner);
}
// természetesen null-t adunk vissza, ha nem tudtunk felhozni semmit
return m_Intezmeny;
}
set
{
CheckModifyable();
if (value != null)
{
if ((m_Intezmeny == null) || (value.ID != m_Intezmeny.ID))
{
if (value.State != EntityState.Initialized)
{
throw new EntityStateException(value.State);
}
if ((this.State != EntityState.New))
{
// Lista van a másik oldalon, úgyhogy a lista DA-ját használjuk
SDA.Kreta.Entities.Intezmeny_KIRKontener_DA da = new Intezmeny_KIRKontener_DA(value);
da.AddItem(this);
this.SetIntezmeny(value);
}
else
{
this.SetIntezmeny(value);
}
FieldModified("IntezmenyId", value.ID);
}
}
else
{
// ki kell törölni a kapcsolatot az adatbázisban
this.SetIntezmeny(null);
UpdateAssociations();
FieldModified("IntezmenyId", DBNull.Value);
}
}
}
#endregion
#region KIRKontener (*) -> Tanev (1)
protected internal int m_TanevId = -1;
/// <summary>
/// A(z) Tanev asszociáció végpontjának ID-ja.
/// </summary>
/// <remarks>
/// - Insert() előtt célszerű kitölteni
/// - Update() nincs rá hatással: ezt a mezőt nem frissíti
/// - LoadByID() felhozza ezt a mezőt
/// </remarks>
public virtual int TanevId
{
get
{
return InternalTanevId;
}
set
{
InternalTanevId = value;
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal int InternalTanevId
{
get
{
if (m_Tanev != null)
{
return m_Tanev.ID;
}
else
{
return m_TanevId;// XXX az meg nem teljesen OK
}
}
set
{
CheckModifyable();
if (m_TanevId != value)
{
m_TanevId = value;
m_Tanev = null;
FieldModified("TanevId", value);
}
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal void ModifyTanev(Tanev value)
{
m_TanevId = value != null ? value.ID : -1;
m_Tanev = value;
FieldModified("TanevId", value != null ? (object)value.ID : DBNull.Value);
}
protected internal void SetTanev(Tanev value)
{
m_Tanev = value;
if (value != null)
{
m_TanevId = value.ID;
}
else
{
m_TanevId = -1;
}
}
protected Tanev m_Tanev = null;
ITanev IKIRKontener.Tanev
{
get { return Tanev; }
set { Tanev = value as Tanev; }
}
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
/// <remarks>
/// Az UML modellben szereplő KIRKontener és Tanev entitások közötti asszociáció megvalósítása.
/// </remarks>
[EntityProperty("Tanev", EntityPropertyBaseType.Entity, typeof(Tanev), EntityCopyMethod.ShallowCopy)]
public virtual Tanev Tanev
{
get
{
if ((m_Tanev == null) && (m_TanevId != -1))
{
SDA.Kreta.Entities.Tanev partner = SDA.Kreta.Entities.Tanev.GiveAnInstance();
partner.LoadByID(m_TanevId);
this.SetTanev(partner);
}
// természetesen null-t adunk vissza, ha nem tudtunk felhozni semmit
return m_Tanev;
}
set
{
CheckModifyable();
if (value != null)
{
if ((m_Tanev == null) || (value.ID != m_Tanev.ID))
{
if (value.State != EntityState.Initialized)
{
throw new EntityStateException(value.State);
}
if ((this.State != EntityState.New))
{
// Lista van a másik oldalon, úgyhogy a lista DA-ját használjuk
SDA.Kreta.Entities.Tanev_KIRKontener_DA da = new Tanev_KIRKontener_DA(value);
da.AddItem(this);
this.SetTanev(value);
}
else
{
this.SetTanev(value);
}
FieldModified("TanevId", value.ID);
}
}
else
{
// ki kell törölni a kapcsolatot az adatbázisban
this.SetTanev(null);
UpdateAssociations();
FieldModified("TanevId", DBNull.Value);
}
}
}
#endregion
#region KIRKontener (1) -> KIRKontenerElem (*)
protected IAssociatedEntityCollection<KIRKontenerElem> m_KIRKontenerElem = null;
IReadOnlyList<IKIRKontenerElem> IKIRKontener.KIRKontenerElem => KIRKontenerElem.Cast<IKIRKontenerElem>().ToList();
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
/// <remarks>
/// Az UML modellben szereplő KIRKontener és KIRKontenerElem entitások közötti asszociáció megvalósítása.
/// </remarks>
[EntityProperty("KIRKontenerElem", EntityPropertyBaseType.EntityCollection, typeof(IAssociatedEntityCollection<KIRKontenerElem>), EntityCopyMethod.DeepCopy, "KIRKontenerId")]
public virtual IAssociatedEntityCollection<KIRKontenerElem> KIRKontenerElem
{
get
{
if (m_KIRKontenerElem == null)
{
m_KIRKontenerElem = new AssociatedEntityCollection<KIRKontener, KIRKontenerElem>(
new KIRKontener_KIRKontenerElem_DA(this)
);
m_KIRKontenerElem.Load();
}
return m_KIRKontenerElem;
}
}
#endregion
#region KIRKontener (1) -> KIRKontenerStatusz (*)
protected IAssociatedEntityCollection<KIRKontenerStatusz> m_KIRKontenerStatusz = null;
IReadOnlyList<IKIRKontenerStatusz> IKIRKontener.KIRKontenerStatusz => KIRKontenerStatusz.Cast<IKIRKontenerStatusz>().ToList();
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
/// <remarks>
/// Az UML modellben szereplő KIRKontener és KIRKontenerStatusz entitások közötti asszociáció megvalósítása.
/// </remarks>
[EntityProperty("KIRKontenerStatusz", EntityPropertyBaseType.EntityCollection, typeof(IAssociatedEntityCollection<KIRKontenerStatusz>), EntityCopyMethod.DeepCopy, "KIRKontenerId")]
public virtual IAssociatedEntityCollection<KIRKontenerStatusz> KIRKontenerStatusz
{
get
{
if (m_KIRKontenerStatusz == null)
{
m_KIRKontenerStatusz = new AssociatedEntityCollection<KIRKontener, KIRKontenerStatusz>(
new KIRKontener_KIRKontenerStatusz_DA(this)
);
m_KIRKontenerStatusz.Load();
}
return m_KIRKontenerStatusz;
}
}
#endregion
#endregion
#endregion
}
}