using System.Collections.Generic; using System.Web.Http; using System.Web.Mvc; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.Helpers; using Kreta.BusinessLogic.Helpers.SystemSettings; using Kreta.BusinessLogic.Interfaces; using Kreta.BusinessLogic.Security; using Kreta.Client.Leltar; using Kreta.Core.FeatureToggle; using Kreta.Enums; using Kreta.Enums.ManualEnums; using Kreta.Framework; using Kreta.Web.Areas.Alkalmazott.ApiControllers; using Kreta.Web.Areas.Alkalmazott.Models; using Kreta.Web.Helpers; using Kreta.Web.Helpers.Modal; using Kreta.Web.Models.EditorTemplates; using Kreta.Web.Security; using HttpPostAttribute = System.Web.Mvc.HttpPostAttribute; namespace Kreta.Web.Areas.Alkalmazott.Controllers { [MvcRoleClaimsAuthorize(true)] [MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.IsCsokkentettAdminJog.ClaimValue)] public class AlkalmazottController : BaseAlkalmazottController { public AlkalmazottController(IFeatureContext featureContext, IKozpontiKretaHelper kozpontiKretaHelper, ILeltarClient leltarClient) : base(featureContext, kozpontiKretaHelper, leltarClient) { } [MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.IsCsokkentettAdminJog.ClaimValue)] public ActionResult Index(string filter) { var model = AlkalmazottSearchModel.SetFilterAlkalmazottSearchModel(filter); model.MunkaugyiAdatokKlebelsbergOrNSZFH = _featureContext.IsEnabled(Core.Constants.FeatureName.MunkaugyiAdatokKlebelsberg) || _featureContext.IsEnabled(Core.Constants.FeatureName.MunkaugyiAdatokNSZFH); model.FeladatEllatasiHelyId = ClaimData.FelhelySzuro; return View(Constants.ViewNames.Index, model); } [MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.IsCsokkentettAdminJog.ClaimValue)] public ActionResult ErrorIndex(bool? NANem, bool? NABesorolasiFokozat, bool? nincsMunkakor, bool? nincsFoglalkoztatsModja, bool? nincsEmail) { var model = new AlkalmazottSearchModel(); if (NANem.HasValue && NANem.Value) { model.NANem = NANem; model.Nem = (int)NemEnum.NA; } if (NABesorolasiFokozat.HasValue && NABesorolasiFokozat.Value) { model.NABesorolasiFokozat = NABesorolasiFokozat; model.SearchPedagogusFokozat = (int)BesorolasiFokozatTipusEnum.na; } if (nincsMunkakor.HasValue && nincsMunkakor.Value) { model.NincsMunkakor = nincsMunkakor; } if (nincsFoglalkoztatsModja.HasValue && nincsFoglalkoztatsModja.Value) { model.NincsFoglalkoztatsModja = nincsFoglalkoztatsModja; } if (nincsEmail.HasValue && nincsEmail.Value) { model.NincsEmail = nincsEmail; } model.MunkaugyiAdatokKlebelsbergOrNSZFH = _featureContext.IsEnabled(Core.Constants.FeatureName.MunkaugyiAdatokKlebelsberg) || _featureContext.IsEnabled(Core.Constants.FeatureName.MunkaugyiAdatokNSZFH); return View(Constants.ViewNames.Index, model); } public ActionResult OpenNewAlkalmazottPopUp() { return base.OpenNewAlkalmazottPopUp(); } public ActionResult OpenUjBetoltetlenAllashelyPopUp() { var api = new AlkalmazottApiController(_leltarClient); var alkalmazottModel = api.CreateNewBetoltetlenAllashelyModel(); var model = new PopUpModel(alkalmazottModel, "New_BetoltetlenAllashely_Bevitel"); model.AddCancelBtn(model, "AlkalmazottHelper.betoltetlenAllashelyCancel"); model.AddOkBtn(model, "AlkalmazottHelper.betoltetlenAllashelySave"); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenUjHitoktatoRogzitesePopUp() { var api = new AlkalmazottApiController(_leltarClient); var alkalmazottModel = api.CreateNewHitoktatoModel(); var model = new PopUpModel(alkalmazottModel, "New_HitOktato_Bevitel"); model.AddCancelBtn(model, "AlkalmazottHelper.hitOktatoCancel"); model.AddOkBtn(model, "AlkalmazottHelper.hitOktatoSave"); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenUjKulsosAlkalmazottRogzitesePopUp() { var api = new AlkalmazottApiController(_leltarClient); var alkalmazottModel = api.CreateNewKulsosAlkalmazottModel(); var model = new PopUpModel(alkalmazottModel, "New_KulsosAlkalmazott_Bevitel"); model.AddCancelBtn(model, "AlkalmazottHelper.kulsosAlkalmazottCancel"); model.AddOkBtn(model, "AlkalmazottHelper.kulsosAlkalmazottSave"); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenUjKulsoGyakorlatiAllashelyRogzitesePopUp() { var api = new AlkalmazottApiController(_leltarClient); var alkalmazottModel = api.CreateNewKulsoGyakorlatiAllashelyModel(); var model = new PopUpModel(alkalmazottModel, "New_KulsoGyakorlatiAllashely_Bevitel"); model.AddCancelBtn(model, "AlkalmazottHelper.kulsoGyakorlatiAllashelyCancel"); model.AddOkBtn(model, "AlkalmazottHelper.kulsoGyakorlatiAllashelySave"); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenUjDualisKepzohelyiOktatoRogzitesePopUp() { return OpenUjDualisKepzohelyiOktatoRogzitesePopUp(false); } [MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.IsCsokkentettAdminJog.ClaimValue)] public ActionResult OpenAlkalmazottInfoPopUp(int alkalmazottId) { return base.OpenAlkalmazottInfoPopUp(alkalmazottId, false); } /// <summary> /// Tanulók adatainál a tanárok és tantárgyak fülön a tanár neve linkbutton, ami ezt az Actiont hívja meg /// </summary> /// <param name="alkalmazottId"></param> /// <returns></returns> [MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.IsCsokkentettAdminJog.ClaimValue)] public ActionResult OpenTanuloTanarInfoPopUp(int alkalmazottId) { return base.OpenTanuloTanarInfoPopUp(alkalmazottId); } public ActionResult NewElerhetosegCim(int alkalmazottId) { return base.NewElerhetosegCim(alkalmazottId); } public ActionResult ModElerhetosegCim(int cimId, bool? isKozpontilagSzinkronizalt) { return base.ModElerhetosegCim(cimId, isKozpontilagSzinkronizalt); } public ActionResult NewElerhetosegTel(int alkalmazottId) { return base.NewElerhetosegTel(alkalmazottId); } public ActionResult ModElerhetosegTel(int id) { return base.ModElerhetosegTel(id); } public ActionResult NewElerhetosegEmail(int alkalmazottId) { return base.NewElerhetosegEmail(alkalmazottId); } public ActionResult ModElerhetosegEmail(int id) { return base.ModElerhetosegEmail(id); } public ActionResult OpenModifyAlkalmazottPopUp(int alkalmazottId) { return OpenModifyAlkalmazottPopUp(alkalmazottId, false); } public ActionResult OpenNewPedagogusEletpalyamodellPopUp(int alkalmazottId) { var pedagogusEletpalyamodellModel = new PedagogusEletpalyamodellModel { AlkalmazottId = alkalmazottId }; var model = new PopUpModel(pedagogusEletpalyamodellModel, "New_PedagogusEletpalyamodell"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnPedagogusEletpalyamodellCancel", Text = Resources.CommonResource.Megse, EventName = "PedagogusEletpalyamodellHelper.newPedagogusEletpalyamodellCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnPedagogusEletpalyamodellOk", Text = Resources.CommonResource.Mentes, EventName = "PedagogusEletpalyamodellHelper.newPedagogusEletpalyamodellSave" }); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenModifyPedagogusEletpalyamodellPopUp(int id) { var apiController = new AlkalmazottApiController(_leltarClient); var pedagogusEletpalyamodellModel = apiController.GetPedagogusEletpalyamodell(id); var model = new PopUpModel(pedagogusEletpalyamodellModel, "New_PedagogusEletpalyamodell"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnPedagogusEletpalyamodellCancel", Text = Resources.CommonResource.Megse, EventName = "PedagogusEletpalyamodellHelper.modifyPedagogusEletpalyamodellCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnPedagogusEletpalyamodellOk", Text = Resources.CommonResource.Mentes, EventName = "PedagogusEletpalyamodellHelper.modifyPedagogusEletpalyamodellSave" }); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenNewVegzettsegekPopUp(int alkalmazottId) { var vegzettsegModel = new VegzettsegModel { AlkalmazottId = alkalmazottId }; var model = new PopUpModel(vegzettsegModel, "New_Vegzettsegek"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegHelper.newVegzettsegCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegOk", Text = Resources.CommonResource.Mentes, EventName = "VegzettsegHelper.newVegzettsegSave" }); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenModifyVegzettsegekPopUp(int id) { var apiController = new AlkalmazottApiController(_leltarClient); var vegzettsegModel = apiController.GetVegzettsegek(id); var model = new PopUpModel(vegzettsegModel, "New_Vegzettsegek"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegHelper.modifyVegzettsegCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegOk", Text = Resources.CommonResource.Mentes, EventName = "VegzettsegHelper.modifyVegzettsegSave" }); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenNewTovabbiMunkaugyiAdatokPopUp(int alkalmazottId) { var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var egy_statuszra_juto_kotelezo_oraszam = systemSettingsHelper.GetSystemSettingValue<double>(RendszerBeallitasTipusEnum.Egy_statuszra_juto_kotelezo_oraszam); var tovabbiMunkaugyiAdatokModel = new TovabbiMunkaugyiAdatokModel { AlkalmazottId = alkalmazottId, FoglalkoztatasiJogviszony = (int)MunkaviszonyTipusEnum.megbizasi_jogviszony, FoglalkoztatasTipusa = (int)FoglalkoztatasTipusaEnum.TeljesMunkaidos, VezetoiOraszamOka = (int)VezetoiOraszamokTipusEnum.Nincs, Oraszam = egy_statuszra_juto_kotelezo_oraszam }; if (ApplicationData.SystemType == SystemType.KK) { tovabbiMunkaugyiAdatokModel.FoglalkoztatasiJogviszony = (int)MunkaviszonyTipusEnum.kozalkalmazotti_jogviszony_hatarozatlan_idore; } var model = new PopUpModel(tovabbiMunkaugyiAdatokModel, "TovabbiMunkaugyiAdatok_PopUp"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnMunkaugyiAdatokCancel", Text = Resources.CommonResource.Megse, EventName = "TovabbiMunkaugyiAdatokHelper.newTovabbiMunkaugyiAdatokCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnMunkaugyiAdatokOk", Text = Resources.CommonResource.Mentes, EventName = "TovabbiMunkaugyiAdatokHelper.saveNewMunkaugyiAdatok" }); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenModifyTovabbiMunkaugyiAdatokPopUp(int id) { var apiController = new AlkalmazottApiController(_leltarClient); var tovabbiMunkaugyiAdatokModel = apiController.GetTovabbiMunkaugyiAdatok(id); var model = new PopUpModel(tovabbiMunkaugyiAdatokModel, "TovabbiMunkaugyiAdatok_PopUp"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnMunkaugyiAdatokCancel", Text = Resources.CommonResource.Megse, EventName = "TovabbiMunkaugyiAdatokHelper.modifyTovabbiMunkaugyiAdatokCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnMunkaugyiAdatokOk", Text = Resources.CommonResource.Mentes, EventName = "TovabbiMunkaugyiAdatokHelper.saveModMunkaugyiAdatok" }); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenInfoTovabbiMunkaugyiAdatokPopUp(int id) { var apiController = new AlkalmazottApiController(_leltarClient); var tovabbiMunkaugyiAdatokModel = apiController.GetTovabbiMunkaugyiAdatokAdataiForInfoWindow(id); var model = new PopUpModel(tovabbiMunkaugyiAdatokModel, "Info_TovabbiMunkaugyiAdatok_PopUp"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnMunkaugyiAdatokCancel", Text = Resources.CommonResource.Megse, EventName = "TovabbiMunkaugyiAdatokHelper.infoTovabbiMunkaugyiAdatokCancel" }); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenNewTovabbkepzesPopUp(int alkalmazottId) { var tovabbkepzesModel = new TovabbkepzesModel(alkalmazottId); var model = new PopUpModel(tovabbkepzesModel, "New_Tovabbkepzes_Popup"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnTovabbkepzesCancel", Text = Resources.CommonResource.Megse, EventName = "TovabbkepzesHelper.newTovabbkepzesCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnTovabbkepzesOk", Text = Resources.CommonResource.Mentes, EventName = "TovabbkepzesHelper.newTovabbkepzesSave" }); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenModifyTovabbkepzesPopUp(int tovabbkepzesId) { var tanarHelper = new TanarHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var tovabbkepzesCo = tanarHelper.GetTovabbkepzes(tovabbkepzesId); var tovabbkepzesModel = new TovabbkepzesModel(tovabbkepzesCo); var model = new PopUpModel(tovabbkepzesModel, "New_Tovabbkepzes_Popup"); model.Buttons.Add(new ModalButtonModel() { Name = "BtnTovabbkepzesCancel", Text = Resources.CommonResource.Megse, EventName = "TovabbkepzesHelper.modifyTovabbkepzesCancel" }); model.Buttons.Add(new ModalButtonModel() { Name = "BtnTovabbkepzesOk", Text = Resources.CommonResource.Mentes, EventName = "TovabbkepzesHelper.modifyTovabbkepzesSave" }); return PartialView(Constants.General.PopupView, model); } [MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.IsCsokkentettAdminJog.ClaimValue)] public ActionResult GetSZIRBeallitasokPartialView(int id) { return base.GetSZIRBeallitasokPartialView(id); } [MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.IsCsokkentettAdminJog.ClaimValue)] public ActionResult GetElsodlegesMunkaugyiAdatokPartialView(int id) { return GetElsodlegesMunkaugyiAdatokPartialView(id, false); } public ActionResult OpenModPopUp(List<AlkalmazottModModel> alkalmazottList) { return OpenModPopUp(alkalmazottList, false); } #region Export public ActionResult ExportAlkalmazottakLakcimmel([FromUri] AlkalmazottSearchModel model) { return base.ExportAlkalmazottakLakcimmel(model); } public ActionResult ExportAlkalmazottakMunkaugyiAdatai([FromUri] AlkalmazottSearchModel model) { return base.ExportAlkalmazottakMunkaugyiAdatai(model); } public ActionResult ExportAlkalmazottakSzemelyiAdatai([FromUri] AlkalmazottSearchModel model) { return base.ExportAlkalmazottakSzemelyiAdatai(model); } #endregion public ActionResult OpenVegzettsegWizard(int alkalmazottId) { return base.OpenVegzettsegWizard(alkalmazottId); } public ActionResult OpenVegzettsegTipusWizard() { return base.OpenVegzettsegTipusWizard(); } public ActionResult OpenTanarVegzettsegTipusWizard() { return base.OpenTanarVegzettsegTipusWizard(); } public ActionResult OpenAMITanarVegzettsegTipusWizard() { return base.OpenAMITanarVegzettsegTipusWizard(); } public ActionResult OpenTanitoVegzettsegTipusWizard() { return base.OpenTanitoVegzettsegTipusWizard(); } public ActionResult OpenGyogyPedagogusVegzettsegTipusWizard() { return base.OpenGyogyPedagogusVegzettsegTipusWizard(); } public ActionResult VegzettsegDetailGrid(AlkalmazottInfoModel.KKVegzettsegMainModel parentModel) { return base.VegzettsegDetailGrid(parentModel); } public ActionResult OpenModifyVegzettsegWizard(AlkalmazottInfoModel.KKVegzettsegMainModel parentModel) { return base.OpenModifyVegzettsegWizard(parentModel); } public ActionResult OpenFeladatellatasiHelyekPopUp() { return base.OpenFeladatellatasiHelyekPopUp(); } [HttpPost] public ActionResult GetExportElerhetosegOsszesGrid(int id) { return base.GetExportElerhetosegOsszesGrid(id); } } }