kreta/Kreta.BusinessLogic/HelperClasses/TanuloItemCo.cs
2024-03-13 00:33:46 +01:00

348 lines
21 KiB
C#

using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using Kreta.BusinessLogic.Classes;
using Kreta.Core;
using Kreta.Core.CustomAttributes;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
namespace Kreta.BusinessLogic.HelperClasses
{
public class TanuloItemCo : BaseFelhasznaloItemCo
{
#region Fields
/// <summary>
/// Technikai paraméter(ek) a reflection-ös exporthoz.
/// </summary>
public const string TanuloKirAktualisAdatokExportAttributeId = nameof(TanuloKirAktualisAdatokExportAttributeId);
public const string TanulokElerhetosegiAdataikTemplateExportAttributeId = nameof(TanulokElerhetosegiAdataikTemplateExportAttributeId);
#endregion
public TanuloItemCo() : base() { }
public TanuloItemCo(DataRow dataRow) : base(dataRow)
{
Id = SDAConvert.ToInt32(dataRow["Id"]);
AllampolgarsagId = SDAConvert.ToInt32(dataRow["FelhasznaloAllampolgarsag1"]);
AllampolgarsagNev = FelhasznaloAllampolgarsaga1;
Importalt = SDAConvert.ToBooleanFromTF(dataRow["Importalt"]);
CimList = new List<CimItemCo>();
EmailList = new List<EmailItemCo>();
TelefonList = new List<TelefonItemCo>();
BeirasiNaploSorszam = SDAConvert.ToString(dataRow["BeirasiNaploSorszam"], null).ReplaceMultipleSpacesAndTrim();
IsBejaro = SDAConvert.ToBooleanFromTF(dataRow["IsBejaro"]);
IsDiaksportkoros = SDAConvert.ToBooleanFromTF(dataRow["IsDiaksportkoros"]);
IsEgyebDonto = SDAConvert.ToBooleanFromTF(dataRow["IsEgyebDonto"]);
IsEgyuttmukodeses = SDAConvert.ToBooleanFromTF(dataRow["IsEgyuttmukodeses"]);
ElozoIntezmeny = SDAConvert.ToString(dataRow["ElozoIntezmeny"], null).ReplaceMultipleSpacesAndTrim();
IsEvismetlo = SDAConvert.ToBooleanFromTF(dataRow["IsEvismetlo"]);
IsIskolaiKeretekKozott = SDAConvert.ToBooleanFromTF(dataRow["IsIskolaiKeretekKozott"]);
IsJogviszonyatSzunetelteto = SDAConvert.ToBooleanFromTF(dataRow["IsJogviszonyatSzunetelteto"]);
JogviszonyVarhatoBefejezese = SDAConvert.ToDateTime(dataRow["JogviszonyVarhatoBefejezese"]);
JogviszonyVarhatoBefejezeseString = JogviszonyVarhatoBefejezese?.ToString(Constants.ToStringPattern.SortableDateTimePattern);
IsMagantanulo = SDAConvert.ToBooleanFromTF(dataRow["IsMagantanulo"]);
MagantanulosaganakOkaId = SDAConvert.ToNullableInt32(dataRow["MagantanulosaganakOkaId"]);
MagantanulosaganakOkaNev = SDAConvert.ToString(dataRow["MagantanulosaganakOkaId_DNAME"], null).ReplaceMultipleSpacesAndTrim();
MagantanulosagKezdete = SDAConvert.ToDateTime(dataRow["MagantanulosagKezdete"]);
MagantanulosagKezdeteString = MagantanulosagKezdete?.ToString(Constants.ToStringPattern.SortableDateTimePattern);
NyilvantartasKezdete = SDAConvert.ToDateTime(dataRow["NyilvantartasKezdete"]).Value;
NyilvantartasKezdeteString = NyilvantartasKezdete.ToString(Constants.ToStringPattern.SortableDateTimePattern);
IsOsztv = SDAConvert.ToBooleanFromTF(dataRow["IsOsztv"]);
IsPolgariSzerzodeses = SDAConvert.ToBooleanFromTF(dataRow["IsPolgariSzerzodeses"]);
IsSzakmaiGyakorlaton = SDAConvert.ToBooleanFromTF(dataRow["IsSzakmaiGyakorlaton"]);
IsSzetvAgazat = SDAConvert.ToBooleanFromTF(dataRow["IsSzetvAgazat"]);
Szintvizsga = SDAConvert.ToNullableDouble(dataRow["Szintvizsga"]);
IsSzktv = SDAConvert.ToBooleanFromTF(dataRow["IsSzktv"]);
IsTandijatfizeto = SDAConvert.ToBooleanFromTF(dataRow["IsTandijatfizeto"]);
IsTankotelezett = SDAConvert.ToBooleanFromTF(dataRow["IsTankotelezett"]);
TankotelezettsegVege = SDAConvert.ToDateTime(dataRow["TankotelezettsegVege"]);
TankotelezettsegVegeString = TankotelezettsegVege?.ToString(Constants.ToStringPattern.SortableDateTimePattern);
TanuloEvfolyamTipusId = SDAConvert.ToNullableInt32(dataRow["TanuloEvfolyamTipusId"]);
TanuloEvfolyamTipusNev = SDAConvert.ToString(dataRow["TanuloEvfolyamTipusId_DNAME"], null).ReplaceMultipleSpacesAndTrim();
IsTanuloSzerzodeses = SDAConvert.ToBooleanFromTF(dataRow["IsTanuloSzerzodeses"]);
IsTechnikusiEvfolyam = SDAConvert.ToBooleanFromTF(dataRow["IsTechnikusiEvfolyam"]);
IsTeritesiDijatFizeto = SDAConvert.ToBooleanFromTF(dataRow["IsTeritesiDijatFizeto"]);
IsVendeg = SDAConvert.ToBooleanFromTF(dataRow["IsVendeg"]);
Naplosorszam = SDAConvert.ToNullableInt32(dataRow["Naplosorszam"]);
Torzslapszam = SDAConvert.ToString(dataRow["Torzslapszam"], null).ReplaceMultipleSpacesAndTrim();
FelvetelTaneveId = SDAConvert.ToInt32(dataRow["FelvetelTaneveId"]);
if (dataRow.Table.Columns.Contains("TajSzam"))
{
TajSzam = SDAConvert.ToString(dataRow["TajSzam"]).ReplaceMultipleSpacesAndTrim();
}
if (dataRow.Table.Columns.Contains("DiakigazolvanySzam"))
{
DiakigazolvanySzam = SDAConvert.ToString(dataRow["DiakigazolvanySzam"]).ReplaceMultipleSpacesAndTrim();
}
if (dataRow.Table.Columns.Contains("IsBTMProblemas"))
{
IsBTMProblemas = SDAConvert.ToBooleanFromTF(dataRow["IsBTMProblemas"]);
}
if (dataRow.Table.Columns.Contains("IsSNI"))
{
IsSNI = SDAConvert.ToBooleanFromTF(dataRow["IsSNI"]);
}
if (dataRow.Table.Columns.Contains("OMazonosito"))
{
OMAzonosito = SDAConvert.ToString(dataRow["OMazonosito"]).ReplaceMultipleSpacesAndTrim();
}
if (dataRow.Table.Columns.Contains("BelugyAltalAzonositott"))
{
BMazonositott = SDAConvert.ToBooleanFromTF(dataRow["BelugyAltalAzonositott"]);
}
if (dataRow.Table.Columns.Contains("UtolsoAdatfrissitesIdopontja"))
{
UtolsoNyilvantartasFrissitese = SDAConvert.ToDateTime(dataRow["UtolsoAdatfrissitesIdopontja"]);
}
}
public void SetCimProperties()
{
var allandoLakcim = CimList.SingleOrDefault(x => x.TipusId == (int)CimTipusEnum.allando_lakcim);
var tartozkodasiCim = CimList.SingleOrDefault(x => x.TipusId == (int)CimTipusEnum.tartozkodasi_hely);
if (allandoLakcim != null)
{
AllandoLakcimIranyitoszam = allandoLakcim.Iranyitoszam.ReplaceMultipleSpacesAndTrim();
AllandoLakcimTelepules = allandoLakcim.Telepules.ReplaceMultipleSpacesAndTrim();
AllandoLakcimKozteruletNev = allandoLakcim.Kozterulet.ReplaceMultipleSpacesAndTrim();
AllandoLakcimKozteruletJellegNev = allandoLakcim.KozteruletJellegNev.ReplaceMultipleSpacesAndTrim();
AllandoLakcimHazszam = allandoLakcim.Hazszam.ReplaceMultipleSpacesAndTrim();
AllandoLakcimPontositas = allandoLakcim.Emelet.ReplaceMultipleSpacesAndTrim();
}
if (tartozkodasiCim != null)
{
TartozkodasiCimIranyitoszam = tartozkodasiCim.Iranyitoszam.ReplaceMultipleSpacesAndTrim();
TartozkodasiCimTelepules = tartozkodasiCim.Telepules.ReplaceMultipleSpacesAndTrim();
TartozkodasiCimKozteruletNev = tartozkodasiCim.Kozterulet.ReplaceMultipleSpacesAndTrim();
TartozkodasiCimKozteruletJellegNev = tartozkodasiCim.KozteruletJellegNev.ReplaceMultipleSpacesAndTrim();
TartozkodasiCimHazszam = tartozkodasiCim.Hazszam.ReplaceMultipleSpacesAndTrim();
TartozkodasiCimPontositas = tartozkodasiCim.Emelet.ReplaceMultipleSpacesAndTrim();
}
}
public int Id { get; set; }
public int AllampolgarsagId { get; set; }
public string AllampolgarsagNev { get; set; }
public bool Importalt { get; set; }
public List<CimItemCo> CimList { get; set; }
public List<EmailItemCo> EmailList { get; set; }
public List<TelefonItemCo> TelefonList { get; set; }
public string BeirasiNaploSorszam { get; set; }
public bool IsBejaro { get; set; }
public bool IsDiaksportkoros { get; set; }
public bool IsEgyebDonto { get; set; }
public bool IsEgyuttmukodeses { get; set; }
public string ElozoIntezmeny { get; set; }
public bool IsEvismetlo { get; set; }
public bool IsIskolaiKeretekKozott { get; set; }
public bool IsJogviszonyatSzunetelteto { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 47, nameof(TanuloResource.TanuloKIRExportHeaderNameJogviszonyVarhatoBefejezese), typeof(TanuloResource))]
public DateTime? JogviszonyVarhatoBefejezese { get; set; }
public string JogviszonyVarhatoBefejezeseString { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 50, nameof(TanuloResource.TanuloKIRExportHeaderNameEgyediMunkarend), typeof(TanuloResource), BooleanDisplayFormat = BooleanDisplayFormatEnum.IN)]
public bool IsMagantanulo { get; set; }
public int? MagantanulosaganakOkaId { get; set; }
public string MagantanulosaganakOkaNev { get; set; }
public DateTime? MagantanulosagKezdete { get; set; }
public string MagantanulosagKezdeteString { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 46, nameof(TanuloResource.TanuloKIRExportHeaderNameJogviszonyKezdete), typeof(TanuloResource))]
public DateTime NyilvantartasKezdete { get; set; }
public string NyilvantartasKezdeteString { get; set; }
public bool IsOsztv { get; set; }
public bool IsPolgariSzerzodeses { get; set; }
public bool IsSzakmaiGyakorlaton { get; set; }
public bool IsSzetvAgazat { get; set; }
public double? Szintvizsga { get; set; }
public bool IsSzktv { get; set; }
public bool IsTandijatfizeto { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 37, nameof(TanuloResource.TanuloKIRExportHeaderNameTankotelezettsegetTeljesito), typeof(TanuloResource), BooleanDisplayFormat = BooleanDisplayFormatEnum.IN)]
public bool IsTankotelezett { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 36, nameof(TanuloResource.TanuloKIRExportHeaderNameTankotelezettsegVege), typeof(TanuloResource))]
public DateTime? TankotelezettsegVege { get; set; }
public string TankotelezettsegVegeString { get; set; }
public int? TanuloEvfolyamTipusId { get; set; }
public string TanuloEvfolyamTipusNev { get; set; }
public bool IsTanuloSzerzodeses { get; set; }
public bool IsTechnikusiEvfolyam { get; set; }
public bool IsTeritesiDijatFizeto { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 49, nameof(TanuloResource.TanuloKIRExportHeaderNameVendegTanulo), typeof(TanuloResource), BooleanDisplayFormat = BooleanDisplayFormatEnum.IN)]
public bool IsVendeg { get; set; }
public int? Naplosorszam { get; set; }
public string Torzslapszam { get; set; }
public int TantervId { get; set; }
public int FelvetelTaneveId { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 19, nameof(TanuloResource.TajSzam), typeof(TanuloResource))]
public virtual string TajSzam { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 20, nameof(TanuloResource.TajEllenorzes), typeof(TanuloResource))]
public string TajEllenorzes { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 21, nameof(TanuloResource.TanuloKIRExportHeaderNameAllandoLakcimIranyitoszam), typeof(TanuloResource), nameof(TanuloResource.TanuloKIRExportIranyitoszamokSheetName), typeof(TanuloResource))]
public string AllandoLakcimIranyitoszam { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 22, nameof(TanuloResource.TanuloKIRExportHeaderNameAllandoLakcimTelepules), typeof(TanuloResource), nameof(TanuloResource.TanuloKIRExportTelepulesekSheetName), typeof(TanuloResource))]
public string AllandoLakcimTelepules { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 23, nameof(TanuloResource.TanuloKIRExportHeaderNameAllandoLakcimKozteruletNev), typeof(TanuloResource))]
public string AllandoLakcimKozteruletNev { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 24, nameof(TanuloResource.TanuloKIRExportHeaderNameAllandoLakcimKozteruletJelleg), typeof(TanuloResource), nameof(TanuloResource.TanuloKIRExportKozteruletJellegSheetName), typeof(TanuloResource))]
public string AllandoLakcimKozteruletJellegNev { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 25, nameof(TanuloResource.TanuloKIRExportHeaderNameAllandoLakcimHazszam), typeof(TanuloResource))]
public string AllandoLakcimHazszam { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 26, nameof(TanuloResource.TanuloKIRExportHeaderNameAllandoLakcimPontositas), typeof(TanuloResource))]
public string AllandoLakcimPontositas { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 27, nameof(TanuloResource.TanuloKIRExportHeaderNameTartozkodasiCimIranyitoszam), typeof(TanuloResource), nameof(TanuloResource.TanuloKIRExportIranyitoszamokSheetName), typeof(TanuloResource))]
public string TartozkodasiCimIranyitoszam { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 28, nameof(TanuloResource.TanuloKIRExportHeaderNameTartozkodasiCimTelepules), typeof(TanuloResource), nameof(TanuloResource.TanuloKIRExportTelepulesekSheetName), typeof(TanuloResource))]
public string TartozkodasiCimTelepules { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 29, nameof(TanuloResource.TanuloKIRExportHeaderNameTartozkodasiCimKozteruletNev), typeof(TanuloResource))]
public string TartozkodasiCimKozteruletNev { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 30, nameof(TanuloResource.TanuloKIRExportHeaderNameTartozkodasiCimKozteruletJelleg), typeof(TanuloResource), nameof(TanuloResource.TanuloKIRExportKozteruletJellegSheetName), typeof(TanuloResource))]
public string TartozkodasiCimKozteruletJellegNev { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 31, nameof(TanuloResource.TanuloKIRExportHeaderNameTartozkodasiCimHazszam), typeof(TanuloResource))]
public string TartozkodasiCimHazszam { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 32, nameof(TanuloResource.TanuloKIRExportHeaderNameTartozkodasiCimPontositas), typeof(TanuloResource))]
public string TartozkodasiCimPontositas { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 33, nameof(TanuloResource.TanuloKIRExportHeaderNameAdatkezeloIntezmenyOMAzon), typeof(TanuloResource))]
public string AdatkezeloIntezmenyOMAzon { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 34, nameof(TanuloResource.TanuloKIRExportHeaderNameAdatkezeloIntezmenyNeve), typeof(TanuloResource))]
public string AdatkezeloIntezmenyNeve { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 35, nameof(TanuloResource.TanuloKIRExportHeaderNameAdatkezeloIntezmenyCime), typeof(TanuloResource))]
public string AdatkezeloIntezmenyCime { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 38, nameof(TanuloResource.TanuloKIRExportHeaderNameSNI), typeof(TanuloResource), BooleanDisplayFormat = BooleanDisplayFormatEnum.IN)]
public bool IsSNI { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 39, nameof(TanuloResource.TanuloKIRExportHeaderNameBTMProblemas), typeof(TanuloResource), BooleanDisplayFormat = BooleanDisplayFormatEnum.IN)]
public bool IsBTMProblemas { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 40, nameof(TanuloResource.TanuloKIRExportHeaderNameDiakigazolvanySzam), typeof(TanuloResource))]
public string DiakigazolvanySzam { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 41, nameof(TanuloResource.TanuloKIRExportHeaderNameKozoktatasiIntezmenyNeve), typeof(TanuloResource))]
public string KozoktatasiIntezmenyNeve { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 42, nameof(TanuloResource.TanuloKIRExportHeaderNameKozoktatasiIntezmenySzekhelye), typeof(TanuloResource))]
public string KozoktatasiIntezmenySzekhelye { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 43, nameof(TanuloResource.TanuloKIRExportHeaderNameOMAzonosito), typeof(TanuloResource))]
public string OMAzonosito { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 45, nameof(TanuloResource.TanuloKIRExportHeaderNameJogviszonyStatusza), typeof(TanuloResource))]
public string JogviszonyStatusza => !IsJogviszonyatSzunetelteto ? TanuloResource.Aktiv : "";
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 48, nameof(TanuloResource.TanuloKIRExportHeaderNameJogviszonJellege), typeof(TanuloResource))]
public string JogviszonyJellege => IsTankotelezett ? TanuloResource.TankotelezettsegetTeljesito : "";
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 55, nameof(TanuloResource.TanuloKIRExportHeaderNameBMazonositott), typeof(TanuloResource), BooleanDisplayFormat = BooleanDisplayFormatEnum.IN)]
public bool BMazonositott { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 56, nameof(TanuloResource.TanuloKIRExportHeaderNameUtolsoNyilvantartasFrissites), typeof(TanuloResource))]
public DateTime? UtolsoNyilvantartasFrissitese { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 44, nameof(TanuloResource.TanuloKIRExportHeaderNameUgyviteliHely), typeof(TanuloResource))]
public string UgyviteliHely { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 51, nameof(TanuloResource.TanuloKIRExportHeaderNameIdeiglenesJogviszony), typeof(TanuloResource), BooleanDisplayFormat = BooleanDisplayFormatEnum.IN)]
public bool IdeiglenesJogviszony { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 52, nameof(TanuloResource.TanuloKIRExportHeaderNameOsztaly), typeof(TanuloResource))]
public string Osztaly { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 53, nameof(TanuloResource.TanuloKIRExportHeaderNameNyitottSzolgaltatasok), typeof(TanuloResource))]
public string NyitottSzolgaltatasok { get; set; }
[SimpleExportColumn(TanuloKirAktualisAdatokExportAttributeId, 54, nameof(TanuloResource.TanuloKIRExportHeaderNameLezartSzolgaltatasok), typeof(TanuloResource))]
public string LezartSzolgaltatasok { get; set; }
[SimpleExportColumn(TanulokElerhetosegiAdataikTemplateExportAttributeId, 02, nameof(ImportExportTanulokElerhetosegiAdataikResource.ImportHeaderNameTanuloTelefonszam), typeof(ImportExportTanulokElerhetosegiAdataikResource))]
public string Telefonszam { get; set; }
[SimpleExportColumn(TanulokElerhetosegiAdataikTemplateExportAttributeId, 03, nameof(ImportExportTanulokElerhetosegiAdataikResource.ImportHeaderNameTelefonszamAlapertelmezett), typeof(ImportExportTanulokElerhetosegiAdataikResource))]
public string IsAlapertelmezettTelefonszam { get; set; }
[SimpleExportColumn(TanulokElerhetosegiAdataikTemplateExportAttributeId, 04, nameof(ImportExportTanulokElerhetosegiAdataikResource.ImportHeaderNameTelefonszamTipusa), typeof(ImportExportTanulokElerhetosegiAdataikResource))]
public string TelefonszamTipusNev { get; set; }
[SimpleExportColumn(TanulokElerhetosegiAdataikTemplateExportAttributeId, 05, nameof(ImportExportTanulokElerhetosegiAdataikResource.ImportHeaderNameTanuloEmailCim), typeof(ImportExportTanulokElerhetosegiAdataikResource))]
public string EmailCim { get; set; }
[SimpleExportColumn(TanulokElerhetosegiAdataikTemplateExportAttributeId, 06, nameof(ImportExportTanulokElerhetosegiAdataikResource.ImportHeaderNameEmailAlapertelmezett), typeof(ImportExportTanulokElerhetosegiAdataikResource))]
public string IsAlapertelmezettEmailCim { get; set; }
[SimpleExportColumn(TanulokElerhetosegiAdataikTemplateExportAttributeId, 07, nameof(ImportExportTanulokElerhetosegiAdataikResource.ImportHeaderNameEmailTipus), typeof(ImportExportTanulokElerhetosegiAdataikResource))]
public string EmailCimTipusNev { get; set; }
}
}