using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Net.Mime; using System.Text; using System.Web; using System.Web.Http; using System.Web.Mvc; using Aspose.Cells; using Kreta.BusinessLogic.Helpers; using Kreta.BusinessLogic.Helpers.SystemSettings; using Kreta.BusinessLogic.Interfaces; using Kreta.BusinessLogic.Logic; using Kreta.Client.Leltar; using Kreta.Core.FeatureToggle; using Kreta.Enums; using Kreta.Enums.ManualEnums; using Kreta.Resources; using Kreta.Web.Areas.Alkalmazott.ApiControllers; using Kreta.Web.Areas.Alkalmazott.Helpers; using Kreta.Web.Areas.Alkalmazott.Models; using Kreta.Web.Controllers; using Kreta.Web.Helpers; using Kreta.Web.Helpers.Error; using Kreta.Web.Helpers.Modal; using Kreta.Web.Models; using Kreta.Web.Models.EditorTemplates; using Kreta.Web.Security; namespace Kreta.Web.Areas.Alkalmazott.Controllers { public class BaseAlkalmazottController : Controller { protected readonly IFeatureContext _featureContext; protected readonly IKozpontiKretaHelper _kozpontiKretaHelper; protected readonly ILeltarClient _leltarClient; public BaseAlkalmazottController(IFeatureContext featureContext, IKozpontiKretaHelper kozpontiKretaHelper, ILeltarClient leltarClient) { _featureContext = featureContext; _kozpontiKretaHelper = kozpontiKretaHelper; _leltarClient = leltarClient ?? throw new ArgumentNullException(nameof(leltarClient)); } [System.Web.Mvc.NonAction] public ActionResult OpenNewAlkalmazottPopUp() { var alkalmazottModel = new AlkalmazottModel(); alkalmazottModel.AlapAdatModel = new AlapAdatModel() { NemList = AlkalmazottViewHelper.GetNemList().Where(x => x.Value == 4.ToString() || x.Value == 5.ToString()).ToList(), IgazolvanyTipus = (int?)Enums.IgazolvanyTipusEnum.Szemelyi_igazolvany, Allampolgarsag = (int?)AllampolgarsagEnum.magyar, Anyanyelve = (int?)AnyanyelvEnum.magyar, SzuletesiOrszag = (int?)OrszagTipusEnum.Magyarorszag, }; alkalmazottModel.JogosultsagModel = new JogosultsagModel() { JogosultsagiSzintList = AlkalmazottViewHelper.GetJogosultsagiSzintList(_featureContext.IsEnabled(Core.Constants.FeatureName.IERSzerepkorokHozzaadasa, instituteId: ClaimData.IntezmenyAzonosito)), JogosultsagiSzint = new string[] { ((int)SzerepkorTipusEnum.Naplo).ToString() } }; var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var egy_statuszra_juto_kotelezo_oraszam = systemSettingsHelper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Egy_statuszra_juto_kotelezo_oraszam); alkalmazottModel.MunkaugyAdatModel = new MunkaugyAdatModel() { PedagogusStatuszaList = AlkalmazottViewHelper.GetPedagogusStatuszaList(), VezetoiOraszamOka = (int)VezetoiOraszamokTipusEnum.Nincs, FoglalkoztatasTipusa = (int)FoglalkoztatasTipusaEnum.TeljesMunkaidos, PedagogusStatusza = (int)PedagogusStatuszEnum.teljes_munkaidos, Oraszam = egy_statuszra_juto_kotelezo_oraszam, MunkaKor = (int)MunkakorTipusEnum.tanar, FoglalkoztatasiJogviszony = (int)MunkaviszonyTipusEnum.kozalkalmazotti_jogviszony_hatarozatlan_idore, PedagogusFokozat = (int)BesorolasiFokozatTipusEnum.na, Foallasu = true }; alkalmazottModel.CimElerhetosegModel = new CimElerhetosegModel() { Orszag = (int)OrszagTipusEnum.Magyarorszag, CimTipus = (int)CimTipusEnum.allando_lakcim, AlapertelmezettCim = true, AlapertelmezettEmail = true, AlapertelmezettTel = true, TelefonKotelezo = false, EmailcimKotelezo = false, EmailTipusKotelezo = false, FormSettings = new List() { CimElerhetosegConstant.CimSectionVisible, CimElerhetosegConstant.EmailSectionVisible, CimElerhetosegConstant.TelSectionVisible, CimElerhetosegConstant.IsNew } }; var model = new PopUpModel(new TabStripModel() { TabList = AlkalmazottViewHelper.GetNewTabs(alkalmazottModel) }, "New_PopUp"); model.AddCancelBtn(model, "AlkalmazottHelper.newAlkalmazottCancel"); model.AddOkBtn(model, "AlkalmazottHelper.saveNewAlkPromt"); return PartialView(Constants.General.PopupView, model); } [System.Web.Mvc.NonAction] public ActionResult OpenUjDualisKepzohelyiOktatoRogzitesePopUp(bool isFromSzervezet) { var dualisKepzohelyiOktatoModel = new DualisKepzohelyiOktatoModel() { IsDualisKepzohelyFromSzervezet = isFromSzervezet, NevEloTag = new AlkalmazottHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSpecialisAlkalmazottakNevEloTag(AlkalmazottResource.DualisKepzohelyRovid), CsaladiNev = AlkalmazottResource.DualisCsaladNev, Utonev = isFromSzervezet ? AlkalmazottResource.Oktato : AlkalmazottResource.KulsoGyakorlatiUtoNev, MunkaKor = (int)MunkakorTipusEnum.KulsoGyakorlatiHely }; dualisKepzohelyiOktatoModel.JogosultsagModel = new JogosultsagModel() { JogosultsagiSzintList = AlkalmazottViewHelper.GetJogosultsagiSzintForSzervezetModulList(ClaimData.SelectedTanevID.Value), JogosultsagiSzint = new string[] { ((int)SzerepkorTipusEnum.Naplo).ToString() } }; var model = new PopUpModel(new TabStripModel() { TabList = AlkalmazottViewHelper.GetNewTabs(dualisKepzohelyiOktatoModel) }, "New_PopUp"); model.AddCancelBtn(model, "AlkalmazottHelper.ujDualisKepzohelyiOktatoRogziteseCancel"); model.AddOkBtn(model, "AlkalmazottHelper.dualisKepzohelyiOktatoSave"); return PartialView(Constants.General.PopupView, model); } [System.Web.Mvc.NonAction] public ActionResult OpenAlkalmazottInfoPopUp(int alkalmazottId, bool isFromSzervezet) { var model = new PopUpModel(new TabStripModel() { TabList = AlkalmazottViewHelper.GetInfoTabs(alkalmazottId, ClaimData.IsKlebelsberg, isFromSzervezet) }, "Info_PopUp"); model.AddCancelBtn(model, "AlkalmazottHelper.alkalmazottInfoCancel"); return PartialView(Constants.General.PopupView, model); } [System.Web.Mvc.NonAction] public ActionResult OpenTanuloTanarInfoPopUp(int alkalmazottId) { var model = new PopUpModel(new TabStripModel() { TabList = AlkalmazottViewHelper.GetInfoTabs(alkalmazottId, ClaimData.IsKlebelsberg, false) }, "Info_PopUp"); //model.AddCancelBtn(model, "TanuloTanarHelper.detailTanuloTanarCancel"); model.AddBtn(model, "TanuloTanarCancelButton", AdminisztracioResource.Megsem, "TanuloTanarHelper.detailTanuloTanarCancel"); return PartialView(Constants.General.PopupView, model); } [System.Web.Mvc.NonAction] public ActionResult NewElerhetosegCim(int alkalmazottId) { var model = new CimElerhetosegModel() { FelhasznaloId = alkalmazottId, Orszag = (int)OrszagTipusEnum.Magyarorszag, CimTipus = (int)CimTipusEnum.allando_lakcim, FormSettings = new List() { CimElerhetosegConstant.CimSectionVisible, CimElerhetosegConstant.IsNew, CimElerhetosegConstant.AlapertelmezettCimVisible } }; var pm = new PopUpModel(model, "_Elerhetoseg_Cim_Bevitel"); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegCimHelper.newElerhetosegCimCancel" }); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegCimHelper.newElerhetosegCimSave" }); return PartialView(Constants.General.PopupView, pm); } [System.Web.Mvc.NonAction] public ActionResult ModElerhetosegCim(int cimId, bool? isKozpontilagSzinkronizalt) { var tac = new AlkalmazottApiController(_leltarClient); var model = tac.GetAlkalmazottElerhetosegCim(cimId); model.IsKozpontilagSzinkronizalt = isKozpontilagSzinkronizalt.HasValue && isKozpontilagSzinkronizalt.Value; model.FormSettings = new List() { CimElerhetosegConstant.CimSectionVisible, CimElerhetosegConstant.AlapertelmezettCimVisible, }; var pm = new PopUpModel(model, "_Elerhetoseg_Cim_Bevitel"); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegCimHelper.modElerhetosegCimCancel" }); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegCimHelper.modElerhetosegCimSave" }); return PartialView(Constants.General.PopupView, pm); } [System.Web.Mvc.NonAction] public ActionResult NewElerhetosegTel(int alkalmazottId) { var model = new CimElerhetosegModel() { FelhasznaloId = alkalmazottId, TanulovalEgyezik = true, AlapertelmezettTel = true, TelefonKotelezo = true, FormSettings = new List() { CimElerhetosegConstant.TelSectionVisible, CimElerhetosegConstant.IsNew, CimElerhetosegConstant.AlapertelmezettTelVisible } }; model.AlapertelmezettTel = !new AlkalmazottHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).HasAlkalmazottAlapertelmezettTelefon(alkalmazottId); var pm = new PopUpModel(model, "_Elerhetoseg_Tel_Bevitel"); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegTelHelper.newElerhetosegTelCancel" }); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegTelHelper.newElerhetosegTelSave" }); return PartialView(Constants.General.PopupView, pm); } [System.Web.Mvc.NonAction] public ActionResult ModElerhetosegTel(int id) { var tac = new AlkalmazottApiController(_leltarClient); var model = tac.GetAlkalmazottElerhetosegTel(id); model.TanulovalEgyezik = true; model.TelefonKotelezo = true; model.FormSettings = new List() { CimElerhetosegConstant.TelSectionVisible, CimElerhetosegConstant.AlapertelmezettTelVisible }; var pm = new PopUpModel(model, "_Elerhetoseg_Tel_Bevitel"); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegTelHelper.modElerhetosegTelCancel" }); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegTelHelper.modElerhetosegTelSave" }); return PartialView(Constants.General.PopupView, pm); } [System.Web.Mvc.NonAction] public ActionResult NewElerhetosegEmail(int alkalmazottId) { var model = new CimElerhetosegModel() { FelhasznaloId = alkalmazottId, AlapertelmezettEmail = true, TanulovalEgyezik = true, EmailcimKotelezo = true, EmailTipusKotelezo = true, FormSettings = new List() { CimElerhetosegConstant.EmailSectionVisible, CimElerhetosegConstant.IsNew, CimElerhetosegConstant.AlapertelmezettEmailVisible } }; model.AlapertelmezettEmail = !new AlkalmazottHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).HasAlkalmazottAlapertelmezettEmail(alkalmazottId); var pm = new PopUpModel(model, "_Elerhetoseg_Email_Bevitel"); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegEmailHelper.newElerhetosegEmailCancel" }); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegEmailHelper.newElerhetosegEmailSave" }); return PartialView(Constants.General.PopupView, pm); } [System.Web.Mvc.NonAction] public ActionResult ModElerhetosegEmail(int id) { var tac = new AlkalmazottApiController(_leltarClient); var model = tac.GetAlkalmazottElerhetosegEmail(id); model.TanulovalEgyezik = true; model.EmailcimKotelezo = true; model.EmailTipusKotelezo = true; model.FormSettings = new List() { CimElerhetosegConstant.EmailSectionVisible, CimElerhetosegConstant.AlapertelmezettEmailVisible }; var pm = new PopUpModel(model, "_Elerhetoseg_Email_Bevitel"); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegEmailHelper.modElerhetosegEmailCancel" }); pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegEmailHelper.modElerhetosegEmailSave" }); return PartialView(Constants.General.PopupView, pm); } [System.Web.Mvc.NonAction] public ActionResult OpenModifyAlkalmazottPopUp(int alkalmazottId, bool isFromSzervezet) { var apiController = new AlkalmazottApiController(_leltarClient); var alkalmazottModel = apiController.GetAlkalmazottDataForModify(alkalmazottId); var connectionType = ConnectionTypeExtensions.GetActiveSessionConnectionType(); alkalmazottModel.IsFromSzervezet = isFromSzervezet; alkalmazottModel.MunkaugyAdatModel.IsDualisKepzohelyFromSzervezet = isFromSzervezet; alkalmazottModel.MunkaugyAdatModel.IsDualisKepzesEnabled = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled); if (isFromSzervezet) { alkalmazottModel.JogosultsagModel.JogosultsagiSzintList = AlkalmazottViewHelper.GetJogosultsagiSzintForSzervezetModulList(ClaimData.SelectedTanevID.Value); } else { alkalmazottModel.JogosultsagModel.JogosultsagiSzintList = AlkalmazottViewHelper.GetJogosultsagiSzintList(_featureContext.IsEnabled(Core.Constants.FeatureName.IERSzerepkorokHozzaadasa, instituteId: ClaimData.IntezmenyAzonosito)); } alkalmazottModel.TabList = AlkalmazottViewHelper.GetModifyTabs(alkalmazottModel, ClaimData.IsKlebelsberg); alkalmazottModel.AlapAdatModel.NemList = AlkalmazottViewHelper.GetNemList().Where(x => x.Value == 4.ToString() || x.Value == 5.ToString()).ToList(); alkalmazottModel.MunkaugyAdatModel.PedagogusStatuszaList = AlkalmazottViewHelper.GetPedagogusStatuszaList(); var icHelper = new IntezmenyConfigHelper(connectionType); alkalmazottModel.JogosultsagModel.IsHrFeatureEnabled = icHelper.GetIntezmenyConfig(IntezmenyConfigModulEnum.HRModul, IntezmenyConfigTipusEnum.IsEnabled); alkalmazottModel.MunkaugyAdatModel.IsKlebelsberg = ClaimData.IsKlebelsberg; var intezmenyAdatok = new IntezmenyHelper(connectionType).GetIntezmenyiAdatok(); alkalmazottModel.MunkaugyAdatModel.IsApaczaiMentorVisible = intezmenyAdatok.IsSzakkepzo && intezmenyAdatok.IsSzakkepzoJuttatas; var model = new PopUpModel(alkalmazottModel, "Modify_PopUp"); model.AddCancelBtn(model, "AlkalmazottHelper.modifyAlkalmazottCancel"); model.AddOkBtn(model, "AlkalmazottHelper.saveModAlkPromt"); return PartialView(Constants.General.PopupView, model); } public ActionResult GetAlapadatokPartialView(int id) { var model = new AlkalmazottApiController(_leltarClient).GetAlkalmazottDataForInfo(id); return PartialView("Info_Alapadatok_Tab", model); } [System.Web.Mvc.NonAction] public ActionResult GetSZIRBeallitasokPartialView(int id) { var model = new AlkalmazottApiController(_leltarClient).GetAlkalmazottDataForInfo(id); return PartialView("Info_SZIRBeallitasok_Tab", model); } [System.Web.Mvc.NonAction] public ActionResult GetElsodlegesMunkaugyiAdatokPartialView(int id, bool isFromSzervezet) { var model = new AlkalmazottApiController(_leltarClient).GetAlkalmazottElsodlegesMunkaugyiAdatokDataForInfo(id, ClaimData.IsKlebelsberg); model.IsFromSzervezetOktato = isFromSzervezet; return PartialView("Info_ElsodlegesMunkaugyiAdatok_Tab", model); } public ActionResult GetPartialView(int id, string partialViewName, bool isFromSzervezet = false) { var model = new AlkalmazottDetailModel() { Id = id, AlkalmazottApiControllerName = isFromSzervezet ? Constants.ApiControllers.DualisAdminAlkalmazottApi : Constants.ApiControllers.AlkalmazottApi }; return PartialView(partialViewName, model); } [System.Web.Mvc.NonAction] public ActionResult OpenModPopUp(List alkalmazottList, bool isFromSzervezet) { var api = new AlkalmazottApiController(_leltarClient); var model = new AlkalmazottModModel(); var alkalmazottListForKozpontilagSzinkronizaltCheck = new List(); if (alkalmazottList.Count == 1) { var data = api.GetAlkalmazottDataForModify(alkalmazottList[0].AlkalmazottId.Value); var nev = BusinessLogic.Extensions.NameExtensions.GetNevSorrendben("F", data.AlapAdatModel.NevEloTag, data.AlapAdatModel.MunkavallaloCsaladiNev, data.AlapAdatModel.MunkavallaloUtonev); model.AlkalmazottNev = nev; model.AlkalmazottId = data.AlkalmazottId; var munkaugy = data.MunkaugyAdatModel; model.FoglalkoztatasiJogviszony = munkaugy.FoglalkoztatasiJogviszony; model.FeladatellatasiHely = munkaugy.FeladatellatasiHely; model.Oraszam = munkaugy.Oraszam; model.MunkaidoKedvezmenyOraszam = munkaugy.MunkaidoKedvezmenyOraszam; model.MunkaKor = munkaugy.MunkaKor; model.AlkalmazasKezdete = munkaugy.AlkalmazasKezdete; model.AlkalmazasVege = munkaugy.AlkalmazasVege; model.PedagogusFokozat = munkaugy.PedagogusFokozat; model.PedagogusStatusza = munkaugy.PedagogusStatusza; model.MunkaidoKedvezmenyOka = munkaugy.MunkaidoKedvezmenyOka; model.FoglalkoztatasTipusa = munkaugy.FoglalkoztatasTipusa; alkalmazottListForKozpontilagSzinkronizaltCheck.Add(alkalmazottList[0].AlkalmazottId.Value); } else { foreach (var item in alkalmazottList) { model.AlkalmazottArray += item.AlkalmazottId.ToString() + ","; model.AlkalmazottNevArray += item.AlkalmazottNev + ", "; alkalmazottListForKozpontilagSzinkronizaltCheck.Add(item.AlkalmazottId.Value); } model.AlkalmazottArray = model.AlkalmazottArray.Remove(model.AlkalmazottArray.Length - 1); model.AlkalmazottNevArray = model.AlkalmazottNevArray.Remove(model.AlkalmazottNevArray.Length - 2); } model.IsFromSzervezet = isFromSzervezet; model.NemList = AlkalmazottViewHelper.GetNemList().Where(x => x.Value == 4.ToString() || x.Value == 5.ToString()).ToList(); model.IgenNemList = new ComboBoxHelperEnumApiController(_featureContext).GetIgenNemEnumSelectList(); model.PedagogusStatuszaList = AlkalmazottViewHelper.GetPedagogusStatuszaList(); model.IsKlebelsberg = ClaimData.IsKlebelsberg; model.IsKozpontilagSzinkronizalt = new AlkalmazottHelper(ConnectionTypeExtensions.GetSessionConnectionType()).AnyKozpontilagSzinkorizaltAlkalmazottFromList(alkalmazottListForKozpontilagSzinkronizaltCheck); var pm = new PopUpModel(model, isFromSzervezet ? "SzervezetAlkalmazottModify_Bevitel" : "AlkalmazottModify_Bevitel"); pm = pm.AddCancelBtn(pm, "AlkalmazottHelper.modifyCancel"); pm = pm.AddOkBtn(pm, isFromSzervezet ? "AlkalmazottHelper.confirmCsopSzervezetModWindow" : "AlkalmazottHelper.confirmCsopModWindow"); return PartialView(Constants.General.PopupView, pm); } #region Export [System.Web.Mvc.NonAction] public ActionResult ExportAlkalmazottakLakcimmel([FromUri] AlkalmazottSearchModel model) { var stream = new AlkalmazottHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottakLakcimmelExcelExport(model.ConvertModelToCo()); return new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = AlkalmazottResource.AlkalmazottakLakcimmelExportFileName }; } [System.Web.Mvc.NonAction] public ActionResult ExportAlkalmazottakMunkaugyiAdatai([FromUri] AlkalmazottSearchModel model) { model.MunkaugyiAdatokKlebelsbergOrNSZFH = _featureContext.IsEnabled(Core.Constants.FeatureName.MunkaugyiAdatokKlebelsberg) || _featureContext.IsEnabled(Core.Constants.FeatureName.MunkaugyiAdatokNSZFH); var stream = new AlkalmazottHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottakMunkaugyiAdataiExcelExport(model.MunkaugyiAdatokKlebelsbergOrNSZFH, model.ConvertModelToCo(), _kozpontiKretaHelper, ClaimData.IsSelectedTanev21_22OrLater); return new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = AlkalmazottResource.AlkalmazottakMunkaugyiAdataiExportFileName }; } [System.Web.Mvc.NonAction] public ActionResult ExportAlkalmazottakSzemelyiAdatai([FromUri] AlkalmazottSearchModel model) { var stream = new AlkalmazottHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottakSzemelyiAdataiExcelExport(model.ConvertModelToCo()); return new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = AlkalmazottResource.AlkalmazottakSzemelyiAdataiExportFileName }; } #endregion [System.Web.Mvc.NonAction] public ActionResult OpenVegzettsegWizard(int alkalmazottId) { var helper = new AlkalmazottHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()); var kepesites = helper.GetAlkalmazottKKKepesite(alkalmazottId); if (kepesites == null) { return PartialView("Wiz_Kepesites"); } if (kepesites == (int)KKKepesitesTipusEnum.Pedagogus) { return OpenVegzettsegTipusWizard(); } return PartialView("Wiz_NemRogzithetoVegzettseg"); } [System.Web.Mvc.NonAction] public ActionResult OpenVegzettsegTipusWizard() { return PartialView("Wiz_VegzettsegTipus"); } [System.Web.Mvc.NonAction] public ActionResult OpenTanarVegzettsegTipusWizard() { var model = new TanarVegzettsegWizardModel(); return PartialView("Wiz_TanarVegzettseg", model); } [System.Web.Mvc.NonAction] public ActionResult OpenAMITanarVegzettsegTipusWizard() { var model = new AMITanarVegzettsegWizardModel(); return PartialView("Wiz_AMITanarVegzettseg", model); } [System.Web.Mvc.NonAction] public ActionResult OpenTanitoVegzettsegTipusWizard() { var model = new TanitoVegzettsegWizardModel(); return PartialView("Wiz_TanitoVegzettseg", model); } [System.Web.Mvc.NonAction] public ActionResult OpenGyogyPedagogusVegzettsegTipusWizard() { var model = new GyogyPedagogusVegzettsegWizardModel(); return PartialView("Wiz_GyogypedagogusVegzettseg", model); } [System.Web.Mvc.NonAction] public ActionResult VegzettsegDetailGrid(AlkalmazottInfoModel.KKVegzettsegMainModel parentModel) { var model = new VegzettsegDetailModel() { KepesitesTipus = parentModel.KepesitesTipusId, EntityId = parentModel.EntityID, AlkalmazottId = parentModel.AlkalmazottId }; return PartialView("Modify_Wiz_DetailGrid_Vegzettsegek_Tab", model); } [System.Web.Mvc.NonAction] public ActionResult OpenModifyVegzettsegWizard(AlkalmazottInfoModel.KKVegzettsegMainModel parentModel) { var helper = new VegzettsegHelper(ConnectionTypeExtensions.GetSessionConnectionType()); if (parentModel.KepesitesTipusId == (int)KKKepesitesJellTipusEnum.Tanar) { var co = helper.GetTanarVegzettseg(parentModel.EntityID.Value); var vegzettsegModel = new TanarVegzettsegWizardModel(); vegzettsegModel.FromCo(co); var model = new PopUpModel(vegzettsegModel, "Wiz_TanarVegzettseg"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegWizard.ModifyVegzettsegCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegOk", Text = Resources.CommonResource.Mentes, EventName = "VegzettsegWizard.ModifyTanarVegzettseg" }); return PartialView(Constants.General.PopupView, model); } if (parentModel.KepesitesTipusId == (int)KKKepesitesJellTipusEnum.TanarAMI) { var co = helper.GetAmiTanarVegzettseg(parentModel.EntityID.Value); var vegzettsegModel = new AMITanarVegzettsegWizardModel(); vegzettsegModel.FromCo(co); var model = new PopUpModel(vegzettsegModel, "Wiz_AMITanarVegzettseg"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegWizard.ModifyVegzettsegCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegOk", Text = Resources.CommonResource.Mentes, EventName = "VegzettsegWizard.ModifyAmiTanarVegzettseg" }); return PartialView(Constants.General.PopupView, model); } if (parentModel.KepesitesTipusId == (int)KKKepesitesJellTipusEnum.Gyogypedagogus) { var co = helper.GetGyogypedagogusVegzettseg(parentModel.AlkalmazottId); var vegzettsegModel = new GyogyPedagogusVegzettsegWizardModel(); vegzettsegModel.FromCo(co); var model = new PopUpModel(vegzettsegModel, "Wiz_GyogypedagogusVegzettseg"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegWizard.ModifyVegzettsegCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegOk", Text = Resources.CommonResource.Mentes, EventName = "VegzettsegWizard.ModifyGyogypedVegzettseg" }); return PartialView(Constants.General.PopupView, model); } if (parentModel.KepesitesTipusId == (int)KKKepesitesJellTipusEnum.Tanito) { var co = helper.GetTanitoVegzettseg(parentModel.AlkalmazottId); var vegzettsegModel = new TanitoVegzettsegWizardModel(); vegzettsegModel.FromCo(co); var model = new PopUpModel(vegzettsegModel, "Wiz_TanitoVegzettseg"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegWizard.ModifyVegzettsegCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegOk", Text = Resources.CommonResource.Mentes, EventName = "VegzettsegWizard.ModifyTanitoVegzettseg" }); return PartialView(Constants.General.PopupView, model); } var nemModModel = new PopUpModel(model: null, "Wiz_NemModosithatoVegzettseg"); nemModModel.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegWizard.ModifyVegzettsegCancel" }); return PartialView(Constants.General.PopupView, nemModModel); } [System.Web.Mvc.NonAction] public ActionResult OpenFeladatellatasiHelyekPopUp() { var felhelyekDDL = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetFeladatEllatasiHelyDDl(hasKovTanev: true); var model = new FeladatellatasiHelyPopupModel { FeladatellatasiHelyList = felhelyekDDL.Select(x => new SelectListItem { Text = x.Value, Value = x.Key, }).ToList() }; var popupModel = new PopUpModel(model, "FeladatellatasiHelyekPopup"); popupModel.Buttons.Add(new ModalButtonModel() { Name = "BtnFelhelyMentes", Text = CommonResource.Mentes, EventName = "AlkalmazottHelper.setFeladatellatasiHelyKovTanev" }); return PartialView(Constants.General.PopupView, popupModel); } [System.Web.Mvc.NonAction] public ActionResult GetExportElerhetosegOsszesGrid(int id) { try { using (var workbook = new Workbook()) { var helper = new TanarHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var cimCoList = helper.GetTeacherAddressDataCoList(id); var cimModelList = new List(); foreach (var co in cimCoList) { var gridModel = new AlkalmazottInfoModel.ElerhetosegCimModel(co); cimModelList.Add(gridModel); } var telefonCoList = helper.GetTeacherPhonesCoList(id); var telefonModelList = new List(); foreach (var co in telefonCoList) { var gridModel = new AlkalmazottInfoModel.ElerhetosegTelefonModel(co); telefonModelList.Add(gridModel); } var emailCoList = helper.GetTeacherEmailsCoList(id); var emailModelList = new List(); foreach (var co in emailCoList) { var gridModel = new AlkalmazottInfoModel.ElerhetosegEmailModel(co); emailModelList.Add(gridModel); } var cimSimpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos(AlkalmazottInfoModel.ElerhetosegCimModel.ElerhetosegCimExportAttributeId); var telefonSimpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos(AlkalmazottInfoModel.ElerhetosegTelefonModel.ElerhetosegTelefonExportAttributeId); var emailSimpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos(AlkalmazottInfoModel.ElerhetosegEmailModel.ElerhetosegEmailExportAttributeId); Worksheet worksheetCim = SimpleExportLogic.GetWorksheet(workbook, AdatszolgaltatasokResource.ElerhetosegCimExportSheetName, cimSimpleExportColumnCos, 0); Worksheet worksheetTelefon = SimpleExportLogic.GetWorksheet(workbook, AdatszolgaltatasokResource.ElerhetosegTelefonExportSheetName, telefonSimpleExportColumnCos, 1); Worksheet worksheetEmail = SimpleExportLogic.GetWorksheet(workbook, AdatszolgaltatasokResource.ElerhetosegEmailExportSheetName, emailSimpleExportColumnCos, 2); worksheetCim.FillWithData(cimModelList, cimSimpleExportColumnCos, ClaimData.SelectedTanevID.Value); worksheetTelefon.FillWithData(telefonModelList, telefonSimpleExportColumnCos, ClaimData.SelectedTanevID.Value); worksheetEmail.FillWithData(emailModelList, emailSimpleExportColumnCos, ClaimData.SelectedTanevID.Value); MemoryStream memoryStream = SimpleExportLogic.GetWorkbookMemoryStream(workbook); memoryStream.Position = 0; return new FileContentResult(memoryStream.ToArray(), MediaTypeNames.Application.Octet) { FileDownloadName = HttpUtility.UrlEncode($"{helper.GetTanarAdatok(id).NyomtatasiNev}_{AdatszolgaltatasokResource.ElerhetosegOsszesFileName}_{DateTime.Now:yyyy_MM_dd}.{Constants.ImportExport.FileFormatXlsx}", Encoding.UTF8), }; } } catch (Exception ex) { throw new StatusError(HttpStatusCode.BadRequest, ex.Message, ex); } } } }