using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Net; using System.Text.RegularExpressions; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.HelperClasses; using Kreta.BusinessLogic.Helpers; using Kreta.BusinessLogic.Utils; using Kreta.Client.Eugyintezes; using Kreta.Client.Eugyintezes.Configuration; using Kreta.Core; using Kreta.Core.ConnectionType; using Kreta.Core.FileService; using Kreta.DataAccess.Interfaces; using Kreta.DataAccessManual; using Kreta.DataAccessManual.Interfaces; using Kreta.DataAccessManual.Util; using Kreta.Enums; using Kreta.Enums.ManualEnums; using Kreta.Eugyintezes.BusinessLogic.Interface; using Kreta.Eugyintezes.BusinessLogic.Interface.Services; using Kreta.Eugyintezes.BusinessLogic.Models; using Kreta.Eugyintezes.Domain.Model.Dto; using Kreta.Framework.Util; using Kreta.Resources; using Newtonsoft.Json; namespace Kreta.Eugyintezes.BusinessLogic.Services { internal class TorzsadatService : Service, ITorzsadatService { private readonly IFileService _fileService; private readonly IEugyintezesClientConfiguration _eugyintezesClientConfiguration; private const string EmailCim = nameof(EmailCim); public TorzsadatService(IServiceContext serviceContext, IFileService fileService, IEugyintezesClientConfiguration eugyintezesClientConfiguration) : base(serviceContext) { _fileService = fileService ?? throw new ArgumentNullException(nameof(fileService)); _eugyintezesClientConfiguration = eugyintezesClientConfiguration ?? throw new ArgumentNullException(nameof(eugyintezesClientConfiguration)); } public List GetAlkalmazottak(int? tanevKretaAzonosito = null) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetAlkalmazottak(tanevKretaAzonosito ?? TanevId)); var alkalmazottDtoLista = ds.Tables[0].AsEnumerable().Select(dr => new AlkalmazottDto { KretaAzonosito = dr.Field(nameof(AlkalmazottDto.KretaAzonosito)), Nev = dr.Field(nameof(AlkalmazottDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), IsAlairo = dr.Field(nameof(AlkalmazottDto.Titulus)).HasValue && !(dr.Field(nameof(AlkalmazottDto.Titulus)) == (int)VezetoiOraszamokTipusEnum.Nincs || dr.Field(nameof(AlkalmazottDto.Titulus)) == (int)VezetoiOraszamokTipusEnum.GyakorlatiOktatasvezeto), EgyediAzonosito = dr.Field(nameof(AlkalmazottDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(AlkalmazottDto.IdpEgyediAzonosito)) }).ToList(); return alkalmazottDtoLista; } public AlkalmazottDto GetAlkalmazott(int azonosito, int? tanevKretaAzonosito = null) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetAlkalmazott(azonosito, tanevKretaAzonosito)); var alkalmazottDto = ds.Tables[0].AsEnumerable().Select(dr => new AlkalmazottDto { KretaAzonosito = dr.Field(nameof(AlkalmazottDto.KretaAzonosito)), Nev = dr.Field(nameof(AlkalmazottDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), IsAlairo = dr.Field(nameof(AlkalmazottDto.Titulus)).HasValue && !(dr.Field(nameof(AlkalmazottDto.Titulus)) == (int)VezetoiOraszamokTipusEnum.Nincs || dr.Field(nameof(AlkalmazottDto.Titulus)) == (int)VezetoiOraszamokTipusEnum.GyakorlatiOktatasvezeto), EgyediAzonosito = dr.Field(nameof(AlkalmazottDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(AlkalmazottDto.IdpEgyediAzonosito)) }).FirstOrDefault(); return alkalmazottDto; } public TanuloDto GetGondviseloGyerekAdatok(int gondviseloAzonosito, int? tanevKretaAzonosito = null) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => tanevKretaAzonosito.HasValue ? h.EugyintezesDal().GetGondviseloGyerekAdatokNextYear(gondviseloAzonosito, tanevKretaAzonosito.Value) : h.EugyintezesDal().GetGondviseloGyerekAdatok(gondviseloAzonosito)); var tanuloDto = ds.Tables[0].AsEnumerable().Select(dr => new TanuloDto { KretaAzonosito = dr.Field(nameof(TanuloDto.KretaAzonosito)), OktatasiAzonosito = dr.Field(nameof(TanuloDto.OktatasiAzonosito)), Elotag = dr.Field(nameof(TanuloDto.Elotag)), Vezeteknev = dr.Field(nameof(TanuloDto.Vezeteknev)), Keresztnev = dr.Field(nameof(TanuloDto.Keresztnev)), SzuletesiIdo = dr.Field(nameof(TanuloDto.SzuletesiIdo)), EgyediAzonosito = dr.Field(nameof(TanuloDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(TanuloDto.IdpEgyediAzonosito)) }).FirstOrDefault(); if (tanuloDto != null) { tanuloDto.Osztalyok = GetTanuloOsszesOsztalyanakAdatai(tanuloDto.KretaAzonosito, tanevKretaAzonosito); } return tanuloDto; } public int GetKozossegiSzolgalatOsszesIgazoltOrakSzama(string tanuloOktatasiAzonosito) => Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetKozossegiSzolgalatOsszesIgazoltOrakSzama(tanuloOktatasiAzonosito)); public KozossegiSzolgalatTevekenysegDto GetKozossegiSzolgalatTevekenyseg(int azonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetKozossegiSzolgalatTevekenyseg(azonosito, TanevId)); var kozossegiSzolgalatTevekenysegDto = ds.Tables[0].AsEnumerable().Select(dr => new KozossegiSzolgalatTevekenysegDto { KretaAzonosito = dr.Field(nameof(KozossegiSzolgalatTevekenysegDto.KretaAzonosito)), Megnevezes = dr.Field(nameof(KozossegiSzolgalatTevekenysegDto.Megnevezes)) }).FirstOrDefault(); return kozossegiSzolgalatTevekenysegDto; } public List GetKozossegiSzolgalatTevekenysegekLista() { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetKozossegiSzolgalatTevekenysegek(TanevId)); var kozossegiSzolgalatTevekenysegDtoLista = ds.Tables[0].AsEnumerable().Select(dr => new KozossegiSzolgalatTevekenysegDto { KretaAzonosito = dr.Field(nameof(KozossegiSzolgalatTevekenysegDto.KretaAzonosito)), Megnevezes = dr.Field(nameof(KozossegiSzolgalatTevekenysegDto.Megnevezes)) }).ToList(); return kozossegiSzolgalatTevekenysegDtoLista; } public OsztalyDto GetOsztaly(int azonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetOsztaly(azonosito)); var osztalyDto = ds.Tables[0].AsEnumerable().Select(dr => new OsztalyDto { KretaAzonosito = dr.Field(nameof(OsztalyDto.KretaAzonosito)), Nev = dr.Field(nameof(OsztalyDto.Nev)), OktNevelesiKategoriaKretaAzonosito = dr.Field(nameof(OsztalyDto.OktNevelesiKategoriaKretaAzonosito)) }).FirstOrDefault(); return osztalyDto; } public List GetOsztalyok(int? tanevKretaAzonosito = null) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetOsztalyok(tanevKretaAzonosito ?? TanevId)); var osztalyDtoLista = ds.Tables[0].AsEnumerable().Select(dr => new OsztalyDto { KretaAzonosito = dr.Field(nameof(OsztalyDto.KretaAzonosito)), Nev = dr.Field(nameof(OsztalyDto.Nev)), OktNevelesiKategoriaKretaAzonosito = dr.Field(nameof(OsztalyDto.OktNevelesiKategoriaKretaAzonosito)) }).ToList(); return osztalyDtoLista; } public List GetOsztalyTanulok(int osztalyAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetOsztalyTanulok(osztalyAzonosito)); var tanuloDtoLista = ds.Tables[0].AsEnumerable().Select(dr => new TanuloDto { KretaAzonosito = dr.Field(nameof(TanuloDto.KretaAzonosito)), OktatasiAzonosito = dr.Field(nameof(TanuloDto.OktatasiAzonosito)), Vezeteknev = dr.Field(nameof(TanuloDto.Vezeteknev)), Keresztnev = dr.Field(nameof(TanuloDto.Keresztnev)), Elotag = dr.Field(nameof(TanuloDto.Elotag)), EgyediAzonosito = dr.Field(nameof(TanuloDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(TanuloDto.IdpEgyediAzonosito)) }).ToList(); foreach (var tanulo in tanuloDtoLista) { tanulo.Osztalyok = GetTanuloOsszesOsztalyanakAdatai(tanulo.KretaAzonosito); } return tanuloDtoLista; } public DateTime? GetTanevKezdete() => Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanevKezdete(IntezmenyId)); public TanoraiCsoportDto GetTanoraiCsoport(int kretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanoraiCsoport(kretaAzonosito)); var csoportDto = ds.Tables[0].AsEnumerable().Select(dr => new TanoraiCsoportDto { KretaAzonosito = dr.Field(nameof(TanoraiCsoportDto.KretaAzonosito)), OsztalyKretaAzonosito = dr.Field(nameof(TanoraiCsoportDto.OsztalyKretaAzonosito)), Nev = dr.Field(nameof(TanoraiCsoportDto.Nev)), OktNevelesiKategoriaKretaAzonosito = dr.Field(nameof(TanoraiCsoportDto.OktNevelesiKategoriaKretaAzonosito)) }).FirstOrDefault(); return csoportDto; } public List GetTanoraiCsoportok() { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanoraiCsoportok(TanevId)); var csoportDtoLista = ds.Tables[0].AsEnumerable().Select(dr => new TanoraiCsoportDto { KretaAzonosito = dr.Field(nameof(TanoraiCsoportDto.KretaAzonosito)), OsztalyKretaAzonosito = dr.Field(nameof(TanoraiCsoportDto.OsztalyKretaAzonosito)), Nev = dr.Field(nameof(TanoraiCsoportDto.Nev)), OktNevelesiKategoriaKretaAzonosito = dr.Field(nameof(TanoraiCsoportDto.OktNevelesiKategoriaKretaAzonosito)) }).ToList(); return csoportDtoLista; } public List GetTanoraiCsoportTanulok(int tanuloiCsoportAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanoraiCsoportTanulok(tanuloiCsoportAzonosito)); var tanuloDtoLista = ds.Tables[0].AsEnumerable().Select(dr => new TanuloDto { KretaAzonosito = dr.Field(nameof(TanuloDto.KretaAzonosito)), OktatasiAzonosito = dr.Field(nameof(TanuloDto.OktatasiAzonosito)), Vezeteknev = dr.Field(nameof(TanuloDto.Vezeteknev)), Keresztnev = dr.Field(nameof(TanuloDto.Keresztnev)), Elotag = dr.Field(nameof(TanuloDto.Elotag)), EgyediAzonosito = dr.Field(nameof(TanuloDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(TanuloDto.IdpEgyediAzonosito)) }).ToList(); foreach (var tanulo in tanuloDtoLista) { tanulo.Osztalyok = GetTanuloOsszesOsztalyanakAdatai(tanulo.KretaAzonosito); } return tanuloDtoLista; } public TantargyDto GetTantargy(int azonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTantargy(azonosito)); var tantargyDto = ds.Tables[0].AsEnumerable().Select(dr => new TantargyDto { KretaAzonosito = dr.Field(nameof(TantargyDto.KretaAzonosito)), Nev = dr.Field(nameof(TantargyDto.Nev)) }).FirstOrDefault(); return tantargyDto; } public TanuloAdatokDto GetTanuloAdatok(string tanuloOktatasiAzonosito, int? tanevKretaAzonosito = null) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => tanevKretaAzonosito.HasValue ? h.EugyintezesDal().GetTanuloAdatokNextYear(tanuloOktatasiAzonosito, tanevKretaAzonosito.Value) : h.EugyintezesDal().GetTanuloAdatok(tanuloOktatasiAzonosito, tanevKretaAzonosito, ServiceContext.IntezmenyAzonosito)); var tanuloAdatokDto = ds.Tables[0].AsEnumerable().Select(dr => new TanuloAdatokDto { KretaAzonosito = dr.Field(nameof(TanuloAdatokDto.KretaAzonosito)), OktatasiAzonosito = dr.Field(nameof(TanuloAdatokDto.OktatasiAzonosito)), Elotag = dr.Field(nameof(TanuloAdatokDto.Elotag)), Vezeteknev = dr.Field(nameof(TanuloAdatokDto.Vezeteknev)), Keresztnev = dr.Field(nameof(TanuloAdatokDto.Keresztnev)), SzuletesiHely = dr.Field(nameof(TanuloAdatokDto.SzuletesiHely)), SzuletesiIdo = dr.Field(nameof(TanuloAdatokDto.SzuletesiIdo)), AnyjaNeve = dr.Field(nameof(TanuloAdatokDto.AnyjaNeve)), EgyediAzonosito = dr.Field(nameof(TanuloAdatokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(TanuloAdatokDto.IdpEgyediAzonosito)), Cim = new CimDto { KretaAzonosito = dr.Field("CimKretaAzonosito"), Iranyitoszam = dr.Field("Iranyitoszam"), Helyseg = dr.Field("Helyseg"), KozteruletNeve = dr.Field("KozteruletNeve"), KozteruletJellege = dr.Field("KozteruletJellege"), Hazszam = dr.Field("Hazszam"), Emelet = dr.Field("Emelet"), Ajto = dr.Field("Ajto"), Orszag = new OrszagDto { ISO_Alpha3 = dr.Field("Isokod"), KretaAzonosito = dr.Field("OrszagId"), Nev = dr.Field("Orszag") } } }).FirstOrDefault(); if (tanuloAdatokDto != null) { tanuloAdatokDto.Osztalyok = GetTanuloOsszesOsztalyanakAdatai(tanuloAdatokDto.KretaAzonosito, tanevKretaAzonosito); } return tanuloAdatokDto; } public List GetTanuloTantargyak(string tanuloOktatasiAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanuloTantargyak(tanuloOktatasiAzonosito, TanevId)); var tantargyDtoLista = ds.Tables[0].AsEnumerable().Select(dr => new TantargyDto { KretaAzonosito = dr.Field(nameof(TantargyDto.KretaAzonosito)), Nev = dr.Field(nameof(TantargyDto.Nev)) }).ToList(); return tantargyDtoLista; } public void SendIedm(string tanuloOktatasiAzonosito, DateTime tavolletKezdete, DateTime tavolletVege) => Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().SendIedm(tanuloOktatasiAzonosito, tavolletKezdete, tavolletVege)); public KozteruletJellegeDto GetKozteruletJellege(int azonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetKozteruletJellege(azonosito, TanevId)); var kozteruletJellegeDto = ds.Tables[0].AsEnumerable().Select(dr => new KozteruletJellegeDto { KretaAzonosito = dr.Field(nameof(KozteruletJellegeDto.KretaAzonosito)), Megnevezes = dr.Field(nameof(KozteruletJellegeDto.Megnevezes)) }).FirstOrDefault(); return kozteruletJellegeDto; } public List GetKozteruletJellegek() { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetKozteruletJellegek(TanevId)); var kozteruletJellegeDtoLista = ds.Tables[0].AsEnumerable().Select(dr => new KozteruletJellegeDto { KretaAzonosito = dr.Field(nameof(KozteruletJellegeDto.KretaAzonosito)), Megnevezes = dr.Field(nameof(KozteruletJellegeDto.Megnevezes)) }).ToList(); return kozteruletJellegeDtoLista; } public EmailDto GetGondviseloEmailCim(int kretaAzonosito) { var dataSet = Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetGondviseloEmailCim(kretaAzonosito)); var emailDto = GetEmailDto(dataSet); return emailDto; } public EmailDto GetFelhasznaloEmailCim(int kretaAzonosito) { var dataSet = Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetFelhasznaloEmailCim(kretaAzonosito)); var emailDto = GetEmailDto(dataSet); return emailDto; } private EmailDto GetEmailDto(DataSet dataSet) { var dataRow = dataSet .Tables[0] .AsEnumerable() .Where(x => !string.IsNullOrWhiteSpace(SDAConvert.ToString(x["EmailCim"])) && SDAConvert.ToNullableGuid(x["Guid"]).HasValue) .OrderByDescending(x => SDAConvert.ToBoolean(x["Alapertelmezett"])) .FirstOrDefault(); EmailDto emailDto = null; if (dataRow != null) { var url = Core.Logic.UrlLogic.GetEmailKezelesUrl(ServiceContext.IntezmenyAzonosito, SDAConvert.ToNullableGuid(dataRow["Guid"])); if (!string.IsNullOrWhiteSpace(url)) { emailDto = new EmailDto { EmailCim = SDAConvert.ToString(dataRow["EmailCim"]), EmailKezelesUrl = url }; } } return emailDto; } public List GetTanuloTanoraiCsoportok(string tanuloOktatasiAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanuloTanoraiCsoportok(tanuloOktatasiAzonosito)); var tanoraiCsoportDtoList = ds.Tables[0].AsEnumerable().Select(dr => new TanoraiCsoportDto { KretaAzonosito = dr.Field(nameof(TanoraiCsoportDto.KretaAzonosito)), Nev = dr.Field(nameof(TanoraiCsoportDto.Nev)), OsztalyKretaAzonosito = dr.Field(nameof(TanoraiCsoportDto.OsztalyKretaAzonosito)) }).ToList(); return tanoraiCsoportDtoList; } public List GetOsztalyTanoraiCsoportok(int osztalyKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetOsztalyTanoraiCsoportok(osztalyKretaAzonosito)); var tanoraiCsoportDtoList = ds.Tables[0].AsEnumerable().Select(dr => new TanoraiCsoportDto { KretaAzonosito = dr.Field(nameof(TanoraiCsoportDto.KretaAzonosito)), Nev = dr.Field(nameof(TanoraiCsoportDto.Nev)), OsztalyKretaAzonosito = dr.Field(nameof(TanoraiCsoportDto.OsztalyKretaAzonosito)), OktNevelesiKategoriaKretaAzonosito = dr.Field(nameof(TanoraiCsoportDto.OktNevelesiKategoriaKretaAzonosito)) }).ToList(); return tanoraiCsoportDtoList; } public List GetTanulokByTanoraiCsoport(int kretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanulokByTanoraiCsoport(kretaAzonosito)); var tanoraiCsoportDtoList = ds.Tables[0].AsEnumerable().Select(dr => new TanuloAdatokDto { KretaAzonosito = dr.Field(nameof(TanuloAdatokDto.KretaAzonosito)), Vezeteknev = dr.Field(nameof(TanuloAdatokDto.Vezeteknev)), Keresztnev = dr.Field(nameof(TanuloAdatokDto.Keresztnev)), OktatasiAzonosito = dr.Field(nameof(TanuloAdatokDto.OktatasiAzonosito)), Elotag = dr.Field(nameof(TanuloAdatokDto.Elotag)), SzuletesiIdo = dr.Field(nameof(TanuloAdatokDto.SzuletesiIdo)), EgyediAzonosito = dr.Field(nameof(TanuloAdatokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(TanuloAdatokDto.IdpEgyediAzonosito)) }).ToList(); foreach (var tanulo in tanoraiCsoportDtoList) { tanulo.Osztalyok = GetTanuloOsszesOsztalyanakAdatai(tanulo.KretaAzonosito); } return tanoraiCsoportDtoList; } public List GetTanulokByOsztaly(int kretaAzonosito, int? tanevKretaAzonosito = null) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => { var isKovetkezoTanev = tanevKretaAzonosito.HasValue && new TanevHelper(new DalHandlerConnectionType(new MobileConnectionType(0, IntezmenyId, ServiceContext.IntezmenyAzonosito, tanevKretaAzonosito.Value), h)).GetTanevInfo().IsKovetkezo; return h.EugyintezesDal().GetTanulokByOsztaly(kretaAzonosito, tanevKretaAzonosito ?? TanevId, isKovetkezoTanev); }); var tanoraiCsoportDtoList = ds.Tables[0].AsEnumerable().Select(dr => new TanuloAdatokDto { KretaAzonosito = dr.Field(nameof(TanuloAdatokDto.KretaAzonosito)), Vezeteknev = dr.Field(nameof(TanuloAdatokDto.Vezeteknev)), Keresztnev = dr.Field(nameof(TanuloAdatokDto.Keresztnev)), OktatasiAzonosito = dr.Field(nameof(TanuloAdatokDto.OktatasiAzonosito)), Elotag = dr.Field(nameof(TanuloAdatokDto.Elotag)), SzuletesiIdo = dr.Field(nameof(TanuloAdatokDto.SzuletesiIdo)), EgyediAzonosito = dr.Field(nameof(TanuloAdatokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(TanuloAdatokDto.IdpEgyediAzonosito)) }).ToList(); foreach (var tanulo in tanoraiCsoportDtoList) { tanulo.Osztalyok = GetTanuloOsszesOsztalyanakAdatai(tanulo.KretaAzonosito, tanevKretaAzonosito); } return tanoraiCsoportDtoList; } public List GetTanevek() { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanevek(IntezmenyId)); var tanevDtoList = ds.Tables[0].AsEnumerable().Select(dr => new TanevDto { KretaAzonosito = dr.Field(nameof(TanevDto.KretaAzonosito)), Aktiv = dr.Field(nameof(TanevDto.Aktiv)) == "T", Kovetkezo = dr.Field(nameof(TanevDto.Kovetkezo)) == "T", Nev = dr.Field(nameof(TanevDto.Nev)), Kezdete = dr.Field(nameof(TanevDto.Kezdete)), Vege = dr.Field(nameof(TanevDto.Vege)) }).ToList(); return tanevDtoList; } public List GetOsszesTanevek() { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetOsszesTanevek(IntezmenyId)); var tanevDtoList = ds.Tables[0].AsEnumerable().Select(dr => new TanevDto { KretaAzonosito = dr.Field(nameof(TanevDto.KretaAzonosito)), Aktiv = dr.Field(nameof(TanevDto.Aktiv)) == "T", Kovetkezo = dr.Field(nameof(TanevDto.Kovetkezo)) == "T", Nev = dr.Field(nameof(TanevDto.Nev)), Kezdete = dr.Field(nameof(TanevDto.Kezdete)), Vege = dr.Field(nameof(TanevDto.Vege)) }).ToList(); return tanevDtoList; } public List GetSZMKOsztalyok(int gondviseloKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetSZMKOsztalyok(gondviseloKretaAzonosito)); var osztalyDtoList = ds.Tables[0].AsEnumerable().Select(dr => new OsztalyDto { KretaAzonosito = dr.Field(nameof(OsztalyDto.KretaAzonosito)), Nev = dr.Field(nameof(OsztalyDto.Nev)) }).ToList(); return osztalyDtoList; } public List GetAktualisGondviseloCimek(int gondviseloKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetAktualisGondviseloCimek(gondviseloKretaAzonosito, TanevId)); var cimDtoList = GetCimVagyCimek(ds).ToList(); return cimDtoList; } public List GetFelhasznaloCimek(string kretaIntezmenyAzonosito, int felhasznaloKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetFelhasznaloCimek(kretaIntezmenyAzonosito, felhasznaloKretaAzonosito)); var cimDtoList = GetCimVagyCimek(ds).ToList(); return cimDtoList; } public List GetFelhasznaloCimek(int felhasznaloKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetFelhasznaloCimek(felhasznaloKretaAzonosito, TanevId)); var cimDtoList = GetCimVagyCimek(ds).ToList(); return cimDtoList; } public CimDto GetCim(int cimKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetCim(cimKretaAzonosito, TanevId)); var cimDto = GetCimVagyCimek(ds).FirstOrDefault(); return cimDto; } private static EnumerableRowCollection GetCimVagyCimek(DataSet ds) { var result = ds.Tables[0].AsEnumerable().Select(dr => new CimDto { KretaAzonosito = dr.Field(nameof(CimDto.KretaAzonosito)), Iranyitoszam = dr.Field(nameof(CimDto.Iranyitoszam)), Helyseg = dr.Field(nameof(CimDto.Helyseg)), KozteruletNeve = dr.Field(nameof(CimDto.KozteruletNeve)), KozteruletJellege = dr.Field("KozteruletJellegeNev"), Hazszam = dr.Field(nameof(CimDto.Hazszam)), Emelet = dr.Field(nameof(CimDto.Emelet)), Ajto = dr.Field(nameof(CimDto.Ajto)), Orszag = new OrszagDto { ISO_Alpha3 = dr.Field("Isokod"), KretaAzonosito = dr.Field("OrszagId"), Nev = dr.Field("Orszag") } }); return result; } public BankszamlaDto GetGyerekemOsztalyaBankszamlaszam(int gondviseloKretaAzonosito) { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetGyerekemOsztalyaBankszamlaszam(gondviseloKretaAzonosito)); var bankszamlaDto = dataSet.Tables[0].AsEnumerable().Select(dr => new BankszamlaDto { KretaAzonosito = dr.Field(nameof(BankszamlaDto.KretaAzonosito)), Szamlaszam = dr.Field(nameof(BankszamlaDto.Szamlaszam)), KedvezmenyezettNeve = dr.Field(nameof(BankszamlaDto.KedvezmenyezettNeve)) }).FirstOrDefault(); return bankszamlaDto; } public List GetTanarok(int? tanevKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanarok(tanevKretaAzonosito)); var alkalmazottAdatokDtoList = ds.Tables[0].AsEnumerable().Select(dr => new VezetokEsTanarokDto { KretaAzonosito = dr.Field(nameof(VezetokEsTanarokDto.KretaAzonosito)), IsAlairo = Convert.ToBoolean(dr.Field(nameof(VezetokEsTanarokDto.IsAlairo))), Nev = dr.Field(nameof(VezetokEsTanarokDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), IsTorolt = Convert.ToBoolean(dr.Field(nameof(VezetokEsTanarokDto.IsTorolt))), OktatasiAzonosito = dr.Field(nameof(VezetokEsTanarokDto.OktatasiAzonosito)), EgyediAzonosito = dr.Field(nameof(VezetokEsTanarokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(VezetokEsTanarokDto.IdpEgyediAzonosito)) }).ToList(); return alkalmazottAdatokDtoList; } public List GetNOKSAlkalmazottak(int? tanevKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetNOKSAlkalmazottak(tanevKretaAzonosito)); var alkalmazottAdatokDtoList = ds.Tables[0].AsEnumerable().Select(dr => new VezetokEsTanarokDto { KretaAzonosito = dr.Field(nameof(VezetokEsTanarokDto.KretaAzonosito)), IsAlairo = Convert.ToBoolean(dr.Field(nameof(VezetokEsTanarokDto.IsAlairo))), Nev = dr.Field(nameof(VezetokEsTanarokDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), IsTorolt = Convert.ToBoolean(dr.Field(nameof(VezetokEsTanarokDto.IsTorolt))), OktatasiAzonosito = dr.Field(nameof(VezetokEsTanarokDto.OktatasiAzonosito)), EgyediAzonosito = dr.Field(nameof(VezetokEsTanarokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(VezetokEsTanarokDto.IdpEgyediAzonosito)) }).ToList(); return alkalmazottAdatokDtoList; } public List GetEgyebAlkalmazottak(int? tanevKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetEgyebAlkalmazottak(tanevKretaAzonosito)); var alkalmazottAdatokDtoList = ds.Tables[0].AsEnumerable().Select(dr => new VezetokEsTanarokDto { KretaAzonosito = dr.Field(nameof(VezetokEsTanarokDto.KretaAzonosito)), IsAlairo = Convert.ToBoolean(dr.Field(nameof(VezetokEsTanarokDto.IsAlairo))), Nev = dr.Field(nameof(VezetokEsTanarokDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), IsTorolt = Convert.ToBoolean(dr.Field(nameof(VezetokEsTanarokDto.IsTorolt))), OktatasiAzonosito = dr.Field(nameof(VezetokEsTanarokDto.OktatasiAzonosito)), EgyediAzonosito = dr.Field(nameof(VezetokEsTanarokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(VezetokEsTanarokDto.IdpEgyediAzonosito)) }).ToList(); return alkalmazottAdatokDtoList; } public List GetOsztalyfonokok(int? tanevKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetOsztalyfonokok(tanevKretaAzonosito)); var alkalmazottAdatokDtoList = ds.Tables[0].AsEnumerable().Select(dr => new OsztalyFonokAdatokDto { KretaAzonosito = dr.Field(nameof(OsztalyFonokAdatokDto.KretaAzonosito)), EgyediAzonosito = dr.Field(nameof(OsztalyFonokAdatokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(OsztalyFonokAdatokDto.IdpEgyediAzonosito)), IsOsztalyfonok = Convert.ToBoolean(dr.Field(nameof(OsztalyFonokAdatokDto.IsOsztalyfonok))), IsOsztalyfonokHelyettes = Convert.ToBoolean(dr.Field(nameof(OsztalyFonokAdatokDto.IsOsztalyfonokHelyettes))), Nev = dr.Field(nameof(OsztalyFonokAdatokDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), Osztaly = dr.Field(nameof(OsztalyFonokAdatokDto.Osztaly)) }).ToList(); return alkalmazottAdatokDtoList; } //lehet rossz az a logika, amivel ellehetne dönteni, hogy igazgató-e vagy igazgató helyettes public List GetIgazgatosagiAlkalmazottak(int? tanevKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetIgazgatosagiAlkalmazottak(tanevKretaAzonosito)); var alkalmazottDtoList = ds.Tables[0].AsEnumerable().Select(dr => new VezetokEsTanarokDto { KretaAzonosito = dr.Field(nameof(VezetokEsTanarokDto.KretaAzonosito)), IsAlairo = Convert.ToBoolean(dr.Field(nameof(VezetokEsTanarokDto.IsAlairo))), Nev = dr.Field(nameof(VezetokEsTanarokDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), IsTorolt = Convert.ToBoolean(dr.Field(nameof(VezetokEsTanarokDto.IsTorolt))), OktatasiAzonosito = dr.Field(nameof(VezetokEsTanarokDto.OktatasiAzonosito)), EgyediAzonosito = dr.Field(nameof(VezetokEsTanarokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(VezetokEsTanarokDto.IdpEgyediAzonosito)) }).ToList(); return alkalmazottDtoList; } public List GetKretaAdminisztratorok(int? tanevKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetKretaAdminisztratorok(tanevKretaAzonosito)); var alkalmazottAdatokDtoList = ds.Tables[0].AsEnumerable().Select(dr => new VezetokEsTanarokDto { KretaAzonosito = dr.Field(nameof(VezetokEsTanarokDto.KretaAzonosito)), IsAlairo = Convert.ToBoolean(dr.Field(nameof(VezetokEsTanarokDto.IsAlairo))), Nev = dr.Field(nameof(VezetokEsTanarokDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), IsTorolt = Convert.ToBoolean(dr.Field(nameof(VezetokEsTanarokDto.IsTorolt))), OktatasiAzonosito = dr.Field(nameof(VezetokEsTanarokDto.OktatasiAzonosito)), EgyediAzonosito = dr.Field(nameof(VezetokEsTanarokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(VezetokEsTanarokDto.IdpEgyediAzonosito)) }).ToList(); return alkalmazottAdatokDtoList; } public List GetOsztalyGondviselok(int osztalyKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetOsztalyGondviselok(osztalyKretaAzonosito, TanevId)); var gondviseloAdatokDtoList = ds.Tables[0].AsEnumerable().Select(dr => new GondviseloAdatokDto { KretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.KretaAzonosito)), EmailCim = dr.Field(nameof(GondviseloAdatokDto.EmailCim)), GondviseloNev = dr.Field(nameof(GondviseloAdatokDto.GondviseloNev)), TanuloId = dr.Field(nameof(GondviseloAdatokDto.TanuloId)), TanuloNev = dr.Field(nameof(GondviseloAdatokDto.TanuloNev)), TanuloOktatasiAzonosito = dr.Field(nameof(GondviseloAdatokDto.TanuloOktatasiAzonosito)), Osztalyok = GetTanuloOsszesOsztalyanakAdatai(dr.Field(nameof(GondviseloAdatokDto.TanuloId))), RokonsagiFok = dr.Field(nameof(GondviseloAdatokDto.RokonsagiFok)), IsTorvenyesKepviselo = Convert.ToBoolean(dr.Field(nameof(GondviseloAdatokDto.IsTorvenyesKepviselo))), IsSZMK = Convert.ToBoolean(dr.Field(nameof(GondviseloAdatokDto.IsSZMK))), IsSZMKHelyettes = Convert.ToBoolean(dr.Field(nameof(GondviseloAdatokDto.IsSZMKHelyettes))), SZMKOsztaly = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztaly)), SZMKOsztalyKretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyKretaAzonosito)), SZMKOsztalyHelyettes = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyHelyettes)), SZMKOsztalyHelyettesKretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyHelyettesKretaAzonosito)), EgyediAzonosito = dr.Field(nameof(GondviseloAdatokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(GondviseloAdatokDto.IdpEgyediAzonosito)) }).ToList(); return gondviseloAdatokDtoList; } public List GetTanoraiCsoportGondviselok(int tanoraiCsoportKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanoraiCsoportGondviselok(tanoraiCsoportKretaAzonosito, TanevId)); var gondviseloAdatokDtoList = ds.Tables[0].AsEnumerable().Select(dr => new GondviseloAdatokDto { KretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.KretaAzonosito)), EmailCim = dr.Field(nameof(GondviseloAdatokDto.EmailCim)), GondviseloNev = dr.Field(nameof(GondviseloAdatokDto.GondviseloNev)), TanuloId = dr.Field(nameof(GondviseloAdatokDto.TanuloId)), TanuloNev = dr.Field(nameof(GondviseloAdatokDto.TanuloNev)), TanuloOktatasiAzonosito = dr.Field(nameof(GondviseloAdatokDto.TanuloOktatasiAzonosito)), Osztalyok = GetTanuloOsszesOsztalyanakAdatai(dr.Field(nameof(GondviseloAdatokDto.TanuloId))), RokonsagiFok = dr.Field(nameof(GondviseloAdatokDto.RokonsagiFok)), IsTorvenyesKepviselo = Convert.ToBoolean(dr.Field(nameof(GondviseloAdatokDto.IsTorvenyesKepviselo))), IsSZMK = Convert.ToBoolean(dr.Field(nameof(GondviseloAdatokDto.IsSZMK))), IsSZMKHelyettes = Convert.ToBoolean(dr.Field(nameof(GondviseloAdatokDto.IsSZMKHelyettes))), SZMKOsztaly = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztaly)), SZMKOsztalyKretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyKretaAzonosito)), SZMKOsztalyHelyettes = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyHelyettes)), SZMKOsztalyHelyettesKretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyHelyettesKretaAzonosito)), EgyediAzonosito = dr.Field(nameof(GondviseloAdatokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(GondviseloAdatokDto.IdpEgyediAzonosito)) }).ToList(); return gondviseloAdatokDtoList; } public AlkalmazottAdatokDto GetAlkalmazottAdatok(int kretaFelhasznaloAzonosito, int? tanevKretaAzonosito = null) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetAlkalmazottAdatok(kretaFelhasznaloAzonosito, tanevKretaAzonosito)); var alkalmazottAdatokDto = ds.Tables[0].AsEnumerable().Select(dr => new AlkalmazottAdatokDto { KretaAzonosito = dr.Field(nameof(AlkalmazottAdatokDto.KretaAzonosito)), EgyediAzonosito = dr.Field(nameof(AlkalmazottAdatokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(AlkalmazottAdatokDto.IdpEgyediAzonosito)), IsIgazgato = Convert.ToBoolean(dr.Field(nameof(AlkalmazottAdatokDto.IsIgazgato))), IsIgazgatoHelyettes = Convert.ToBoolean(dr.Field(nameof(AlkalmazottAdatokDto.IsIgazgatoHelyettes))), IsOsztalyfonok = Convert.ToBoolean(dr.Field(nameof(AlkalmazottAdatokDto.IsOsztalyfonok))), IsOsztalyfonokHelyettes = Convert.ToBoolean(dr.Field(nameof(AlkalmazottAdatokDto.IsOsztalyfonokHelyettes))), IsAdmin = Convert.ToBoolean(dr.Field(nameof(AlkalmazottAdatokDto.IsAdmin))), IsTanar = Convert.ToBoolean(dr.Field(nameof(AlkalmazottAdatokDto.IsTanar))), IsNoks = Convert.ToBoolean(dr.Field(nameof(AlkalmazottAdatokDto.IsNoks))), IsEgyeb = Convert.ToBoolean(dr.Field(nameof(AlkalmazottAdatokDto.IsEgyeb))), Nev = dr.Field(nameof(AlkalmazottAdatokDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), OktatasiAzonosito = dr.Field(nameof(AlkalmazottAdatokDto.OktatasiAzonosito)), Osztaly = dr.Field(nameof(AlkalmazottAdatokDto.Osztaly)), FunkcioTeruletSAPKod = dr.Field(nameof(AlkalmazottAdatokDto.FunkcioTeruletSAPKod)), }).FirstOrDefault(); return alkalmazottAdatokDto; } public GondviseloAdatokDto GetGondviseloAdatok(int kretaFelhasznaloAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetGondviseloAdatok(kretaFelhasznaloAzonosito)); var gondviseloAdatokDto = ds.Tables[0].AsEnumerable().Select(dr => new GondviseloAdatokDto { KretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.KretaAzonosito)), EmailCim = dr.Field(nameof(GondviseloAdatokDto.EmailCim)), GondviseloNev = dr.Field(nameof(GondviseloAdatokDto.GondviseloNev)), TanuloId = dr.Field(nameof(GondviseloAdatokDto.TanuloId)), TanuloNev = dr.Field(nameof(GondviseloAdatokDto.TanuloNev)), TanuloOktatasiAzonosito = dr.Field(nameof(GondviseloAdatokDto.TanuloOktatasiAzonosito)), Osztalyok = GetTanuloOsszesOsztalyanakAdatai(dr.Field(nameof(GondviseloAdatokDto.TanuloId))), RokonsagiFok = dr.Field(nameof(GondviseloAdatokDto.RokonsagiFok)), IsTorvenyesKepviselo = Convert.ToBoolean(dr.Field(nameof(GondviseloAdatokDto.IsTorvenyesKepviselo))), IsSZMK = Convert.ToBoolean(dr.Field(nameof(GondviseloAdatokDto.IsSZMK))), IsSZMKHelyettes = Convert.ToBoolean(dr.Field(nameof(GondviseloAdatokDto.IsSZMKHelyettes))), SZMKOsztaly = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztaly)), SZMKOsztalyKretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyKretaAzonosito)), SZMKOsztalyHelyettes = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyHelyettes)), SZMKOsztalyHelyettesKretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyHelyettesKretaAzonosito)), EgyediAzonosito = dr.Field(nameof(GondviseloAdatokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(GondviseloAdatokDto.IdpEgyediAzonosito)), }).FirstOrDefault(); return gondviseloAdatokDto; } public List GetSZMKKepviselok() { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetSZMKKepviselok(TanevId)); var gondviseloAdatokDtoList = ds.Tables[0].AsEnumerable().Select(dr => new GondviseloAdatokDto { KretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.KretaAzonosito)), EmailCim = dr.Field(nameof(GondviseloAdatokDto.EmailCim)), GondviseloNev = dr.Field(nameof(GondviseloAdatokDto.GondviseloNev)), TanuloId = dr.Field(nameof(GondviseloAdatokDto.TanuloId)), TanuloNev = dr.Field(nameof(GondviseloAdatokDto.TanuloNev)), TanuloOktatasiAzonosito = dr.Field(nameof(GondviseloAdatokDto.TanuloOktatasiAzonosito)), Osztalyok = GetTanuloOsszesOsztalyanakAdatai(dr.Field(nameof(GondviseloAdatokDto.TanuloId))), IsSZMK = Convert.ToBoolean(dr.Field(nameof(GondviseloAdatokDto.IsSZMK))), IsSZMKHelyettes = Convert.ToBoolean(dr.Field(nameof(GondviseloAdatokDto.IsSZMKHelyettes))), SZMKOsztaly = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztaly)), SZMKOsztalyKretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyKretaAzonosito)), SZMKOsztalyHelyettes = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyHelyettes)), SZMKOsztalyHelyettesKretaAzonosito = dr.Field(nameof(GondviseloAdatokDto.SZMKOsztalyHelyettesKretaAzonosito)), EgyediAzonosito = dr.Field(nameof(GondviseloAdatokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(GondviseloAdatokDto.IdpEgyediAzonosito)) }).ToList(); return gondviseloAdatokDtoList; } public TanuloAdatokDto GetTanuloAdatokByKretaAzonosito(int kretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanuloAdatokByKretaAzonosito(kretaAzonosito)); var tanuloAdatokDto = ds.Tables[0].AsEnumerable().Select(dr => new TanuloAdatokDto { KretaAzonosito = dr.Field(nameof(TanuloAdatokDto.KretaAzonosito)), OktatasiAzonosito = dr.Field(nameof(TanuloAdatokDto.OktatasiAzonosito)), Elotag = dr.Field(nameof(TanuloAdatokDto.Elotag)), Vezeteknev = dr.Field(nameof(TanuloAdatokDto.Vezeteknev)), Keresztnev = dr.Field(nameof(TanuloAdatokDto.Keresztnev)), SzuletesiHely = dr.Field(nameof(TanuloAdatokDto.SzuletesiHely)), SzuletesiIdo = dr.Field(nameof(TanuloAdatokDto.SzuletesiIdo)), AnyjaNeve = dr.Field(nameof(TanuloAdatokDto.AnyjaNeve)), EgyediAzonosito = dr.Field(nameof(TanuloAdatokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(TanuloAdatokDto.IdpEgyediAzonosito)), Cim = new CimDto { KretaAzonosito = dr.Field("CimKretaAzonosito"), Helyseg = dr.Field("Helyseg"), KozteruletNeve = dr.Field("KozteruletNeve"), KozteruletJellege = dr.Field("KozteruletJellege"), Iranyitoszam = dr.Field("Iranyitoszam"), Hazszam = dr.Field("Hazszam"), Emelet = dr.Field("Emelet"), Ajto = dr.Field("Ajto"), Orszag = new OrszagDto { ISO_Alpha3 = dr.Field("Isokod"), KretaAzonosito = dr.Field("OrszagId"), Nev = dr.Field("Orszag") } } }).FirstOrDefault(); if (tanuloAdatokDto != null) { tanuloAdatokDto.Osztalyok = GetTanuloOsszesOsztalyanakAdatai(tanuloAdatokDto.KretaAzonosito); } return tanuloAdatokDto; } public AlkalmazottDto GetTanuloOsztalyfonok(string oktatasiAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanuloOsztalyfonok(oktatasiAzonosito)); var alkalmazottDto = ds.Tables[0].AsEnumerable().Select(dr => new AlkalmazottDto { KretaAzonosito = dr.Field(nameof(AlkalmazottDto.KretaAzonosito)), OktatasiAzonosito = dr.Field(nameof(AlkalmazottDto.OktatasiAzonosito)), Nev = dr.Field(nameof(AlkalmazottDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), IsAlairo = dr.Field(nameof(AlkalmazottDto.Titulus)).HasValue && !(dr.Field(nameof(AlkalmazottDto.Titulus)) == (int)VezetoiOraszamokTipusEnum.Nincs || dr.Field(nameof(AlkalmazottDto.Titulus)) == (int)VezetoiOraszamokTipusEnum.GyakorlatiOktatasvezeto), EgyediAzonosito = dr.Field(nameof(AlkalmazottDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(AlkalmazottDto.IdpEgyediAzonosito)) }).FirstOrDefault(); return alkalmazottDto; } public List GetEUgyintezokEsOsztalyfonokok() { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetEUgyintezokEsOsztalyfonokok()); var alkalmazottAdatokDtoList = ds.Tables[0].AsEnumerable().Select(dr => new AlkalmazottDto { KretaAzonosito = dr.Field(nameof(AlkalmazottAdatokDto.KretaAzonosito)), Nev = dr.Field(nameof(AlkalmazottAdatokDto.Nev)), EgyediAzonosito = dr.Field(nameof(AlkalmazottAdatokDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(AlkalmazottAdatokDto.IdpEgyediAzonosito)) }).ToList().OrderBy(x => x.Nev).ToList(); return alkalmazottAdatokDtoList; } public List GetFoglalhatoTermek() { var foglalhatoTermekDataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetFoglalhatoTermek(TanevId)); var teremDtoList = foglalhatoTermekDataSet.Tables[0].AsEnumerable().Select(dr => { var teremAdatokDto = new TeremAdatokDto { KretaAzonosito = dr.Field(nameof(TeremAdatokDto.KretaAzonosito)), Ar = dr.Field(nameof(TeremAdatokDto.Ar)), FoglalhatoIdoszakKezdete = dr.Field(nameof(TeremAdatokDto.FoglalhatoIdoszakKezdete)), FoglalhatoIdoszakVege = dr.Field(nameof(TeremAdatokDto.FoglalhatoIdoszakVege)), IntezmenyOmAzonosito = dr.Field(nameof(TeremAdatokDto.IntezmenyOmAzonosito)), Leiras = dr.Field(nameof(TeremAdatokDto.Leiras)), Letszam = dr.Field(nameof(TeremAdatokDto.Letszam)) ?? 0, Megnevezes = dr.Field(nameof(TeremAdatokDto.Megnevezes)), Terulet = dr.Field(nameof(TeremAdatokDto.Terulet)) ?? 0, Foto = _fileService.ReadFromFile(dr.Field("FotoPath")), SzerzodesMelleklet = _fileService.ReadFromFile(dr.Field("SzerzodesMellekletPath")), KretaEgyediAzonosito = dr.Field(nameof(TeremAdatokDto.KretaEgyediAzonosito)).ToString(), EmeltAr = dr.Field(nameof(TeremAdatokDto.EmeltAr)).HasValue ? dr.Field(nameof(TeremAdatokDto.EmeltAr)) : 0, FunkcioTeruletSAPKod = dr.Field(nameof(TeremAdatokDto.FunkcioTeruletSAPKod)), Tipus = new AdatszotarDto { KretaAzonosito = dr.Field("TipusAzonosito"), Nev = dr.Field("TipusNev") }, Cim = new CimDto { KretaAzonosito = null, Iranyitoszam = dr.Field("Iranyitoszam"), Helyseg = dr.Field("Varos"), KozteruletNeve = dr.Field("KozteruletNeve"), KozteruletJellege = dr.Field("KozteruletJellege"), Hazszam = dr.Field("Hazszam"), Emelet = dr.Field("Emelet"), Ajto = dr.Field("Ajto"), Orszag = new OrszagDto { ISO_Alpha3 = "HUN", Nev = OrszagTipusEnum.Magyarorszag.ToDisplayName(), KretaAzonosito = (int)OrszagTipusEnum.Magyarorszag } } }; if (dr.Field(nameof(TeremAdatokDto.EmeltArKezdeteOraPerc)).HasValue) { teremAdatokDto.EmeltArKezdeteOraPerc = dr.Field(nameof(TeremAdatokDto.EmeltArKezdeteOraPerc)).Value.TimeOfDay; } if (dr.Field("TulajdonTipusaAzonosito").HasValue) { teremAdatokDto.TulajdonTipusa = new AdatszotarDto { KretaAzonosito = dr.Field("TulajdonTipusaAzonosito"), Nev = dr.Field("TulajdonTipusaNev") }; } return teremAdatokDto; }).ToList(); for (var i = 0; i < teremDtoList.Count; i++) { var foglalhatoTermekElerhetosegeiDataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetFoglalhatoTermekElerhetosegei(teremDtoList[i].KretaAzonosito)); teremDtoList[i].NapiElerhetosegek = foglalhatoTermekElerhetosegeiDataSet.Tables[0].AsEnumerable().Select(dr => new TeremElerhetosegDto { KretaAzonosito = dr.Field(nameof(TeremElerhetosegDto.KretaAzonosito)), HetNapja = HetNapjaMapping(dr.Field(nameof(TeremElerhetosegDto.HetNapja))), KezdeteOraPerc = dr.Field(nameof(TeremElerhetosegDto.KezdeteOraPerc)).TimeOfDay, VegeOraPerc = dr.Field(nameof(TeremElerhetosegDto.VegeOraPerc)).TimeOfDay }).ToList(); } return teremDtoList; } public AdatszotarDto GetAdatszotarByTipus(int kretaAzonosito, GeneratedAdatszotarTipusEnum tipus) { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetAdatszotarByTipus(kretaAzonosito, tipus, TanevId)); var adatszotarDto = dataSet.Tables[0].AsEnumerable().Select(dr => new AdatszotarDto { KretaAzonosito = dr.Field(nameof(AdatszotarDto.KretaAzonosito)), Nev = dr.Field(nameof(AdatszotarDto.Nev)) }).FirstOrDefault(); return adatszotarDto; } public List GetAdatszotarakByTipus(GeneratedAdatszotarTipusEnum tipus) { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetAdatszotarakByTipus(tipus, TanevId)); var adatszotarDtoList = dataSet.Tables[0].AsEnumerable().Select(dr => new AdatszotarDto { KretaAzonosito = dr.Field(nameof(AdatszotarDto.KretaAzonosito)), Nev = dr.Field(nameof(AdatszotarDto.Nev)) }).ToList(); switch (tipus) { case GeneratedAdatszotarTipusEnum.Allampolgarsag: adatszotarDtoList = adatszotarDtoList.Where(x => x.KretaAzonosito != (int)AllampolgarsagEnum.na).ToList(); break; case GeneratedAdatszotarTipusEnum.Anyanyelv: adatszotarDtoList = adatszotarDtoList.Where(x => x.KretaAzonosito != (int)AnyanyelvEnum.na).ToList(); break; case GeneratedAdatszotarTipusEnum.HatranyosHelyzetTipus: adatszotarDtoList = adatszotarDtoList.Where(x => x.KretaAzonosito != (int)HatranyosHelyzetTipusEnum.na).ToList(); break; } return adatszotarDtoList; } public List GetTanitottOsztalyok(int alkalmazottKretaAzonosito) { var osztalyDataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanitottOsztalyok(alkalmazottKretaAzonosito)); var osztalyDtoList = osztalyDataSet.Tables[0].AsEnumerable().Select(dr => new OsztalyDto { KretaAzonosito = dr.Field(nameof(OsztalyDto.KretaAzonosito)), Nev = dr.Field(nameof(OsztalyDto.Nev)), OktNevelesiKategoriaKretaAzonosito = dr.Field(nameof(OsztalyDto.OktNevelesiKategoriaKretaAzonosito)) }).ToList(); return osztalyDtoList; } public List GetOsztalyfonokoltOsztalyok(int alkalmazottKretaAzonosito) { var osztalyfonokoltOsztalyokDataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetOsztalyfonokoltOsztalyok(alkalmazottKretaAzonosito)); var osztalyfonokoltOsztalyokDtoList = osztalyfonokoltOsztalyokDataSet.Tables[0].AsEnumerable().Select(dr => new OsztalyDto { KretaAzonosito = dr.Field(nameof(OsztalyDto.KretaAzonosito)), Nev = dr.Field(nameof(OsztalyDto.Nev)), OktNevelesiKategoriaKretaAzonosito = dr.Field(nameof(OsztalyDto.OktNevelesiKategoriaKretaAzonosito)) }).ToList(); return osztalyfonokoltOsztalyokDtoList; } public List GetBulkTanuloSzamlaAdatok(int osztalyCsoportKretaAzonosito, List oktatasiAzonositok) { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetBulkTanuloSzamlaAdatok(osztalyCsoportKretaAzonosito, oktatasiAzonositok)); var szamlazasiAdatokDtoList = dataSet.Tables[0].AsEnumerable().Select(dr => new KretaSzamlaAdatokDto { OktatasiAzonosito = dr.Field(nameof(KretaSzamlaAdatokDto.OktatasiAzonosito)), Nev = dr.Field(nameof(KretaSzamlaAdatokDto.Nev)), FunkcioTeruletSAPKod = dr.Field(nameof(KretaSzamlaAdatokDto.FunkcioTeruletSAPKod)), SzamlazasiCim = new SzamlazasiCimDto { Adoszam = null, Cim = new CimDto { KozteruletNeve = dr.Field("KozteruletNeve"), KozteruletJellege = dr.Field("KozteruletJellegeNev"), Ajto = dr.Field("Ajto"), Emelet = dr.Field("Emelet"), Hazszam = dr.Field("Hazszam"), Helyseg = dr.Field("Helyseg"), Iranyitoszam = dr.Field("Iranyitoszam"), KretaAzonosito = dr.Field("KretaAzonosito"), Orszag = new OrszagDto { ISO_Alpha3 = dr.Field("OrszagISO"), Nev = dr.Field("OrszagNev"), KretaAzonosito = dr.Field("OrszagKretaAzonosito") } } } }).ToList(); return szamlazasiAdatokDtoList; } public List GetBulkAlkalmazottSzamlaAdatok(List kretaFelhasznaloAzonositok) { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetBulkAlkalmazottSzamlaAdatok(kretaFelhasznaloAzonositok, TanevId)); var kretaSzamlaAdatokDtoList = dataSet.Tables[0].AsEnumerable().Select(dr => new KretaSzamlaAdatokDto { OktatasiAzonosito = dr.Field(nameof(KretaSzamlaAdatokDto.OktatasiAzonosito)), KretaAlkalmazottAzonosito = dr.Field(nameof(KretaSzamlaAdatokDto.KretaAlkalmazottAzonosito)), Nev = dr.Field(nameof(KretaSzamlaAdatokDto.Nev)), FunkcioTeruletSAPKod = dr.Field(nameof(KretaSzamlaAdatokDto.FunkcioTeruletSAPKod)), SzamlazasiCim = new SzamlazasiCimDto { Adoszam = null, Cim = new CimDto { KretaAzonosito = dr.Field("KretaAlkalmazottAzonosito"), Ajto = dr.Field("Ajto"), Emelet = dr.Field("Emelet"), Hazszam = dr.Field("Hazszam"), Helyseg = dr.Field("Varos"), Iranyitoszam = dr.Field("Iranyitoszam"), KozteruletNeve = dr.Field("KozteruletNeve"), KozteruletJellege = dr.Field("KozteruletJellegeNev"), Orszag = new OrszagDto { ISO_Alpha3 = dr.Field("OrszagISO"), Nev = dr.Field("OrszagNev"), KretaAzonosito = dr.Field("OrszagKretaAzonosito") } } } }).ToList(); return kretaSzamlaAdatokDtoList; } public List GetBulkGondviseloGyerekAdatok(List gondviseloAzonositok) { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetBulkGondviseloGyerekAdatok(gondviseloAzonositok)); var tanuloDtoList = dataSet.Tables[0].AsEnumerable().Select(dr => new TanuloDto { KretaAzonosito = dr.Field(nameof(TanuloDto.KretaAzonosito)), OktatasiAzonosito = dr.Field(nameof(TanuloDto.OktatasiAzonosito)), Elotag = dr.Field(nameof(TanuloDto.Elotag)), Vezeteknev = dr.Field(nameof(TanuloDto.Vezeteknev)), Keresztnev = dr.Field(nameof(TanuloDto.Keresztnev)) }).ToList(); foreach (var tanulo in tanuloDtoList) { tanulo.Osztalyok = GetTanuloOsszesOsztalyanakAdatai(tanulo.KretaAzonosito); } return tanuloDtoList; } private int HetNapjaMapping(int hetNapjaDictionaryId) { var hetNapja = 0; switch (hetNapjaDictionaryId) { case 1408: hetNapja = 1; break; case 1409: hetNapja = 2; break; case 1410: hetNapja = 3; break; case 1411: hetNapja = 4; break; case 1412: hetNapja = 5; break; case 1413: hetNapja = 6; break; case 1414: hetNapja = 7; break; } return hetNapja; } public bool SaveNebuloFromBai(NebuloDto nebuloDto, string json) { try { Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => { var dal = h.Nebulo(); var nebuloModel = GetNebuloId(nebuloDto, dal); var entity = ConvertDtoToEntity(nebuloModel.NebulodId, nebuloDto, dal); var isInsertFail = false; if (entity.FelvetelStatusza != (int)FelvetelStatuszaTipusEnum.Felveve && entity.FelvetelStatusza != (int)FelvetelStatuszaTipusEnum.NemFelveve) { if (nebuloModel.NebulodId != 0) { //Ha a nebuló meglett 4T miatt akkor kell okt azon insert var eUgyClient = new EugyintezesClient(_eugyintezesClientConfiguration); if (nebuloModel.OktAzonInsert) { var obj = new List(); obj.Add(new { OktatasiAzonosito = entity.OktatasiAzonositoSzama, SzuletesiDatum = entity.SzuletesiIdo, Statusz = (int)FelvetelStatuszaTipusEnum.Fuggoben, IsKorzetes = entity.EletvitelszeruOttLakasKorzetes }); var eUgyInsertResult = eUgyClient.NebuloInsert(entity.Intezmeny.Azonosito, JsonConvert.SerializeObject(obj)); if (eUgyInsertResult.StatusCode != HttpStatusCode.OK) { InsertEugyintezesLog(nebuloDto.Ugyiratszam, EugyTipusEnum.BAIStatusUpdate, json, eUgyInsertResult.Content); isInsertFail = true; } } if (!isInsertFail) { var regiStatuszId = dal.Get(nebuloModel.NebulodId).FelvetelStatusza; entity.EugyModositott = true; dal.FullUpdate(entity); if (entity.EletvitelszeruOttLakasKorzetes.HasValue && entity.EletvitelszeruOttLakasKorzetes.Value) { entity.FelvetelStatusza = (int)FelvetelStatuszaTipusEnum.Felveve; } //Eügy visszaszinkron json - StatuszUpdate var jsonData = JsonConvert.SerializeObject(new { OktatasiAzonosito = entity.OktatasiAzonositoSzama, SzuletesiDatum = entity.SzuletesiIdo, UjStatusz = entity.FelvetelStatusza, RegiStatusz = regiStatuszId }); //Eügy visszaszinkron POST var eUgyResult = eUgyClient.NebuloStatuszUpdate(entity.Intezmeny.Azonosito, jsonData); if (eUgyResult.StatusCode == HttpStatusCode.OK) { dal.FullUpdate(entity); } InsertEugyintezesLog(nebuloDto.Ugyiratszam, EugyTipusEnum.BAIStatusUpdate, json, eUgyResult.Content); } } else { entity.EugybaiRogzitett = true; dal.Insert(entity); //Eügy visszaszinkron json - Insert var obj = new List(); obj.Add(new { OktatasiAzonosito = entity.OktatasiAzonositoSzama, SzuletesiDatum = entity.SzuletesiIdo, Statusz = (int)FelvetelStatuszaTipusEnum.Fuggoben, IsKorzetes = entity.EletvitelszeruOttLakasKorzetes }); var jsonData = JsonConvert.SerializeObject(obj); //Eügy visszaszinkron POST var eUgyClient = new EugyintezesClient(_eugyintezesClientConfiguration); var eUgyResult = eUgyClient.NebuloInsert(entity.Intezmeny.Azonosito, jsonData); var eUgyResultModel = JsonConvert.DeserializeObject>(eUgyResult.Content); InsertEugyintezesLog(nebuloDto.Ugyiratszam, EugyTipusEnum.BAIStatusUpdate, json, eUgyResult.Content); } } else { //Eügy visszaszinkron json - Insert var obj = new List(); obj.Add(new { OktatasiAzonosito = entity.OktatasiAzonositoSzama, SzuletesiDatum = entity.SzuletesiIdo, Statusz = (int)FelvetelStatuszaTipusEnum.Fuggoben, IsKorzetes = entity.EletvitelszeruOttLakasKorzetes }); var jsonData = JsonConvert.SerializeObject(obj); //Eügy visszaszinkron POST var eUgyClient = new EugyintezesClient(_eugyintezesClientConfiguration); var eUgyResult = eUgyClient.NebuloInsert(entity.Intezmeny.Azonosito, jsonData); var eUgyResultModel = JsonConvert.DeserializeObject>(eUgyResult.Content); InsertEugyintezesLog(nebuloDto.Ugyiratszam, EugyTipusEnum.BAIStatusUpdate, json, eUgyResult.Content); if (eUgyResult.StatusCode != HttpStatusCode.OK) { var njObj = new List(); njObj.Add(new { OktatasiAzonosito = entity.OktatasiAzonositoSzama, SzuletesiDatum = entity.SzuletesiIdo, Statusz = (int)FelvetelStatuszaTipusEnum.NemJelentMeg, IsKorzetes = entity.EletvitelszeruOttLakasKorzetes }); var njJsonData = JsonConvert.SerializeObject(njObj); //Eügy visszaszinkron POST var njEUgyResult = eUgyClient.NebuloInsert(entity.Intezmeny.Azonosito, njJsonData); var eUgyResultModel2 = JsonConvert.DeserializeObject>(njEUgyResult.Content); InsertEugyintezesLog(nebuloDto.Ugyiratszam, EugyTipusEnum.BAIStatusUpdate, json, njEUgyResult.Content); if (njEUgyResult.StatusCode == HttpStatusCode.OK) { entity.FelvetelStatusza = (int)FelvetelStatuszaTipusEnum.NemJelentMeg; entity.EugybaiRogzitett = true; dal.Insert(entity); } } } }); InsertEugyintezesLog(nebuloDto.Ugyiratszam, EugyTipusEnum.BAI, json, null); return true; //Kell egy visszatérési érték KI NE TÖRÖLD!!!!! } catch (Exception e) { InsertEugyintezesLog(nebuloDto.Ugyiratszam, EugyTipusEnum.BAI, json, e.InnerException != null ? e.InnerException.ToString() : e.ToString()); throw; } } private GetNebuloModel GetNebuloId(NebuloDto nebuloDto, INebuloDal dal) { var result = new GetNebuloModel(); if (nebuloDto.SzemelyesAdatok != null && !string.IsNullOrWhiteSpace(nebuloDto.SzemelyesAdatok.TanuloOktatasiAzonosito)) { result.NebulodId = dal.GetNebuloIdByOktatasiAzonosito(nebuloDto.SzemelyesAdatok.TanuloOktatasiAzonosito, nebuloDto.SzemelyesAdatok.SzuletesiIdo); } if (result.NebulodId == 0) { result.NebulodId = dal.GetNebuloBy4TOktatasiAzonositoNelkul(nebuloDto.SzemelyesAdatok.TanuloElotag, nebuloDto.SzemelyesAdatok.TanuloCsaladinev, nebuloDto.SzemelyesAdatok.TanuloUtonev, nebuloDto.SzemelyesAdatok.AnyjaSzuletesiCsaladnev, nebuloDto.SzemelyesAdatok.AnyjaSzuletesiUtonev, nebuloDto.SzemelyesAdatok.SzuletesiHely, nebuloDto.SzemelyesAdatok.SzuletesiIdo); result.OktAzonInsert = true; } return result; } public class GetNebuloModel { public int NebulodId { get; set; } = 0; public bool OktAzonInsert { get; set; } = false; } private INebulo ConvertDtoToEntity(int nebuloId, NebuloDto dto, INebuloDal dal) { var entity = dal.Get(); if (nebuloId != 0) { entity = dal.Get(nebuloId); entity.IsOktAzonNelkuli = false; } if (entity.FelvetelStatusza != (int)FelvetelStatuszaTipusEnum.Felveve && entity.FelvetelStatusza != (int)FelvetelStatuszaTipusEnum.NemFelveve) { entity.FelvetelStatusza = (int)FelvetelStatuszaTipusEnum.Fuggoben; } entity.Tagozat = (int)TagozatTipusEnum.Normal_egesz_napos_iskola; entity.EugySzam = dto.Ugyiratszam; entity.Megjegyzes = dto.Indoklas; ConvertSzemelyesAdatok(entity, dto.SzemelyesAdatok); ConvertValasztottIntezmeny(entity, dto.ValasztottIntezmeny); //ConvertIgazolvanyok(entity, dto.Igazolvanyok); ConvertElerhetosegek(entity, dto.Elerhetosegek); ConvertGondviselok(entity, dto.Gondviselok); ConvertOvoda(entity, dto.Ovoda); ConvertIskolaErettseg(entity, dto.IskolaErettseg); ConvertNemzetisegiOktatas(entity, dto.NemzetisegiOktatas); //ConvertIskolaiTavozas(entity, dto.IskolaiTavozas); ConvertEtikaHitErkolcstan(entity, dto.EtikaHitErkolcstan); ConvertValasztottTagozat(entity, dto.ValasztottTagozat); //ConvertEtkezes(entity, dto.Etkezes); return entity; } private INebulo ConvertSzemelyesAdatok(INebulo entity, SzemelyesAdatokDto dto) { if (!string.IsNullOrWhiteSpace(dto.TanuloElotag)) { entity.Elotag = dto.TanuloElotag; } if (!string.IsNullOrWhiteSpace(dto.TanuloCsaladinev)) { entity.TanuloCsaladiNeve = dto.TanuloCsaladinev; entity.SzuletesiCsaladiNeve = dto.TanuloCsaladinev; } if (!string.IsNullOrWhiteSpace(dto.TanuloUtonev)) { entity.TanuloUtoneve = dto.TanuloUtonev; entity.SzuletesiUtoneve = dto.TanuloUtonev; } if (!string.IsNullOrWhiteSpace(dto.TanuloOktatasiAzonosito)) { entity.OktatasiAzonositoSzama = dto.TanuloOktatasiAzonosito; } if (!string.IsNullOrWhiteSpace(dto.SzuletesiHely)) { entity.SzuletesiHely = dto.SzuletesiHely; } if (dto.SzuletesiIdo != default(DateTime)) { entity.SzuletesiIdo = dto.SzuletesiIdo; } if (!string.IsNullOrWhiteSpace(dto.AnyjaSzuletesiCsaladnev)) { entity.EdesanyjaSzuletesiCsaladiNeve = dto.AnyjaSzuletesiCsaladnev; } if (!string.IsNullOrWhiteSpace(dto.AnyjaSzuletesiUtonev)) { entity.EdesanyjaSzuletesiUtoneve = dto.AnyjaSzuletesiUtonev; } if (dto.Nem != null) { if (dto.Nem.ToUpper() == "F") { entity.Neme = (int)NemEnum.Ferfi; } else if (dto.Nem.ToUpper() == "N") { entity.Neme = (int)NemEnum.No; } } else { entity.Neme = (int)NemEnum.NA; } if (dto.SzuletesiOrszag.KretaAzonosito != default(int)) { entity.SzuletesiOrszag = dto.SzuletesiOrszag.KretaAzonosito; } //entity = dto.SzemelyesAdatok.SzuletesiOrszag.Nev; if (dto.Allampolgarsag.KretaAzonosito != default(int)) { entity.Allampolgarsaga = dto.Allampolgarsag.KretaAzonosito; } //entity = dto.SzemelyesAdatok.Allampolgarsag.Nev; if (dto.Anyanyelv.KretaAzonosito != default(int)) { entity.Anyanyelve = dto.Anyanyelv.KretaAzonosito; } //entity = dto.Anyanyelv.Nev; return entity; } private INebulo ConvertValasztottIntezmeny(INebulo entity, ValasztottIntezmenyDto dto) { if (dto.Azonosito != default(int)) { entity.IntezmenyId = IntezmenyId; } //entity = dto.Nev; return entity; } private INebulo ConvertValasztottTagozat(INebulo entity, ValasztottTagozatDto dto) { if (dto != null && !string.IsNullOrWhiteSpace(dto.Nev)) { entity.Tagozatnev = dto.Nev; } return entity; } private INebulo ConvertIgazolvanyok(INebulo entity, IgazolvanyokDto dto) { //entity = dto.SzemelyiIgazolvanySzam; //entity = dto.TajSzam; //entity = dto.Adoszam; return entity; } private INebulo ConvertElerhetosegek(INebulo entity, ElerhetosegekDto dto) { if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.Ajto)) entity.Ajto = dto.Lakohely.AllandoLakhely.Ajto; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.Emelet)) entity.Emelet = dto.Lakohely.AllandoLakhely.Emelet; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.Hazszam)) entity.Hazszam = dto.Lakohely.AllandoLakhely.Hazszam; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.Helyseg)) entity.HelysegNev = dto.Lakohely.AllandoLakhely.Helyseg; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.Iranyitoszam)) entity.Iranyitoszam = dto.Lakohely.AllandoLakhely.Iranyitoszam; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.KozteruletNeve)) entity.KozteruletNev = dto.Lakohely.AllandoLakhely.KozteruletNeve; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.KozteruletJellege)) entity.KozteruletJellegeNev = dto.Lakohely.AllandoLakhely.KozteruletJellege; if (dto.Lakohely.AllandoLakhely.Orszag != null && dto.Lakohely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) entity.OrszagTipusId = dto.Lakohely.AllandoLakhely.Orszag.KretaAzonosito.Value; //entity = dto.Lakohely.AllandoLakhely.KozteruletJellege.Nev; if (dto.Lakohely.EletvitelszeruLakhely != null) { if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.Ajto)) entity.THAjto = dto.Lakohely.EletvitelszeruLakhely.Ajto; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.Emelet)) entity.THEmelet = dto.Lakohely.EletvitelszeruLakhely.Emelet; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.Hazszam)) entity.THHazszam = dto.Lakohely.EletvitelszeruLakhely.Hazszam; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.Helyseg)) entity.THHelysegNev = dto.Lakohely.EletvitelszeruLakhely.Helyseg; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.Iranyitoszam)) entity.THIranyitoszam = dto.Lakohely.EletvitelszeruLakhely.Iranyitoszam; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.KozteruletNeve)) entity.THKozteruletNev = dto.Lakohely.EletvitelszeruLakhely.KozteruletNeve; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.KozteruletJellege)) entity.THKozteruletJellegeNev = dto.Lakohely.EletvitelszeruLakhely.KozteruletJellege; if (dto.Lakohely.EletvitelszeruLakhely.Orszag != null && dto.Lakohely.EletvitelszeruLakhely.Orszag.KretaAzonosito.HasValue) entity.THOrszagTipusId = dto.Lakohely.EletvitelszeruLakhely.Orszag.KretaAzonosito.Value; } //entity = dto.Lakohely.EletvitelszeruLakhely.KozteruletJellege.Nev; entity.TartozkodasiHelyAzonos = dto.Lakohely.EletvitelszeruLakhelyEgyezik; return entity; } private INebulo ConvertGondviselok(INebulo entity, List dto) { var NebuloTK1 = GetNebuloTK(entity, 1); var NebuloTK2 = GetNebuloTK(entity, 2); if (dto.Count == 2) { entity.TKNeve = dto[0].CsaladiNev + " " + dto[0].Utonev; entity.TKSzuletesiNev = dto[0].SzuletesiCsaladnev + " " + dto[0].SzuletesiUtonev; if (dto[0].TorvenyesKepviseletJogalapja != null) { entity.TKJogalapTipusId = MappingJogalap(dto[0].TorvenyesKepviseletJogalapja.Azonosito); } //if (dto[0].RokonsagiFok.KretaAzonosito != 0) //{ entity.TKRokonsagiFoka = dto[0].RokonsagiFok.KretaAzonosito; } //else //{ entity.TKRokonsagiFoka = (int)RokonsagiFokEnum.na; } entity.TKEmailCim = dto[0].EMail; entity.TKTelefon = dto[0].Telefonszam; entity.KepviseloCimeAzonos = dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel; if (!dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel) { entity.TKIranyitoszam = dto[0].Lakhely.AllandoLakhely.Iranyitoszam; entity.TKHelysegNev = dto[0].Lakhely.AllandoLakhely.Helyseg; entity.TKKozteruletNev = dto[0].Lakhely.AllandoLakhely.KozteruletNeve; entity.TKKozteruletJellegeNev = dto[0].Lakhely.AllandoLakhely.KozteruletJellege; entity.TKHazszam = dto[0].Lakhely.AllandoLakhely.Hazszam; entity.TKEmelet = dto[0].Lakhely.AllandoLakhely.Emelet; entity.TKAjto = dto[0].Lakhely.AllandoLakhely.Ajto; if (dto[0].Lakhely.AllandoLakhely.Orszag != null && dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) entity.TKOrszagTipusId = dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; } else { entity.TKIranyitoszam = null; entity.TKHelysegNev = null; entity.TKKozteruletNev = null; entity.TKKozteruletJellegeNev = null; entity.TKHazszam = null; entity.TKEmelet = null; entity.TKAjto = null; } entity.TKNeve2 = dto[1].CsaladiNev + " " + dto[1].Utonev; entity.TKSzuletesiNev2 = dto[1].SzuletesiCsaladnev + " " + dto[1].SzuletesiUtonev; if (dto[1].TorvenyesKepviseletJogalapja != null) { entity.TKJogalapTipus2Id = MappingJogalap(dto[1].TorvenyesKepviseletJogalapja.Azonosito); } //if (dto[1].RokonsagiFok.KretaAzonosito != 0) //{ entity.TKRokonsagiFoka2 = dto[1].RokonsagiFok.KretaAzonosito; } //else //{ entity.TKRokonsagiFoka2 = (int)RokonsagiFokEnum.na; } entity.TKEmailCim2 = dto[1].EMail; entity.TKTelefon2 = dto[1].Telefonszam; entity.Kepviselo2CimeAzonos = dto[1].LakohelyEgyezikTanuloAllandoLakhelyevel; if (!dto[1].LakohelyEgyezikTanuloAllandoLakhelyevel) { entity.TKIranyitoszam2 = dto[1].Lakhely.AllandoLakhely.Iranyitoszam; entity.TKHelysegNev2 = dto[1].Lakhely.AllandoLakhely.Helyseg; entity.TKKozteruletNev2 = dto[1].Lakhely.AllandoLakhely.KozteruletNeve; entity.TKKozteruletJellegeNev2 = dto[1].Lakhely.AllandoLakhely.KozteruletJellege; entity.TKHazszam2 = dto[1].Lakhely.AllandoLakhely.Hazszam; entity.TKEmelet2 = dto[1].Lakhely.AllandoLakhely.Emelet; entity.TKAjto2 = dto[1].Lakhely.AllandoLakhely.Ajto; if (dto[1].Lakhely.AllandoLakhely.Orszag != null && dto[1].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) entity.TKOrszagTipusId2 = dto[1].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; } else { entity.TKIranyitoszam2 = null; entity.TKHelysegNev2 = null; entity.TKKozteruletNev2 = null; entity.TKKozteruletJellegeNev2 = null; entity.TKHazszam2 = null; entity.TKEmelet2 = null; entity.TKAjto2 = null; } } if (dto.Count == 1) { if (string.IsNullOrWhiteSpace(NebuloTK1.Nev) && string.IsNullOrWhiteSpace(NebuloTK2.Nev)) { entity.TKNeve = dto[0].CsaladiNev + " " + dto[0].Utonev; entity.TKSzuletesiNev = dto[0].SzuletesiCsaladnev + " " + dto[0].SzuletesiUtonev; if (dto[0].TorvenyesKepviseletJogalapja != null) { entity.TKJogalapTipusId = MappingJogalap(dto[0].TorvenyesKepviseletJogalapja.Azonosito); } //if (dto[0].RokonsagiFok.KretaAzonosito != 0) //{ entity.TKRokonsagiFoka = dto[0].RokonsagiFok.KretaAzonosito; } //else //{ entity.TKRokonsagiFoka = (int)RokonsagiFokEnum.na; } entity.TKEmailCim = dto[0].EMail; entity.TKTelefon = dto[0].Telefonszam; entity.KepviseloCimeAzonos = dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel; if (!dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel) { entity.TKIranyitoszam = dto[0].Lakhely.AllandoLakhely.Iranyitoszam; entity.TKHelysegNev = dto[0].Lakhely.AllandoLakhely.Helyseg; entity.TKKozteruletNev = dto[0].Lakhely.AllandoLakhely.KozteruletNeve; entity.TKKozteruletJellegeNev = dto[0].Lakhely.AllandoLakhely.KozteruletJellege; entity.TKHazszam = dto[0].Lakhely.AllandoLakhely.Hazszam; entity.TKEmelet = dto[0].Lakhely.AllandoLakhely.Emelet; entity.TKAjto = dto[0].Lakhely.AllandoLakhely.Ajto; if (dto[0].Lakhely.AllandoLakhely.Orszag != null && dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) entity.TKOrszagTipusId = dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; } else { entity.TKIranyitoszam = null; entity.TKHelysegNev = null; entity.TKKozteruletNev = null; entity.TKKozteruletJellegeNev = null; entity.TKHazszam = null; entity.TKEmelet = null; entity.TKAjto = null; } } else if (!string.IsNullOrWhiteSpace(NebuloTK1.Nev) && string.IsNullOrWhiteSpace(NebuloTK2.Nev) && NebuloTK1.Nev == dto[0].CsaladiNev + " " + dto[0].Utonev) { entity.TKNeve = dto[0].CsaladiNev + " " + dto[0].Utonev; entity.TKSzuletesiNev = dto[0].SzuletesiCsaladnev + " " + dto[0].SzuletesiUtonev; if (dto[0].TorvenyesKepviseletJogalapja != null) { entity.TKJogalapTipusId = MappingJogalap(dto[0].TorvenyesKepviseletJogalapja.Azonosito); } //if (dto[0].RokonsagiFok.KretaAzonosito != 0) //{ entity.TKRokonsagiFoka = dto[0].RokonsagiFok.KretaAzonosito; } //else //{ entity.TKRokonsagiFoka = (int)RokonsagiFokEnum.na; } entity.TKEmailCim = dto[0].EMail; entity.TKTelefon = dto[0].Telefonszam; entity.KepviseloCimeAzonos = dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel; if (!dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel) { entity.TKIranyitoszam = dto[0].Lakhely.AllandoLakhely.Iranyitoszam; entity.TKHelysegNev = dto[0].Lakhely.AllandoLakhely.Helyseg; entity.TKKozteruletNev = dto[0].Lakhely.AllandoLakhely.KozteruletNeve; entity.TKKozteruletJellegeNev = dto[0].Lakhely.AllandoLakhely.KozteruletJellege; entity.TKHazszam = dto[0].Lakhely.AllandoLakhely.Hazszam; entity.TKEmelet = dto[0].Lakhely.AllandoLakhely.Emelet; entity.TKAjto = dto[0].Lakhely.AllandoLakhely.Ajto; if (dto[0].Lakhely.AllandoLakhely.Orszag != null && dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) entity.TKOrszagTipusId = dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; } else { entity.TKIranyitoszam = null; entity.TKHelysegNev = null; entity.TKKozteruletNev = null; entity.TKKozteruletJellegeNev = null; entity.TKHazszam = null; entity.TKEmelet = null; entity.TKAjto = null; } } else if (!string.IsNullOrWhiteSpace(NebuloTK1.Nev) && string.IsNullOrWhiteSpace(NebuloTK2.Nev) && NebuloTK1.Nev != dto[0].CsaladiNev + " " + dto[0].Utonev) { entity.TKNeve2 = dto[0].CsaladiNev + " " + dto[0].Utonev; entity.TKSzuletesiNev2 = dto[0].SzuletesiCsaladnev + " " + dto[0].SzuletesiUtonev; if (dto[0].TorvenyesKepviseletJogalapja != null) { entity.TKJogalapTipus2Id = MappingJogalap(dto[0].TorvenyesKepviseletJogalapja.Azonosito); } //if (dto[0].RokonsagiFok.KretaAzonosito != 0) //{ entity.TKRokonsagiFoka2 = dto[0].RokonsagiFok.KretaAzonosito; } //else //{ entity.TKRokonsagiFoka2 = (int)RokonsagiFokEnum.na; } entity.TKEmailCim2 = dto[0].EMail; entity.TKTelefon2 = dto[0].Telefonszam; entity.Kepviselo2CimeAzonos = dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel; if (!dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel) { entity.TKIranyitoszam2 = dto[0].Lakhely.AllandoLakhely.Iranyitoszam; entity.TKHelysegNev2 = dto[0].Lakhely.AllandoLakhely.Helyseg; entity.TKKozteruletNev2 = dto[0].Lakhely.AllandoLakhely.KozteruletNeve; entity.TKKozteruletJellegeNev2 = dto[0].Lakhely.AllandoLakhely.KozteruletJellege; entity.TKHazszam2 = dto[0].Lakhely.AllandoLakhely.Hazszam; entity.TKEmelet2 = dto[0].Lakhely.AllandoLakhely.Emelet; entity.TKAjto2 = dto[0].Lakhely.AllandoLakhely.Ajto; if (dto[0].Lakhely.AllandoLakhely.Orszag != null && dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) entity.TKOrszagTipusId2 = dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; } else { entity.TKIranyitoszam2 = null; entity.TKHelysegNev2 = null; entity.TKKozteruletNev2 = null; entity.TKKozteruletJellegeNev2 = null; entity.TKHazszam2 = null; entity.TKEmelet2 = null; entity.TKAjto2 = null; } } else if (string.IsNullOrWhiteSpace(NebuloTK1.Nev) && !string.IsNullOrWhiteSpace(NebuloTK2.Nev) && NebuloTK2.Nev == dto[0].CsaladiNev + " " + dto[0].Utonev) { entity.TKNeve2 = dto[0].CsaladiNev + " " + dto[0].Utonev; entity.TKSzuletesiNev2 = dto[0].SzuletesiCsaladnev + " " + dto[0].SzuletesiUtonev; if (dto[0].TorvenyesKepviseletJogalapja != null) { entity.TKJogalapTipus2Id = MappingJogalap(dto[0].TorvenyesKepviseletJogalapja.Azonosito); } //if (dto[0].RokonsagiFok.KretaAzonosito != 0) //{ entity.TKRokonsagiFoka2 = dto[0].RokonsagiFok.KretaAzonosito; } //else //{ entity.TKRokonsagiFoka2 = (int)RokonsagiFokEnum.na; } entity.TKEmailCim2 = dto[0].EMail; entity.TKTelefon2 = dto[0].Telefonszam; entity.Kepviselo2CimeAzonos = dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel; if (!dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel) { entity.TKIranyitoszam2 = dto[0].Lakhely.AllandoLakhely.Iranyitoszam; entity.TKHelysegNev2 = dto[0].Lakhely.AllandoLakhely.Helyseg; entity.TKKozteruletNev2 = dto[0].Lakhely.AllandoLakhely.KozteruletNeve; entity.TKKozteruletJellegeNev2 = dto[0].Lakhely.AllandoLakhely.KozteruletJellege; entity.TKHazszam2 = dto[0].Lakhely.AllandoLakhely.Hazszam; entity.TKEmelet2 = dto[0].Lakhely.AllandoLakhely.Emelet; entity.TKAjto2 = dto[0].Lakhely.AllandoLakhely.Ajto; if (dto[0].Lakhely.AllandoLakhely.Orszag != null && dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) entity.TKOrszagTipusId2 = dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; } else { entity.TKIranyitoszam2 = null; entity.TKHelysegNev2 = null; entity.TKKozteruletNev2 = null; entity.TKKozteruletJellegeNev2 = null; entity.TKHazszam2 = null; entity.TKEmelet2 = null; entity.TKAjto2 = null; } } else if (string.IsNullOrWhiteSpace(NebuloTK1.Nev) && !string.IsNullOrWhiteSpace(NebuloTK2.Nev) && NebuloTK2.Nev != dto[0].CsaladiNev + " " + dto[0].Utonev) { entity.TKNeve = dto[0].CsaladiNev + " " + dto[0].Utonev; entity.TKSzuletesiNev = dto[0].SzuletesiCsaladnev + " " + dto[0].SzuletesiUtonev; if (dto[0].TorvenyesKepviseletJogalapja != null) { entity.TKJogalapTipusId = MappingJogalap(dto[0].TorvenyesKepviseletJogalapja.Azonosito); } //if (dto[0].RokonsagiFok.KretaAzonosito != 0) //{ entity.TKRokonsagiFoka = dto[0].RokonsagiFok.KretaAzonosito; } //else //{ entity.TKRokonsagiFoka = (int)RokonsagiFokEnum.na; } entity.TKEmailCim = dto[0].EMail; entity.TKTelefon = dto[0].Telefonszam; entity.KepviseloCimeAzonos = dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel; if (!dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel) { entity.TKIranyitoszam = dto[0].Lakhely.AllandoLakhely.Iranyitoszam; entity.TKHelysegNev = dto[0].Lakhely.AllandoLakhely.Helyseg; entity.TKKozteruletNev = dto[0].Lakhely.AllandoLakhely.KozteruletNeve; entity.TKKozteruletJellegeNev = dto[0].Lakhely.AllandoLakhely.KozteruletJellege; entity.TKHazszam = dto[0].Lakhely.AllandoLakhely.Hazszam; entity.TKEmelet = dto[0].Lakhely.AllandoLakhely.Emelet; entity.TKAjto = dto[0].Lakhely.AllandoLakhely.Ajto; if (dto[0].Lakhely.AllandoLakhely.Orszag != null && dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) entity.TKOrszagTipusId = dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; } else { entity.TKIranyitoszam = null; entity.TKHelysegNev = null; entity.TKKozteruletNev = null; entity.TKKozteruletJellegeNev = null; entity.TKHazszam = null; entity.TKEmelet = null; entity.TKAjto = null; } } else if (!string.IsNullOrWhiteSpace(NebuloTK1.Nev) && !string.IsNullOrWhiteSpace(NebuloTK2.Nev) && NebuloTK1.Nev == dto[0].CsaladiNev + " " + dto[0].Utonev && NebuloTK2.Nev != dto[0].CsaladiNev + " " + dto[0].Utonev) { entity.TKNeve = dto[0].CsaladiNev + " " + dto[0].Utonev; entity.TKSzuletesiNev = dto[0].SzuletesiCsaladnev + " " + dto[0].SzuletesiUtonev; if (dto[0].TorvenyesKepviseletJogalapja != null) { entity.TKJogalapTipusId = MappingJogalap(dto[0].TorvenyesKepviseletJogalapja.Azonosito); } //if (dto[0].RokonsagiFok.KretaAzonosito != 0) //{ entity.TKRokonsagiFoka = dto[0].RokonsagiFok.KretaAzonosito; } //else //{ entity.TKRokonsagiFoka = (int)RokonsagiFokEnum.na; } entity.TKEmailCim = dto[0].EMail; entity.TKTelefon = dto[0].Telefonszam; entity.KepviseloCimeAzonos = dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel; if (!dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel) { entity.TKIranyitoszam = dto[0].Lakhely.AllandoLakhely.Iranyitoszam; entity.TKHelysegNev = dto[0].Lakhely.AllandoLakhely.Helyseg; entity.TKKozteruletNev = dto[0].Lakhely.AllandoLakhely.KozteruletNeve; entity.TKKozteruletJellegeNev = dto[0].Lakhely.AllandoLakhely.KozteruletJellege; entity.TKHazszam = dto[0].Lakhely.AllandoLakhely.Hazszam; entity.TKEmelet = dto[0].Lakhely.AllandoLakhely.Emelet; entity.TKAjto = dto[0].Lakhely.AllandoLakhely.Ajto; if (dto[0].Lakhely.AllandoLakhely.Orszag != null && dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) entity.TKOrszagTipusId = dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; } else { entity.TKIranyitoszam = null; entity.TKHelysegNev = null; entity.TKKozteruletNev = null; entity.TKKozteruletJellegeNev = null; entity.TKHazszam = null; entity.TKEmelet = null; entity.TKAjto = null; } } else if (!string.IsNullOrWhiteSpace(NebuloTK1.Nev) && !string.IsNullOrWhiteSpace(NebuloTK2.Nev) && NebuloTK1.Nev != dto[0].CsaladiNev + " " + dto[0].Utonev && NebuloTK2.Nev == dto[0].CsaladiNev + " " + dto[0].Utonev) { entity.TKNeve2 = dto[0].CsaladiNev + " " + dto[0].Utonev; entity.TKSzuletesiNev2 = dto[0].SzuletesiCsaladnev + " " + dto[0].SzuletesiUtonev; if (dto[0].TorvenyesKepviseletJogalapja != null) { entity.TKJogalapTipus2Id = MappingJogalap(dto[0].TorvenyesKepviseletJogalapja.Azonosito); } //if (dto[0].RokonsagiFok.KretaAzonosito != 0) //{ entity.TKRokonsagiFoka2 = dto[0].RokonsagiFok.KretaAzonosito; } //else //{ entity.TKRokonsagiFoka2 = (int)RokonsagiFokEnum.na; } entity.TKEmailCim2 = dto[0].EMail; entity.TKTelefon2 = dto[0].Telefonszam; entity.Kepviselo2CimeAzonos = dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel; if (!dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel) { entity.TKIranyitoszam2 = dto[0].Lakhely.AllandoLakhely.Iranyitoszam; entity.TKHelysegNev2 = dto[0].Lakhely.AllandoLakhely.Helyseg; entity.TKKozteruletNev2 = dto[0].Lakhely.AllandoLakhely.KozteruletNeve; entity.TKKozteruletJellegeNev2 = dto[0].Lakhely.AllandoLakhely.KozteruletJellege; entity.TKHazszam2 = dto[0].Lakhely.AllandoLakhely.Hazszam; entity.TKEmelet2 = dto[0].Lakhely.AllandoLakhely.Emelet; entity.TKAjto2 = dto[0].Lakhely.AllandoLakhely.Ajto; if (dto[0].Lakhely.AllandoLakhely.Orszag != null && dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) entity.TKOrszagTipusId2 = dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; } else { entity.TKIranyitoszam2 = null; entity.TKHelysegNev2 = null; entity.TKKozteruletNev2 = null; entity.TKKozteruletJellegeNev2 = null; entity.TKHazszam2 = null; entity.TKEmelet2 = null; entity.TKAjto2 = null; } } else if (!string.IsNullOrWhiteSpace(NebuloTK1.Nev) && !string.IsNullOrWhiteSpace(NebuloTK2.Nev) && NebuloTK1.Nev != dto[0].CsaladiNev + " " + dto[0].Utonev && NebuloTK2.Nev != dto[0].CsaladiNev + " " + dto[0].Utonev) { entity.TKNeve = dto[0].CsaladiNev + " " + dto[0].Utonev; entity.TKSzuletesiNev = dto[0].SzuletesiCsaladnev + " " + dto[0].SzuletesiUtonev; if (dto[0].TorvenyesKepviseletJogalapja != null) { entity.TKJogalapTipusId = MappingJogalap(dto[0].TorvenyesKepviseletJogalapja.Azonosito); } //if (dto[0].RokonsagiFok.KretaAzonosito != 0) //{ entity.TKRokonsagiFoka = dto[0].RokonsagiFok.KretaAzonosito; } //else //{ entity.TKRokonsagiFoka = (int)RokonsagiFokEnum.na; } entity.TKEmailCim = dto[0].EMail; entity.TKTelefon = dto[0].Telefonszam; entity.KepviseloCimeAzonos = dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel; if (!dto[0].LakohelyEgyezikTanuloAllandoLakhelyevel) { entity.TKIranyitoszam = dto[0].Lakhely.AllandoLakhely.Iranyitoszam; entity.TKHelysegNev = dto[0].Lakhely.AllandoLakhely.Helyseg; entity.TKKozteruletNev = dto[0].Lakhely.AllandoLakhely.KozteruletNeve; entity.TKKozteruletJellegeNev = dto[0].Lakhely.AllandoLakhely.KozteruletJellege; entity.TKHazszam = dto[0].Lakhely.AllandoLakhely.Hazszam; entity.TKEmelet = dto[0].Lakhely.AllandoLakhely.Emelet; entity.TKAjto = dto[0].Lakhely.AllandoLakhely.Ajto; if (dto[0].Lakhely.AllandoLakhely.Orszag != null && dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) entity.TKOrszagTipusId = dto[0].Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; } else { entity.TKIranyitoszam = null; entity.TKHelysegNev = null; entity.TKKozteruletNev = null; entity.TKKozteruletJellegeNev = null; entity.TKHazszam = null; entity.TKEmelet = null; entity.TKAjto = null; } entity.TKNeve2 = null; entity.TKSzuletesiNev2 = null; entity.TKJogalapTipus2Id = null; entity.TKRokonsagiFoka2 = null; entity.TKEmailCim2 = null; entity.TKTelefon2 = null; entity.Kepviselo2CimeAzonos = true; entity.TKIranyitoszam2 = null; entity.TKHelysegNev2 = null; entity.TKKozteruletNev2 = null; entity.TKKozteruletJellegeNev2 = null; entity.TKHazszam2 = null; entity.TKEmelet2 = null; entity.TKAjto2 = null; } } return entity; } private INebulo ConvertOvoda(INebulo entity, OvodaDto dto) { //if (!string.IsNullOrWhiteSpace(dto.Nev)) // entity.OvodaNeve = dto.Nev; entity.OvodaiEvek = dto.EltoltottEvekSzama; //entity.IsNemMagyarOvoda = dto.NemMagyarorszagiOvodavalAllJogviszonyban; //if (!string.IsNullOrWhiteSpace(dto.OvodaOMAzonosito)) // entity.OvodaAzonosito = dto.OvodaOMAzonosito; //entity = dto.IskolabaLepeshezSzuksegesFejlettseg; //entity = dto.Lakcim.Ajto; //entity = dto.Lakcim.Emelet; //entity = dto.Lakcim.Hazszam; //entity = dto.Lakcim.Helyseg; //entity = dto.Lakcim.Iranyitoszam; //entity = dto.Lakcim.KozteruletJellege.KretaAzonosito; //entity = dto.Lakcim.KozteruletJellege.Nev; //entity = dto.Lakcim.KozteruletNeve; return entity; } private INebulo ConvertIskolaErettseg(INebulo entity, IskolaErettsegDto dto) { entity.SNI = dto.SajatosNevelesiIgenyu; entity.SNILetszamSuly = 1; //Fixen égetni kell az 1-et mert nem kapunk adatot az eügytől entity.BTM = dto.BeilleszkedesiNehezsegu; entity.BTMLetszamSuly = 1; //Fixen égetni kell az 1-et mert nem kapunk adatot az eügytől entity.SzulojeTestvereTartosanBetegVagyFogyatekkalElo = dto.SzulojeTestvereTartosanBeteg; entity.TestvereAzIntezmenyTanuloja = dto.TestvereIntezmenyTanuloja; entity.SzulojenekMunkahelyeAzIskolaKorzetebenTalalhato = dto.MunkaltatoiIgazolasIskolaKorzeteben; entity.AzIskolaALakohelyetolEgyKilometerenBelulTalalhato = dto.IskolaEgyKilometerenBelül; entity.HatranyosHelyzetTipusId = dto.HatranyosHelyzet.KretaAzonosito; return entity; } private INebulo ConvertNemzetisegiOktatas(INebulo entity, NemzetisegiOktatasDto dto) { if (dto.Nemzetiseg != null) { switch (dto.Nemzetiseg.Azonosito) { case 1: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.bolgar; break; case 2: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.gorog; break; case 3: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.horvat; break; case 4: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.lengyel; break; case 5: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.nemet; break; case 6: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.ormeny; break; case 7: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.roma; break; case 8: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.roman; break; case 9: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.ruszin; break; case 10: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.szerb; break; case 11: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.szlovak; break; case 12: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.szloven; break; case 13: entity.NemzetisegTipusId = (int)NemzetisegTipusEnum.ukran; break; } } return entity; } private int? MappingJogalap(int eugyId) { int? result = null; switch (eugyId) { case 1: result = (int)TKJogalapTipusEnum.szulo; break; case 2: result = (int)TKJogalapTipusEnum.gyam; break; } return result; } private INebulo ConvertIskolaiTavozas(INebulo entity, IskolaiTavozasDto dto) { //entity = dto.TavozastKer; return entity; } private INebulo ConvertEtikaHitErkolcstan(INebulo entity, EtikaHitErkolcstanDto dto) { if (dto.ValasztottTantargy != null && dto.ValasztottTantargy.Azonosito != default(int)) entity.EtikaHitErkolcstan = dto.ValasztottTantargy.Azonosito; if (dto.Egyhaz != null) { switch (dto.Egyhaz.Azonosito) { case 1: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyar_katolikus_egyhaz; break; case 2: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_reformatus_egyhaz; break; case 3: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_evangelikus_egyhaz; break; case 4: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_zsido_hitkozsegek_szovetsege; break; case 5: entity.FelekezetTipusId = (int)FelekezetTipusEnum.egyseges_magyarorszagi_izraelita_hitkozseg_statusquo_ante; break; case 6: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_autonom_orthodox_izraelita_hitkozseg; break; case 7: entity.FelekezetTipusId = (int)FelekezetTipusEnum.budai_szerb_ortodox_egyhazmegye; break; case 8: entity.FelekezetTipusId = (int)FelekezetTipusEnum.konstantinapolyi_egyetemes_patriarchatus_magyarorszagi_ortodox_exarchatus; break; case 9: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_bolgar_ortodox_egyhaz; break; case 10: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_roman_ortodox_egyhazmegye; break; case 11: entity.FelekezetTipusId = (int)FelekezetTipusEnum.orosz_ortodox_egyhaz_magyar_egyhazmegyeje_moszkvai_patriarchatus; break; case 12: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyar_unitarius_egyhaz_magyarorszagi_egyhazkerulete_magyarorszagi_unitarius_egyhaz; break; case 13: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_baptista_egyhaz; break; case 14: entity.FelekezetTipusId = (int)FelekezetTipusEnum.hit_gyulekezete; break; case 15: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_metodista_egyhaz; break; case 16: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyar_punkosdi_egyhaz; break; case 17: entity.FelekezetTipusId = (int)FelekezetTipusEnum.szent_margit_anglikan_episzkopalis_egyhaz; break; case 18: entity.FelekezetTipusId = (int)FelekezetTipusEnum.erdelyi_gyulekezet; break; case 19: entity.FelekezetTipusId = (int)FelekezetTipusEnum.hetednapi_adventista_egyhaz; break; case 20: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_kopt_ortodox_egyhaz; break; case 21: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_iszlam_tanacs; break; case 22: entity.FelekezetTipusId = (int)FelekezetTipusEnum.krisztusban_hivo_nazarenus_gyulekezetek; break; case 23: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_krisnatudatu_hivok_kozossege; break; case 24: entity.FelekezetTipusId = (int)FelekezetTipusEnum.az_udvhadsereg_szabadegyhaz_magyarorszag; break; case 25: entity.FelekezetTipusId = (int)FelekezetTipusEnum.az_utolso_napok_szentjeinek_jezus_krisztus_egyhaza; break; case 26: entity.FelekezetTipusId = (int)FelekezetTipusEnum.magyarorszagi_jehova_tanui_egyhaz; break; case 27: entity.FelekezetTipusId = (int)FelekezetTipusEnum.buddhista_vallasi_kozossegek; break; case 28: entity.FelekezetTipusId = (int)FelekezetTipusEnum.nincs_adat; break; case 29: entity.FelekezetTipusId = (int)FelekezetTipusEnum.romai_katolikus_egyhaz; break; case 30: entity.FelekezetTipusId = (int)FelekezetTipusEnum.gorog_katolikus_egyhaz; break; } } return entity; } private INebulo ConvertEtkezes(INebulo entity, EtkezesDto dto) { //entity = dto.EtkezestKer; return entity; } private class NebuloTK { public string Ajto { get; set; } public string Email { get; set; } public string Emelet { get; set; } public string Hazszam { get; set; } public string Helyseg { get; set; } public string Iranyitoszam { get; set; } public int? KozteruletJelleg { get; set; } public string KozetruletNev { get; set; } public string Nev { get; set; } //public int? RokonsagiFok { get; set; } public string Telefon { get; set; } } private NebuloTK GetNebuloTK(INebulo entity, int sorszam) { var result = new NebuloTK() { }; if (sorszam == 1) { result.Ajto = entity.TKAjto; result.Email = entity.TKEmailCim; result.Emelet = entity.TKEmelet; result.Hazszam = entity.TKHazszam; result.Helyseg = entity.TKHelysegNev; result.Iranyitoszam = entity.TKIranyitoszam; result.KozteruletJelleg = ((int)GeneratedAdatszotarTipusEnum.KozteruletJelleg).GetItemIdByTypeAndName(entity.TKKozteruletJellegeNev, TanevId); result.KozetruletNev = entity.TKKozteruletNev; result.Nev = entity.TKNeve; //result.RokonsagiFok = entity.TKRokonsagiFoka; result.Telefon = entity.TKTelefon; } else if (sorszam == 2) { result.Ajto = entity.TKAjto2; result.Email = entity.TKEmailCim2; result.Emelet = entity.TKEmelet2; result.Hazszam = entity.TKHazszam2; result.Helyseg = entity.TKHelysegNev2; result.Iranyitoszam = entity.TKIranyitoszam2; result.KozteruletJelleg = ((int)GeneratedAdatszotarTipusEnum.KozteruletJelleg).GetItemIdByTypeAndName(entity.TKKozteruletJellegeNev2, TanevId); result.KozetruletNev = entity.TKKozteruletNev2; result.Nev = entity.TKNeve2; //result.RokonsagiFok = entity.TKRokonsagiFoka2; result.Telefon = entity.TKTelefon2; } return result; } private void InsertEugyintezesLog(string ugyiratszam, EugyTipusEnum eugyTipus, string json, string exceptionMsg) { Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => { var dal = h.EugyintezesLog(); var entity = dal.Get(); entity.EugyUgyiratszam = ugyiratszam; entity.EugyTipus = (int)eugyTipus; entity.EugyJson = json; entity.Hibauzenet = exceptionMsg; entity.IntezmenyId = IntezmenyId; dal.Insert(entity); }); } public List GetBulkTanulok(List oktatasiAzonositok) { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetBulkTanulok(oktatasiAzonositok, TanevId)); var tanuloDtoList = dataSet.Tables[0].AsEnumerable().Select(dr => new TanuloDto { KretaAzonosito = dr.Field(nameof(TanuloDto.KretaAzonosito)), OktatasiAzonosito = dr.Field(nameof(TanuloDto.OktatasiAzonosito)), Elotag = dr.Field(nameof(TanuloDto.Elotag)), Vezeteknev = dr.Field(nameof(TanuloDto.Vezeteknev)), Keresztnev = dr.Field(nameof(TanuloDto.Keresztnev)), EgyediAzonosito = dr.Field(nameof(TanuloDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(TanuloDto.IdpEgyediAzonosito)), SzuletesiIdo = dr.Field(nameof(TanuloDto.SzuletesiIdo)) }).ToList(); foreach (var tanulo in tanuloDtoList) { tanulo.Osztalyok = GetTanuloOsszesOsztalyanakAdatai(tanulo.KretaAzonosito); } return tanuloDtoList; } public AlkalmazottDto GetElsoAlairo() { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetElsoAlairo(TanevId)); var alkalmazottDto = ds.Tables[0].AsEnumerable().Select(dr => new AlkalmazottDto { KretaAzonosito = dr.Field(nameof(AlkalmazottDto.KretaAzonosito)), OktatasiAzonosito = dr.Field(nameof(AlkalmazottDto.OktatasiAzonosito)), IsAlairo = true, Nev = dr.Field(nameof(AlkalmazottDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), EgyediAzonosito = dr.Field(nameof(AlkalmazottDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(AlkalmazottDto.IdpEgyediAzonosito)) }).FirstOrDefault(); return alkalmazottDto; } public SaveResponseDto SaveIgazolasok(IgazolasDto dto, string json) { try { var result = new SaveResponseDto() { }; if (string.IsNullOrWhiteSpace(dto.Ugyiratszam) || dto.AlkalmazottKretaAzonosito < 1 || dto.IgazolasElsoNapja == null || string.IsNullOrWhiteSpace(dto.IgazolasTipusKod) || string.IsNullOrWhiteSpace(dto.TanuloOktatasiAzonosito) ) { result.Kod = "4"; result.Megnevezes = ErrorResource.KotelezoElemekHianyoznak; return result; } Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => { if (!CheckIsUgyszamExits(h, EugyTipusEnum.Igazolas, dto.Ugyiratszam)) { var helper = new IgazolasHelper(new DalHandlerConnectionType(new MobileConnectionType(dto.AlkalmazottKretaAzonosito, IntezmenyId, ServiceContext.IntezmenyAzonosito, TanevId), h)); var tanulo = h.Tanulo(); var tanuloId = tanulo.GetTanuloIdByOktatasiAzonosito(dto.TanuloOktatasiAzonosito, TanevId); if (tanuloId < 1) { result.Kod = "5"; result.Megnevezes = ErrorResource.NemTalalhatoTanulo; } else { var osztalyId = tanulo.GetTanuloOsztaly(tanuloId, dto.IgazolasElsoNapja.Date).Tables[0].Rows[0].Field("ID"); if (osztalyId < 1) { result.Kod = "6"; result.Megnevezes = ErrorResource.NemTalalhatoOsztaly; } else { var hasAccess = hasAccessToIgazolas(dto.AlkalmazottKretaAzonosito, tanuloId, h); if (hasAccess) { var co = new IgazolasCO() { ErvKezdete = dto.IgazolasElsoNapja, ErvVege = dto.IgazolasUtolsoNapja, IgazolasTipus = MappingIgazolasTipusKod(dto.IgazolasTipusKod), Megjegyzes = dto.IgazolasSzovege, OsztCsop = osztalyId, RogzDatum = DateTime.Now.Date, RogzitoId = dto.AlkalmazottKretaAzonosito, TanuloId = tanuloId, Ugyiratszam = dto.Ugyiratszam }; helper.SaveOrUpdateIgazolas(co); result.Kod = "1"; result.Megnevezes = ErrorResource.SikeresMentes; } else { result.Kod = "2"; result.Megnevezes = ErrorResource.NincsJogaAMenteshez; } } } } else { result.Kod = "3"; result.Megnevezes = ErrorResource.LetezikMarUgyiratszam; } }); InsertEugyintezesLog(dto.Ugyiratszam, EugyTipusEnum.Igazolas, json, null); return result; } catch (Exception e) { InsertEugyintezesLog(dto.Ugyiratszam, EugyTipusEnum.Igazolas, json, e.InnerException != null ? e.InnerException.ToString() : e.ToString()); throw; } } public SaveResponseDto SaveKozossegiszolgalatok(KozossegiSzolgalatDto dto, string json) { try { var result = new SaveResponseDto() { }; if (string.IsNullOrWhiteSpace(dto.Ugyiratszam) || dto.AlkalmazottKretaAzonosito < 1 || dto.TeljesitesKezdeteDatum == null || dto.TeljesitesVegeDatum == null || string.IsNullOrWhiteSpace(dto.SzervezetNeve) || string.IsNullOrWhiteSpace(dto.TanuloOktatasiAzonosito) || dto.TevekenysegKretaAzonosito < 1 || dto.IgazoltOrakSzama < 1 ) { result.Kod = "4"; result.Megnevezes = ErrorResource.KotelezoElemekHianyoznak; return result; } Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => { if (!CheckIsUgyszamExits(h, EugyTipusEnum.KozossegiSzolgalat, dto.Ugyiratszam)) { var tanulo = h.Tanulo(); var tanuloId = tanulo.GetTanuloIdByOktatasiAzonosito(dto.TanuloOktatasiAzonosito, TanevId); if (hasAccessToKozossegSzolgalat(dto.AlkalmazottKretaAzonosito, tanuloId, h)) { if (tanuloId < 1) { result.Kod = "5"; result.Megnevezes = ErrorResource.NemTalalhatoTanulo; } else { var dal = h.TanuloKozossegiSzolgalat(); var entity = dal.Get(); entity.IntezmenyId = IntezmenyId; entity.IntervallumKezdete = dto.TeljesitesKezdeteDatum; entity.IntervallumVege = dto.TeljesitesVegeDatum; entity.Oraszam = dto.IgazoltOrakSzama; entity.TeljesitesiHelye = dto.SzervezetNeve; entity.KozossegiSzolgalatTipusa = dto.TevekenysegKretaAzonosito; entity.TanuloId = tanuloId; entity.FeljegyzoId = dto.AlkalmazottKretaAzonosito; entity.Ugyiratszam = dto.Ugyiratszam; var megj = string.Empty; if (!string.IsNullOrWhiteSpace(dto.Megjegyzes)) megj += dto.Megjegyzes; if (!string.IsNullOrWhiteSpace(dto.NaploSorszama)) { if (megj.Length > 0) megj += " - "; megj += "Napló sorszáma: " + dto.NaploSorszama; } entity.Megjegyzes = megj; dal.Insert(entity); result.Kod = "1"; result.Megnevezes = ErrorResource.SikeresMentes; } } else { result.Kod = "2"; result.Megnevezes = ErrorResource.NincsJogaAMenteshez; } } else { result.Kod = "3"; result.Megnevezes = ErrorResource.LetezikMarUgyiratszam; } }); InsertEugyintezesLog(dto.Ugyiratszam, EugyTipusEnum.KozossegiSzolgalat, json, null); return result; } catch (Exception e) { InsertEugyintezesLog(dto.Ugyiratszam, EugyTipusEnum.KozossegiSzolgalat, json, e.InnerException != null ? e.InnerException.ToString() : e.ToString()); throw; } } public bool GetAlkalmazottModositasiJog(int alkalmazottKretaAzonosito, string jogTipus, string oktatasiAzonosito) { return Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => { if (jogTipus == "TANULO_ADATOK" && alkalmazottKretaAzonosito > 0) { return hasAccessToTanuloAdatok(alkalmazottKretaAzonosito, h); } var tanuloId = h.Tanulo().GetTanuloIdByOktatasiAzonosito(oktatasiAzonosito, TanevId); if (tanuloId == -1) { return false; } if (jogTipus == "KOZOSSEGI_SZOLGALAT" && alkalmazottKretaAzonosito > 0 && alkalmazottKretaAzonosito > 0) { return hasAccessToKozossegSzolgalat(alkalmazottKretaAzonosito, tanuloId, h); } if (jogTipus == "IGAZOLAS" && !string.IsNullOrWhiteSpace(oktatasiAzonosito) && alkalmazottKretaAzonosito > 0) { return hasAccessToIgazolas(alkalmazottKretaAzonosito, tanuloId, h); } return false; }); } private int MappingIgazolasTipusKod(string igazolasTipusKod) { var result = 0; switch (igazolasTipusKod.ToUpper()) { case "ORVOSI": result = (int)IgazolasTipusEnum.orvosi_igazolas; break; case "GONDVISELOI": result = (int)IgazolasTipusEnum.szuloi_igazolas; break; case "HIVATALOS_TAVOLLET": result = (int)IgazolasTipusEnum.hivatalos_tavollet; break; case "SZOLGALTATOI": result = (int)IgazolasTipusEnum.SzolgaltatoiIgazolas; break; case "IGAZGATOI": result = (int)IgazolasTipusEnum.IskolaiEngedely; break; case "KIKERO": result = (int)IgazolasTipusEnum.Kikero; break; case "PALYAVALASZTASI_CELU": result = (int)IgazolasTipusEnum.PalyavalasztasiCeluIgazolas; break; case "HAZIRENDBEN_ROGZITETT_EGYEB": result = (int)IgazolasTipusEnum.egyeb; break; } return result; } private bool hasAccessToKozossegSzolgalat(int alkalmazottKretaAzonosito, int tanuloKretaAzonosito, IDalHandler h) { var entity = h.Alkalmazott(); var data = entity.Get(alkalmazottKretaAzonosito); if (data.KozossegiSzolgalatKezelo) return true; var adminSzerepkor = data.Szerepkor.Where(x => x.SzerepkorTipus == (int)SzerepkorTipusEnum.Adminisztrator && x.Torolt == false).FirstOrDefault(); var naploSzerepkor = data.Szerepkor.Where(x => x.SzerepkorTipus == (int)SzerepkorTipusEnum.Naplo && x.Torolt == false).FirstOrDefault(); var vezetoiOraszamOka = entity.Get(alkalmazottKretaAzonosito).MunkaugyiAdatok[0].VezetoiOraszamok; if ((adminSzerepkor != null && naploSzerepkor != null) || vezetoiOraszamOka == (int)VezetoiOraszamokTipusEnum.Intezmenyvezeto) return true; var tanulo = h.Tanulo(); var osztalyId = tanulo.GetTanuloOsztaly(tanuloKretaAzonosito, DateTime.Now).Tables[0].Rows[0].Field("ID"); if (data.OfoOsztalyai.Where(x => x.ID == osztalyId).FirstOrDefault() != null) return true; var csoportLista = data.VezetoCsoportjai.Where(x => x.FeladatKategoriaId == (int)OktNevelesiKategoriaEnum.NevelesOktatas).ToList(); if (csoportLista.Count > 0) { foreach (var csoport in csoportLista) { foreach (var tanuloCsoport in csoport.Tanulo) { if (tanuloCsoport.TanuloId == tanuloKretaAzonosito) return true; } } } return false; } private bool hasAccessToIgazolas(int alkalmazottKretaAzonosito, int tanuloKretaAzonosito, IDalHandler h) { var osztalyId = 0; var tanulo = h.Tanulo(); var tanuloOsztaly = tanulo.GetTanuloOsztaly(tanuloKretaAzonosito, DateTime.Now, csakAktualis: false); if (tanuloOsztaly.Tables[0].Rows.Count > 0) { osztalyId = tanuloOsztaly.Tables[0].Rows[0].Field("ID"); } else { return false; } var osztaly = h.Osztaly(); if (osztaly.Get(osztalyId).OsztalyFonokId == alkalmazottKretaAzonosito) return true; var alkalmazott = h.EugyintezesDal().GetAlkalmazott(alkalmazottKretaAzonosito, null); if (alkalmazott.Tables[0].Rows.Count == 0) { return false; } var entity = h.Alkalmazott(); var data = entity.Get(alkalmazottKretaAzonosito).MunkaugyiAdatok[0].VezetoiOraszamok; var vezetoiOraszamOka = new List() { VezetoiOraszamokTipusEnum.Intezmenyvezeto, VezetoiOraszamokTipusEnum.IntezmenyvezetoHelyettes, VezetoiOraszamokTipusEnum.TagintezmenyVezeto, VezetoiOraszamokTipusEnum.TagintezmenyvezetoHelyettes, VezetoiOraszamokTipusEnum.IntezmenyegysegVezeto, VezetoiOraszamokTipusEnum.IntezmenyegysegvezetoHelyettes, VezetoiOraszamokTipusEnum.kollegiumvezeto }; var vanJoga = data.IsNotNullAndPositive() && vezetoiOraszamOka.Contains((VezetoiOraszamokTipusEnum)Enum.ToObject(typeof(VezetoiOraszamokTipusEnum), data)); if (vanJoga) return true; return false; } private bool hasAccessToTanuloAdatok(int alkalmazottKretaAzonosito, IDalHandler h) { var entity = h.Alkalmazott(); var data = entity.Get(alkalmazottKretaAzonosito); if (data.Szerepkor.Where(x => x.SzerepkorTipus == (int)SzerepkorTipusEnum.Adminisztrator).FirstOrDefault() != null) return true; return false; } private bool CheckIsUgyszamExits(IDalHandler h, EugyTipusEnum tipus, string ugyiratszam) { if (tipus == EugyTipusEnum.Igazolas) { var dal = h.Feljegyzes(); return dal.CheckUgyiratszamExists(ugyiratszam); } else if (tipus == EugyTipusEnum.KozossegiSzolgalat) { var dal = h.TanuloKozossegiSzolgalat(); return dal.CheckUgyiratszamExists(ugyiratszam); } return true; } public SaveResponseDto GetTanuloLetezik(string oktatasiAzonosito, string elotag, string csaladiNev, string utonev, string szuletesiHely, DateTime szuletesiIdo) { var kovTanevId = -1; var result = new SaveResponseDto() { }; Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => { var tanevHelper = new TanevHelper(new DalHandlerConnectionType(new MobileConnectionType(0, IntezmenyId, ServiceContext.IntezmenyAzonosito, TanevId), h)); kovTanevId = tanevHelper.GetKovTanevId(); }); if (kovTanevId == -1) { result.Kod = "2"; result.Megnevezes = ErrorResource.NincsKovetkezoTanev; return result; } Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => { var tanulo = h.Tanulo(); var tanuloId = -1; tanuloId = tanulo.GetTanuloIdByOktatasiAzonosito(oktatasiAzonosito, kovTanevId); if (tanuloId == -1) { result.Kod = "3"; result.Megnevezes = ErrorResource.NemTalalhatoTanulo; } else { var tanuloData = tanulo.Get(tanuloId); if (!tanuloData.IsKifirImportalt) { result.Kod = "4"; result.Megnevezes = ErrorResource.TanuloNemKifirImportos; } else { var vezeteknevCheck = tanuloData.Vezeteknev.ToUpper() == csaladiNev.ReplaceMultipleSpacesAndTrim()?.ToUpper(); var utonevCheck = tanuloData.Utonev.ToUpper() == utonev.ReplaceMultipleSpacesAndTrim()?.ToUpper(); var szuletesiHelyCheck = ConvertSzuletesiHelyToComparable(tanuloData.SzuletesiHely) == ConvertSzuletesiHelyToComparable(szuletesiHely); var szuletesiDatumCheck = tanuloData.SzuletesiDatum == szuletesiIdo.Date; var elotagCheck = (elotag == null) || (elotag.ReplaceMultipleSpacesAndTrim() == "") || (!string.IsNullOrWhiteSpace(tanuloData.Elotag) && tanuloData.Elotag.ToUpper() == elotag.ReplaceMultipleSpacesAndTrim()?.ToUpper()); if (vezeteknevCheck && utonevCheck && szuletesiHelyCheck && szuletesiDatumCheck && elotagCheck) { result.Kod = "1"; result.Megnevezes = ErrorResource.Felveve; } else { result.Kod = "5"; result.Megnevezes = ErrorResource.Tanulo34TAdataiNemEgyeznek; } } } }); return result; } public List GetEUgyintezok() { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetEUgyintezok((int)SzerepkorTipusEnum.eUgyintezo, TanevId)); var alkalmazottDtoLista = ds.Tables[0].AsEnumerable().Select(dr => new AlkalmazottDto { KretaAzonosito = dr.Field(nameof(AlkalmazottDto.KretaAzonosito)), Nev = dr.Field(nameof(AlkalmazottDto.Nev)), Titulus = dr.Field("Titulus_DNAME"), IsAlairo = dr.Field(nameof(AlkalmazottDto.Titulus)).HasValue && !(dr.Field(nameof(AlkalmazottDto.Titulus)) == (int)VezetoiOraszamokTipusEnum.Nincs || dr.Field(nameof(AlkalmazottDto.Titulus)) == (int)VezetoiOraszamokTipusEnum.GyakorlatiOktatasvezeto), EgyediAzonosito = dr.Field(nameof(AlkalmazottDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(AlkalmazottDto.IdpEgyediAzonosito)) }).ToList(); return alkalmazottDtoLista; } public BKITanuloDto GetTanuloBKIUrlap(string tanuloOktatasiAzonosito) { var result = new BKITanuloDto() { }; Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => { var dal = h.Tanulo(); var tanuloId = dal.GetTanuloIdByOktatasiAzonosito(tanuloOktatasiAzonosito, TanevId); if (tanuloId > 0) { var tanulo = dal.Get(tanuloId); /*SzemelyesAdatok*/ result.SzemelyesAdatok.TanuloElotag = tanulo.Elotag; result.SzemelyesAdatok.TanuloCsaladinev = tanulo.Vezeteknev; result.SzemelyesAdatok.TanuloUtonev = tanulo.Utonev; result.SzemelyesAdatok.TanuloOktatasiAzonosito = tanulo.OktatasiAzonosito; result.SzemelyesAdatok.SzuletesiHely = tanulo.SzuletesiHely; result.SzemelyesAdatok.SzuletesiIdo = tanulo.SzuletesiDatum; result.SzemelyesAdatok.AnyjaSzuletesiCsaladnev = tanulo.AnyjaNeve.Substring(0, tanulo.AnyjaNeve.IndexOf(' ')); result.SzemelyesAdatok.AnyjaSzuletesiUtonev = tanulo.AnyjaNeve.Substring(tanulo.AnyjaNeve.IndexOf(' ')).ReplaceMultipleSpacesAndTrim(); result.SzemelyesAdatok.Nem = tanulo.Neme == (int)NemEnum.Ferfi ? "f" : "n"; result.SzemelyesAdatok.SzuletesiOrszag.KretaAzonosito = tanulo.SzuletesiOrszag; result.SzemelyesAdatok.Allampolgarsag.KretaAzonosito = tanulo.Allampolgarsaga; result.SzemelyesAdatok.Anyanyelv.KretaAzonosito = tanulo.Anyanyelve; /*ValasztottIntezmeny*/ //result.ValasztottIntezmeny.Azonosito = tanulo.IntezmenyId; //result.ValasztottIntezmeny.Nev = tanulo.Intezmeny.IntezmenyAdatok[0].Nev; /*Igazolvanyok*/ result.Igazolvanyok.NekAzonosito = tanulo.DiakIgazolvanySzam; result.Igazolvanyok.TajSzam = tanulo.TAJSzam; /*Elerhetosegek*/ var tanuloAllandoCim = tanulo.Cim.Where(x => x.CimTipusa == (int)CimTipusEnum.allando_lakcim && x.Torolt == false && x.Gondviselo == null).FirstOrDefault(); var tanuloTartozkodasiCim = tanulo.Cim.Where(x => x.CimTipusa == (int)CimTipusEnum.tartozkodasi_hely && x.Torolt == false && x.Gondviselo == null).FirstOrDefault(); if (tanuloAllandoCim != null) { result.Elerhetosegek.Lakohely = new LakohelyDto(); result.Elerhetosegek.Lakohely.AllandoLakhely = new CimDto(); if (tanuloTartozkodasiCim == null) result.Elerhetosegek.Lakohely.EletvitelszeruLakhelyEgyezik = true; result.Elerhetosegek.Lakohely.AllandoLakhely.Ajto = tanuloAllandoCim.Ajto; result.Elerhetosegek.Lakohely.AllandoLakhely.Emelet = tanuloAllandoCim.Emelet; result.Elerhetosegek.Lakohely.AllandoLakhely.Hazszam = tanuloAllandoCim.Hazszam; result.Elerhetosegek.Lakohely.AllandoLakhely.Helyseg = HelysegNevRemoveKeruletAndIrSzam(tanuloAllandoCim.Varos); result.Elerhetosegek.Lakohely.AllandoLakhely.Iranyitoszam = tanuloAllandoCim.IranyitoSzam; result.Elerhetosegek.Lakohely.AllandoLakhely.KozteruletNeve = tanuloAllandoCim.Kozterulet; result.Elerhetosegek.Lakohely.AllandoLakhely.Orszag = GetOrszagTipus(tanuloAllandoCim.Orszag); if (!string.IsNullOrWhiteSpace(tanuloAllandoCim.KozteruletJellegeNev)) result.Elerhetosegek.Lakohely.AllandoLakhely.KozteruletJellege = tanuloAllandoCim.KozteruletJellegeNev; } if (tanuloTartozkodasiCim != null) { if (tanuloAllandoCim == null) result.Elerhetosegek.Lakohely = new LakohelyDto(); result.Elerhetosegek.Lakohely.EletvitelszeruLakhely = new CimDto(); result.Elerhetosegek.Lakohely.EletvitelszeruLakhely.Ajto = tanuloTartozkodasiCim.Ajto; result.Elerhetosegek.Lakohely.EletvitelszeruLakhely.Emelet = tanuloTartozkodasiCim.Emelet; result.Elerhetosegek.Lakohely.EletvitelszeruLakhely.Hazszam = tanuloTartozkodasiCim.Hazszam; result.Elerhetosegek.Lakohely.EletvitelszeruLakhely.Helyseg = HelysegNevRemoveKeruletAndIrSzam(tanuloTartozkodasiCim.Varos); result.Elerhetosegek.Lakohely.EletvitelszeruLakhely.Iranyitoszam = tanuloTartozkodasiCim.IranyitoSzam; result.Elerhetosegek.Lakohely.EletvitelszeruLakhely.KozteruletNeve = tanuloTartozkodasiCim.Kozterulet; result.Elerhetosegek.Lakohely.EletvitelszeruLakhely.Orszag = GetOrszagTipus(tanuloTartozkodasiCim.Orszag); if (!string.IsNullOrWhiteSpace(tanuloTartozkodasiCim.KozteruletJellegeNev)) result.Elerhetosegek.Lakohely.EletvitelszeruLakhely.KozteruletJellege = tanuloTartozkodasiCim.KozteruletJellegeNev; } /*Gondviselok*/ var tanuloGondviselo = tanulo.Gondviselo.Where(x => x.IsTorvenyesKepviselo == true && x.Torolt == false).Take(2); foreach (var gondviselo in tanuloGondviselo) { var dto = new GondviseloDto(); if (gondviselo.Nev.IndexOf(' ') > 0) { var elotag = CommonUtils.GetNevElotag(gondviselo.Nev); var elvalaszto = CommonUtils.GetNevElvalasztoIndex(gondviselo.Nev) - elotag.Length; dto.Elotag = elotag; dto.CsaladiNev = gondviselo.Nev.Substring(elotag.Length, elvalaszto); dto.Utonev = gondviselo.Nev.Substring(elotag.Length + elvalaszto).ReplaceMultipleSpacesAndTrim(); dto.SzuletesiCsaladnev = dto.CsaladiNev; dto.SzuletesiUtonev = dto.Utonev; } else { dto.CsaladiNev = gondviselo.Nev; dto.Utonev = ""; dto.SzuletesiCsaladnev = gondviselo.Nev; dto.SzuletesiUtonev = ""; } dto.AnyjaSzuletesiCsaladnev = ""; dto.AnyjaSzuletesiUtonev = ""; dto.Telefonszam = gondviselo.Telefon.SingleOrDefault(x => !x.Torolt && x.Alapertelmezett)?.TelefonSzam; dto.EMail = gondviselo.Email.SingleOrDefault(x => !x.Torolt && x.Alapertelmezett)?.EmailCim; dto.RokonsagiFok.KretaAzonosito = gondviselo.RokonsagFoka; var gondviseloAllandoCim = gondviselo.Cim.Where(x => x.CimTipusa == (int)CimTipusEnum.allando_lakcim && x.Torolt == false && x.GondviseloId == gondviselo.ID).FirstOrDefault(); var gondviseloTartozkodasiCim = gondviselo.Cim.Where(x => x.CimTipusa == (int)CimTipusEnum.tartozkodasi_hely && x.Torolt == false && x.GondviseloId == gondviselo.ID).FirstOrDefault(); if (gondviseloAllandoCim != null && tanuloAllandoCim != null && gondviseloAllandoCim.IranyitoSzam == tanuloAllandoCim.IranyitoSzam && gondviseloAllandoCim.Varos == tanuloAllandoCim.Varos && gondviseloAllandoCim.Kozterulet == tanuloAllandoCim.Kozterulet && gondviseloAllandoCim.KozteruletJellegeNev == tanuloAllandoCim.KozteruletJellegeNev && gondviseloAllandoCim.Hazszam == tanuloAllandoCim.Hazszam && gondviseloAllandoCim.Ajto == tanuloAllandoCim.Ajto && gondviseloAllandoCim.Emelet == tanuloAllandoCim.Emelet ) dto.LakohelyEgyezikTanuloAllandoLakhelyevel = true; if (gondviseloAllandoCim != null && !dto.LakohelyEgyezikTanuloAllandoLakhelyevel) { dto.Lakhely.AllandoLakhely = new CimDto(); if (gondviseloTartozkodasiCim == null) dto.Lakhely.EletvitelszeruLakhelyEgyezik = true; dto.Lakhely.AllandoLakhely.Ajto = gondviseloAllandoCim.Ajto; dto.Lakhely.AllandoLakhely.Emelet = gondviseloAllandoCim.Emelet; dto.Lakhely.AllandoLakhely.Hazszam = gondviseloAllandoCim.Hazszam; dto.Lakhely.AllandoLakhely.Helyseg = HelysegNevRemoveKeruletAndIrSzam(gondviseloAllandoCim.Varos); dto.Lakhely.AllandoLakhely.Iranyitoszam = gondviseloAllandoCim.IranyitoSzam; dto.Lakhely.AllandoLakhely.KozteruletNeve = gondviseloAllandoCim.Kozterulet; dto.Lakhely.AllandoLakhely.Orszag = GetOrszagTipus(gondviseloAllandoCim.Orszag); if (!string.IsNullOrWhiteSpace(gondviseloAllandoCim.KozteruletJellegeNev)) dto.Lakhely.AllandoLakhely.KozteruletJellege = gondviseloAllandoCim.KozteruletJellegeNev; } if (gondviseloTartozkodasiCim != null) { dto.Lakhely.EletvitelszeruLakhely = new CimDto(); dto.Lakhely.EletvitelszeruLakhely.Ajto = gondviseloTartozkodasiCim.Ajto; dto.Lakhely.EletvitelszeruLakhely.Emelet = gondviseloTartozkodasiCim.Emelet; dto.Lakhely.EletvitelszeruLakhely.Hazszam = gondviseloTartozkodasiCim.Hazszam; dto.Lakhely.EletvitelszeruLakhely.Helyseg = HelysegNevRemoveKeruletAndIrSzam(gondviseloTartozkodasiCim.Varos); dto.Lakhely.EletvitelszeruLakhely.Iranyitoszam = gondviseloTartozkodasiCim.IranyitoSzam; dto.Lakhely.EletvitelszeruLakhely.KozteruletNeve = gondviseloTartozkodasiCim.Kozterulet; dto.Lakhely.EletvitelszeruLakhely.Orszag = GetOrszagTipus(gondviseloTartozkodasiCim.Orszag); if (!string.IsNullOrWhiteSpace(gondviseloTartozkodasiCim.KozteruletJellegeNev)) dto.Lakhely.EletvitelszeruLakhely.KozteruletJellege = gondviseloTartozkodasiCim.KozteruletJellegeNev; } result.Gondviselok.Add(dto); } /*IskolaErettseg*/ result.IskolaErettseg.SajatosNevelesiIgenyu = tanulo.SajatosNevelesu; result.IskolaErettseg.BeilleszkedesiNehezsegu = tanulo.BTMProblemas; if (tanulo.HatranyosHelyzetu > 0) { result.IskolaErettseg.HatranyosHelyzet = new DictionaryItemDto(); result.IskolaErettseg.HatranyosHelyzet.KretaAzonosito = tanulo.HatranyosHelyzetu; } /*KollegiumEtkezes*/ result.KollegiumEtkezes.KollegiumotKer = false; result.KollegiumEtkezes.EtkezestIgenyel = false; } }); return result; } private string HelysegNevRemoveKeruletAndIrSzam(string helysegNev) { var helysegNevResult = ""; if (!string.IsNullOrWhiteSpace(helysegNev)) { if (helysegNev.Length >= 8 && helysegNev.Substring(0, 8) == "Budapest") helysegNevResult = "Budapest"; else { var indexOfSubstr = helysegNev.IndexOf("("); helysegNevResult = indexOfSubstr != -1 ? helysegNev.Substring(0, indexOfSubstr).ReplaceMultipleSpacesAndTrim() : helysegNev; } } return helysegNevResult; } public SaveResponseDto SaveBKITanulo(BKITanuloDto tanuloDto, string json, string ugyiratszam) { try { var kovTanevId = -1; var result = new SaveResponseDto() { }; Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => { var tanevHelper = new TanevHelper(new DalHandlerConnectionType(new MobileConnectionType(0, IntezmenyId, ServiceContext.IntezmenyAzonosito, TanevId), h)); kovTanevId = tanevHelper.GetKovTanevId(); if (kovTanevId == -1) { result.Kod = "2"; result.Megnevezes = ErrorResource.NincsKovetkezoTanev; } var tanulo = h.Tanulo(); var tanuloId = -1; tanuloId = tanulo.GetTanuloIdByOktatasiAzonosito(tanuloDto.SzemelyesAdatok.TanuloOktatasiAzonosito, kovTanevId); if (tanuloId == -1) { result.Kod = "3"; result.Megnevezes = ErrorResource.NemTalalhatoTanulo; } else { var tanuloData = tanulo.Get(tanuloId); if (!tanuloData.IsKifirImportalt) { result.Kod = "4"; result.Megnevezes = ErrorResource.TanuloNemKifirImportos; } else { if (Check4T(tanuloData, tanuloDto)) { var entity = ConvertDtoToEntity(tanuloData, tanuloDto, h, ugyiratszam); tanulo.FullUpdate(entity); result.Kod = "1"; result.Megnevezes = ErrorResource.SikeresMentes; } else { result.Kod = "5"; result.Megnevezes = ErrorResource.Tanulo34TAdataiNemEgyeznek; } } } }); InsertEugyintezesLog(ugyiratszam, EugyTipusEnum.BKI, json, null); return result; } catch (Exception e) { InsertEugyintezesLog(ugyiratszam, EugyTipusEnum.BKI, json, e.InnerException != null ? e.InnerException.ToString() : e.ToString()); return new SaveResponseDto() { Kod = "2", Megnevezes = ErrorResource.Hiba }; } } private bool Check4T(ITanulo kretaTanulo, BKITanuloDto bkiTanulo) { var vezeteknevCheck = kretaTanulo.Vezeteknev.ToUpper() == bkiTanulo.SzemelyesAdatok.TanuloCsaladinev.ReplaceMultipleSpacesAndTrim()?.ToUpper(); var utonevCheck = kretaTanulo.Utonev.ToUpper() == bkiTanulo.SzemelyesAdatok.TanuloUtonev.ReplaceMultipleSpacesAndTrim()?.ToUpper(); var szuletesiHelyCheck = ConvertSzuletesiHelyToComparable(kretaTanulo.SzuletesiHely) == ConvertSzuletesiHelyToComparable(bkiTanulo.SzemelyesAdatok.SzuletesiHely); var szuletesiDatumCheck = kretaTanulo.SzuletesiDatum == bkiTanulo.SzemelyesAdatok.SzuletesiIdo.Date; var elotagCheck = (bkiTanulo.SzemelyesAdatok.TanuloElotag == null) || (bkiTanulo.SzemelyesAdatok.TanuloElotag.ReplaceMultipleSpacesAndTrim() == null) || (!string.IsNullOrWhiteSpace(kretaTanulo.Elotag) && kretaTanulo.Elotag.ToUpper() == bkiTanulo.SzemelyesAdatok.TanuloElotag.ReplaceMultipleSpacesAndTrim()?.ToUpper()); return vezeteknevCheck && utonevCheck && szuletesiHelyCheck && szuletesiDatumCheck && elotagCheck; } private string ConvertSzuletesiHelyToComparable(string originalSzuletesiHely) { var split = originalSzuletesiHely.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries); var comparableSzuletesiHely = split[0].ToUpper(); return comparableSzuletesiHely; } private ITanulo ConvertDtoToEntity(ITanulo entity, BKITanuloDto tanuloDto, IDalHandler h, string ugyiratszam) { ConvertSzemelyesAdatok(entity, tanuloDto.SzemelyesAdatok); //ConvertValasztottIntezmeny(entity, tanuloDto.ValasztottIntezmeny); ConvertIgazolvanyok(entity, tanuloDto.Igazolvanyok, ugyiratszam); ConvertElerhetosegek(entity, tanuloDto.Elerhetosegek, h); ConvertGondviselok(entity, tanuloDto.Gondviselok, h); ConvertIskolaErettseg(entity, tanuloDto.IskolaErettseg); ConvertKollegiumEtkezes(entity, tanuloDto.KollegiumEtkezes); return entity; } private ITanulo ConvertSzemelyesAdatok(ITanulo entity, SzemelyesAdatokDto dto) { if (!string.IsNullOrWhiteSpace(dto.TanuloElotag)) { entity.Elotag = Kreta.BusinessLogic.Extensions.NameExtensions.CleanElotag(dto.TanuloElotag); } if (!string.IsNullOrWhiteSpace(dto.TanuloCsaladinev)) { entity.Vezeteknev = dto.TanuloCsaladinev.ReplaceMultipleSpacesAndTrim(); } if (!string.IsNullOrWhiteSpace(dto.TanuloUtonev)) { entity.Utonev = dto.TanuloUtonev.ReplaceMultipleSpacesAndTrim(); } if (!string.IsNullOrWhiteSpace(dto.TanuloOktatasiAzonosito)) { entity.OktatasiAzonosito = dto.TanuloOktatasiAzonosito; } entity.NyomtatasiNev = Kreta.BusinessLogic.Extensions.NameExtensions.GetNevSorrendben("F", entity.Elotag, entity.Vezeteknev, entity.Utonev); entity.KeresesiNev = CommonUtilsDal.KopaszNev(entity.NyomtatasiNev); if (!string.IsNullOrWhiteSpace(dto.SzuletesiHely)) { entity.SzuletesiHely = dto.SzuletesiHely; } if (dto.SzuletesiIdo != default(DateTime)) { entity.SzuletesiDatum = dto.SzuletesiIdo; } if (!string.IsNullOrWhiteSpace(dto.AnyjaSzuletesiCsaladnev) || !string.IsNullOrWhiteSpace(dto.AnyjaSzuletesiUtonev)) { entity.AnyjaVezetekneve = dto.AnyjaSzuletesiCsaladnev.ReplaceMultipleSpacesAndTrim(); entity.AnyjaNeveElvalaszto = entity.AnyjaVezetekneve.Length; entity.AnyjaUtoneve = dto.AnyjaSzuletesiUtonev.ReplaceMultipleSpacesAndTrim(); entity.AnyjaNeve = Kreta.BusinessLogic.Extensions.NameExtensions.GetNevSorrendben("F", entity.AnyjaNeveElotag, entity.AnyjaVezetekneve, entity.AnyjaUtoneve); } if (dto.Nem != null) { if (dto.Nem.ToUpper() == "F") entity.Neme = (int)NemEnum.Ferfi; else if (dto.Nem.ToUpper() == "N") entity.Neme = (int)NemEnum.No; } else { entity.Neme = (int)NemEnum.NA; } if (dto.SzuletesiOrszag.KretaAzonosito != default(int)) { entity.SzuletesiOrszag = dto.SzuletesiOrszag.KretaAzonosito; } //entity = dto.SzemelyesAdatok.SzuletesiOrszag.Nev; if (dto.Allampolgarsag.KretaAzonosito != default(int)) { entity.Allampolgarsaga = dto.Allampolgarsag.KretaAzonosito; } //entity = dto.SzemelyesAdatok.Allampolgarsag.Nev; if (dto.Anyanyelv.KretaAzonosito != default(int)) { entity.Anyanyelve = dto.Anyanyelv.KretaAzonosito; } //entity = dto.Anyanyelv.Nev; return entity; } private ITanulo ConvertValasztottIntezmeny(ITanulo entity, ValasztottIntezmenyDto dto) { if (dto.Azonosito != default(int)) entity.IntezmenyId = IntezmenyId; //entity = dto.Nev; return entity; } private ITanulo ConvertIgazolvanyok(ITanulo entity, BKIIgazolvanyokDto dto, string ugyiratszam) { var nekAzonosito = dto.NekAzonosito.ReplaceMultipleSpacesAndTrim(); if (!string.IsNullOrWhiteSpace(nekAzonosito)) { var splittedData = nekAzonosito.Split('/'); if (splittedData.Length > 0) { entity.Megjegyzes = $"{entity.Megjegyzes} {ugyiratszam} ({ErrorResource.BKINEKTartalom} {nekAzonosito})"; } } var tajSzam = dto.TajSzam.ReplaceMultipleSpacesAndTrim(); if (!string.IsNullOrWhiteSpace(tajSzam) && Regex.IsMatch(tajSzam, Constants.RegularExpressions.TajSzam)) { if (Regex.IsMatch(tajSzam, Constants.RegularExpressions.TajSzam)) { entity.TAJSzam = tajSzam; } else { if (Regex.IsMatch(tajSzam.Replace(",", "").Replace("-", ""), Constants.RegularExpressions.TajSzam)) { entity.TAJSzam = tajSzam.Replace(",", "").Replace("-", ""); } else { entity.Megjegyzes = $"{entity.Megjegyzes} {ugyiratszam} ({ErrorResource.BKITAJTartalom} {tajSzam})"; } } } var adoszam = dto.Adoszam.ReplaceMultipleSpacesAndTrim(); if (!string.IsNullOrWhiteSpace(adoszam) && Regex.IsMatch(adoszam, Constants.RegularExpressions.AdoazonositoJel)) { if (Regex.IsMatch(adoszam, Constants.RegularExpressions.AdoazonositoJel)) { entity.AdoazonositoJel = adoszam; } else { if (Regex.IsMatch(adoszam.Replace(",", "").Replace("-", ""), Constants.RegularExpressions.AdoazonositoJel)) { entity.AdoazonositoJel = adoszam.Replace(",", "").Replace("-", ""); } else { entity.Megjegyzes = $"{entity.Megjegyzes} {ugyiratszam} ({ErrorResource.BKIAdoTartalom} {adoszam})"; } } } return entity; } private ITanulo ConvertElerhetosegek(ITanulo entity, ElerhetosegekDto dto, IDalHandler h) { if (dto.Lakohely != null) { if (dto.Lakohely.AllandoLakhely != null) { var cimDal = h.Cim(); var updateData = entity.Cim.Where(x => x.CimTipusa == (int)CimTipusEnum.allando_lakcim && x.Gondviselo == null && x.Torolt == false).FirstOrDefault(); if (updateData != null) { updateData.Ajto = dto.Lakohely.AllandoLakhely.Ajto; updateData.Emelet = dto.Lakohely.AllandoLakhely.Emelet; updateData.Hazszam = dto.Lakohely.AllandoLakhely.Hazszam; updateData.Varos = dto.Lakohely.AllandoLakhely.Helyseg; updateData.IranyitoSzam = dto.Lakohely.AllandoLakhely.Iranyitoszam; updateData.KozteruletJellegeNev = dto.Lakohely.AllandoLakhely.KozteruletJellege; updateData.Kozterulet = dto.Lakohely.AllandoLakhely.KozteruletNeve; updateData.Orszag = dto.Lakohely.AllandoLakhely.Orszag.KretaAzonosito.Value; cimDal.FullUpdate(updateData); } else { var insertData = cimDal.Get(); insertData.FelhasznaloId = entity.ID; insertData.IntezmenyId = entity.IntezmenyId; insertData.TanevId = entity.TanevId; insertData.CimTipusa = (int)CimTipusEnum.allando_lakcim; if (dto.Lakohely.AllandoLakhely.Orszag.KretaAzonosito.HasValue) insertData.Orszag = dto.Lakohely.AllandoLakhely.Orszag.KretaAzonosito.Value; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.Ajto)) insertData.Ajto = dto.Lakohely.AllandoLakhely.Ajto; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.Emelet)) insertData.Emelet = dto.Lakohely.AllandoLakhely.Emelet; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.Hazszam)) insertData.Hazszam = dto.Lakohely.AllandoLakhely.Hazszam; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.Helyseg)) insertData.Varos = dto.Lakohely.AllandoLakhely.Helyseg; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.Iranyitoszam)) insertData.IranyitoSzam = dto.Lakohely.AllandoLakhely.Iranyitoszam; if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.KozteruletJellege)) { insertData.KozteruletJellegeNev = dto.Lakohely.AllandoLakhely.KozteruletJellege; } if (!string.IsNullOrWhiteSpace(dto.Lakohely.AllandoLakhely.KozteruletNeve)) insertData.Kozterulet = dto.Lakohely.AllandoLakhely.KozteruletNeve; cimDal.Insert(insertData); } } if (!dto.Lakohely.EletvitelszeruLakhelyEgyezik && dto.Lakohely.EletvitelszeruLakhely != null) { var cimDal = h.Cim(); var updateData = entity.Cim.Where(x => x.CimTipusa == (int)CimTipusEnum.tartozkodasi_hely && x.Gondviselo == null && x.Torolt == false).FirstOrDefault(); if (updateData != null) { updateData.Ajto = dto.Lakohely.EletvitelszeruLakhely.Ajto; updateData.Emelet = dto.Lakohely.EletvitelszeruLakhely.Emelet; updateData.Hazszam = dto.Lakohely.EletvitelszeruLakhely.Hazszam; updateData.Varos = dto.Lakohely.EletvitelszeruLakhely.Helyseg; updateData.IranyitoSzam = dto.Lakohely.EletvitelszeruLakhely.Iranyitoszam; updateData.KozteruletJellegeNev = dto.Lakohely.EletvitelszeruLakhely.KozteruletJellege; updateData.Kozterulet = dto.Lakohely.EletvitelszeruLakhely.KozteruletNeve; cimDal.FullUpdate(updateData); } else { var insertData = cimDal.Get(); insertData.FelhasznaloId = entity.ID; insertData.IntezmenyId = entity.IntezmenyId; insertData.TanevId = entity.TanevId; insertData.CimTipusa = (int)CimTipusEnum.tartozkodasi_hely; if (dto.Lakohely.EletvitelszeruLakhely.Orszag.KretaAzonosito.HasValue) insertData.Orszag = dto.Lakohely.EletvitelszeruLakhely.Orszag.KretaAzonosito.Value; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.Ajto)) insertData.Ajto = dto.Lakohely.EletvitelszeruLakhely.Ajto; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.Emelet)) insertData.Emelet = dto.Lakohely.EletvitelszeruLakhely.Emelet; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.Hazszam)) insertData.Hazszam = dto.Lakohely.EletvitelszeruLakhely.Hazszam; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.Helyseg)) insertData.Varos = dto.Lakohely.EletvitelszeruLakhely.Helyseg; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.Iranyitoszam)) insertData.IranyitoSzam = dto.Lakohely.EletvitelszeruLakhely.Iranyitoszam; insertData.KozteruletJellegeNev = dto.Lakohely.EletvitelszeruLakhely.KozteruletJellege; if (!string.IsNullOrWhiteSpace(dto.Lakohely.EletvitelszeruLakhely.KozteruletNeve)) insertData.Kozterulet = dto.Lakohely.EletvitelszeruLakhely.KozteruletNeve; cimDal.Insert(insertData); } } else { var torlendoTartozkodasiHely = entity.Cim.Where(x => x.CimTipusa == (int)CimTipusEnum.tartozkodasi_hely && x.Gondviselo == null && x.Torolt == false).FirstOrDefault(); if (torlendoTartozkodasiHely != null) { var cimDal = h.Cim(); cimDal.Delete(torlendoTartozkodasiHely); } } } return entity; } private ITanulo ConvertGondviselok(ITanulo entity, List dto, IDalHandler h) { var gondviselok = entity.Gondviselo.Where(x => x.Torolt == false && x.IsTorvenyesKepviselo == true); foreach (var item in dto) { if (item.RokonsagiFok.KretaAzonosito == (int)RokonsagiFokEnum.edesapa) { var gvList = gondviselok.Where(x => x.RokonsagFoka == (int)RokonsagiFokEnum.edesapa && x.Torolt == false).ToList(); foreach (var gv in gvList) { var gvDal = h.Gondviselo(); gvDal.Delete(gv); } } if (item.RokonsagiFok.KretaAzonosito == (int)RokonsagiFokEnum.edesanya) { var gvList = gondviselok.Where(x => x.RokonsagFoka == (int)RokonsagiFokEnum.edesanya && x.Torolt == false).ToList(); foreach (var gv in gvList) { var gvDal = h.Gondviselo(); gvDal.Delete(gv); } } var gNev = (!string.IsNullOrWhiteSpace(item.Elotag) ? item.Elotag + " " : "") + item.CsaladiNev + " " + item.Utonev; var newGondviselok = entity.Gondviselo.Where(x => x.Torolt == false && x.IsTorvenyesKepviselo == true); var kretaGV = newGondviselok.Where(x => x.Nev == gNev && x.RokonsagFoka == item.RokonsagiFok.KretaAzonosito && x.Torolt == false).FirstOrDefault(); if (kretaGV != null && kretaGV.RokonsagFoka != (int)RokonsagiFokEnum.edesapa && kretaGV.RokonsagFoka != (int)RokonsagiFokEnum.edesanya) { var cimDal = h.Cim(); var insertCimData = cimDal.Get(); foreach (var deleteCim in kretaGV.Cim.Where(x => x.Torolt == false)) { cimDal.Delete(deleteCim.ID); } if (item.LakohelyEgyezikTanuloAllandoLakhelyevel) { var tanuloCim = entity.Cim.Where(x => x.CimTipusa == (int)CimTipusEnum.allando_lakcim && x.Gondviselo == null && x.Torolt == false).FirstOrDefault(); insertCimData.FelhasznaloId = entity.ID; insertCimData.GondviseloId = kretaGV.ID; insertCimData.IntezmenyId = kretaGV.IntezmenyId; insertCimData.TanevId = kretaGV.TanevId; insertCimData.CimTipusa = (int)CimTipusEnum.allando_lakcim; insertCimData.Orszag = tanuloCim.Orszag; insertCimData.Ajto = tanuloCim.Ajto; insertCimData.Emelet = tanuloCim.Emelet; insertCimData.Hazszam = tanuloCim.Hazszam; insertCimData.Varos = tanuloCim.Varos; insertCimData.IranyitoSzam = tanuloCim.IranyitoSzam; insertCimData.KozteruletJellegeNev = tanuloCim.KozteruletJellegeNev; insertCimData.Kozterulet = tanuloCim.Kozterulet; cimDal.Insert(insertCimData); } else { if (item.Lakhely != null) { if (item.Lakhely.AllandoLakhely != null) { insertCimData.FelhasznaloId = entity.ID; insertCimData.GondviseloId = kretaGV.ID; insertCimData.IntezmenyId = kretaGV.IntezmenyId; insertCimData.TanevId = kretaGV.TanevId; insertCimData.CimTipusa = (int)CimTipusEnum.allando_lakcim; insertCimData.Orszag = item.Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; insertCimData.Ajto = item.Lakhely.AllandoLakhely.Ajto; insertCimData.Emelet = item.Lakhely.AllandoLakhely.Emelet; insertCimData.Hazszam = item.Lakhely.AllandoLakhely.Hazszam; insertCimData.Varos = item.Lakhely.AllandoLakhely.Helyseg; insertCimData.IranyitoSzam = item.Lakhely.AllandoLakhely.Iranyitoszam; insertCimData.KozteruletJellegeNev = item.Lakhely.AllandoLakhely.KozteruletJellege; insertCimData.Kozterulet = item.Lakhely.AllandoLakhely.KozteruletNeve; cimDal.Insert(insertCimData); } if (!item.Lakhely.EletvitelszeruLakhelyEgyezik) { if (item.Lakhely.EletvitelszeruLakhely != null) { var insertEletvitelszeruCimData = cimDal.Get(); insertEletvitelszeruCimData.FelhasznaloId = entity.ID; insertEletvitelszeruCimData.GondviseloId = kretaGV.ID; insertEletvitelszeruCimData.IntezmenyId = kretaGV.IntezmenyId; insertEletvitelszeruCimData.TanevId = kretaGV.TanevId; insertEletvitelszeruCimData.CimTipusa = (int)CimTipusEnum.tartozkodasi_hely; insertEletvitelszeruCimData.Orszag = item.Lakhely.EletvitelszeruLakhely.Orszag.KretaAzonosito.Value; ; insertEletvitelszeruCimData.Ajto = item.Lakhely.EletvitelszeruLakhely.Ajto; insertEletvitelszeruCimData.Emelet = item.Lakhely.EletvitelszeruLakhely.Emelet; insertEletvitelszeruCimData.Hazszam = item.Lakhely.EletvitelszeruLakhely.Hazszam; insertEletvitelszeruCimData.Varos = item.Lakhely.EletvitelszeruLakhely.Helyseg; insertEletvitelszeruCimData.IranyitoSzam = item.Lakhely.EletvitelszeruLakhely.Iranyitoszam; insertEletvitelszeruCimData.KozteruletJellegeNev = item.Lakhely.EletvitelszeruLakhely.KozteruletJellege; insertEletvitelszeruCimData.Kozterulet = item.Lakhely.EletvitelszeruLakhely.KozteruletNeve; cimDal.Insert(insertEletvitelszeruCimData); } } else { var torlendoTartozkodasiHely = kretaGV.Cim.Where(x => x.CimTipusa == (int)CimTipusEnum.tartozkodasi_hely && x.Torolt == false).FirstOrDefault(); if (torlendoTartozkodasiHely != null) { cimDal.Delete(torlendoTartozkodasiHely); } } } } if (!string.IsNullOrWhiteSpace(item.Telefonszam)) { var isGvTelefon = kretaGV.Telefon.Any(x => x.TelefonSzam == item.Telefonszam && x.Alapertelmezett); if (!isGvTelefon) { var telefonDal = h.Telefon(); var insertData = telefonDal.Get(); foreach (var deleteTelefon in kretaGV.Telefon.Where(x => x.Torolt == false && x.Alapertelmezett)) { telefonDal.Delete(deleteTelefon.ID); } insertData.TelefonSzam = item.Telefonszam; insertData.TelefonTipusa = (int)TelefonTipusEnum.Mobil; insertData.GondviseloId = kretaGV.ID; insertData.FelhasznaloId = kretaGV.TanuloId; insertData.IntezmenyId = kretaGV.IntezmenyId; insertData.TanevId = kretaGV.TanevId; insertData.Alapertelmezett = true; telefonDal.Insert(insertData); } } if (!string.IsNullOrWhiteSpace(item.EMail)) { var isGvEmail = kretaGV.Email.Any(x => x.EmailCim == item.EMail && x.Alapertelmezett); if (!isGvEmail) { var emailDal = h.Email(); var insertData = emailDal.Get(); foreach (var deleteEmail in kretaGV.Email.Where(x => x.Torolt == false && x.Alapertelmezett)) { emailDal.Delete(deleteEmail.ID); } insertData.EmailCim = item.EMail; insertData.EmailTipusa = (int)EmailTipusEnum.Magan; insertData.GondviseloId = kretaGV.ID; insertData.FelhasznaloId = kretaGV.TanuloId; insertData.IntezmenyId = kretaGV.IntezmenyId; insertData.TanevId = kretaGV.TanevId; insertData.Alapertelmezett = true; _ = emailDal.Insert(insertData); } } } else { var gvDal = h.Gondviselo(); var insertData = gvDal.Get(); insertData.Nev = (!string.IsNullOrWhiteSpace(item.Elotag) ? item.Elotag + " " : "") + item.CsaladiNev + " " + item.Utonev; insertData.RokonsagFoka = item.RokonsagiFok.KretaAzonosito; insertData.IsTorvenyesKepviselo = true; insertData.TanuloId = entity.ID; insertData.IntezmenyId = entity.IntezmenyId; insertData.TanevId = entity.TanevId; gvDal.Insert(insertData); if (item.LakohelyEgyezikTanuloAllandoLakhelyevel) { var tanuloCim = entity.Cim.Where(x => x.CimTipusa == (int)CimTipusEnum.allando_lakcim && x.Gondviselo == null && x.Torolt == false).FirstOrDefault(); var cimDal = h.Cim(); var insertCimData = cimDal.Get(); insertCimData.FelhasznaloId = entity.ID; insertCimData.GondviseloId = insertData.ID; insertCimData.IntezmenyId = insertData.IntezmenyId; insertCimData.TanevId = insertData.TanevId; insertCimData.CimTipusa = (int)CimTipusEnum.allando_lakcim; insertCimData.Orszag = tanuloCim.Orszag; insertCimData.Ajto = tanuloCim.Ajto; insertCimData.Emelet = tanuloCim.Emelet; insertCimData.Hazszam = tanuloCim.Hazszam; insertCimData.Varos = tanuloCim.Varos; insertCimData.IranyitoSzam = tanuloCim.IranyitoSzam; insertCimData.KozteruletJellegeNev = tanuloCim.KozteruletJellegeNev; insertCimData.Kozterulet = tanuloCim.Kozterulet; cimDal.Insert(insertCimData); } else { if (item.Lakhely != null) { if (item.Lakhely.AllandoLakhely != null) { var cimDal = h.Cim(); var insertCimData = cimDal.Get(); insertCimData.FelhasznaloId = entity.ID; insertCimData.GondviseloId = insertData.ID; insertCimData.IntezmenyId = insertData.IntezmenyId; insertCimData.TanevId = insertData.TanevId; insertCimData.CimTipusa = (int)CimTipusEnum.allando_lakcim; insertCimData.Orszag = item.Lakhely.AllandoLakhely.Orszag.KretaAzonosito.Value; insertCimData.Ajto = item.Lakhely.AllandoLakhely.Ajto; insertCimData.Emelet = item.Lakhely.AllandoLakhely.Emelet; insertCimData.Hazszam = item.Lakhely.AllandoLakhely.Hazszam; insertCimData.Varos = item.Lakhely.AllandoLakhely.Helyseg; insertCimData.IranyitoSzam = item.Lakhely.AllandoLakhely.Iranyitoszam; insertCimData.KozteruletJellegeNev = item.Lakhely.AllandoLakhely.KozteruletJellege; insertCimData.Kozterulet = item.Lakhely.AllandoLakhely.KozteruletNeve; cimDal.Insert(insertCimData); } if (!item.Lakhely.EletvitelszeruLakhelyEgyezik) { if (item.Lakhely.EletvitelszeruLakhely != null) { var cimDal = h.Cim(); var insertCimData = cimDal.Get(); insertCimData.FelhasznaloId = entity.ID; insertCimData.GondviseloId = insertData.ID; insertCimData.IntezmenyId = insertData.IntezmenyId; insertCimData.TanevId = insertData.TanevId; insertCimData.CimTipusa = (int)CimTipusEnum.tartozkodasi_hely; insertCimData.Orszag = item.Lakhely.EletvitelszeruLakhely.Orszag.KretaAzonosito.Value; insertCimData.Ajto = item.Lakhely.EletvitelszeruLakhely.Ajto; insertCimData.Emelet = item.Lakhely.EletvitelszeruLakhely.Emelet; insertCimData.Hazszam = item.Lakhely.EletvitelszeruLakhely.Hazszam; insertCimData.Varos = item.Lakhely.EletvitelszeruLakhely.Helyseg; insertCimData.IranyitoSzam = item.Lakhely.EletvitelszeruLakhely.Iranyitoszam; insertCimData.KozteruletJellegeNev = item.Lakhely.EletvitelszeruLakhely.KozteruletJellege; insertCimData.Kozterulet = item.Lakhely.EletvitelszeruLakhely.KozteruletNeve; cimDal.Insert(insertCimData); } } } } if (!string.IsNullOrWhiteSpace(item.Telefonszam)) { var telefonDal = h.Telefon(); var telefonData = telefonDal.Get(); telefonData.TelefonSzam = item.Telefonszam; telefonData.TelefonTipusa = (int)TelefonTipusEnum.Mobil; telefonData.GondviseloId = insertData.ID; telefonData.FelhasznaloId = insertData.TanuloId; telefonData.IntezmenyId = insertData.IntezmenyId; telefonData.TanevId = insertData.TanevId; telefonData.Alapertelmezett = true; telefonDal.Insert(telefonData); } if (!string.IsNullOrWhiteSpace(item.EMail)) { var emailDal = h.Email(); var emailData = emailDal.Get(); emailData.EmailCim = item.EMail; emailData.EmailTipusa = (int)EmailTipusEnum.Magan; emailData.GondviseloId = insertData.ID; emailData.FelhasznaloId = insertData.TanuloId; emailData.IntezmenyId = insertData.IntezmenyId; emailData.TanevId = insertData.TanevId; _ = emailDal.Insert(emailData); } } } return entity; } private ITanulo ConvertIskolaErettseg(ITanulo entity, BKIIskolaErettsegDto dto) { entity.BTMProblemas = dto.BeilleszkedesiNehezsegu; entity.SajatosNevelesu = dto.SajatosNevelesiIgenyu; if (dto.HatranyosHelyzet != null && dto.HatranyosHelyzet.KretaAzonosito != 0) entity.HatranyosHelyzetu = dto.HatranyosHelyzet.KretaAzonosito; return entity; } private ITanulo ConvertKollegiumEtkezes(ITanulo entity, BKIEtkezesDto dto) { //entity = dto.EtkezestIgenyel; entity.KollegiumiEllatasos = dto.KollegiumotKer; return entity; } public TanevDto GetTanev(int tanevKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanev(tanevKretaAzonosito)); var tanevDto = ds.Tables[0].AsEnumerable().Select(dr => new TanevDto { KretaAzonosito = dr.Field(nameof(TanevDto.KretaAzonosito)), Aktiv = dr.Field(nameof(TanevDto.Aktiv)) == "T", Kovetkezo = dr.Field(nameof(TanevDto.Kovetkezo)) == "T", Nev = dr.Field(nameof(TanevDto.Nev)), Kezdete = dr.Field(nameof(TanevDto.Kezdete)), Vege = dr.Field(nameof(TanevDto.Vege)) }).FirstOrDefault(); return tanevDto; } public List GetTanitasiRendKivetelNapok(DateTime kezdete, DateTime vege) { var intezmenyId = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetIntezmenyId(ServiceContext.IntezmenyAzonosito)); var tanitasiRendKivetelNapokDataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanitasiRendKivetelNapok(kezdete, vege, intezmenyId)); var tanitasiRendKivetelNapokDtoList = tanitasiRendKivetelNapokDataSet.Tables[0].AsEnumerable().Select(dr => new TanitasiRendKivetelNapDto { Nap = dr.Field(nameof(TanitasiRendKivetelNapDto.Nap)), TipusAzonosito = dr.Field(nameof(TanitasiRendKivetelNapDto.TipusAzonosito)) }).ToList(); return tanitasiRendKivetelNapokDtoList; } public TanuloDto GetTanuloByDiakigazolvanyszam(string diakigazolvanyszam) { var ds = Dal.MobileConnection.Run(ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanuloByDiakigazolvanyszam(diakigazolvanyszam)); if (ds.Tables[0].Rows.Count == 0) return null; var result = new TanuloDto(); if (ds.Tables[0].Rows.Count >= 1) { var dr = ds.Tables[0].Rows[0]; result.KretaAzonosito = dr.Field(nameof(TanuloDto.KretaAzonosito)); result.OktatasiAzonosito = dr.Field(nameof(TanuloDto.OktatasiAzonosito)); result.Elotag = dr.Field(nameof(TanuloDto.Elotag)); result.Vezeteknev = dr.Field(nameof(TanuloDto.Vezeteknev)); result.Keresztnev = dr.Field(nameof(TanuloDto.Keresztnev)); result.SzuletesiIdo = dr.Field(nameof(TanuloDto.SzuletesiIdo)); result.EgyediAzonosito = dr.Field(nameof(TanuloDto.EgyediAzonosito)); result.IdpEgyediAzonosito = dr.Field(nameof(TanuloDto.IdpEgyediAzonosito)); } if (result != null) { result.Osztalyok = GetTanuloOsszesOsztalyanakAdatai(result.KretaAzonosito); } return result; } private List GetTanuloOsszesOsztalyanakAdatai(int tanuloId, int? tanevKretaAzonosito = null) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanuloOsszesOsztalyanakAdataiByTanuloId(tanuloId, tanevKretaAzonosito)); var tanuloOsztalyok = ds.Tables[0].AsEnumerable().Select(dr => new OsztalyDto { KretaAzonosito = dr.Field(nameof(OsztalyDto.KretaAzonosito)), Nev = dr.Field(nameof(OsztalyDto.Nev)), OktNevelesiKategoriaKretaAzonosito = dr.Field(nameof(OsztalyDto.OktNevelesiKategoriaKretaAzonosito)) }).ToList(); return tanuloOsztalyok; } public List GetVezetettTanoraiCsoportok(int alkalmazottKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetVezetettTanoraiCsoportok(alkalmazottKretaAzonosito)); var dtoList = ds.Tables[0].AsEnumerable().Select(dr => new KretaTanoraiCsoportDto { KretaAzonosito = dr.Field(nameof(KretaTanoraiCsoportDto.KretaAzonosito)), OsztalyKretaAzonosito = dr.Field(nameof(KretaTanoraiCsoportDto.OsztalyKretaAzonosito)), Nev = dr.Field(nameof(KretaTanoraiCsoportDto.Nev)), }).ToList(); return dtoList; } public List GetTanitottTanoraiCsoportok(int alkalmazottKretaAzonosito) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetTanitottTanoraiCsoportok(alkalmazottKretaAzonosito)); var dtoList = ds.Tables[0].AsEnumerable().Select(dr => new KretaTanoraiCsoportDto { KretaAzonosito = dr.Field(nameof(KretaTanoraiCsoportDto.KretaAzonosito)), OsztalyKretaAzonosito = dr.Field(nameof(KretaTanoraiCsoportDto.OsztalyKretaAzonosito)), Nev = dr.Field(nameof(KretaTanoraiCsoportDto.Nev)), }).ToList(); return dtoList; } public List GetBulkTanuloAdatok(List kretaAzonositok) { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetBulkTanuloAdatok(kretaAzonositok)); var respone = dataSet.Tables[0].AsEnumerable().Select(dr => new BulkTanuloDto { KretaAzonosito = dr.Field(nameof(BulkTanuloDto.KretaAzonosito)), EgyediAzonosito = dr.Field(nameof(BulkTanuloDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(BulkTanuloDto.IdpEgyediAzonosito)), VezetekNev = dr.Field(nameof(BulkTanuloDto.VezetekNev)), KeresztNev = dr.Field(nameof(BulkTanuloDto.KeresztNev)), Osztalyok = GetTanuloOsszesOsztalyanakAdatai(dr.Field(nameof(BulkTanuloDto.KretaAzonosito))), Email = GetFelhasznaloEmailCim(dr.Field(nameof(BulkTanuloDto.KretaAzonosito))) }).ToList(); return respone; } public List GetBulkGondviseloAdatok(List kretaAzonositok) { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetBulkGondviseloAdatok(kretaAzonositok)); var respone = dataSet.Tables[0].AsEnumerable().Select(dr => new BulkGondviseloDto { KretaAzonosito = dr.Field(nameof(BulkGondviseloDto.KretaAzonosito)), EgyediAzonosito = dr.Field(nameof(BulkGondviseloDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(BulkGondviseloDto.IdpEgyediAzonosito)), GondviseloNev = dr.Field(nameof(BulkGondviseloDto.GondviseloNev)), TanuloNev = dr.Field(nameof(BulkGondviseloDto.TanuloNev)), TanuloKretaAzonosito = dr.Field(nameof(BulkGondviseloDto.TanuloKretaAzonosito)), Osztalyok = GetTanuloOsszesOsztalyanakAdatai(dr.Field(nameof(BulkGondviseloDto.TanuloKretaAzonosito))), Email = GetGondviseloEmailCim(dr.Field(nameof(BulkGondviseloDto.KretaAzonosito))) }).ToList(); return respone; } public List GetBulkAlkalmazottAdatok(List kretaAzonositok) { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetBulkAlkalmazottAdatok(kretaAzonositok)); var respone = dataSet.Tables[0].AsEnumerable().Select(dr => new BulkAlkalmazottDto { KretaAzonosito = dr.Field(nameof(BulkAlkalmazottDto.KretaAzonosito)), EgyediAzonosito = dr.Field(nameof(BulkAlkalmazottDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(BulkAlkalmazottDto.IdpEgyediAzonosito)), IsIgazgato = Convert.ToBoolean(dr.Field(nameof(BulkAlkalmazottDto.IsIgazgato))), IsIgazgatoHelyettes = Convert.ToBoolean(dr.Field(nameof(BulkAlkalmazottDto.IsIgazgatoHelyettes))), IsOsztalyfonok = Convert.ToBoolean(dr.Field(nameof(BulkAlkalmazottDto.IsOsztalyfonok))), IsOsztalyfonokHelyettes = Convert.ToBoolean(dr.Field(nameof(BulkAlkalmazottDto.IsOsztalyfonokHelyettes))), IsAdmin = Convert.ToBoolean(dr.Field(nameof(BulkAlkalmazottDto.IsAdmin))), IsTanar = Convert.ToBoolean(dr.Field(nameof(BulkAlkalmazottDto.IsTanar))), Nev = dr.Field(nameof(BulkAlkalmazottDto.Nev)), Email = GetFelhasznaloEmailCim(dr.Field(nameof(BulkAlkalmazottDto.KretaAzonosito))) }).ToList(); return respone; } public OrszagDto GetOrszagTipus(int orszagKretaAzonosito) { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetOrszagTipus(orszagKretaAzonosito, TanevId)); var orszagDto = dataSet.Tables[0].AsEnumerable().Select(dr => new OrszagDto { KretaAzonosito = dr.Field(nameof(OrszagDto.KretaAzonosito)), Nev = dr.Field(nameof(OrszagDto.Nev)), ISO_Alpha3 = dr.Field(nameof(OrszagDto.ISO_Alpha3)) }).FirstOrDefault(); return orszagDto; } public List GetOrszagTipusok() { var dataSet = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => h.EugyintezesDal().GetOrszagTipusok(TanevId)); var orszagDtoList = dataSet.Tables[0].AsEnumerable().Select(dr => new OrszagDto { KretaAzonosito = dr.Field(nameof(OrszagDto.KretaAzonosito)), Nev = dr.Field(nameof(OrszagDto.Nev)), ISO_Alpha3 = dr.Field(nameof(OrszagDto.ISO_Alpha3)) }).ToList(); return orszagDtoList; } public TanuloDto GetTanuloAdatok(Guid tanuloIdpEgyediAzonosito, int? tanevKretaAzonosito = null) { var ds = Dal.MobileConnection.Run( ServiceContext.IntezmenyAzonosito, TanevId, h => tanevKretaAzonosito.HasValue ? h.EugyintezesDal().GetTanuloAdatokNextYear(tanuloIdpEgyediAzonosito, tanevKretaAzonosito.Value) : h.EugyintezesDal().GetTanuloAdatok(tanuloIdpEgyediAzonosito, TanevId)); var tanuloDto = ds.Tables[0].AsEnumerable().Select(dr => new TanuloDto { KretaAzonosito = dr.Field(nameof(TanuloDto.KretaAzonosito)), OktatasiAzonosito = dr.Field(nameof(TanuloDto.OktatasiAzonosito)), Elotag = dr.Field(nameof(TanuloDto.Elotag)), Vezeteknev = dr.Field(nameof(TanuloDto.Vezeteknev)), Keresztnev = dr.Field(nameof(TanuloDto.Keresztnev)), SzuletesiIdo = dr.Field(nameof(TanuloDto.SzuletesiIdo)), EgyediAzonosito = dr.Field(nameof(TanuloDto.EgyediAzonosito)), IdpEgyediAzonosito = dr.Field(nameof(TanuloDto.IdpEgyediAzonosito)) }).FirstOrDefault(); if (tanuloDto != null) { tanuloDto.Osztalyok = GetTanuloOsszesOsztalyanakAdatai(tanuloDto.KretaAzonosito, tanevKretaAzonosito); } return tanuloDto; } } }