using System; using System.Collections.Generic; using System.Linq; using System.Text.RegularExpressions; using System.Web.Mvc; using Kreta.BusinessLogic.Classes.AsposeHelpers; using Kreta.BusinessLogic.Helpers; using Kreta.Core; using Kreta.Enums; using Kreta.Web.Areas.Nyomtatvanyok.Logic; using Kreta.Web.Helpers; using Kreta.Web.Security; namespace Kreta.Web.Areas.Nyomtatvanyok.Controllers { public partial class NyomtatvanyokController : BaseNyomtatvanyokController { private ActionResult NemzetisegiBizonyitvanypotlap(NyomtatvanyModel model, string nyomtatvanyNeve, string sablonNeve, System.Reflection.MethodInfo asposeMethod, BizonyitvanypotlapEvfolyamDivIdEnum? evfolyamDivId = null, int nyomtatvanyNyelvEnum = 0, DokumentumTipusEnum? dokumentumTipus = null, bool kellAtsorolasiZaradek = true) { try { var helper = new NyomtatvanyokHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var isIskolaerdekuSzamit = GetIsIskolaerdekuSzamit(); System.Reflection.MethodInfo metodus = helper.GetType().GetMethod(nameof(helper.GetTorzslapAdatok)); var dsParameterek = new Dictionary { { "iskolaErdekuSzamit", isIskolaerdekuSzamit}, { "nyomtatvanyNyelvEnumId", nyomtatvanyNyelvEnum}, { "isKozossegiSzolgalat", model.KozossegiSzolgalat}, { "tanitasiHetekSzamaVegzos", model.TanitasiHetekSzamaVegzos}, { "tanitasiHetekSzamaNemVegzos", model.TanitasiHetekSzamaNemVegzos}, { "altantargyBeszamitasa", model.AltantargyBeszamitasa}, { "isMuveszetOktatasi", false}, { "tanulokNevsorRendezesColumnIndex", model.TanulokNevsorRendezeseId}, { "isEvesOraszamMegjelenjen", model.EvesOraszamMegjelenjen}, { "nyomtatvanyErtekelesMegjelenitesId", model.NyomtatvanyErtekelesMegjelenitesId}, { "nemzetisegiNyelvId", (int)model.NemzetisegiNyelvId }, { "isNemzetisegi", true }, { "isShowTanulmanyiAtlag", model.AtlagFeltuntetes }, { "kiiratkozottTanulokMegjelenitese", model.KiiratkozottTanulokMegjelenitese}, { "kellAtsorolasiZaradek", kellAtsorolasiZaradek }, { "isNszfhUjSzkt", false }, { "is20_21OrLaterTanev", ClaimData.IsSelectedTanev20_21OrLater }, { "is21_22OrLaterTanev", ClaimData.IsSelectedTanev21_22OrLater } }; Dictionary frxParameterek = new Dictionary { }; var asposeHelperOptions = new AsposeHelperOptions(ClaimData.SelectedTanevID.Value) { Nyelv = model.NemzetisegiNyelvId, PageNumbering = PageNumberingEnum.None, PageSize = Aspose.Pdf.PageSize.A4, Margins = new Aspose.Pdf.MarginInfo(18, 18, 18, 18), DocumentParameters = new AsposeDocumentParameters() { IsAtlagMegjelenites = model.AtlagFeltuntetes, IsEvesOraszamMegjelenites = model.EvesOraszamMegjelenjen, BetuMeret = model.BetuMeret, Kelt = model.KeltDatum, ErtekelesMegjelenitesFormatum = model.NyomtatvanyErtekelesMegjelenitesId, IsMulasztasokUjLapra = model.MulasztasokUjLapon, } }; if (evfolyamDivId.HasValue) { asposeHelperOptions.BizonyitvanypotlapEvfolyamDivId = evfolyamDivId.Value; } if (model.AlulirottMegnevezesId.IsEntityId()) { var alulirott = new AlkalmazottMunkaugyiAdatokHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottByVezetoiOraszamOk(true, nyomtatvanyNyelvEnum: (int)model.NemzetisegiNyelvId, isNemzetisegiDokumentum: true).Where(x => x.Value == model.AlulirottMegnevezesId.ToString()).FirstOrDefault()?.Text; var r = new Regex(@".*?(?=[()])"); var m = r.Matches(alulirott); var nev = m[0].Value.ReplaceMultipleSpacesAndTrim(); var nevIdegenNyelven = m[2].Value.ReplaceMultipleSpacesAndTrim(); var beosztas = m[4].Value.Substring(3).ReplaceMultipleSpacesAndTrim(); var beosztasIdegenNyelven = m[6].Value.ReplaceMultipleSpacesAndTrim(); asposeHelperOptions.DocumentParameters.AlairoSzemely = new Dictionary() { {"Nev", nev }, {"NevIdegenNyelven", nevIdegenNyelven }, {"Beosztas", beosztas }, {"BeosztasIdegennNyelven", beosztasIdegenNyelven } }; } return AltalanosTanuloiGeneralas(model, sablonNeve, DokumentumKategoriaEnum.ErtesitokTorzslapBizonyitvany, dokumentumTipus, metodus, 0, dsParameterek, frxParameterek, nyomtatvanyNeve: nyomtatvanyNeve, distinctTables: "Fejlec,Osztaly", tablakFilterByTanuloId: "Tanulok,Ertekeles,Mulasztasok,TanuloLista,OsszefuggoSzakmaiGyakorlat,Feljegyzesek,Hatarozat,TanuloKozossegiSzolgalat,TanuloSNI,TanuloBTM,Felmentesek,FeljegyzesKozossegiSzolgalat" + ((model.AtlagFeltuntetes) ? ",TanuloiAtlag" : ""), tanuloIdColumnName: "TanuloId", emptyDocumentTable: "Tanulok", egyediLablecKellOldalszam: false, IsAspose: true, asposeMetodus: asposeMethod, asposeHelperOptions: asposeHelperOptions); } catch (Exception ex) { throw NyomtatvanyokLogic.NyomtatvanyError(ex); } } public ActionResult NemzetisegiTorzslap(NyomtatvanyModel model, int nyomtatvanyNyelvEnum = 0, DokumentumTipusEnum dokumentumTipus = DokumentumTipusEnum.TorzslapAz1tol3EsFelsobbEvfolyamokSzovegesMinositesehez, bool isMuveszetOktatas = false) { try { var helper = new NyomtatvanyokHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var isIskolaerdekuSzamit = GetIsIskolaerdekuSzamit(); System.Reflection.MethodInfo metodus = helper.GetType().GetMethod(nameof(helper.GetTorzslapAdatok)); var asposeHelper = new AsposeHelper(); System.Reflection.MethodInfo asposeMethod = asposeHelper.GetType().GetMethod(nameof(asposeHelper.GetTorzslap)); var dsParameterek = new Dictionary { { "iskolaErdekuSzamit", isIskolaerdekuSzamit}, { "nyomtatvanyNyelvEnumId", nyomtatvanyNyelvEnum}, { "isKozossegiSzolgalat", model.KozossegiSzolgalat}, { "tanitasiHetekSzamaVegzos", model.TanitasiHetekSzamaVegzos}, { "tanitasiHetekSzamaNemVegzos", model.TanitasiHetekSzamaNemVegzos}, { "altantargyBeszamitasa", model.AltantargyBeszamitasa}, { "isMuveszetOktatasi", isMuveszetOktatas}, { "tanulokNevsorRendezesColumnIndex", model.TanulokNevsorRendezeseId}, { "isEvesOraszamMegjelenjen", model.EvesOraszamMegjelenjen}, { "nyomtatvanyErtekelesMegjelenitesId", model.NyomtatvanyErtekelesMegjelenitesId}, { "isNemzetisegi", true }, { "nemzetisegiNyelvId", model.NemzetisegiNyelvId}, { "isShowTanulmanyiAtlag", false }, { "isNszfhUjSzkt", false }, { "is20_21OrLaterTanev", ClaimData.IsSelectedTanev20_21OrLater }, { "is21_22OrLaterTanev", ClaimData.IsSelectedTanev21_22OrLater } }; var asposeHelperOptions = new AsposeHelperOptions(ClaimData.SelectedTanevID.Value) { Nyelv = model.NemzetisegiNyelvId, PageNumbering = PageNumberingEnum.None, PageSize = Aspose.Pdf.PageSize.A4, Margins = new Aspose.Pdf.MarginInfo(18, 18, 18, 18), DocumentParameters = new AsposeDocumentParameters() { AdatokMegjelenitese = model.AdatMegjelenites, AltantargyBeszamitasa = model.AltantargyBeszamitasa, EvesOraszamMegjelenites = model.EvesOraszamMegjelenjen, FejlecMegjelenitese = model.FejlecMegjelenites, FeljegyzesekMegjelenitese = model.isFeljegyzesekMegjelenitese, FelmentesekMegjelenitese = model.isFelmentesekMegjelenitese, Kelt = model.KeltDatum, KotesmargoTipus = model.KotesMargoTipus, KozossegiSzolgalatMegjelenitese = model.KozossegiSzolgalat, OKJMegjelenitese = model.OKJ, SNIMegjelenites = model.SNIAdatokMegjeleniteseUresen, TorvenyesKepviseloMegjelenites = model.GondviseloMegjelenites, BetuMeret = model.BetuMeret, } }; return AltalanosTanuloiGeneralas(model, "NemzetisegiTorzslap.html", DokumentumKategoriaEnum.ErtesitokTorzslapBizonyitvany, dokumentumTipus, metodus, 0, dsParameterek, null, nyomtatvanyNeve: "NemzetisegiTorzslap", distinctTables: "Fejlec,Osztaly", isCsoport: isMuveszetOktatas, tablakFilterByTanuloId: "Tanulok,Hatarozat,Feljegyzesek,Mulasztasok,Ertekeles,TanuloLista,TanuloKozossegiSzolgalat,TanuloSNI,TanuloBTM,Felmentesek,FeljegyzesKozossegiSzolgalat,OsszefuggoSzakmaiGyakorlat", tanuloIdColumnName: "TanuloId", IsAspose: true, asposeMetodus: asposeMethod, asposeHelperOptions: asposeHelperOptions); } catch (Exception ex) { throw NyomtatvanyokLogic.NyomtatvanyError(ex); } } public ActionResult NemzetisegiBizonyitvanypotlapElso(NyomtatvanyModel model) { string nyomtatvanyNeve = "NemzetisegiBizonyitvany"; var asposeHelper = new AsposeHelper(); System.Reflection.MethodInfo asposeMethod = asposeHelper.GetType().GetMethod(nameof(asposeHelper.GetBizonyitvany)); return NemzetisegiBizonyitvanypotlap(model, nyomtatvanyNeve, $"{nyomtatvanyNeve}.html", asposeMethod, BizonyitvanypotlapEvfolyamDivIdEnum.elsoosztaly); } public ActionResult NemzetisegiBizonyitvanypotlapAlso(NyomtatvanyModel model) { string nyomtatvanyNeve = "NemzetisegiBizonyitvany"; var asposeHelper = new AsposeHelper(); System.Reflection.MethodInfo asposeMethod = asposeHelper.GetType().GetMethod(nameof(asposeHelper.GetBizonyitvany)); return NemzetisegiBizonyitvanypotlap(model, nyomtatvanyNeve, $"{nyomtatvanyNeve}.html", asposeMethod, BizonyitvanypotlapEvfolyamDivIdEnum.masodiknegyedikosztaly); } public ActionResult NemzetisegiBizonyitvanypotlapFelso(NyomtatvanyModel model) { string nyomtatvanyNeve = "NemzetisegiBizonyitvany"; var asposeHelper = new AsposeHelper(); System.Reflection.MethodInfo asposeMethod = asposeHelper.GetType().GetMethod(nameof(asposeHelper.GetBizonyitvany)); return NemzetisegiBizonyitvanypotlap(model, nyomtatvanyNeve, $"{nyomtatvanyNeve}.html", asposeMethod, BizonyitvanypotlapEvfolyamDivIdEnum.felsoosztalyok); } public ActionResult NemzetisegiGimnaziumiBizonyitvanypotlap(NyomtatvanyModel model) { model.KozossegiSzolgalat = true; string nyomtatvanyNeve = "NemzetisegiGimnaziumiBizonyitvany"; var asposeHelper = new AsposeHelper(); System.Reflection.MethodInfo asposeMethod = asposeHelper.GetType().GetMethod(nameof(asposeHelper.GetGimnaziumiBizonyitvany)); return NemzetisegiBizonyitvanypotlap(model, nyomtatvanyNeve, $"{nyomtatvanyNeve}.html", asposeMethod, kellAtsorolasiZaradek: false); } public ActionResult NemzetisegiErettsegiBizonyitvany(NyomtatvanyModel model) { string nyomtatvanyNeve = "NemzetisegiErettsegiBizonyitvany"; var asposeHelper = new AsposeHelper(); System.Reflection.MethodInfo asposeMethod = asposeHelper.GetType().GetMethod(nameof(asposeHelper.GetErettsegiBizonyitvany)); return NemzetisegiBizonyitvanypotlap(model, nyomtatvanyNeve, $"{nyomtatvanyNeve}.html", asposeMethod); } } }