251 lines
14 KiB
C#
251 lines
14 KiB
C#
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<List<ComboBoxListItem>> GetIgenNemEnumList([DataSourceRequest] DataSourceRequest request)
|
|
{
|
|
var listItems = new List<ComboBoxListItem>
|
|
{
|
|
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<SelectListItem> GetIgenNemEnumSelectList()
|
|
{
|
|
IDictionary<string, string> dictionary = FrameworkEnumExtensions.EnumToListManual<IgenNemEnum>();
|
|
return dictionary.ToSelectListItemList();
|
|
}
|
|
|
|
public List<SelectListItem> GetIsElfogadottSzandeknyilatkozatEnumSelectList()
|
|
{
|
|
IDictionary<string, string> dictionary = FrameworkEnumExtensions.EnumToListManual<IsElfogadottSzandeknyilatkozatEnum>();
|
|
return dictionary.ToSelectListItemList();
|
|
}
|
|
|
|
public JsonResult<List<ComboBoxListItem>> GetHetNapList([DataSourceRequest] DataSourceRequest request)
|
|
{
|
|
IDictionary<string, string> dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.HetNapjaTipus, ClaimData.SelectedTanevID.Value, true);
|
|
|
|
dictionary.Remove(((int)HetNapjaTipusEnum.na).ToString());
|
|
|
|
return Json(dictionary.ToComboBoxItemList());
|
|
}
|
|
|
|
public JsonResult<List<ComboBoxListItem>> GetHetNapListWithEmptyRecord([DataSourceRequest] DataSourceRequest request)
|
|
{
|
|
IDictionary<string, string> 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<SelectListItem> GetJogosultsagList()
|
|
{
|
|
var ret = AlkalmazottViewHelper.GetJogosultsagiSzintList(FeatureContext.IsEnabled(Core.Constants.FeatureName.IERSzerepkorokHozzaadasa, instituteId: ClaimData.IntezmenyAzonosito));
|
|
var icHelper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
|
var hrModulEnabled = icHelper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.HRModul, IntezmenyConfigTipusEnum.IsEnabled);
|
|
if (hrModulEnabled)
|
|
{
|
|
ret.Add(new SelectListItem { Text = FelhasznalokResource.HRModulKezeloMintJogosultsag, Value = FelhasznalokResource.HRModulKezeloMintJogosultsagValue });
|
|
}
|
|
if (new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<bool>(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<SelectListItem> GetAtlagMegjelenitesTipusList()
|
|
{
|
|
var dictionary = EnumExtensions.EnumToDictionary<AtlagMegjelenitesTipus>(ClaimData.SelectedTanevID.Value, false, true);
|
|
return dictionary.ToSelectListItemList();
|
|
}
|
|
|
|
public List<SelectListItem> GetAtlagbaBeleszamitoOsztalyTipusList()
|
|
{
|
|
var dictionary = EnumExtensions.EnumToDictionary<AtlagbaBeleszamitoOsztalyTipus>(ClaimData.SelectedTanevID.Value, false, true);
|
|
return dictionary.ToSelectListItemList();
|
|
}
|
|
|
|
public List<SelectListItem> GetHaladasiNaploFulTipusList()
|
|
{
|
|
var dictionary = EnumExtensions.EnumToDictionary<HaladasiNaploFulTipus>(ClaimData.SelectedTanevID.Value, false, true);
|
|
|
|
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
if (!systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Fogadoorak_megjelenitese))
|
|
{
|
|
dictionary.Remove(((int)HaladasiNaploFulTipus.Fogadoora).ToString());
|
|
}
|
|
|
|
return dictionary.ToSelectListItemList();
|
|
}
|
|
|
|
public List<SelectListItem> GetHaladasiNaploNezetTipusList()
|
|
{
|
|
var dictionary = EnumExtensions.EnumToDictionary<HaladasiNaploNezetTipus>(ClaimData.SelectedTanevID.Value, false, true);
|
|
return dictionary.ToSelectListItemList();
|
|
}
|
|
|
|
public JsonResult<List<ComboBoxListItem>> GetTavolletjelentoTipusList()
|
|
{
|
|
List<int> topItems = new List<int>
|
|
{
|
|
(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<string, string> 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<List<ComboBoxListItem>> GetTavolletjelentoNaptariEvekList()
|
|
{
|
|
var listItems = new List<ComboBoxListItem>();
|
|
|
|
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<List<ComboBoxListItem>> GetTavolletjelentoStatuszList()
|
|
{
|
|
IDictionary<string, string> dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.TavolletStatusz, ClaimData.SelectedTanevID.Value);
|
|
|
|
return Json(dictionary.ToComboBoxItemList());
|
|
}
|
|
|
|
public JsonResult<List<ComboBoxListItem>> GetFizetesiModList()
|
|
{
|
|
IDictionary<string, string> dictionary = FrameworkEnumExtensions.EnumToListManual<FizetesiModEnum>();
|
|
dictionary.Add(new KeyValuePair<string, string>("1", "Default elem, még nincs értékkészlet"));
|
|
return Json(dictionary.ToComboBoxItemList());
|
|
}
|
|
|
|
public JsonResult<List<ComboBoxListItem>> GetMennyisegEgysegeList()
|
|
{
|
|
IDictionary<string, string> dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.MennyisegiEgyseg, ClaimData.SelectedTanevID.Value);
|
|
dictionary.Add(new KeyValuePair<string, string>("1", "Default elem, még nincs értékkészlet"));
|
|
return Json(dictionary.ToComboBoxItemList());
|
|
}
|
|
|
|
public JsonResult<List<ComboBoxListItem>> GetBeszerzesiIgenyStatuszList()
|
|
{
|
|
IDictionary<string, string> dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.BeszerzesiIgenySatusz, ClaimData.SelectedTanevID.Value);
|
|
return Json(dictionary.ToComboBoxItemList());
|
|
}
|
|
|
|
public JsonResult<List<ComboBoxListItem>> GetKirSzerkesztehetoEnumList([DataSourceRequest] DataSourceRequest request)
|
|
{
|
|
var listItems = new List<ComboBoxListItem>
|
|
{
|
|
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<SelectListItem> GetErettsegiSzintEnumSelectList()
|
|
{
|
|
IDictionary<string, string> dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.ErettsegiSzint, ClaimData.SelectedTanevID.Value);
|
|
return dictionary.ToSelectListItemList();
|
|
}
|
|
|
|
public List<SelectListItem> GetErettsegiTipusEnumSelectList()
|
|
{
|
|
IDictionary<string, string> dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.ErettsegiTipus, ClaimData.SelectedTanevID.Value);
|
|
return dictionary.ToSelectListItemList();
|
|
}
|
|
|
|
public List<SelectListItem> GetAranyJanosAlprogramList()
|
|
{
|
|
IDictionary<string, string> dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.AranyJanosProgramTipus, ClaimData.SelectedTanevID.Value);
|
|
return dictionary.ToSelectListItemList();
|
|
}
|
|
}
|
|
}
|