using System.Collections.Generic; using System.Web.Http; using System.Web.Http.Results; using System.Web.Mvc; using Kendo.Mvc.UI; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.Classes.ComboBox; using Kreta.BusinessLogic.Helpers; using Kreta.BusinessLogic.Helpers.SystemSettings; using Kreta.BusinessLogic.Utils; using Kreta.Core.FeatureToggle; using Kreta.Enums; using Kreta.Enums.ManualEnums; using Kreta.Framework; using Kreta.Framework.Util; using Kreta.Resources; using Kreta.Web.Areas.Alkalmazott.Helpers; using Kreta.Web.Helpers; using Kreta.Web.Security; namespace Kreta.Web.Controllers { [ApiRoleClaimsAuthorize(true)] public class ComboBoxHelperEnumApiController : ApiController { private readonly IFeatureContext FeatureContext; public ComboBoxHelperEnumApiController(IFeatureContext featureContext) { FeatureContext = featureContext; } public JsonResult> GetIgenNemEnumList([DataSourceRequest] DataSourceRequest request) { var listItems = new List { new ComboBoxListItem {Text = StringResourcesUtil.GetString(133) /*Igen*/, Value = ((int) IgenNemEnum.Igen).ToString()}, new ComboBoxListItem {Text = StringResourcesUtil.GetString(134) /*Nem*/, Value = ((int) IgenNemEnum.Nem).ToString()} }; return Json(listItems); } public List GetIgenNemEnumSelectList() { IDictionary dictionary = FrameworkEnumExtensions.EnumToListManual(); return dictionary.ToSelectListItemList(); } public List GetIsElfogadottSzandeknyilatkozatEnumSelectList() { IDictionary dictionary = FrameworkEnumExtensions.EnumToListManual(); return dictionary.ToSelectListItemList(); } public JsonResult> GetHetNapList([DataSourceRequest] DataSourceRequest request) { IDictionary dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.HetNapjaTipus, ClaimData.SelectedTanevID.Value, true); dictionary.Remove(((int)HetNapjaTipusEnum.na).ToString()); return Json(dictionary.ToComboBoxItemList()); } public JsonResult> GetHetNapListWithEmptyRecord([DataSourceRequest] DataSourceRequest request) { IDictionary dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.HetNapjaTipus, ClaimData.SelectedTanevID.Value, true); dictionary.Remove(((int)HetNapjaTipusEnum.na).ToString()); dictionary.Add(((int)HetNapjaTipusEnum.na).ToString(), EnumsResource.UresOrarend); return Json(dictionary.ToComboBoxItemList()); } public List GetJogosultsagList() { var ret = AlkalmazottViewHelper.GetJogosultsagiSzintList(FeatureContext.IsEnabled(Core.Constants.FeatureName.IERSzerepkorokHozzaadasa, instituteId: ClaimData.IntezmenyAzonosito)); var icHelper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()); var hrModulEnabled = icHelper.GetIntezmenyConfig(IntezmenyConfigModulEnum.HRModul, IntezmenyConfigTipusEnum.IsEnabled); if (hrModulEnabled) { ret.Add(new SelectListItem { Text = FelhasznalokResource.HRModulKezeloMintJogosultsag, Value = FelhasznalokResource.HRModulKezeloMintJogosultsagValue }); } if (new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue(RendszerBeallitasTipusEnum.Lazar_Ervin_Program_kezelese)) { ret.Add(new SelectListItem { Text = FelhasznalokResource.LEPModulKezeloMintJogosultsag, Value = FelhasznalokResource.LEPModulKezeloMintJogosultsagValue }); } ret.Add(new SelectListItem { Text = FelhasznalokResource.DiakOlimpiaKezeloMintJogosultsag, Value = FelhasznalokResource.DiakOlimpiaKezeloMintJogosultsagValue }); ret.Add(new SelectListItem { Text = FelhasznalokResource.KozSzolgKezeloMintJogosultsag, Value = FelhasznalokResource.KozSzolgKezeloMintJogosultsagValue }); ret.Add(new SelectListItem { Text = FelhasznalokResource.OsztalyfonokMintJogosultsag, Value = FelhasznalokResource.OsztalyfonokMintJogosultsagValue }); ret.Add(new SelectListItem { Text = FelhasznalokResource.OsztalyfonokHelyettesMintJogosultsag, Value = FelhasznalokResource.OsztalyfonokHelyettesMintJogosultsagValue }); return ret; } public List GetAtlagMegjelenitesTipusList() { var dictionary = EnumExtensions.EnumToDictionary(ClaimData.SelectedTanevID.Value, false, true); return dictionary.ToSelectListItemList(); } public List GetAtlagbaBeleszamitoOsztalyTipusList() { var dictionary = EnumExtensions.EnumToDictionary(ClaimData.SelectedTanevID.Value, false, true); return dictionary.ToSelectListItemList(); } public List GetHaladasiNaploFulTipusList() { var dictionary = EnumExtensions.EnumToDictionary(ClaimData.SelectedTanevID.Value, false, true); var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); if (!systemSettingsHelper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Fogadoorak_megjelenitese)) { dictionary.Remove(((int)HaladasiNaploFulTipus.Fogadoora).ToString()); } return dictionary.ToSelectListItemList(); } public List GetHaladasiNaploNezetTipusList() { var dictionary = EnumExtensions.EnumToDictionary(ClaimData.SelectedTanevID.Value, false, true); return dictionary.ToSelectListItemList(); } public JsonResult> GetTavolletjelentoTipusList() { List topItems = new List { (int)TavolletTipusEnum.Szabadsag, (int)TavolletTipusEnum.Keresokeptelenseg, (int)TavolletTipusEnum.Tanulmanyi_munkaido_kedvezmeny, (int)TavolletTipusEnum.Szulesi_szabadsag, (int)TavolletTipusEnum.Apat_megilleto_potszabadsag_gyermeke_szuletese_eseten, (int)TavolletTipusEnum.Hozzatartozo_halalakor_mentesules_munkavegzes_alol, (int)TavolletTipusEnum.Fizetes_nelkuli_szabadsag_kerelemre_30_napot_meghalado_tartamu_biztositas_szunetel, (int)TavolletTipusEnum.Fizetes_nelkuli_szabadsag_kerelemre_30_napot_nem_meghalado_tartamu_biztositas_szunetel, (int)TavolletTipusEnum.Kotelezo_orvosi_vizsgalat_tartamara_mentesules_munkavegzes_alol, (int)TavolletTipusEnum.Kepzesben_tovabbkepzesben_felek_megallapodasa_alapjan_valo_reszvetelhez_szukseges_idotartamra_mentesules_munkavegzes_alol, }; IDictionary dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.TavolletTipus, ClaimData.SelectedTanevID.Value, topItems: topItems); // Ez KRÉTA-ban nem jelenik meg kiválasztásra dictionary.Remove(((int)TavolletTipusEnum.Kotelezettsegszeges_korulmenyei_kivizsgalasanak_idotartamara_mentesites_munkavegzes_alol_max_30_nap_).ToString()); dictionary.Remove(((int)TavolletTipusEnum.kotelezettsegszeges_korulmenyei_kivizsgalasanak_idotartamara_mentesites_munkavegzes_alol_max_30_nap_ora).ToString()); var helper = new HRModulHelper(ConnectionTypeExtensions.GetSessionConnectionType()); // "sima" felhasználóknak ezek nem jelennek meg: if (!ClaimData.IsAdministrator && !helper.IsLeader()) { dictionary.Remove(((int)TavolletTipusEnum.Egyeb_hianyzas_dijazassal).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Egyeb_hianyzas_dijazas_nelkul).ToString()); dictionary.Remove(((int)TavolletTipusEnum.egyeb_hianyzas_dijazas_nelkul_ora).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Mentesites_a_munkavegzes_alol_felmentesi_felmondasi_ido_tartamara).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Sztrajk).ToString()); dictionary.Remove(((int)TavolletTipusEnum.sztrajk_ora).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Munkaszuneti_nap_miatti_tavollet_ora_vagy_teljesitmenyberezes_eseten).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Jogviszony_folyositas).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Kirendeles_a_fogado_munkaltato_fizet).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Allasido_dijazassal).ToString()); dictionary.Remove(((int)TavolletTipusEnum.allasido_dijazassal_ora).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Felfuggesztes_jogviszonyt_megszunteto_hatarozat_kezbesitese).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Munkaszuneti_nap_miatti_tavollet).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Kotelezettsegszeges_korulmenyei_kivizsgalasanak_idotartamara_mentesites_munkavegzes_alol_max_30_nap_).ToString()); dictionary.Remove(((int)TavolletTipusEnum.kotelezettsegszeges_korulmenyei_kivizsgalasanak_idotartamara_mentesites_munkavegzes_alol_max_30_nap_ora).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Fizetes_nelkuli_szabadsag_kulszolgalatba_helyezes_idotartamara).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Elozetes_letartoztatas_szabadsagvesztes).ToString()); dictionary.Remove(((int)TavolletTipusEnum.Allasido_dijazas_nelkul).ToString()); dictionary.Remove(((int)TavolletTipusEnum.allasido_dijazas_nelkul_ora).ToString()); } return Json(dictionary.ToComboBoxItemList()); } public JsonResult> GetTavolletjelentoNaptariEvekList() { var listItems = new List(); var helper = new HRModulHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var evek = helper.GetTavolletjelentoNaptariEvek(ClaimData.IsAdministrator); foreach (var ev in evek) { ComboBoxListItem listItem = new ComboBoxListItem() { Text = ev, Value = ev }; listItems.Add(listItem); } return Json(listItems); } public JsonResult> GetTavolletjelentoStatuszList() { IDictionary dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.TavolletStatusz, ClaimData.SelectedTanevID.Value); return Json(dictionary.ToComboBoxItemList()); } public JsonResult> GetFizetesiModList() { IDictionary dictionary = FrameworkEnumExtensions.EnumToListManual(); dictionary.Add(new KeyValuePair("1", "Default elem, még nincs értékkészlet")); return Json(dictionary.ToComboBoxItemList()); } public JsonResult> GetMennyisegEgysegeList() { IDictionary dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.MennyisegiEgyseg, ClaimData.SelectedTanevID.Value); dictionary.Add(new KeyValuePair("1", "Default elem, még nincs értékkészlet")); return Json(dictionary.ToComboBoxItemList()); } public JsonResult> GetBeszerzesiIgenyStatuszList() { IDictionary dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.BeszerzesiIgenySatusz, ClaimData.SelectedTanevID.Value); return Json(dictionary.ToComboBoxItemList()); } public JsonResult> GetKirSzerkesztehetoEnumList([DataSourceRequest] DataSourceRequest request) { var listItems = new List { new ComboBoxListItem { Text = KirEditableEnum.Egyezik.GetDisplayName(ClaimData.SelectedTanevID.Value), Value = KirEditableEnum.Egyezik.ToInt32().ToString() }, new ComboBoxListItem { Text = KirEditableEnum.ModositasraVar.GetDisplayName(ClaimData.SelectedTanevID.Value), Value = KirEditableEnum.ModositasraVar.ToInt32().ToString() }, new ComboBoxListItem { Text = KirEditableEnum.Uj.GetDisplayName(ClaimData.SelectedTanevID.Value), Value = KirEditableEnum.Uj.ToInt32().ToString() }, new ComboBoxListItem { Text = KirEditableEnum.NemEgyezik.GetDisplayName(ClaimData.SelectedTanevID.Value), Value = KirEditableEnum.NemEgyezik.ToInt32().ToString() } }; return Json(listItems); } public List GetErettsegiSzintEnumSelectList() { IDictionary dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.ErettsegiSzint, ClaimData.SelectedTanevID.Value); return dictionary.ToSelectListItemList(); } public List GetErettsegiTipusEnumSelectList() { IDictionary dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.ErettsegiTipus, ClaimData.SelectedTanevID.Value); return dictionary.ToSelectListItemList(); } public List GetAranyJanosAlprogramList() { IDictionary dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.AranyJanosProgramTipus, ClaimData.SelectedTanevID.Value); return dictionary.ToSelectListItemList(); } } }