using System; using System.Collections.Generic; using System.Data; using System.Linq; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.HelperClasses; using Kreta.BusinessLogic.HelperClasses.ApaczaiProgramCOs; using Kreta.Client.KGR; using Kreta.Client.KGR.Request; using Kreta.Core; using Kreta.Core.ConnectionType; using Kreta.DataAccessManual; using Kreta.DataAccessManual.Util; using Kreta.Enums; using Kreta.Enums.ManualEnums; using Kreta.Resources; namespace Kreta.BusinessLogic.Helpers { public class TanuloApaczaiHelper : LogicBase { public TanuloApaczaiHelper(IConnectionType connectionType) : base(connectionType) { } public bool CreatePalyazat(IKGRClient client, ApaczaiPalyazatFelvetelRequest kgrRequestModel) { var palyazat = client.CreateApaczaiPalyazat(kgrRequestModel); return palyazat != null; } public bool PalyazatAdategyeztetes(IKGRClient client, ApaczaiPalyazatFelvetelRequest kgrRequestModel) { var palyazat = client.PalyazatAdategyeztetes(kgrRequestModel); return palyazat != null; } public ApaczaiPalyazatFelvetelRequest GetApaczaiPalyazatFelvetelRequest(TanuloAdatokCo model, bool isSelectedTanev20_21OrLater, bool isSelectedTanev21_22OrLater) { var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; var tanuloOktatasNevelesAdatok = GetTanuloiAdatok(model, isSelectedTanev20_21OrLater, isSelectedTanev21_22OrLater); var kgrRequestModel = new ApaczaiPalyazatFelvetelRequest() { TanevId = tanevSorszam, Palyazo = new ApaczaiPalyazatPalyazo { Allampolgarsag = model.Allampolgarsag, Allampolgarsag2 = model.Allampolgarsag2, Anyanyelv = model.Anyanyelv, AnyjaSzuletesiCsaladiNev = model.AnyjaCsaladiNeve, AnyjaSzuletesiUtonev = model.AnyjaUtonev, CsaladiNev = model.CsaladiNev, EloTag = model.EloTag, FenntartoAzonosito = model.FenntartoAzonosito, FenntartoNev = model.FenntartoNev, IntezmenyEgyediAzonosito = model.IntezmenyEgyediAzonosito, IntezmenyNev = model.IntezmenyNev, IntezmenyAzonosito = model.IntezmenyAzonosito, IdpEgyediAzonosito = model.IdpEgyediAzonosito, OktatasiAzonosito = model.OktatasiAzonosito, SzuletesiCsaladNev = model.SzuletesiCsaladNev, SzuletesiHely = model.SzuletesiHely, SzuletesiIdo = model.SzuletesiIdo, SzuletesiOrszag = model.SzuletesiOrszag, SzuletesiUtonev = model.SzuletesiUtonev, Utonev = model.Utonev, Bankszamla = new ApaczaiPalyazatBankszamla { BankszamlaSzam = model.BankszamlaSzam, BankszamlaTulajdonosNeve = model.BankszamlaTulajdonosNeve, BankszamlaTulajdonosa = model.BankszamlaTulajdonos, SzamlavezetoBank = model.SzamlavezetoBank, }, AllandoElerhetoseg = model.AllandoElerhetoseg != null && !string.IsNullOrWhiteSpace(model.AllandoElerhetoseg.Orszag) ? new ApaczaiPalyazatElerhetoseg { Ajto = model.AllandoElerhetoseg.Ajto, CimTipus = model.AllandoElerhetoseg.CimTipus, Emailcim = model.AllandoElerhetoseg.Emailcim, EmailTipus = model.AllandoElerhetoseg.EmailTipus, Emelet = model.AllandoElerhetoseg.Emelet, Hazszam = model.AllandoElerhetoseg.Hazszam, HelysegNev = model.AllandoElerhetoseg.HelysegNev, Iranyitoszam = model.AllandoElerhetoseg.Iranyitoszam, KozteruletNev = model.AllandoElerhetoseg.KozteruletNev, KozteruletTipus = model.AllandoElerhetoseg.KozteruletTipus, Orszag = model.AllandoElerhetoseg.Orszag, TelefonSzam = model.AllandoElerhetoseg.TelefonSzam, TelefonTipus = model.AllandoElerhetoseg.TelefonTipus, } : null, TartozkodasiElerhetoseg = model.TartozkodasiElerhetoseg != null && !string.IsNullOrWhiteSpace(model.TartozkodasiElerhetoseg.Orszag) ? new ApaczaiPalyazatElerhetoseg { Ajto = model.TartozkodasiElerhetoseg.Ajto, CimTipus = model.TartozkodasiElerhetoseg.CimTipus, Emailcim = model.TartozkodasiElerhetoseg.Emailcim, EmailTipus = model.TartozkodasiElerhetoseg.EmailTipus, Emelet = model.TartozkodasiElerhetoseg.Emelet, Hazszam = model.TartozkodasiElerhetoseg.Hazszam, HelysegNev = model.TartozkodasiElerhetoseg.HelysegNev, Iranyitoszam = model.TartozkodasiElerhetoseg.Iranyitoszam, KozteruletNev = model.TartozkodasiElerhetoseg.KozteruletNev, KozteruletTipus = model.TartozkodasiElerhetoseg.KozteruletTipus, Orszag = model.TartozkodasiElerhetoseg.Orszag, TelefonSzam = model.TartozkodasiElerhetoseg.TelefonSzam, TelefonTipus = model.TartozkodasiElerhetoseg.TelefonTipus, } : null, KeziAtlag = model.KeziAtlag, SzamitottAtlag = model.SzamitottAtlag, AtlagKomment = model.Feljegyzes, TAJszam = model.TAJSzam, IsSzakkepzesenKivulrolJott = tanuloOktatasNevelesAdatok.IsSzakkepzesenKivulrolJott, Osztaly = tanuloOktatasNevelesAdatok.OsztalyNev, Evfolyam = tanuloOktatasNevelesAdatok.EvfolyamNev }, ModositoId = model.ModositoId, ModositoNev = model.ModositoNev, HatranyosHelyzetHatarozatDatum = new DateTime(model.HatranyosHelyzetIgazolasKiallitasDatuma, 1, 1), PalyazatMentor = new ApaczaiPalyazatMentor() { FenntartoAzonosito = !string.IsNullOrWhiteSpace(tanuloOktatasNevelesAdatok.MentorFenntartoAzonosito) ? tanuloOktatasNevelesAdatok.MentorFenntartoAzonosito : model.FenntartoAzonosito, FenntartoNev = !string.IsNullOrWhiteSpace(tanuloOktatasNevelesAdatok.MentorFenntartoNev) ? tanuloOktatasNevelesAdatok.MentorFenntartoNev : model.FenntartoNev, LegmagasabbSzintuFenntartoNev = tanuloOktatasNevelesAdatok.MentorLegmagasabbSzintuFenntartoNev, IntezmenyEgyediAzonosito = tanuloOktatasNevelesAdatok.MentorIntezmenyEgyediAzonosito, IntezmenyNev = tanuloOktatasNevelesAdatok.MentorIntezmenyNev, IntezmenyAzonosito = tanuloOktatasNevelesAdatok.MentorIntezmenyAzonosito, IntezmenyVezetoNev = tanuloOktatasNevelesAdatok.MentorIntezmenyVezetoNev, OMKod = tanuloOktatasNevelesAdatok.MentorOMKod, Bankszamla = new ApaczaiPalyazatMentorBankszamla { BankszamlaSzam = tanuloOktatasNevelesAdatok.MentorBankszamlaSzam, BankszamlaTulajdonosNeve = tanuloOktatasNevelesAdatok.MentorBankszamlaTulajdonosNeve, BankszamlaTulajdonosa = tanuloOktatasNevelesAdatok.MentorBankszamlaTulajdonosa, SzamlavezetoBank = tanuloOktatasNevelesAdatok.MentorSzamlavezetoBank, }, Elerhetoseg = new ApaczaiPalyazatMentorElerhetoseg { Ajto = tanuloOktatasNevelesAdatok.MentorAjto, CimTipus = tanuloOktatasNevelesAdatok.MentorCimTipus, Emailcim = tanuloOktatasNevelesAdatok.MentorEmailcim, EmailTipus = tanuloOktatasNevelesAdatok.MentorEmailTipus, Emelet = tanuloOktatasNevelesAdatok.MentorEmelet, Hazszam = tanuloOktatasNevelesAdatok.MentorHazszam, HelysegNev = tanuloOktatasNevelesAdatok.MentorHelysegNev, Iranyitoszam = tanuloOktatasNevelesAdatok.MentorIranyitoszam, KozteruletNev = tanuloOktatasNevelesAdatok.MentorKozteruletNev, KozteruletTipus = tanuloOktatasNevelesAdatok.MentorKozteruletTipus, Orszag = tanuloOktatasNevelesAdatok.MentorOrszag, TelefonSzam = tanuloOktatasNevelesAdatok.MentorTelefonSzam, TelefonTipus = tanuloOktatasNevelesAdatok.MentorTelefonTipus, }, IdpEgyediAzonosito = tanuloOktatasNevelesAdatok.MentorIdpEgyediAzonosito, OktatasiAzonosito = tanuloOktatasNevelesAdatok.MentorOktatasiAzonosito, Nev = tanuloOktatasNevelesAdatok.MentorNev, SzuletesiNev = tanuloOktatasNevelesAdatok.MentorSzuletesiNev, SzuletesiHely = tanuloOktatasNevelesAdatok.MentorSzuletesiHely, SzuletesiIdo = tanuloOktatasNevelesAdatok.MentorSzuletesiIdo, AnyjaNeve = tanuloOktatasNevelesAdatok.MentorAnyjaSzuletesiNev, TAJszam = tanuloOktatasNevelesAdatok.MentorTAJszam, AdoazonositoJel = tanuloOktatasNevelesAdatok.MentorAdoazonositoJel, SzTSz = tanuloOktatasNevelesAdatok.MentorSzTSz, NyugdijTipusId = tanuloOktatasNevelesAdatok.MentorNyugdijTipusId, NyugdijTipusNev = tanuloOktatasNevelesAdatok.MentorNyugdijTipusNev, NyugdijKezdete = tanuloOktatasNevelesAdatok.MentorNyugdijKezdete, } }; return kgrRequestModel; } public bool ValidateTanuloMentor(ApaczaiPalyazatFelvetelRequest co) { return !string.IsNullOrWhiteSpace(co.PalyazatMentor.FenntartoAzonosito) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.FenntartoNev) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Nev) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.OMKod) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.TAJszam) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.AnyjaNeve) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.IntezmenyNev) && co.PalyazatMentor.SzuletesiIdo != (DateTime)default && !string.IsNullOrWhiteSpace(co.PalyazatMentor.SzuletesiNev) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.SzuletesiHely) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.AdoazonositoJel) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.OktatasiAzonosito) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.IntezmenyAzonosito) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.IntezmenyVezetoNev) && co.PalyazatMentor.Bankszamla != null && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Bankszamla.BankszamlaSzam) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Bankszamla.SzamlavezetoBank) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Bankszamla.BankszamlaTulajdonosNeve) && co.PalyazatMentor.Elerhetoseg != null && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Elerhetoseg.Orszag) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Elerhetoseg.Hazszam) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Elerhetoseg.Emailcim) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Elerhetoseg.HelysegNev) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Elerhetoseg.TelefonSzam) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Elerhetoseg.Iranyitoszam) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Elerhetoseg.KozteruletNev) && !string.IsNullOrWhiteSpace(co.PalyazatMentor.Elerhetoseg.KozteruletTipus); } private TanuloAdatCO GetTanuloiAdatok(TanuloAdatokCo model, bool isSelectedTanev20_21OrLater, bool isSelectedTanev21_22OrLater) { var tanuloHelper = new TanuloHelper(ConnectionType); var osztalyCsoport = tanuloHelper.GetOsztalyCsoport(model.ModositoId, (int)OktNevelesiKategoriaEnum.NevelesOktatas, false); if (osztalyCsoport.Tables[0].Rows.Count > 0) { var osztalycsoportId = osztalyCsoport.Tables[0].Select("IsCsoport = 'F'").OrderByDescending(s => s["ErvKezd"]).First().Field("OsztalyCsoportId"); return tanuloHelper.GetTanuloiAdatok(model.ModositoId, kovTanevId: null, isSelectedTanev20_21OrLater, isSelectedTanev21_22OrLater, osztalycsoportId); } return tanuloHelper.GetTanuloiAdatok(model.ModositoId, kovTanevId: null, isSelectedTanev20_21OrLater, isSelectedTanev21_22OrLater); } public (int countEgyebDokumentum, int countHatranyosHelyzetIgazolas, int countHozzajaruloDokumentum, int countElozoTanevEvvegiBizonyitvany, int countMentoriTamogatoNyilatkozat) GetFeltoltottDokumentumKategoriak(IKGRClient client, Guid tanuloIdpEgyediAzonosito) { var dokumetumok = GetPalyazatDokumentumai(client, tanuloIdpEgyediAzonosito); var countEgyebDokumentum = dokumetumok.Count(x => x.Kategoria == ApaczaiDokumentumTipusEnum.Egyeb); var countHatranyosHelyzetIgazolas = dokumetumok.Count(x => x.Kategoria == ApaczaiDokumentumTipusEnum.HatranyosHelyzetIgazolas); var countHozzajaruloDokumentum = dokumetumok.Count(x => x.Kategoria == ApaczaiDokumentumTipusEnum.HozzajaruloNyilatkozat); var countElozoTanevEvvegiBizonyitvany = dokumetumok.Count(x => x.Kategoria == ApaczaiDokumentumTipusEnum.ElozoTanevEvvegiBizonyitvany); var countMentoriTamogatoNyilatkozat = dokumetumok.Count(x => x.Kategoria == ApaczaiDokumentumTipusEnum.MentoriTamogatoNyilatkozat); return (countEgyebDokumentum, countHatranyosHelyzetIgazolas, countHozzajaruloDokumentum, countElozoTanevEvvegiBizonyitvany, countMentoriTamogatoNyilatkozat); } public PalyazatCo GetPalyazat(IKGRClient client, Guid tanuloIdpEgyediAzonosito) { var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; var palyazat = client.GetApaczaiPalyazat(tanevSorszam, tanuloIdpEgyediAzonosito); if (palyazat is null || !palyazat.StatuszId.IsEntityId()) { return new PalyazatCo(); } var statusz = MapKgrPalyazatStatuszIdToApaczaiStatusz(palyazat.StatuszId); // NOTE: Ha központi küldi ezt a kommentet, akkor törölni ezt + resourcet is. var komment = palyazat.StatuszKomment; switch (statusz) { case ApaczaiPalyazatStatuszEnum.Bekuldott: if (string.IsNullOrWhiteSpace(palyazat.StatuszKomment)) { komment = TanuloApaczaiResource.BekuldottPalyazatKomment; } break; case ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve: if (string.IsNullOrWhiteSpace(palyazat.EllenorzesrolAdategyeztetesreVisszakuldveKomment)) { komment = TanuloApaczaiResource.AdategyeztetesPalyazatKomment; } else { komment = palyazat.EllenorzesrolAdategyeztetesreVisszakuldveKomment; } break; case ApaczaiPalyazatStatuszEnum.Elfogadott: if (string.IsNullOrWhiteSpace(palyazat.StatuszKomment)) { komment = TanuloApaczaiResource.ElfogadottPalyazatKomment; } break; case ApaczaiPalyazatStatuszEnum.Elutasitott: if (string.IsNullOrWhiteSpace(palyazat.StatuszKomment)) { komment = TanuloApaczaiResource.ElutasitottPalyazatKomment; } break; case ApaczaiPalyazatStatuszEnum.Visszavont: if (string.IsNullOrWhiteSpace(palyazat.StatuszKomment)) { komment = TanuloApaczaiResource.VisszavontPalyazatKomment; } break; case ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve: if (string.IsNullOrWhiteSpace(palyazat.FelulvizsgalatrolAdategyeztetesreVisszakuldveKomment)) { komment = TanuloApaczaiResource.AdategyeztetesPalyazatKomment; } else { komment = palyazat.FelulvizsgalatrolAdategyeztetesreVisszakuldveKomment; } break; case ApaczaiPalyazatStatuszEnum.TamogatasiSzerzodesselRendelkezoIntezmenytValtott: komment = TanuloApaczaiResource.TamogatasiSzerzodesselRendelkezoIntezmenytValtottKomment; break; default: break; } return new PalyazatCo { Id = palyazat.Id, Palyazo = palyazat.Palyazo, TanevId = palyazat.TanevId, StatuszId = palyazat.StatuszId, StatuszNev = palyazat.StatuszNev, Letrehozva = palyazat.Letrehozva, StatuszKomment = palyazat.StatuszKomment, FellebbezesHatarido = palyazat.FellebbezesHatarido, HatranyosHelyzetHatarozatDatum = palyazat.HatranyosHelyzetHatarozatDatum, ErkeztetesiSzam = palyazat.StatuszErkeztetesiSzam, Iktatoszam = palyazat.StatuszIktatasiSzam, Komment = komment, Statusz = statusz }; } public List GetPalyazatDokumentumai(IKGRClient client, Guid tanuloIdpEgyediAzonosito) { var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; var fajlList = client.GetApaczaiPalyazatDokumentumai(tanevSorszam, tanuloIdpEgyediAzonosito); var coList = new List(); coList.AddRange(fajlList.Select(x => new DokumentumCo { Azonosito = x.FileServiceEgyediAzonosito, Kategoria = MapKgrDokumentumTipusToDokumentumKategoria(x.ApaczaiFileTipusId, x.FileServiceUtvonal), Nev = x.FileServiceUtvonal.Substring(x.FileServiceUtvonal.LastIndexOf("/") + 1), Datum = x.Letrehozva, EszaTipus = x.EszaTipus })); return coList; } public byte[] GetPalyazatDokumentuma(IKGRClient client, Guid tanuloIdpEgyediAzonosito, Guid fileId) { var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; return client.GetApaczaiPalyazatDokumentuma(tanevSorszam, tanuloIdpEgyediAzonosito, fileId); } public bool UploadPalyazatDokumentumBinaryMode(IKGRClient client, Guid tanuloIdpEgyediAzonosito, int dokumentumKategoriaId, UploadedFileCO uploadedFileCO) { var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; var apaczaiUploadRequest = new ApaczaiUploadFileRequestBinary { PostedFileName = uploadedFileCO.PostedFileName, PostedFileContentType = uploadedFileCO.PostedFileContentType, PostedFileCategory = MapDokumentumKategoriaToKgrDokumentumTipus((ApaczaiDokumentumTipusEnum)dokumentumKategoriaId), File = uploadedFileCO.PostedFile, ApaczaiDokumentumTipus = MapEszaTipus(uploadedFileCO), }; return client.PostApaczaiPalyazatDokumentumBinaryFiles(tanevSorszam, tanuloIdpEgyediAzonosito, apaczaiUploadRequest); } public IEnumerable GetPalyazatiEsemenyek(IKGRClient client, Guid tanuloIdpEgyediAzonosito) { var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; var palyazatTortenetList = client.GetApaczaiPalyazatTortenet(tanevSorszam, tanuloIdpEgyediAzonosito); var esemenyek = palyazatTortenetList.Select(t => new PalyazatiEsemenyCo { Cim = t.Cim, Datum = t.Datum, Megjegyzes = t.Megjegyzes, Statusz = MapKgrPalyazatStatuszIdToApaczaiStatusz(t.StatuszId) }); return esemenyek; } public bool GetPalyazatVisszavonas(IKGRClient client, Guid tanuloIdpEgyediAzonosito) { var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; var palyazat = client.GetApaczaiVisszavonas(tanevSorszam, tanuloIdpEgyediAzonosito); return palyazat.Id.IsEntityId(); } public List GetIgenylesekCoList(IKGRClient client, IgenylesSearchCo searchCo, Guid intezmenyEgyediAzonosito) { var result = new List(); var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; var osszesIgenyles = client.GetIgenylesekModelList(tanevSorszam, intezmenyEgyediAzonosito); if (osszesIgenyles.Any()) { var tanulokOsztalyaiDs = new TanuloHelper(ConnectionType).GetTanulokOsztalyaiByTanuloIdp(osszesIgenyles.Select(i => i.Palyazo.IdpEgyediAzonosito).Distinct()); var tanulokOsztalyaiDict = tanulokOsztalyaiDs.Tables[0].AsEnumerable().Select(r => new { TanuloIdp = r.Field("TanuloIdp"), OsztalyId = r.Field("OsztalyId"), OsztalyNev = r.Field("OsztalyNev"), EvfolyamId = r.Field("EvfolyamId"), EvfolyamNev = r.Field("EvfolyamNev"), }).ToDictionary(t => t.TanuloIdp); var ret = osszesIgenyles.Where(i => tanulokOsztalyaiDict.Keys.Contains(i.Palyazo.IdpEgyediAzonosito)).Select(i => new IgenylesCo { TanuloNeve = $"{i.Palyazo.CsaladiNev} {i.Palyazo.Utonev}", OktatasiAzonosito = i.Palyazo.OktatasiAzonosito, SzuletesiIdeje = i.Palyazo.SzuletesiIdo, OsztalyId = tanulokOsztalyaiDict[i.Palyazo.IdpEgyediAzonosito].OsztalyId, OsztalyNev = tanulokOsztalyaiDict[i.Palyazo.IdpEgyediAzonosito].OsztalyNev, EvfolyamId = tanulokOsztalyaiDict[i.Palyazo.IdpEgyediAzonosito].EvfolyamId, EvfolyamNev = tanulokOsztalyaiDict[i.Palyazo.IdpEgyediAzonosito].EvfolyamNev, PalyazatAllapotaId = (int)MapKgrPalyazatStatuszIdToApaczaiStatusz(i.StatuszId), PalyazatAllapotaNev = i.StatuszNev }); if (searchCo.EvfolyamId.HasValue) { ret = ret.Where(x => x.EvfolyamId == searchCo.EvfolyamId.Value); } if (!string.IsNullOrWhiteSpace(searchCo.OktatasiAzonosito)) { ret = ret.Where(x => x.OktatasiAzonosito.Contains(searchCo.OktatasiAzonosito)); } if (searchCo.OsztalyId.HasValue) { ret = ret.Where(x => x.OsztalyId == searchCo.OsztalyId.Value); } if (searchCo.PalyazatAllapotaId.HasValue) { ret = ret.Where(x => x.PalyazatAllapotaId == searchCo.PalyazatAllapotaId.Value); } if (!string.IsNullOrWhiteSpace(searchCo.TanuloNeve)) { ret = ret.Where(x => x.TanuloNeve.Contains(searchCo.TanuloNeve)); } result.AddRange(ret); } return result; } public List GetTanuloiListaCoList(IKGRClient client, TanuloiListaSearchCo searchCo, Guid intezmenyEgyediAzonosito) { var coList = new TanuloHelper(ConnectionType).GetApaczaiTanuloiListaCoList(searchCo); var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; var beadottIgenylesek = client.GetIgenylesekModelList(tanevSorszam, intezmenyEgyediAzonosito); coList.ForEach(x => { var kgrIgeny = beadottIgenylesek.SingleOrDefault(y => y.Palyazo.IdpEgyediAzonosito == x.IdpEgyediAzonosito); if (kgrIgeny != default) { if (kgrIgeny.StatuszId != (int)KgrPalyazatStatuszEnum.ElfogadottVegleges) { x.Jogosultsag = false; x.JuttatasOsszege = null; x.NemJogosultsagOka_STR = $"
  • {SzakkepzesiJuttatasokResource.ElutasitottPalyazat}
"; } x.PalyazatKgrAllapota = kgrIgeny.StatuszNev; } else { x.Jogosultsag = false; x.NemJogosultsagOka = 0; x.NemJogosultsagOka_STR = string.Empty; x.PalyazatKgrAllapota = SzakkepzesiJuttatasokResource.NincsErvenyesPalyazat; } }); if (searchCo.IsCsakErvenyesPalyazattal) { coList.RemoveAll(x => x.PalyazatKgrAllapota == SzakkepzesiJuttatasokResource.NincsErvenyesPalyazat); } return coList; } public List GetKifizetesekCoList(IKGRClient client, KifizetesSearchCo searchCo) { var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; var osszesKifizetes = client.GetKifizetesekModelList(tanevSorszam); var ret = new List(osszesKifizetes.Select(x => new KifizetesCo { //TanuloNeve = model.TanuloNeve, //OktatasiAzonosito = model.OktatasiAzonosito, //SzuletesiIdeje = model.SzuletesiIdeje, //OsztalyId = model.OsztalyId, //OsztalyNev = model.OsztalyNev, //EvfolyamId = model.EvfolyamId, //EvfolyamNev = model.EvfolyamNev, //Jogosultsag = model.Jogosultsag, //NemJogosultsagOka = model.NemJogosultsagOka, //JuttatasOsszege = model.JuttatasOsszege, })); ret.AddRange(new List{ new KifizetesCo { TanuloNeve = "minta aladár", OktatasiAzonosito = "79999999999", SzuletesiIdeje = new DateTime(2000, 10, 10), OsztalyNev = "1.x", OsztalyId = 1, EvfolyamNev = "1", EvfolyamId = 1, Jogosultsag = "Igen", JuttatasOsszege = 10000, NemJogosultsagOka = "", }, new KifizetesCo { TanuloNeve = "minta béla", OktatasiAzonosito = "79999999998", SzuletesiIdeje = new DateTime(2000, 10, 10), OsztalyNev = "1.x", OsztalyId = 1, EvfolyamNev = "1", EvfolyamId = 1, Jogosultsag = "Nem", JuttatasOsszege = null, NemJogosultsagOka = "Nem jogosult" }, }); IEnumerable filtered = ret; if (searchCo.EvfolyamId.HasValue) { filtered = filtered.Where(x => x.EvfolyamId == searchCo.EvfolyamId.Value); } if (!string.IsNullOrWhiteSpace(searchCo.OktatasiAzonosito)) { filtered = filtered.Where(x => x.OktatasiAzonosito.Contains(searchCo.OktatasiAzonosito)); } if (searchCo.OsztalyId.HasValue) { filtered = filtered.Where(x => x.OsztalyId == searchCo.OsztalyId.Value); } if (!string.IsNullOrWhiteSpace(searchCo.TanuloNeve)) { filtered = filtered.Where(x => x.TanuloNeve.Contains(searchCo.TanuloNeve)); } if (searchCo.JuttatasOsszege.HasValue) { filtered = filtered.Where(x => x.JuttatasOsszege == searchCo.JuttatasOsszege.Value); } if (searchCo.Jogosultsag.HasValue) { filtered = filtered.Where(x => x.Jogosultsag == searchCo.Jogosultsag.Value.GetDisplayName()); } return filtered.ToList(); } public bool DeletePalyazatDokumentuma(IKGRClient client, Guid tanuloIdpEgyediAzonosito, Guid fileId) { var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; return client.DeleteApaczaiPalyazatDokumentuma(tanevSorszam, tanuloIdpEgyediAzonosito, fileId); } public bool Fellebbezes(IKGRClient client, Guid tanuloIdpEgyediAzonosito, string indoklas) { var tanevSorszam = new TanevHelper(ConnectionType).GetTanevInfo().Sorszam; return client.Fellebbezes(tanuloIdpEgyediAzonosito, tanevSorszam, indoklas); } public bool HasElfogadottPalyazatMasikIntezmenyByOktatasiAzonosito(IKGRClient client, Guid intezmenyEgyediAzonosito, int tanuloId) { var tanevSorszam = -1; string oktatasiAzonosito = null; Dal.CustomConnection.Run(ConnectionType, h => { var dalHandlerConnectionType = new DalHandlerConnectionType(ConnectionType, h); tanevSorszam = new TanevHelper(dalHandlerConnectionType).GetTanevInfo().Sorszam; oktatasiAzonosito = new FelhasznaloHelper(dalHandlerConnectionType).GetFelhasznaloOktatasiAzonosito(tanuloId); }); return client.HasElfogadottPalyazatMasikIntezmenyByOktatasiAzonosito(intezmenyEgyediAzonosito, tanevSorszam, oktatasiAzonosito); } private ApaczaiDokumentumTipusEnum MapKgrDokumentumTipusToDokumentumKategoria(int kgrFileTypeId, string fileServiceUtvonal) { switch (kgrFileTypeId) { case 1: return ApaczaiDokumentumTipusEnum.HatranyosHelyzetIgazolas; case 2: return ApaczaiDokumentumTipusEnum.HozzajaruloNyilatkozat; case 3: return ApaczaiDokumentumTipusEnum.ElozoTanevEvvegiBizonyitvany; case 5: { if (fileServiceUtvonal.Contains("_TamogatoiOkirat_")) { return ApaczaiDokumentumTipusEnum.TamogatoiOkirat; } else { return ApaczaiDokumentumTipusEnum.PalyazatiDontes; } } case 7: return ApaczaiDokumentumTipusEnum.MentoriTamogatoNyilatkozat; case 8: return ApaczaiDokumentumTipusEnum.EszaTipus; default: return ApaczaiDokumentumTipusEnum.Egyeb; } } private int MapDokumentumKategoriaToKgrDokumentumTipus(ApaczaiDokumentumTipusEnum kategoriaId) { switch (kategoriaId) { case ApaczaiDokumentumTipusEnum.HatranyosHelyzetIgazolas: return 1; case ApaczaiDokumentumTipusEnum.HozzajaruloNyilatkozat: return 2; case ApaczaiDokumentumTipusEnum.ElozoTanevEvvegiBizonyitvany: return 3; case ApaczaiDokumentumTipusEnum.MentoriTamogatoNyilatkozat: return 7; case ApaczaiDokumentumTipusEnum.EszaBelepoNyilatkozat: return 8; case ApaczaiDokumentumTipusEnum.EszaKilepoNyilatkozat: return 8; //case ApaczaiDokumentumTipusEnum.PalyazatiDontes: return 5; default: return 4; } } private ApaczaiPalyazatStatuszEnum MapKgrPalyazatStatuszIdToApaczaiStatusz(int? kgrStatuszId) { switch (kgrStatuszId) { case (int)KgrPalyazatStatuszEnum.Uj: case (int)KgrPalyazatStatuszEnum.EllenorzesAlatt: case (int)KgrPalyazatStatuszEnum.EllenorizveElfogadva: case (int)KgrPalyazatStatuszEnum.EllenorizveElutasitva: case (int)KgrPalyazatStatuszEnum.FelulvizsgalatAlatt: case (int)KgrPalyazatStatuszEnum.FelulvizsgalvaElfogadva: case (int)KgrPalyazatStatuszEnum.FelulvizsgalvaElutasitva: case (int)KgrPalyazatStatuszEnum.Fellebbezve: case (int)KgrPalyazatStatuszEnum.DontesiJavaslatraElfogadottAtadva: case (int)KgrPalyazatStatuszEnum.DontesiJavaslatraElutasitottAtadva: case (int)KgrPalyazatStatuszEnum.FelulvizsgalbaElutasitvaKerettullepes: case (int)KgrPalyazatStatuszEnum.DontesiJavaslatraElutasitottKerettullepesAtadva: return ApaczaiPalyazatStatuszEnum.Bekuldott; case (int)KgrPalyazatStatuszEnum.EllenorzesrolAdategyeztetesreVisszakuldve: return ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve; case (int)KgrPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve: return ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve; case (int)KgrPalyazatStatuszEnum.ElfogadottVegleges: return ApaczaiPalyazatStatuszEnum.Elfogadott; case (int)KgrPalyazatStatuszEnum.ElutasitottVegleges: case (int)KgrPalyazatStatuszEnum.ElutasitottVeglegesKerettullepes: return ApaczaiPalyazatStatuszEnum.Elutasitott; case (int)KgrPalyazatStatuszEnum.IntezmenyValtas: return ApaczaiPalyazatStatuszEnum.TamogatasiSzerzodesselRendelkezoIntezmenytValtott; case (int)KgrPalyazatStatuszEnum.Visszavont: return ApaczaiPalyazatStatuszEnum.Visszavont; default: return ApaczaiPalyazatStatuszEnum.NemMeghatarozott; } } private string MapEszaTipus(UploadedFileCO uploadedFileCO) { if (uploadedFileCO.ApaczaiDokumentumTipus != null) { switch (uploadedFileCO.ApaczaiDokumentumTipus) { case ApaczaiDokumentumTipusEnum.EszaBelepoNyilatkozat: return TanuloApaczaiResource.EszaBelepoNyilatkozat; case ApaczaiDokumentumTipusEnum.EszaKilepoNyilatkozat: return TanuloApaczaiResource.EszaKilepoNyilatkozat; default: return string.Empty; } } return string.Empty; } } }