124 lines
6.5 KiB
C#
124 lines
6.5 KiB
C#
using System;
|
|
using System.Linq;
|
|
using Kreta.Core;
|
|
using Kreta.Core.Domain.Interface;
|
|
using Kreta.DataAccess.Interfaces;
|
|
using Kreta.Enums;
|
|
|
|
namespace Kreta.BusinessLogic.HelperClasses
|
|
{
|
|
public class KirTanarAdatCo
|
|
{
|
|
public int? Id { get; set; }
|
|
public string OktatasiAzonosito { get; set; }
|
|
public int? Nem { get; set; }
|
|
public string MunkavallaloCsaladiNev { get; set; }
|
|
public string MunkavallaloUtonev { get; set; }
|
|
public string SzuletesiCsaladiNev { get; set; }
|
|
public string SzuletesiUtonev { get; set; }
|
|
public bool SzuletesiNevSorrend { get; set; }
|
|
public string AnyjaCsaladiNeve { get; set; }
|
|
public string AnyjaUtoneve { get; set; }
|
|
public bool AnyjaNeveSorrend { get; set; }
|
|
public string SzuletesiHely { get; set; }
|
|
public DateTime? SzuletesiIdo { get; set; }
|
|
public string Iranyitoszam { get; set; }
|
|
public string HelysegNeve { get; set; }
|
|
public string KozteruletNeve { get; set; }
|
|
public string KozteruletJellegeNev { get; set; }
|
|
public string Hazszam { get; set; }
|
|
public string Ajto { get; set; }
|
|
public string Emelet { get; set; }
|
|
public string Telefon { get; set; }
|
|
public int TelefonTipusa { get; set; }
|
|
public string Email { get; set; }
|
|
public int EmailTipusa { get; set; }
|
|
public DateTime? AlkalmazasKezdete { get; set; }
|
|
public DateTime? AlkalmazasVege { get; set; }
|
|
public string Elotag { get; set; }
|
|
public int? FoglalkoztatasTipusa { get; set; }
|
|
public int? Allampolgarsag { get; set; }
|
|
public int? Allampolgarsag2 { get; set; }
|
|
public int? SzuletesiOrszag { get; set; }
|
|
public bool NevSorrend { get; set; }
|
|
|
|
internal static KirTanarAdatCo EntityToCo(IAlkalmazott alkalmazott)
|
|
{
|
|
KirTanarAdatCo kirTanarAdatCo = new KirTanarAdatCo
|
|
{
|
|
Id = alkalmazott.ID,
|
|
OktatasiAzonosito = alkalmazott.OktatasiAzonosito,
|
|
Nem = alkalmazott.Neme,
|
|
Elotag = alkalmazott.Elotag,
|
|
MunkavallaloCsaladiNev = alkalmazott.Vezeteknev,
|
|
MunkavallaloUtonev = alkalmazott.Utonev,
|
|
SzuletesiCsaladiNev = !alkalmazott.SzuletesiNevSorrend ? alkalmazott.SzuletesiVezeteknev?.Trim() : alkalmazott.SzuletesiUtonev?.Trim(),
|
|
SzuletesiUtonev = !alkalmazott.SzuletesiNevSorrend ? alkalmazott.SzuletesiUtonev?.Trim() : alkalmazott.SzuletesiVezeteknev?.Trim(),
|
|
AnyjaCsaladiNeve = !alkalmazott.AnyjaNeveSorrend ? alkalmazott.AnyjaVezetekneve?.Trim() : alkalmazott.AnyjaUtoneve?.Trim(),
|
|
AnyjaUtoneve = !alkalmazott.AnyjaNeveSorrend ? alkalmazott.AnyjaUtoneve?.Trim() : alkalmazott.AnyjaVezetekneve?.Trim(),
|
|
SzuletesiHely = alkalmazott.SzuletesiHely,
|
|
SzuletesiIdo = alkalmazott.SzuletesiDatum,
|
|
SzuletesiOrszag = alkalmazott.SzuletesiOrszag,
|
|
Allampolgarsag = alkalmazott.Allampolgarsaga,
|
|
Allampolgarsag2 = alkalmazott.Allampolgarsaga2,
|
|
};
|
|
|
|
var oCim = alkalmazott.Cim.FirstOrDefault(X => X.CimTipusa == (int)CimTipusEnum.allando_lakcim && !X.Torolt);
|
|
if (oCim != null)
|
|
{
|
|
kirTanarAdatCo.Ajto = oCim.Ajto;
|
|
kirTanarAdatCo.Emelet = oCim.Emelet;
|
|
kirTanarAdatCo.Hazszam = oCim.Hazszam;
|
|
kirTanarAdatCo.Iranyitoszam = oCim.IranyitoSzam;
|
|
kirTanarAdatCo.KozteruletJellegeNev = oCim.KozteruletJellegeNev;
|
|
kirTanarAdatCo.KozteruletNeve = oCim.Kozterulet;
|
|
kirTanarAdatCo.HelysegNeve = oCim.Varos;
|
|
}
|
|
|
|
var tanarMunkaugyiAdatok = alkalmazott.MunkaugyiAdatok.FirstOrDefault(x => !x.Torolt);
|
|
if (tanarMunkaugyiAdatok != null)
|
|
{
|
|
kirTanarAdatCo.AlkalmazasKezdete = tanarMunkaugyiAdatok.AlkalmazasKezdete;
|
|
kirTanarAdatCo.AlkalmazasVege = tanarMunkaugyiAdatok.AlkalmazasMegszunese;
|
|
kirTanarAdatCo.FoglalkoztatasTipusa = tanarMunkaugyiAdatok.FoglalkoztatasTipus;
|
|
}
|
|
|
|
if (alkalmazott.Telefon.Count > 0)
|
|
{
|
|
var tAlap = alkalmazott.Telefon.FirstOrDefault(x => x.Alapertelmezett && !x.Torolt && !x.IsPublic);
|
|
kirTanarAdatCo.Telefon = tAlap?.TelefonSzam;
|
|
}
|
|
|
|
if (alkalmazott.Email.Count > 0)
|
|
{
|
|
var email = alkalmazott.Email.FirstOrDefault(x => !x.Torolt && !x.IsPublic);
|
|
kirTanarAdatCo.Email = email?.EmailCim;
|
|
}
|
|
|
|
return kirTanarAdatCo;
|
|
}
|
|
|
|
public static KirTanarAdatCo KirEntityToCo(IKirAlkalmazott kirAlkalmazott) => new KirTanarAdatCo
|
|
{
|
|
Id = kirAlkalmazott.Id,
|
|
AnyjaUtoneve = kirAlkalmazott.AnyjaUtoneve,
|
|
AnyjaCsaladiNeve = kirAlkalmazott.AnyjaVezetekNeve,
|
|
NevSorrend = kirAlkalmazott.NevSorrend,
|
|
Elotag = kirAlkalmazott.NevElotag,
|
|
SzuletesiUtonev = kirAlkalmazott.SzuletesiUtonev,
|
|
SzuletesiCsaladiNev = kirAlkalmazott.SzuletesiVezeteknev,
|
|
MunkavallaloUtonev = kirAlkalmazott.Utonev,
|
|
MunkavallaloCsaladiNev = kirAlkalmazott.Vezeteknev,
|
|
SzuletesiHely = kirAlkalmazott.SzuletesiHely,
|
|
SzuletesiIdo = kirAlkalmazott.SzuletesiDatum,
|
|
Nem = Enum.TryParse(kirAlkalmazott.Nem.RemoveDiacritics(), true, out NemEnum nemEnum) ? (int)nemEnum : (int)NemEnum.NA,
|
|
AlkalmazasKezdete = kirAlkalmazott.AlkalmazasKezdete,
|
|
AlkalmazasVege = kirAlkalmazott.AlkalmazasMegszunese,
|
|
FoglalkoztatasTipusa = Enum.TryParse(kirAlkalmazott.FoglalkoztatasTipusa.RemoveDiacritics(), true, out FoglalkoztatasTipusaEnum foglalkoztatasTipusaEnum) ? (int)foglalkoztatasTipusaEnum : (int)FoglalkoztatasTipusaEnum.TeljesMunkaidos,
|
|
OktatasiAzonosito = kirAlkalmazott.OktatasiAzonosito,
|
|
Allampolgarsag = Enum.TryParse(kirAlkalmazott.Allampolgarsag.RemoveDiacritics(), true, out AllampolgarsagEnum allampolgarsagEnum) ? (int)allampolgarsagEnum : (int)AllampolgarsagEnum.magyar,
|
|
Allampolgarsag2 = Enum.TryParse(kirAlkalmazott.Allampolgarsag2.RemoveDiacritics(), true, out AllampolgarsagEnum allampolgarsag2Enum) ? (int)allampolgarsag2Enum : (int)AllampolgarsagEnum.magyar,
|
|
SzuletesiOrszag = Enum.TryParse(kirAlkalmazott.SzuletesiOrszag.RemoveDiacritics(), true, out OrszagTipusEnum orszagTipusEnum) ? (int)orszagTipusEnum : (int)OrszagTipusEnum.Magyarorszag
|
|
};
|
|
}
|
|
}
|