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

1341 lines
44 KiB
C#
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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 Foglalkozas 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("Foglalkozas")]
// alapértelmezett EntityHistoryMode
public class Foglalkozas : Entity, IFoglalkozas
{
internal protected Foglalkozas()
: base()
{
}
public class AttributeInfo
{
public const string FoglalkozasTipusa = "FoglalkozasTipusa";
public const string Oraszam = "Oraszam";
public const string Nev = "Nev";
public const string ErtekelesKell = "ErtekelesKell";
public const string MulasztasKell = "MulasztasKell";
public const string TanarFelveheti = "TanarFelveheti";
public const string Importalt = "Importalt";
public const string IsOsszevontOra = "IsOsszevontOra";
public const string IsNemzetisegi = "IsNemzetisegi";
public const string TuloraSzam = "TuloraSzam";
public const string MegbizasiOraszam = "MegbizasiOraszam";
}
public class AttributeLengthInfo
{
public const int NevLength = 771;
}
#region General
private FoglalkozasDA m_DA = new FoglalkozasDA();
protected static Foglalkozas FakeFoglalkozas { get; set; }
public static Foglalkozas GiveAnInstance()
{
Foglalkozas result = FakeFoglalkozas == null
? new Foglalkozas()
: (Foglalkozas)FakeFoglalkozas.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<Foglalkozas> 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<Foglalkozas> 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<Foglalkozas> LoadWithFilter(string filter, Dictionary<string, object> commandParameters = null)
{
var result = new EntityCollection<Foglalkozas>();
new FoglalkozasDA().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<Foglalkozas> LoadWithFilter(string filter, ColumnFilterMode columnFilterMode, IEnumerable<string> columns, Dictionary<string, object> commandParameters = null)
{
var result = new EntityCollection<Foglalkozas>();
new FoglalkozasDA().LoadWithFilter(result, filter, columnFilterMode, columns, commandParameters);
return result;
}
protected override void StoreOriginalValues()
{
base.StoreOriginalValues();
OriginalValues.Add("FoglalkozasTipusa", (object)m_FoglalkozasTipusa);
OriginalValues.Add("Oraszam", (object)m_Oraszam);
OriginalValues.Add("Nev", (Nev == null ? (object)DBNull.Value : (object)m_Nev));
OriginalValues.Add("ErtekelesKell", (ErtekelesKell == null ? (object)DBNull.Value : (object)m_ErtekelesKell));
OriginalValues.Add("MulasztasKell", (MulasztasKell == null ? (object)DBNull.Value : (object)m_MulasztasKell));
OriginalValues.Add("TanarFelveheti", (TanarFelveheti == null ? (object)DBNull.Value : (object)m_TanarFelveheti));
OriginalValues.Add("Importalt", (object)m_Importalt);
OriginalValues.Add("IsOsszevontOra", (object)m_IsOsszevontOra);
OriginalValues.Add("IsNemzetisegi", (object)m_IsNemzetisegi);
OriginalValues.Add("TuloraSzam", (object)m_TuloraSzam);
OriginalValues.Add("MegbizasiOraszam", (object)m_MegbizasiOraszam);
OriginalValues.Add("TantargyId", (m_TantargyId < 0 ? (object)DBNull.Value : (object)m_TantargyId));
OriginalValues.Add("OsztalyCsoportId", (m_OsztalyCsoportId < 0 ? (object)DBNull.Value : (object)m_OsztalyCsoportId));
OriginalValues.Add("TanarId", (m_TanarId < 0 ? (object)DBNull.Value : (object)m_TanarId));
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_Nev != null && m_Nev.Length > 771)
{
throw new InvalidEntityAttributeException("Foglalkozas", "Nev", EntityAttributeError.TooLong);
}
}
// kötelező asszociációk ellenőrzése...
if (m_TanarId == -1) { throw new InvalidEntityAttributeException("Foglalkozas", "TanarId", EntityAttributeError.Empty); }
if (m_IntezmenyId == -1) { throw new InvalidEntityAttributeException("Foglalkozas", "IntezmenyId", EntityAttributeError.Empty); }
if (m_TanevId == -1) { throw new InvalidEntityAttributeException("Foglalkozas", "TanevId", EntityAttributeError.Empty); }
}
#endregion
#region Alaphelyzetbe állítás
protected override void Reset()
{
base.Reset();
// alaphelyzetbe állítjuk az egyszerű mezőket
this.m_FoglalkozasTipusa = -1;
this.m_Oraszam = 0;
this.m_Nev = null;
this.m_ErtekelesKell = null;
this.m_MulasztasKell = null;
this.m_TanarFelveheti = null;
this.m_Importalt = false;
this.m_IsOsszevontOra = false;
this.m_IsNemzetisegi = false;
this.m_TuloraSzam = 0;
this.m_MegbizasiOraszam = 0;
// alaphelyzetbe állítjuk az asszociációkból származó mezőket
this.m_TantargyId = -1;
this.m_Tantargy = null; // Entity
this.m_OsztalyCsoportId = -1;
this.m_OsztalyCsoport = null; // Entity
this.m_TanarId = -1;
this.m_Tanar = null; // Entity
this.m_OrarendiOra = null; // EntityCollection
this.m_TanitasiOra = null; // EntityCollection
this.m_FoglalkozasAmiTanulo = null; // EntityCollection
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...
// Tantargy esetében mi mutatunk a másikra: startrole: *, endrole: 0..1
// OsztalyCsoport esetében mi mutatunk a másikra: startrole: *, endrole: 0..1
// Tanar esetében mi mutatunk a másikra: startrole: *, endrole: 1
if (this.OrarendiOra.Count > 0)
{
throw new EntityDeleteFailedException("Foglalkozas", "OrarendiOra", EntityUtil.GetAssociationDescription("T_ORARENDIORA_OSSZES", "C_FOGLALKOZASID")); // nincs kapcsolotabla
}
if (this.TanitasiOra.Count > 0)
{
throw new EntityDeleteFailedException("Foglalkozas", "TanitasiOra", EntityUtil.GetAssociationDescription("T_TANITASIORA_OSSZES", "C_FOGLALKOZASID")); // nincs kapcsolotabla
}
if (this.FoglalkozasAmiTanulo.Count > 0)
{
throw new EntityDeleteFailedException("Foglalkozas", "FoglalkozasAmiTanulo", EntityUtil.GetAssociationDescription("T_FOGLALKOZASAMITANULO_OSSZES", "C_FOGLALKOZASID")); // nincs kapcsolotabla
}
// 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 FoglalkozasTipusa
protected internal int /* DictionaryItem */ m_FoglalkozasTipusa;
/// <summary>
/// A foglalkozás típusának ID-ja (tanóra, napközi, szakkör stb...) 
/// </summary>
[EntityProperty("FoglalkozasTipusa", EntityPropertyBaseType.ValueType, typeof(int /* DictionaryItem */), EntityCopyMethod.ShallowCopy)]
[EntityDictionaryItemProperty("FoglalkozasTipusa", "FoglalkozasTipus", typeof(SDA.Kreta.Entities.FoglalkozasTipus))]
public virtual int /* DictionaryItem */ FoglalkozasTipusa
{
get
{
return m_FoglalkozasTipusa;
}
set
{
CheckModifyable();
if (m_FoglalkozasTipusa == value) return;
m_FoglalkozasTipusa = value;
FieldModified("FoglalkozasTipusa", value);
}
}
#endregion
#region Oraszam
protected internal double m_Oraszam;
/// <summary>
/// Heti óraszám 
/// </summary>
[EntityProperty("Oraszam", EntityPropertyBaseType.ValueType, typeof(double), EntityCopyMethod.ShallowCopy)]
public virtual double Oraszam
{
get
{
return m_Oraszam;
}
set
{
CheckModifyable();
if (m_Oraszam == value) return;
m_Oraszam = value;
FieldModified("Oraszam", value);
}
}
#endregion
#region Nev
protected internal string m_Nev;
/// <summary>
/// Foglalkozás neve (általában a tanár, tantárgy és csoport nevébol van összerakva) 
/// </summary>
[EntityProperty("Nev", EntityPropertyBaseType.ValueType, typeof(string), EntityCopyMethod.ShallowCopy)]
public virtual string Nev
{
get
{
return m_Nev;
}
set
{
CheckModifyable();
if (m_Nev == value) return;
m_Nev = value;
FieldModified("Nev", value);
}
}
#endregion
#region ErtekelesKell
protected internal bool? m_ErtekelesKell;
/// <summary>
/// NINCS HASZNÁLVA
/// </summary>
[EntityProperty("ErtekelesKell", EntityPropertyBaseType.ValueType, typeof(bool), EntityCopyMethod.ShallowCopy)]
public virtual bool? ErtekelesKell
{
get
{
return m_ErtekelesKell;
}
set
{
CheckModifyable();
if (m_ErtekelesKell == value) return;
m_ErtekelesKell = value;
FieldModified("ErtekelesKell", value);
}
}
#endregion
#region MulasztasKell
protected internal bool? m_MulasztasKell;
/// <summary>
/// NINCS HASZNÁLVA
/// </summary>
[EntityProperty("MulasztasKell", EntityPropertyBaseType.ValueType, typeof(bool), EntityCopyMethod.ShallowCopy)]
public virtual bool? MulasztasKell
{
get
{
return m_MulasztasKell;
}
set
{
CheckModifyable();
if (m_MulasztasKell == value) return;
m_MulasztasKell = value;
FieldModified("MulasztasKell", value);
}
}
#endregion
#region TanarFelveheti
protected internal bool? m_TanarFelveheti;
/// <summary>
/// NINCS HASZNÁLVA
/// </summary>
[EntityProperty("TanarFelveheti", EntityPropertyBaseType.ValueType, typeof(bool), EntityCopyMethod.ShallowCopy)]
public virtual bool? TanarFelveheti
{
get
{
return m_TanarFelveheti;
}
set
{
CheckModifyable();
if (m_TanarFelveheti == value) return;
m_TanarFelveheti = value;
FieldModified("TanarFelveheti", value);
}
}
#endregion
#region Importalt
protected internal bool m_Importalt;
/// <summary>
/// Importálással került-e be a rekord. Amit felületen módosítják a rekordot a flag False-ra vált. 
/// </summary>
[EntityProperty("Importalt", EntityPropertyBaseType.ValueType, typeof(bool), EntityCopyMethod.ShallowCopy)]
public virtual bool Importalt
{
get
{
return m_Importalt;
}
set
{
CheckModifyable();
if (m_Importalt == value) return;
m_Importalt = value;
FieldModified("Importalt", value);
}
}
#endregion
#region IsOsszevontOra
protected internal bool m_IsOsszevontOra;
/// <summary>
/// Összevont óra-e 
/// </summary>
[EntityProperty("IsOsszevontOra", EntityPropertyBaseType.ValueType, typeof(bool), EntityCopyMethod.ShallowCopy)]
public virtual bool IsOsszevontOra
{
get
{
return m_IsOsszevontOra;
}
set
{
CheckModifyable();
if (m_IsOsszevontOra == value) return;
m_IsOsszevontOra = value;
FieldModified("IsOsszevontOra", value);
}
}
#endregion
#region IsNemzetisegi
protected internal bool m_IsNemzetisegi;
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
[EntityProperty("IsNemzetisegi", EntityPropertyBaseType.ValueType, typeof(bool), EntityCopyMethod.ShallowCopy)]
public virtual bool IsNemzetisegi
{
get
{
return m_IsNemzetisegi;
}
set
{
CheckModifyable();
if (m_IsNemzetisegi == value) return;
m_IsNemzetisegi = value;
FieldModified("IsNemzetisegi", value);
}
}
#endregion
#region TuloraSzam
protected internal double m_TuloraSzam;
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
[EntityProperty("TuloraSzam", EntityPropertyBaseType.ValueType, typeof(double), EntityCopyMethod.ShallowCopy)]
public virtual double TuloraSzam
{
get
{
return m_TuloraSzam;
}
set
{
CheckModifyable();
if (m_TuloraSzam == value) return;
m_TuloraSzam = value;
FieldModified("TuloraSzam", value);
}
}
#endregion
#region MegbizasiOraszam
protected internal double m_MegbizasiOraszam;
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
[EntityProperty("MegbizasiOraszam", EntityPropertyBaseType.ValueType, typeof(double), EntityCopyMethod.ShallowCopy)]
public virtual double MegbizasiOraszam
{
get
{
return m_MegbizasiOraszam;
}
set
{
CheckModifyable();
if (m_MegbizasiOraszam == value) return;
m_MegbizasiOraszam = value;
FieldModified("MegbizasiOraszam", value);
}
}
#endregion
#endregion
#region Asszociációkkal kapcsolatos dolgok
protected internal virtual bool LoadByOrarendiOraId(int id)
{
return m_DA.LoadByOrarendiOraId(id, this);
}
protected internal virtual bool LoadByTanitasiOraId(int id)
{
return m_DA.LoadByTanitasiOraId(id, this);
}
protected internal virtual bool LoadByFoglalkozasAmiTanuloId(int id)
{
return m_DA.LoadByFoglalkozasAmiTanuloId(id, this);
}
#region Foglalkozas (*) -> Tantargy (0..1)
protected internal int m_TantargyId = -1;
/// <summary>
/// A(z) Tantargy 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 TantargyId
{
get
{
return InternalTantargyId;
}
set
{
InternalTantargyId = value;
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal int InternalTantargyId
{
get
{
if (m_Tantargy != null)
{
return m_Tantargy.ID;
}
else
{
return m_TantargyId;// XXX az meg nem teljesen OK
}
}
set
{
CheckModifyable();
if (m_TantargyId != value)
{
m_TantargyId = value;
m_Tantargy = null;
FieldModified("TantargyId", value);
}
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal void ModifyTantargy(Tantargy value)
{
m_TantargyId = value != null ? value.ID : -1;
m_Tantargy = value;
FieldModified("TantargyId", value != null ? (object)value.ID : DBNull.Value);
}
protected internal void SetTantargy(Tantargy value)
{
m_Tantargy = value;
if (value != null)
{
m_TantargyId = value.ID;
}
else
{
m_TantargyId = -1;
}
}
protected Tantargy m_Tantargy = null;
ITantargy IFoglalkozas.Tantargy
{
get { return Tantargy; }
set { Tantargy = value as Tantargy; }
}
/// <summary>
/// Tantárgy ID-ja 
/// </summary>
/// <remarks>
/// Az UML modellben szereplő Foglalkozas és Tantargy entitások közötti asszociáció megvalósítása.
/// </remarks>
[EntityProperty("Tantargy", EntityPropertyBaseType.Entity, typeof(Tantargy), EntityCopyMethod.ShallowCopy)]
public virtual Tantargy Tantargy
{
get
{
if ((m_Tantargy == null) && (m_TantargyId != -1))
{
SDA.Kreta.Entities.Tantargy partner = SDA.Kreta.Entities.Tantargy.GiveAnInstance();
partner.LoadByID(m_TantargyId);
this.SetTantargy(partner);
}
// természetesen null-t adunk vissza, ha nem tudtunk felhozni semmit
return m_Tantargy;
}
set
{
CheckModifyable();
if (value != null)
{
if ((m_Tantargy == null) || (value.ID != m_Tantargy.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.Tantargy_Foglalkozasok_DA da = new Tantargy_Foglalkozasok_DA(value);
da.AddItem(this);
this.SetTantargy(value);
}
else
{
this.SetTantargy(value);
}
FieldModified("TantargyId", value.ID);
}
}
else
{
// ki kell törölni a kapcsolatot az adatbázisban
this.SetTantargy(null);
UpdateAssociations();
FieldModified("TantargyId", DBNull.Value);
}
}
}
#endregion
#region Foglalkozas (*) -> OsztalyCsoport (0..1)
protected internal int m_OsztalyCsoportId = -1;
/// <summary>
/// A(z) OsztalyCsoport 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 OsztalyCsoportId
{
get
{
return InternalOsztalyCsoportId;
}
set
{
InternalOsztalyCsoportId = value;
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal int InternalOsztalyCsoportId
{
get
{
if (m_OsztalyCsoport != null)
{
return m_OsztalyCsoport.ID;
}
else
{
return m_OsztalyCsoportId;// XXX az meg nem teljesen OK
}
}
set
{
CheckModifyable();
if (m_OsztalyCsoportId != value)
{
m_OsztalyCsoportId = value;
m_OsztalyCsoport = null;
FieldModified("OsztalyCsoportId", value);
}
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal void ModifyOsztalyCsoport(OsztalyCsoport value)
{
m_OsztalyCsoportId = value != null ? value.ID : -1;
m_OsztalyCsoport = value;
FieldModified("OsztalyCsoportId", value != null ? (object)value.ID : DBNull.Value);
}
protected internal void SetOsztalyCsoport(OsztalyCsoport value)
{
m_OsztalyCsoport = value;
if (value != null)
{
m_OsztalyCsoportId = value.ID;
}
else
{
m_OsztalyCsoportId = -1;
}
}
protected OsztalyCsoport m_OsztalyCsoport = null;
IOsztalyCsoport IFoglalkozas.OsztalyCsoport
{
get { return OsztalyCsoport; }
set { OsztalyCsoport = value as OsztalyCsoport; }
}
/// <summary>
/// Osztály vagy csoport ID-ja 
/// </summary>
/// <remarks>
/// Az UML modellben szereplő Foglalkozas és OsztalyCsoport entitások közötti asszociáció megvalósítása.
/// </remarks>
[EntityProperty("OsztalyCsoport", EntityPropertyBaseType.Entity, typeof(OsztalyCsoport), EntityCopyMethod.ShallowCopy)]
public virtual OsztalyCsoport OsztalyCsoport
{
get
{
if ((m_OsztalyCsoport == null) && (m_OsztalyCsoportId != -1))
{
SDA.Kreta.Entities.OsztalyCsoport partner = SDA.Kreta.Entities.OsztalyCsoport.GiveAnInstance();
partner.LoadByID(m_OsztalyCsoportId);
this.SetOsztalyCsoport(partner);
}
// természetesen null-t adunk vissza, ha nem tudtunk felhozni semmit
return m_OsztalyCsoport;
}
set
{
CheckModifyable();
if (value != null)
{
if ((m_OsztalyCsoport == null) || (value.ID != m_OsztalyCsoport.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.OsztalyCsoport_Foglalkozasok_DA da = new OsztalyCsoport_Foglalkozasok_DA(value);
da.AddItem(this);
this.SetOsztalyCsoport(value);
}
else
{
this.SetOsztalyCsoport(value);
}
FieldModified("OsztalyCsoportId", value.ID);
}
}
else
{
// ki kell törölni a kapcsolatot az adatbázisban
this.SetOsztalyCsoport(null);
UpdateAssociations();
FieldModified("OsztalyCsoportId", DBNull.Value);
}
}
}
#endregion
#region Foglalkozas (*) -> Alkalmazott (1)
protected internal int m_TanarId = -1;
/// <summary>
/// A(z) Tanar 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 TanarId
{
get
{
return InternalTanarId;
}
set
{
InternalTanarId = value;
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal int InternalTanarId
{
get
{
if (m_Tanar != null)
{
return m_Tanar.ID;
}
else
{
return m_TanarId;// XXX az meg nem teljesen OK
}
}
set
{
CheckModifyable();
if (m_TanarId != value)
{
m_TanarId = value;
m_Tanar = null;
FieldModified("TanarId", value);
}
}
}
/// <summary>
/// Ez egy külön bejárat a DA számára
/// <summary>
internal void ModifyTanar(Alkalmazott value)
{
m_TanarId = value != null ? value.ID : -1;
m_Tanar = value;
FieldModified("TanarId", value != null ? (object)value.ID : DBNull.Value);
}
protected internal void SetTanar(Alkalmazott value)
{
m_Tanar = value;
if (value != null)
{
m_TanarId = value.ID;
}
else
{
m_TanarId = -1;
}
}
protected Alkalmazott m_Tanar = null;
IAlkalmazott IFoglalkozas.Tanar
{
get { return Tanar; }
set { Tanar = value as Alkalmazott; }
}
/// <summary>
/// Tanár ID-ja 
/// </summary>
/// <remarks>
/// Az UML modellben szereplő Foglalkozas és Alkalmazott entitások közötti asszociáció megvalósítása.
/// </remarks>
[EntityProperty("Tanar", EntityPropertyBaseType.Entity, typeof(Alkalmazott), EntityCopyMethod.ShallowCopy)]
public virtual Alkalmazott Tanar
{
get
{
if ((m_Tanar == null) && (m_TanarId != -1))
{
SDA.Kreta.Entities.Alkalmazott partner = SDA.Kreta.Entities.Alkalmazott.GiveAnInstance();
partner.LoadByID(m_TanarId);
this.SetTanar(partner);
}
// természetesen null-t adunk vissza, ha nem tudtunk felhozni semmit
return m_Tanar;
}
set
{
CheckModifyable();
if (value != null)
{
if ((m_Tanar == null) || (value.ID != m_Tanar.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.Alkalmazott_Foglalkozas_DA da = new Alkalmazott_Foglalkozas_DA(value);
da.AddItem(this);
this.SetTanar(value);
}
else
{
this.SetTanar(value);
}
FieldModified("TanarId", value.ID);
}
}
else
{
// ki kell törölni a kapcsolatot az adatbázisban
this.SetTanar(null);
UpdateAssociations();
FieldModified("TanarId", DBNull.Value);
}
}
}
#endregion
#region Foglalkozas (*) -> 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 IFoglalkozas.Intezmeny
{
get { return Intezmeny; }
set { Intezmeny = value as Intezmeny; }
}
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
/// <remarks>
/// Az UML modellben szereplő Foglalkozas é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_Foglalkozas_DA da = new Intezmeny_Foglalkozas_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 Foglalkozas (*) -> 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 IFoglalkozas.Tanev
{
get { return Tanev; }
set { Tanev = value as Tanev; }
}
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
/// <remarks>
/// Az UML modellben szereplő Foglalkozas é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_Foglalkozas_DA da = new Tanev_Foglalkozas_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 Foglalkozas (0..1) -> OrarendiOra (*)
protected IAssociatedEntityCollection<OrarendiOra> m_OrarendiOra = null;
IReadOnlyList<IOrarendiOra> IFoglalkozas.OrarendiOra => OrarendiOra.Cast<IOrarendiOra>().ToList();
/// <summary>
/// A foglalkozás ID-ja, ha az óra foglalkozásból lett létrehozva 
/// </summary>
/// <remarks>
/// Az UML modellben szereplő Foglalkozas és OrarendiOra entitások közötti asszociáció megvalósítása.
/// </remarks>
[EntityProperty("OrarendiOra", EntityPropertyBaseType.EntityCollection, typeof(IAssociatedEntityCollection<OrarendiOra>), EntityCopyMethod.DeepCopy, "FoglalkozasId")]
public virtual IAssociatedEntityCollection<OrarendiOra> OrarendiOra
{
get
{
if (m_OrarendiOra == null)
{
m_OrarendiOra = new AssociatedEntityCollection<Foglalkozas, OrarendiOra>(
new Foglalkozas_OrarendiOra_DA(this)
);
m_OrarendiOra.Load();
}
return m_OrarendiOra;
}
}
#endregion
#region Foglalkozas (0..1) -> TanitasiOra (*)
protected IAssociatedEntityCollection<TanitasiOra> m_TanitasiOra = null;
IReadOnlyList<ITanitasiOra> IFoglalkozas.TanitasiOra => TanitasiOra.Cast<ITanitasiOra>().ToList();
/// <summary>
/// A foglalkozás ID-ja, ha az óra foglalkozásból lett létrehozva  (alap esetben az órarendi órából jön)
/// </summary>
/// <remarks>
/// Az UML modellben szereplő Foglalkozas és TanitasiOra entitások közötti asszociáció megvalósítása.
/// </remarks>
[EntityProperty("TanitasiOra", EntityPropertyBaseType.EntityCollection, typeof(IAssociatedEntityCollection<TanitasiOra>), EntityCopyMethod.DeepCopy, "FoglalkozasId")]
public virtual IAssociatedEntityCollection<TanitasiOra> TanitasiOra
{
get
{
if (m_TanitasiOra == null)
{
m_TanitasiOra = new AssociatedEntityCollection<Foglalkozas, TanitasiOra>(
new Foglalkozas_TanitasiOra_DA(this)
);
m_TanitasiOra.Load();
}
return m_TanitasiOra;
}
}
#endregion
#region Foglalkozas (1) -> FoglalkozasAmiTanulo (*)
protected IAssociatedEntityCollection<FoglalkozasAmiTanulo> m_FoglalkozasAmiTanulo = null;
IReadOnlyList<IFoglalkozasAmiTanulo> IFoglalkozas.FoglalkozasAmiTanulo => FoglalkozasAmiTanulo.Cast<IFoglalkozasAmiTanulo>().ToList();
/// <summary>
/// Nincs definiálva megjegyzés.
/// </summary>
/// <remarks>
/// Az UML modellben szereplő Foglalkozas és FoglalkozasAmiTanulo entitások közötti asszociáció megvalósítása.
/// </remarks>
[EntityProperty("FoglalkozasAmiTanulo", EntityPropertyBaseType.EntityCollection, typeof(IAssociatedEntityCollection<FoglalkozasAmiTanulo>), EntityCopyMethod.DeepCopy, "FoglalkozasId")]
public virtual IAssociatedEntityCollection<FoglalkozasAmiTanulo> FoglalkozasAmiTanulo
{
get
{
if (m_FoglalkozasAmiTanulo == null)
{
m_FoglalkozasAmiTanulo = new AssociatedEntityCollection<Foglalkozas, FoglalkozasAmiTanulo>(
new Foglalkozas_FoglalkozasAmiTanulo_DA(this)
);
m_FoglalkozasAmiTanulo.Load();
}
return m_FoglalkozasAmiTanulo;
}
}
#endregion
#endregion
#endregion
}
}