675 lines
35 KiB
C#
675 lines
35 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Linq;
|
|
using Kreta.BusinessLogic.Classes;
|
|
using Kreta.BusinessLogic.Validation;
|
|
using Kreta.Core;
|
|
using Kreta.Core.CustomAttributes;
|
|
using Kreta.Enums;
|
|
using Kreta.Framework.Util;
|
|
using Kreta.Resources;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace Kreta.BusinessLogic.HelperClasses.ImportCo
|
|
{
|
|
public class GondviseloImportCo : BaseImportCo
|
|
{
|
|
[JsonIgnore]
|
|
public List<GondviseloImportItemCo> MainImportItemList { get; set; } = new List<GondviseloImportItemCo>();
|
|
|
|
[JsonIgnore]
|
|
public List<GondviseloImportItemCo> NemImportalhatoItemList { get; set; } = new List<GondviseloImportItemCo>();
|
|
|
|
[JsonProperty("T_TELEFON_OSSZES")]
|
|
public List<TelefonGondviseloImportJsonItemCo> TelefonGondviseloImportJsonItemList { get; set; }
|
|
|
|
[JsonProperty("T_EMAIL_OSSZES")]
|
|
public List<EmailGondviseloImportJsonItemCo> EmailGondviseloImportJsonItemList { get; set; }
|
|
|
|
[JsonProperty("T_CIM_OSSZES")]
|
|
public List<CimGondviseloImportJsonItemCo> CimGondviseloImportJsonItemList { get; set; }
|
|
|
|
[JsonProperty("T_GONDVISELO_OSSZES")]
|
|
public List<GondviseloImportJsonItemCo> MainImportJsonItemList { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public List<GondviseloItemCo> GondviseloCoList { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public bool IsGeneraltFileLetoltes { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public bool IsEmailKuldes { get; set; }
|
|
|
|
public Dictionary<int, List<ValidationResult>> Validate()
|
|
{
|
|
var validationResultDictionary = new Dictionary<int, List<ValidationResult>>();
|
|
|
|
foreach (GondviseloImportItemCo importItem in MainImportItemList)
|
|
{
|
|
var validationResultList = new List<ValidationResult>();
|
|
//NOTE: Az import item-eket egyesével levalidáljuk!
|
|
var blValidator = new BlValidator(importItem);
|
|
if (!blValidator.IsValid)
|
|
{
|
|
validationResultList.AddRange(blValidator.ErrorList);
|
|
}
|
|
|
|
if (validationResultList.Count > 0)
|
|
{
|
|
validationResultDictionary.Add(importItem.LineNumber, validationResultList);
|
|
}
|
|
}
|
|
|
|
Dictionary<int, string> lineNumberCompareHashDictionary = MainImportItemList.ToDictionary(x => x.LineNumber, x => x.CompareHash);
|
|
var duplicatedRowConditonTextList = new List<string>
|
|
{
|
|
ImportExportGondviseloResource.ImportHeaderNameTanuloNeve,
|
|
ImportExportGondviseloResource.ImportHeaderNameTanuloOktatasiAzonosito,
|
|
ImportExportGondviseloResource.ImportHeaderNameGondviseloNeve,
|
|
ImportExportGondviseloResource.ImportHeaderNameGondviseloRokonsagiFoka
|
|
};
|
|
ValidateDuplicatedRows(validationResultDictionary, lineNumberCompareHashDictionary, duplicatedRowConditonTextList);
|
|
return validationResultDictionary;
|
|
}
|
|
}
|
|
|
|
public class GondviseloImportItemCo : BaseImportItemCo, IValidatableObject
|
|
{
|
|
private readonly int _tanevId;
|
|
|
|
private GondviseloImportItemCo() { }
|
|
|
|
public GondviseloImportItemCo(int tanevId)
|
|
{
|
|
_tanevId = tanevId;
|
|
}
|
|
|
|
#region Fields
|
|
|
|
public const string NemImportalhatoSorokExportAttributeId = nameof(NemImportalhatoSorokExportAttributeId);
|
|
|
|
#endregion Fields
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 00, nameof(ImportExportGondviseloResource.ImportHeaderNameTanuloNeve), typeof(ImportExportGondviseloResource))]
|
|
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[MaxLength(200, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameTanuloNeve), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string TanuloNeveImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 01, nameof(ImportExportGondviseloResource.ImportHeaderNameTanuloOktatasiAzonosito), typeof(ImportExportGondviseloResource))]
|
|
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[MaxLength(11, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
[KretaRegularExpression(Constants.RegularExpressions.OktatasiAzonositoTanulo, ErrorMessageResourceName = nameof(ErrorResource.OktatasiAzonositoFormatumaNemMegfeleloTanulo), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameTanuloOktatasiAzonosito), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string TanuloOktatasiAzonositoImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 02, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloNevElotag), typeof(ImportExportGondviseloResource))]
|
|
[MaxLength(200, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloNevElotag), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string GondviseloNevElotagImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 03, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloVezetekNev), typeof(ImportExportGondviseloResource))]
|
|
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[MaxLength(200, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloVezetekNev), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string GondviseloVezeteknevImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 04, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloKeresztNev), typeof(ImportExportGondviseloResource))]
|
|
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[MaxLength(200, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloKeresztNev), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string GondviseloKeresztnevImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 05, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloRokonsagiFoka), typeof(ImportExportGondviseloResource))]
|
|
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloRokonsagiFoka), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string GondviseloRokonsagiFokaImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 06, nameof(ImportExportGondviseloResource.ImportHeaderNameTorvenyesKepviselo), typeof(ImportExportGondviseloResource))]
|
|
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameTorvenyesKepviselo), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string TorvenyesKepviseloImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 07, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloTelefonszama), typeof(ImportExportGondviseloResource))]
|
|
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
[PhoneExtended(ErrorMessageResourceName = nameof(ErrorResource.ATelefonszamFormatumaNemMegfelelo), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloTelefonszama), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string GondviseloTelefonszamaImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 08, nameof(ImportExportGondviseloResource.ImportHeaderNameTelefonTipus), typeof(ImportExportGondviseloResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameTelefonTipus), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string TelefonTipusImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 09, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloEmailCime), typeof(ImportExportGondviseloResource))]
|
|
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
[EmailAddressExtended(true, true, ErrorMessageResourceName = nameof(ErrorResource.NemMegfeleloFormatumuAzEmailCim), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloEmailCime), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string GondviseloEmailCimeImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 10, nameof(ImportExportGondviseloResource.ImportHeaderNameEmailTipus), typeof(ImportExportGondviseloResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameEmailTipus), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string EmailTipusImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 11, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimTipusa), typeof(ImportExportGondviseloResource))]
|
|
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimTipusa), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string CimTipusaImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 12, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimOrszag), typeof(ImportExportGondviseloResource))]
|
|
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimOrszag), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string CimOrszagImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 13, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimIranyitoszam), typeof(ImportExportGondviseloResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimIranyitoszam), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string CimIranyitoszamImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 14, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimHelysegNev), typeof(ImportExportGondviseloResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimHelysegNev), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string CimHelysegNevImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 15, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimKozteruletNev), typeof(ImportExportGondviseloResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimKozteruletNev), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string CimKozteruletNevImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 16, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimKozteruletJelleg), typeof(ImportExportGondviseloResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimKozteruletJelleg), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string CimKozteruletJellegeImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 17, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimHazszam), typeof(ImportExportGondviseloResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimHazszam), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string CimHazszamImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 18, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimEmelet), typeof(ImportExportGondviseloResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimEmelet), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string CimEmeletImportData { get; set; }
|
|
|
|
[SimpleExportColumn(NemImportalhatoSorokExportAttributeId, 19, nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimAjto), typeof(ImportExportGondviseloResource))]
|
|
[Display(Name = nameof(ImportExportGondviseloResource.ImportHeaderNameGondviseloCimAjto), ResourceType = typeof(ImportExportGondviseloResource))]
|
|
public string CimAjtoImportData { get; set; }
|
|
|
|
public string FelhasznaloElotag => GetElotagFromTeljesNev(TanuloNeveImportData);
|
|
|
|
public string FelhasznaloVezeteknev => GetVezeteknevFromTeljesNev(TanuloNeveImportData);
|
|
|
|
public string FelhasznaloKeresztnev => GetKeresztnevekFromTeljesNev(TanuloNeveImportData);
|
|
|
|
public string FelhasznaloOktatasiAzonosito => GetStringValue(TanuloOktatasiAzonositoImportData);
|
|
|
|
public string GondviseloNevElotag => GetStringValue(GondviseloNevElotagImportData);
|
|
|
|
public string GondviseloVezeteknev => GetStringValue(GondviseloVezeteknevImportData);
|
|
|
|
public string GondviseloKeresztnev => GetStringValue(GondviseloKeresztnevImportData);
|
|
|
|
public int? RokonsagiFokId => string.IsNullOrWhiteSpace(GondviseloRokonsagiFokaImportData) ? (int)RokonsagiFokEnum.na : ((int)GeneratedAdatszotarTipusEnum.RokonsagiFok).GetItemIdByTypeAndName(GondviseloRokonsagiFokaImportData, _tanevId);
|
|
|
|
public string RokonsagiFokNev => RokonsagiFokId?.GetDisplayName<RokonsagiFokEnum>(_tanevId);
|
|
|
|
public bool? IsTorvenyesKepviselo => GetBooleanValue(TorvenyesKepviseloImportData);
|
|
|
|
public string Telefonszam => GetStringValue(GondviseloTelefonszamaImportData);
|
|
|
|
public int? TelefonTipus => string.IsNullOrWhiteSpace(TelefonTipusImportData) ? (int)TelefonTipusEnum.Ismeretlen : ((int)GeneratedAdatszotarTipusEnum.TelefonTipus).GetItemIdByTypeAndName(TelefonTipusImportData, _tanevId);
|
|
|
|
public string EmailCim => GetStringValue(GondviseloEmailCimeImportData);
|
|
|
|
public int? EmailTipus => string.IsNullOrWhiteSpace(EmailTipusImportData) ? (int)EmailTipusEnum.Na : ((int)GeneratedAdatszotarTipusEnum.EmailTipus).GetItemIdByTypeAndName(EmailTipusImportData, _tanevId);
|
|
|
|
public int? CimTipusaId => ((int)GeneratedAdatszotarTipusEnum.CimTipus).GetItemIdByTypeAndName(CimTipusaImportData, _tanevId);
|
|
|
|
public string CimTipusaNev => CimTipusaId?.GetDisplayName<CimTipusEnum>(_tanevId);
|
|
|
|
public int? CimOrszagId => ((int)GeneratedAdatszotarTipusEnum.OrszagTipus).GetItemIdByTypeAndName(CimOrszagImportData, _tanevId);
|
|
|
|
public string CimIranyitoszam => GetStringValue(CimIranyitoszamImportData);
|
|
|
|
public string CimHelysegNev => GetStringValue(CimHelysegNevImportData);
|
|
|
|
public string CimKozteruletNev => GetStringValue(CimKozteruletNevImportData);
|
|
|
|
public int? CimKozteruletJellegId => ((int)GeneratedAdatszotarTipusEnum.KozteruletJelleg).GetItemIdByTypeAndName(CimKozteruletJellegeImportData, _tanevId);
|
|
|
|
public string CimKozteruletJellegeNev => CimKozteruletJellegId?.GetDisplayName<KozteruletJellegEnum>(_tanevId) ?? CimKozteruletJellegeImportData;
|
|
|
|
public string CimHazszam => GetStringValue(CimHazszamImportData);
|
|
|
|
public string CimEmelet => GetStringValue(CimEmeletImportData);
|
|
|
|
public string CimAjto => GetStringValue(CimAjtoImportData);
|
|
|
|
public int? FelhasznaloId { get; set; }
|
|
|
|
public int? TelefonId { get; set; }
|
|
|
|
public int? EmailId { get; set; }
|
|
|
|
public int? CimId { get; set; }
|
|
|
|
public int OperationTelefon { get; set; }
|
|
|
|
public int OperationEmail { get; set; }
|
|
|
|
public int OperationCim { get; set; }
|
|
|
|
public string CompareHashTelefon { get; set; }
|
|
|
|
public string CompareHashEmail { get; set; }
|
|
|
|
public string CompareHashCim { get; set; }
|
|
|
|
public GondviseloItemCo Gondviselo { get; set; }
|
|
|
|
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
|
|
{
|
|
//NOTE: Ha van megadva bármilyen érték az import data-ban, hogy ne legyen dupla validálás a required miatt.
|
|
if (!string.IsNullOrWhiteSpace(TanuloNeveImportData) &&
|
|
!string.IsNullOrWhiteSpace(TanuloOktatasiAzonositoImportData))
|
|
{
|
|
if (!FelhasznaloId.IsEntityId())
|
|
{
|
|
yield return new ValidationResult(ImportExportGondviseloResource.HibaEzzelAzOktatasiAzonositovalNemLetezikTanuloEbbenATanevben);
|
|
}
|
|
}
|
|
|
|
//NOTE: Ha van megadva bármilyen érték az import data-ban, meg kell vizsgálni, hogy legyen vezetéknév és keresztnév is
|
|
if (!string.IsNullOrWhiteSpace(TanuloNeveImportData) && (string.IsNullOrWhiteSpace(FelhasznaloVezeteknev) || string.IsNullOrWhiteSpace(FelhasznaloKeresztnev)))
|
|
{
|
|
yield return new ValidationResult(ImportExportGondviseloResource.ATanuloNeveFormatumaNemMegfelelo);
|
|
}
|
|
|
|
//NOTE: Ha van megadva bármilyen érték az import data-ban, meg kell vizsgálni, hogy legyen vezetéknév és keresztnév is
|
|
if (string.IsNullOrWhiteSpace(GondviseloVezeteknevImportData) || string.IsNullOrWhiteSpace(GondviseloKeresztnevImportData))
|
|
{
|
|
yield return new ValidationResult(ImportExportGondviseloResource.AGondviseloNeveFormatumaNemMegfelelo);
|
|
}
|
|
|
|
//NOTE: Ha van megadva bármilyen érték az import data-ban, meg kell vizsgálni, hogy sikerült-e átkonvertálni a megfelelő típusra.
|
|
if (!string.IsNullOrWhiteSpace(GondviseloRokonsagiFokaImportData))
|
|
{
|
|
//NOTE: Ha az érték null, akkor a bejövő adat nem megfelelő formátumú!
|
|
if (!RokonsagiFokId.IsEntityId())
|
|
{
|
|
yield return new ValidationResult(ImportExportGondviseloResource.HibaNincsIlyenRokonsagiFok);
|
|
}
|
|
}
|
|
|
|
//NOTE: Ha van megadva bármilyen érték az import data-ban, meg kell vizsgálni, hogy sikerült-e átkonvertálni a megfelelő típusra.
|
|
if (!string.IsNullOrWhiteSpace(CimTipusaImportData))
|
|
{
|
|
//NOTE: Ha az érték null, akkor a bejövő adat nem megfelelő formátumú!
|
|
if (!CimTipusaId.IsEntityId())
|
|
{
|
|
yield return new ValidationResult(ImportExportGondviseloResource.HibaNincsIlyenCimTipus);
|
|
}
|
|
else
|
|
{
|
|
if (CimTipusaId.Value != (int)CimTipusEnum.allando_lakcim)
|
|
{
|
|
yield return new ValidationResult(ImportExportGondviseloResource.HibaCsakAllandoLakcimTipusImportalhato);
|
|
}
|
|
}
|
|
}
|
|
|
|
//NOTE: Ha van megadva bármilyen érték az import data-ban, meg kell vizsgálni, hogy sikerült-e átkonvertálni a megfelelő típusra.
|
|
if (!string.IsNullOrWhiteSpace(EmailTipusImportData))
|
|
{
|
|
//NOTE: Ha az érték null, akkor a bejövő adat nem megfelelő formátumú!
|
|
if (!EmailTipus.IsEntityId())
|
|
{
|
|
yield return new ValidationResult(ImportExportGondviseloResource.HibaNincsIlyenEmailTipus);
|
|
}
|
|
}
|
|
|
|
//NOTE: Ha van megadva bármilyen érték az import data-ban, meg kell vizsgálni, hogy sikerült-e átkonvertálni a megfelelő típusra.
|
|
if (!string.IsNullOrWhiteSpace(TelefonTipusImportData))
|
|
{
|
|
//NOTE: Ha az érték null, akkor a bejövő adat nem megfelelő formátumú!
|
|
if (!TelefonTipus.IsEntityId())
|
|
{
|
|
yield return new ValidationResult(ImportExportGondviseloResource.HibaNincsIlyenTelefonTipus);
|
|
}
|
|
}
|
|
|
|
//NOTE: Ha van megadva bármilyen érték az import data-ban, meg kell vizsgálni, hogy sikerült-e átkonvertálni a megfelelő típusra.
|
|
if (!string.IsNullOrWhiteSpace(CimOrszagImportData))
|
|
{
|
|
//NOTE: Ha az érték null, akkor a bejövő adat nem megfelelő formátumú!
|
|
if (!CimOrszagId.IsEntityId())
|
|
{
|
|
yield return new ValidationResult(ImportExportGondviseloResource.HibaNemMegfeleloOrszagnev);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public class TelefonGondviseloImportJsonItemCo : BaseImportJsonItemCo
|
|
{
|
|
private readonly int _tanevId;
|
|
|
|
public TelefonGondviseloImportJsonItemCo(GondviseloImportItemCo importItemCo, int tanevId, int intezmenyId, int felhasznaloId) : base(tanevId, intezmenyId, felhasznaloId)
|
|
{
|
|
_tanevId = tanevId;
|
|
Id = importItemCo.TelefonId;
|
|
//NOTE: Az FelhasznaloId.Value nem lehet null, mert ide már csak olyan elem jön be, aminek van tanuló id-ja!
|
|
FelhasznaloId = importItemCo.FelhasznaloId.Value;
|
|
FelhasznaloElotag = Extensions.NameExtensions.CleanElotag(importItemCo.FelhasznaloElotag);
|
|
FelhasznaloVezeteknev = importItemCo.FelhasznaloVezeteknev.ReplaceMultipleSpacesAndTrim();
|
|
FelhasznaloKeresztnev = importItemCo.FelhasznaloKeresztnev.ReplaceMultipleSpacesAndTrim();
|
|
Nev = Extensions.NameExtensions.GetNevSorrendben("F", Extensions.NameExtensions.CleanElotag(importItemCo.GondviseloNevElotag), importItemCo.GondviseloVezeteknev, importItemCo.GondviseloKeresztnev);
|
|
//NOTE: Az RokonsagiFokId.Value nem lehet null, mert ide már csak olyan elem jön be, aminek van rokonsági foka!
|
|
RokonsagiFokId = importItemCo.RokonsagiFokId.Value;
|
|
RokonsagiFokNev = importItemCo.RokonsagiFokNev;
|
|
|
|
Telefonszam = importItemCo.Telefonszam;
|
|
TipusId = importItemCo.TelefonTipus;
|
|
IsAlapertelmezett = SDAConvert.ToSDABoolean(true);
|
|
|
|
LineNumber = importItemCo.LineNumber;
|
|
Operation = importItemCo.OperationTelefon;
|
|
}
|
|
|
|
#region Import Json Properties
|
|
|
|
[JsonProperty("Nev")]
|
|
public string Nev { get; set; }
|
|
|
|
[JsonProperty("RokonsagiFokId")]
|
|
public int? RokonsagiFokId { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string RokonsagiFokNev { get; set; }
|
|
|
|
[JsonProperty("C_TELEFONSZAM")]
|
|
public string Telefonszam { get; set; }
|
|
|
|
[JsonProperty("C_FELHASZNALOID")]
|
|
public int FelhasznaloId { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloElotag { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloVezeteknev { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloKeresztnev { get; set; }
|
|
|
|
[JsonProperty("C_ALAPERTELMEZETT")]
|
|
public string IsAlapertelmezett { get; set; }
|
|
|
|
#region Default Required Import Json Properties
|
|
|
|
[JsonProperty("C_TELEFONTIPUSA")]
|
|
public int? TipusId { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string TipusNev => TipusId?.GetDisplayName<TelefonTipusEnum>(_tanevId);
|
|
|
|
[JsonProperty("C_LEIRAS")]
|
|
public string Leiras => null;
|
|
|
|
[JsonProperty("C_ISPUBLIC")]
|
|
public string IsPublic => SDAConvert.ToSDABoolean(false);
|
|
|
|
#endregion Default Required Import Json Properties
|
|
|
|
#endregion Import Json Properties
|
|
}
|
|
|
|
public class EmailGondviseloImportJsonItemCo : BaseImportJsonItemCo
|
|
{
|
|
public EmailGondviseloImportJsonItemCo(GondviseloImportItemCo importItemCo, int tanevId, int intezmenyId, int felhasznaloId) : base(tanevId, intezmenyId, felhasznaloId)
|
|
{
|
|
Id = importItemCo.EmailId;
|
|
//NOTE: Az FelhasznaloId.Value nem lehet null, mert ide már csak olyan elem jön be, aminek van tanuló id-ja!
|
|
FelhasznaloId = importItemCo.FelhasznaloId.Value;
|
|
FelhasznaloElotag = Extensions.NameExtensions.CleanElotag(importItemCo.FelhasznaloElotag);
|
|
FelhasznaloVezeteknev = importItemCo.FelhasznaloVezeteknev.ReplaceMultipleSpacesAndTrim();
|
|
FelhasznaloKeresztnev = importItemCo.FelhasznaloKeresztnev.ReplaceMultipleSpacesAndTrim();
|
|
Nev = Extensions.NameExtensions.GetNevSorrendben("F", Extensions.NameExtensions.CleanElotag(importItemCo.GondviseloNevElotag), importItemCo.GondviseloVezeteknev, importItemCo.GondviseloKeresztnev);
|
|
//NOTE: Az RokonsagiFokId.Value nem lehet null, mert ide már csak olyan elem jön be, aminek van rokonsági foka!
|
|
RokonsagiFokId = importItemCo.RokonsagiFokId.Value;
|
|
RokonsagiFokNev = importItemCo.RokonsagiFokNev;
|
|
|
|
EmailCim = importItemCo.EmailCim;
|
|
TipusId = importItemCo.EmailTipus;
|
|
TipusNev = TipusId?.GetDisplayName<EmailTipusEnum>(tanevId);
|
|
IsAlapertelmezett = SDAConvert.ToSDABoolean(true);
|
|
|
|
LineNumber = importItemCo.LineNumber;
|
|
Operation = importItemCo.OperationEmail;
|
|
}
|
|
|
|
#region Import Json Properties
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloElotag { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloVezeteknev { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloKeresztnev { get; set; }
|
|
|
|
[JsonProperty("Nev")]
|
|
public string Nev { get; set; }
|
|
|
|
[JsonProperty("RokonsagiFokId")]
|
|
public int? RokonsagiFokId { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string RokonsagiFokNev { get; set; }
|
|
|
|
[JsonProperty("C_FELHASZNALOID")]
|
|
public int FelhasznaloId { get; set; }
|
|
|
|
[JsonProperty("C_EMAILCIM")]
|
|
public string EmailCim { get; set; }
|
|
|
|
[JsonProperty("C_EMAILTIPUSA")]
|
|
public int? TipusId { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string TipusNev { get; set; }
|
|
|
|
[JsonProperty("C_ALAPERTELMEZETT")]
|
|
public string IsAlapertelmezett { get; set; }
|
|
|
|
#region Default Required Import Json Properties
|
|
|
|
[JsonProperty("C_ISPUBLIC")]
|
|
public string IsPublic => SDAConvert.ToSDABoolean(false);
|
|
|
|
[JsonProperty("C_ISHIBASANMEGADVA")]
|
|
public string IsHibasanMegadva => SDAConvert.ToSDABoolean(false);
|
|
|
|
#endregion Default Required Import Json Properties
|
|
|
|
#endregion Import Json Properties
|
|
}
|
|
|
|
public class CimGondviseloImportJsonItemCo : BaseImportJsonItemCo
|
|
{
|
|
public CimGondviseloImportJsonItemCo(GondviseloImportItemCo importItemCo, int tanevId, int intezmenyId, int felhasznaloId) : base(tanevId, intezmenyId, felhasznaloId)
|
|
{
|
|
Id = importItemCo.CimId;
|
|
//NOTE: Az FelhasznaloId.Value nem lehet null, mert ide már csak olyan elem jön be, aminek van tanuló id-ja!
|
|
FelhasznaloId = importItemCo.FelhasznaloId.Value;
|
|
FelhasznaloElotag = Extensions.NameExtensions.CleanElotag(importItemCo.FelhasznaloElotag);
|
|
FelhasznaloVezeteknev = importItemCo.FelhasznaloVezeteknev.ReplaceMultipleSpacesAndTrim();
|
|
FelhasznaloKeresztnev = importItemCo.FelhasznaloKeresztnev.ReplaceMultipleSpacesAndTrim();
|
|
Nev = Extensions.NameExtensions.GetNevSorrendben("F", Extensions.NameExtensions.CleanElotag(importItemCo.GondviseloNevElotag), importItemCo.GondviseloVezeteknev, importItemCo.GondviseloKeresztnev);
|
|
//NOTE: Az RokonsagiFokId.Value nem lehet null, mert ide már csak olyan elem jön be, aminek van rokonsági foka!
|
|
RokonsagiFokId = importItemCo.RokonsagiFokId.Value;
|
|
RokonsagiFokNev = importItemCo.RokonsagiFokNev;
|
|
|
|
TipusId = importItemCo.CimTipusaId;
|
|
TipusNev = TipusId?.GetDisplayName<CimTipusEnum>(tanevId);
|
|
OrszagId = importItemCo.CimOrszagId;
|
|
Iranyitoszam = importItemCo.CimIranyitoszam;
|
|
Helyseg = importItemCo.CimHelysegNev;
|
|
Kozterulet = importItemCo.CimKozteruletNev;
|
|
KozterulegJellegeNev = importItemCo.CimKozteruletJellegeNev;
|
|
Hazszam = importItemCo.CimHazszam;
|
|
Emelet = importItemCo.CimEmelet;
|
|
Ajto = importItemCo.CimAjto;
|
|
IsAlapertelmezett = SDAConvert.ToSDABoolean(importItemCo.Gondviselo?.AllandoLakcim?.IsAlapertelmezett ?? true);
|
|
|
|
LineNumber = importItemCo.LineNumber;
|
|
Operation = importItemCo.OperationCim;
|
|
}
|
|
|
|
#region Import Json Properties
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloElotag { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloVezeteknev { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloKeresztnev { get; set; }
|
|
|
|
[JsonProperty("Nev")]
|
|
public string Nev { get; set; }
|
|
|
|
[JsonProperty("RokonsagiFokId")]
|
|
public int? RokonsagiFokId { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string RokonsagiFokNev { get; set; }
|
|
|
|
[JsonProperty("C_FELHASZNALOID")]
|
|
public int FelhasznaloId { get; set; }
|
|
|
|
[JsonProperty("C_CIMTIPUSA")]
|
|
public int? TipusId { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string TipusNev { get; set; }
|
|
|
|
[JsonProperty("C_ORSZAG")]
|
|
public int? OrszagId { get; set; }
|
|
|
|
[JsonProperty("C_IRANYITOSZAM")]
|
|
public string Iranyitoszam { get; set; }
|
|
|
|
[JsonProperty("C_VAROS")]
|
|
public string Helyseg { get; set; }
|
|
|
|
[JsonProperty("C_KOZTERULET")]
|
|
public string Kozterulet { get; set; }
|
|
|
|
[JsonProperty("C_KOZTERULETJELLEGENEV")]
|
|
public string KozterulegJellegeNev { get; set; }
|
|
|
|
[JsonProperty("C_HAZSZAM")]
|
|
public string Hazszam { get; set; }
|
|
|
|
[JsonProperty("C_EMELET")]
|
|
public string Emelet { get; set; }
|
|
|
|
[JsonProperty("C_AJTO")]
|
|
public string Ajto { get; set; }
|
|
|
|
[JsonProperty("C_ALAPERTELMEZETT")]
|
|
public string IsAlapertelmezett { get; set; }
|
|
|
|
#endregion Import Json Properties
|
|
}
|
|
|
|
public class GondviseloImportJsonItemCo : BaseImportJsonItemCo
|
|
{
|
|
public GondviseloImportJsonItemCo(GondviseloImportItemCo importItemCo, bool isSzirIntezmeny, int tanevId, int intezmenyId, int felhasznaloId) : base(tanevId, intezmenyId, felhasznaloId)
|
|
{
|
|
Id = importItemCo.Id;
|
|
//NOTE: Az FelhasznaloId.Value nem lehet null, mert ide már csak olyan elem jön be, aminek van tanuló id-ja!
|
|
FelhasznaloId = importItemCo.FelhasznaloId.Value;
|
|
FelhasznaloElotag = Extensions.NameExtensions.CleanElotag(importItemCo.FelhasznaloElotag);
|
|
FelhasznaloVezeteknev = importItemCo.FelhasznaloVezeteknev.ReplaceMultipleSpacesAndTrim();
|
|
FelhasznaloKeresztnev = importItemCo.FelhasznaloKeresztnev.ReplaceMultipleSpacesAndTrim();
|
|
FelhasznaloOktatasiAzonosito = importItemCo.FelhasznaloOktatasiAzonosito;
|
|
Elotag = Extensions.NameExtensions.CleanElotag(importItemCo.GondviseloNevElotag);
|
|
Vezeteknev = importItemCo.GondviseloVezeteknev.ReplaceMultipleSpacesAndTrim();
|
|
Keresztnev = importItemCo.GondviseloKeresztnev.ReplaceMultipleSpacesAndTrim();
|
|
Nev = Extensions.NameExtensions.GetNevSorrendben("F", Elotag, Vezeteknev, Keresztnev);
|
|
//NOTE: Az RokonsagiFokId.Value nem lehet null, mert ide már csak olyan elem jön be, aminek van rokonsági foka!
|
|
RokonsagiFokId = importItemCo.RokonsagiFokId.Value;
|
|
RokonsagiFokNev = importItemCo.RokonsagiFokNev;
|
|
IsTorvenyesKepviselo = SDAConvert.ToSDABoolean(importItemCo.IsTorvenyesKepviselo ?? false);
|
|
|
|
LineNumber = importItemCo.LineNumber;
|
|
Operation = importItemCo.Operation;
|
|
IsEmailErtesites = SDAConvert.ToSDABoolean(!isSzirIntezmeny);
|
|
}
|
|
|
|
#region Import Json Properties
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloElotag { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloVezeteknev { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloKeresztnev { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string Elotag { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string Vezeteknev { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string Keresztnev { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string FelhasznaloOktatasiAzonosito { get; set; }
|
|
|
|
[JsonProperty("C_NEV")]
|
|
public string Nev { get; set; }
|
|
|
|
[JsonProperty("C_ROKONSAGFOKA")]
|
|
public int RokonsagiFokId { get; set; }
|
|
|
|
[JsonIgnore]
|
|
public string RokonsagiFokNev { get; set; }
|
|
|
|
[JsonProperty("C_TANULOID")]
|
|
public int FelhasznaloId { get; set; }
|
|
|
|
[JsonProperty("C_ISTORVENYESKEPVISELO")]
|
|
public string IsTorvenyesKepviselo { get; set; }
|
|
|
|
#region Default Required Import Json Properties
|
|
|
|
[JsonProperty("C_AKTIV")]
|
|
public string IsAktiv => SDAConvert.ToSDABoolean(true);
|
|
|
|
[JsonProperty("C_GONDVISELESKEZDETE")]
|
|
public DateTime? GondviselesKezdete => null;
|
|
|
|
[JsonProperty("C_GONDVISELESVEGE")]
|
|
public DateTime? GondviselesVege => null;
|
|
|
|
[JsonProperty("C_GYERMEKETEGYEDULNEVELO")]
|
|
public string IsGyermeketEgyedulNevelo => SDAConvert.ToSDABoolean(false);
|
|
|
|
[JsonProperty("C_NYUGDIJAS")]
|
|
public string IsNyugdijas => SDAConvert.ToSDABoolean(false);
|
|
|
|
[JsonProperty("C_ISEMAILERTESITES")]
|
|
public string IsEmailErtesites { get; set; }
|
|
|
|
[JsonProperty("C_EGYEDIAZONOSITO")]
|
|
public string EgyediAzonosito => Guid.Empty.ToString();
|
|
|
|
#endregion Default Required Import Json Properties
|
|
|
|
#endregion Import Json Properties
|
|
}
|
|
}
|