kreta/Kreta.Core/Domain/KirFelhasznalo.cs
2024-03-13 00:33:46 +01:00

103 lines
4.5 KiB
C#

using System;
using Kreta.Core.CustomAttributes;
using Kreta.Core.Domain.Interface;
using Kreta.Enums;
namespace Kreta.Core.Domain
{
public class KirFelhasznalo : IKirFelhasznalo, IEquatable<KirFelhasznalo>
{
public int Id { get; set; }
public string NevElotag { get; set; }
public string Vezeteknev { get; set; }
public string Utonev { get; set; }
public string SzuletesiNev { get; set; }
public string NyomtatasiNev { get; set; }
public bool NevSorrend { get; set; }
public string SzuletesiVezeteknev { get; set; }
public string SzuletesiUtonev { get; set; }
//Nem biztos hogy erre szükség van
public string SzuletesiNevSorrenddel { get; set; }
public bool SzuletesiNevSorrend { get; set; }
public string AnyjaVezetekNeve { get; set; }
public string AnyjaUtoneve { get; set; }
public string AnyjaNeveSorrenddel { get; set; }
public bool AnyjaNeveSorrend { get; set; }
public DateTime? SzuletesiDatum { get; set; }
public string OktatasiAzonosito { get; set; }
public string SzuletesiOrszag { get; set; }
public string Allampolgarsag { get; set; }
public string Allampolgarsag2 { get; set; }
public string SzuletesiHely { get; set; }
public string AnyjaNeve { get; set; }
public string Nem { get; set; }
public string TajSzam { get; set; }
public string Email { get; set; }
public string Telefonszam { get; set; }
[Ignore()]
public KirCim AllandoLakcim { get; set; }
[Ignore()]
public KirCim TartozkodasiCim { get; set; }
public bool Equals(KirFelhasznalo other)
=> other != null &&
SzuletesiUtonev == other.SzuletesiUtonev &&
OktatasiAzonosito == other.OktatasiAzonosito &&
NevElotag == other.NevElotag &&
Vezeteknev == other.Vezeteknev &&
Utonev == other.Utonev &&
SzuletesiVezeteknev == other.SzuletesiVezeteknev &&
AnyjaVezetekNeve == other.AnyjaVezetekNeve &&
AnyjaUtoneve == other.AnyjaUtoneve &&
SzuletesiOrszag == other.SzuletesiOrszag &&
Allampolgarsag == other.Allampolgarsag &&
Allampolgarsag2 == other.Allampolgarsag2 &&
Nem == other.Nem &&
Email == other.Email &&
Telefonszam == other.Telefonszam;
public static FelhasznaloElerhetosegCimCO ModelToAllandoLakcimToElerhetosegCimCo(KirFelhasznalo kirFelhasznalo)
=> new FelhasznaloElerhetosegCimCO
{
FelhasznaloId = kirFelhasznalo.Id,
Alapertelmezett = true,
CimTipus = (int)CimTipusEnum.allando_lakcim,
Hazszam = kirFelhasznalo.AllandoLakcim.Hazszam,
Iranyitoszam = kirFelhasznalo.AllandoLakcim.Iranyitoszam,
KozteruletTipusNev = kirFelhasznalo.AllandoLakcim.KozteruletJellege,
KozteruletNev = kirFelhasznalo.AllandoLakcim.KozteruletNev,
HelysegNev = kirFelhasznalo.AllandoLakcim.Varos
};
public static FelhasznaloElerhetosegCimCO ModelToTartozkodasiCimToElerhetosegCimCo(KirFelhasznalo kirFelhasznalo)
=> new FelhasznaloElerhetosegCimCO
{
FelhasznaloId = kirFelhasznalo.Id,
Alapertelmezett = true,
CimTipus = (int)CimTipusEnum.tartozkodasi_hely,
Hazszam = kirFelhasznalo.TartozkodasiCim.Hazszam,
Iranyitoszam = kirFelhasznalo.TartozkodasiCim.Iranyitoszam,
KozteruletTipusNev = kirFelhasznalo.TartozkodasiCim.KozteruletJellege,
KozteruletNev = kirFelhasznalo.TartozkodasiCim.KozteruletNev,
HelysegNev = kirFelhasznalo.TartozkodasiCim.Varos
};
public static implicit operator FelhasznaloElerhetosegTelCO(KirFelhasznalo kirFelhasznalo)
=> new FelhasznaloElerhetosegTelCO
{
Alapertelmezett = true,
Telefonszam = kirFelhasznalo.Telefonszam,
TelefonTipusa = (int)TelefonTipusEnum.Ismeretlen
};
public static implicit operator FelhasznaloElerhetosegEmailCO(KirFelhasznalo kirFelhasznalo)
=> new FelhasznaloElerhetosegEmailCO
{
Alapertelmezett = true,
EmailCim = kirFelhasznalo.Email,
EmailTipusa = (int)EmailTipusEnum.Na
};
}
}