init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,491 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Core;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Framework;
|
||||
using Kreta.Web.Areas.Adminisztracio.Models;
|
||||
using Kreta.Web.Configuration;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Security;
|
||||
using Kreta.Web.Utils;
|
||||
|
||||
namespace Kreta.Web.Areas.Adminisztracio.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
public class BelepesKezeloController : Controller
|
||||
{
|
||||
private static readonly IEnumerable<SzerepkorTipusEnum> EUgyinteztesPermissions = new List<SzerepkorTipusEnum>
|
||||
{
|
||||
SzerepkorTipusEnum.eUgyintezo,
|
||||
SzerepkorTipusEnum.Alairo,
|
||||
SzerepkorTipusEnum.Penztaros,
|
||||
SzerepkorTipusEnum.PenzugyiAdmin,
|
||||
SzerepkorTipusEnum.EtkezesiAdmin,
|
||||
SzerepkorTipusEnum.EtkezesiEllenorzo,
|
||||
SzerepkorTipusEnum.TeremberletJelenletEllenorzo,
|
||||
SzerepkorTipusEnum.alkalmazott,
|
||||
SzerepkorTipusEnum.BelepokartyaAdmin
|
||||
};
|
||||
|
||||
private static readonly IEnumerable<SzerepkorTipusEnum> DKTPermissions = new List<SzerepkorTipusEnum> { SzerepkorTipusEnum.Naplo, SzerepkorTipusEnum.Ellenorzo, };
|
||||
|
||||
private static readonly IEnumerable<SzerepkorTipusEnum> ESLPermissions = new List<SzerepkorTipusEnum> { SzerepkorTipusEnum.FokuszMonitoring, };
|
||||
|
||||
private static readonly IEnumerable<SzerepkorTipusEnum> FokuszPermissions = new List<SzerepkorTipusEnum> { SzerepkorTipusEnum.Naplo, SzerepkorTipusEnum.FokuszMonitoring, };
|
||||
|
||||
private static readonly IEnumerable<SzerepkorTipusEnum> LeltarPermissions = new List<SzerepkorTipusEnum> { SzerepkorTipusEnum.LeltarConcerned, };
|
||||
|
||||
private static readonly IEnumerable<SzerepkorTipusEnum> eJelentkezesPermissions = new List<SzerepkorTipusEnum> { SzerepkorTipusEnum.Adminisztrator, };
|
||||
|
||||
private static readonly IEnumerable<SzerepkorTipusEnum> Permissions = new List<SzerepkorTipusEnum>
|
||||
{
|
||||
SzerepkorTipusEnum.eUgyintezo,
|
||||
SzerepkorTipusEnum.Alairo,
|
||||
SzerepkorTipusEnum.Penztaros,
|
||||
SzerepkorTipusEnum.PenzugyiAdmin,
|
||||
SzerepkorTipusEnum.EtkezesiAdmin,
|
||||
SzerepkorTipusEnum.EtkezesiEllenorzo,
|
||||
SzerepkorTipusEnum.TeremberletJelenletEllenorzo,
|
||||
SzerepkorTipusEnum.FokuszMonitoring,
|
||||
SzerepkorTipusEnum.IskolaEgeszsegugyiKoordinator,
|
||||
SzerepkorTipusEnum.Vedono,
|
||||
SzerepkorTipusEnum.Iskolaorvos,
|
||||
SzerepkorTipusEnum.IskolaEgeszsegugyiAsszisztens,
|
||||
SzerepkorTipusEnum.IskolaEgeszsegugyiLekerdezo,
|
||||
SzerepkorTipusEnum.BelepokartyaAdmin,
|
||||
SzerepkorTipusEnum.LeltarConcerned,
|
||||
SzerepkorTipusEnum.Konyvtaros,
|
||||
SzerepkorTipusEnum.FELTAR_EsetKezelo,
|
||||
SzerepkorTipusEnum.FELTAR_EszkozMenedzser,
|
||||
SzerepkorTipusEnum.KerdoivKitolto_KerdoivKezelo,
|
||||
SzerepkorTipusEnum.FELTAR_EsetJovahagyo,
|
||||
SzerepkorTipusEnum.FELTAR_EsetKozremukodo,
|
||||
SzerepkorTipusEnum.FELTAR_Munkavegzo,
|
||||
SzerepkorTipusEnum.FELTAR_SzerzodesMenedzser
|
||||
};
|
||||
|
||||
private IIdpConfiguration IdpConfiguration { get; }
|
||||
|
||||
public BelepesKezeloController(IIdpConfiguration idpConfiguration)
|
||||
{
|
||||
IdpConfiguration = idpConfiguration ?? throw new ArgumentNullException(nameof(idpConfiguration));
|
||||
}
|
||||
|
||||
public ActionResult Index()
|
||||
{
|
||||
var felhasznaloSzerepkorok = ClaimData.FelhasznaloSzerepkorok;
|
||||
// NOTE: Ha a felhasználó szerepkörök között szerepel kréta adminisztrátor és amellett szervezethez köthető szerepkör(pl.: duális adminisztrátor),
|
||||
// akkor azokat nem kell megjeleníteni, mert azok részei az intézményi kréta admin felületének/menüjének, ezért az ilyen szerepköröket kivesszük a listából.
|
||||
if (felhasznaloSzerepkorok.ContainsKey(SzerepkorTipusEnum.Adminisztrator) && felhasznaloSzerepkorok.Any(x => FelhasznaloHelper.SzervezetiPermissions.Contains(x.Key)))
|
||||
{
|
||||
foreach (var szerepkorTipusEnum in FelhasznaloHelper.SzervezetiPermissions)
|
||||
{
|
||||
felhasznaloSzerepkorok.Remove(szerepkorTipusEnum);
|
||||
}
|
||||
}
|
||||
|
||||
var allowedRoles = GetAllowedRoles(felhasznaloSzerepkorok);
|
||||
ClaimManager.SetFelhasznaloSzerepkorClaim(allowedRoles.Any() ? allowedRoles.Select(x => x.Key).ToList() : felhasznaloSzerepkorok.Keys.Any() ? felhasznaloSzerepkorok.Select(x => x.Key).ToList() : new List<SzerepkorTipusEnum>(), GetEugyintezesESLPermissions(felhasznaloSzerepkorok));
|
||||
|
||||
if (ClaimData.JustLEPOrganization && !ClaimData.FelhasznaloSzerepkorok.ContainsKey(SzerepkorTipusEnum.Adminisztrator))
|
||||
{
|
||||
var lepEloadasJegyzekHelper = new LepEloadasJegyzekHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
var hasLepAccess = lepEloadasJegyzekHelper.HasLEPAccess(ClaimData.FelhasznaloId);
|
||||
|
||||
if (!hasLepAccess)
|
||||
{
|
||||
return Redirect(Url.Content(@"~/HibaOldal/IndexLEPNincsJog"));
|
||||
}
|
||||
|
||||
return Redirect(Url.Content(@"~/LEPModul/EloadasokKezelese"));
|
||||
}
|
||||
|
||||
// NOTE: Ha a belépett felhasználó szervezethez köthető alkalmazott(pl.: duális oktató), akkor semmi más ne jelenjen meg csak a szervezethez köthető elemek.
|
||||
var isAlkalmazottSzervezeti = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).IsAlkalmazottSzervezeti(ClaimData.FelhasznaloId);
|
||||
if (isAlkalmazottSzervezeti)
|
||||
{
|
||||
if (allowedRoles.Count == 1)
|
||||
{
|
||||
return Redirect(Url.Content(CommonExtensions.GetDefaultPage()));
|
||||
}
|
||||
|
||||
return View("Index", ModelBuilder(allowedRoles, false, false, false, false, false, false, false));
|
||||
}
|
||||
|
||||
var isDktAktiv = IsDktAktiv(felhasznaloSzerepkorok);
|
||||
var isEugyAktiv = IsEugyAktiv(felhasznaloSzerepkorok);
|
||||
var isEslAktiv = IsESLAktiv(felhasznaloSzerepkorok);
|
||||
var isFokuszAktiv = IsFokuszAktiv(felhasznaloSzerepkorok);
|
||||
var isLeltarAktiv = IsLeltarAktiv(felhasznaloSzerepkorok);
|
||||
var isKonyvtarAktiv = IsKonyvtarModulAktiv();
|
||||
var isEJelentkezesAktiv = IsEJelentkezesAktiv(felhasznaloSzerepkorok);
|
||||
|
||||
if (allowedRoles.Any())
|
||||
{
|
||||
if (allowedRoles.Count == 1 && !isDktAktiv && !isEugyAktiv && !isEslAktiv && !isFokuszAktiv && !isLeltarAktiv && !isKonyvtarAktiv && !isEJelentkezesAktiv)
|
||||
{
|
||||
return Redirect(Url.Content(CommonExtensions.GetDefaultPage()));
|
||||
}
|
||||
|
||||
return View("Index", ModelBuilder(allowedRoles, isDktAktiv, isEugyAktiv, isEslAktiv, isFokuszAktiv, isLeltarAktiv, isKonyvtarAktiv, isEJelentkezesAktiv));
|
||||
}
|
||||
|
||||
if (felhasznaloSzerepkorok.Keys.Count >= 2 && felhasznaloSzerepkorok.Keys.Any(x => Permissions.Contains(x)))
|
||||
{
|
||||
return Redirect(Url.Content(CommonExtensions.GetDefaultPage()));
|
||||
}
|
||||
|
||||
var intezmenyConfigHelper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
if (intezmenyConfigHelper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.Konyvtar, IntezmenyConfigTipusEnum.IsEnabled))
|
||||
{
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(intezmenyConfigHelper.GetIntezmenyConfig<string>(IntezmenyConfigModulEnum.Konyvtar, IntezmenyConfigTipusEnum.Url), IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
if (felhasznaloSzerepkorok.Keys.All(x => EUgyinteztesPermissions.Contains(x)))
|
||||
{
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(intezmenyConfigHelper.GetIntezmenyConfig<string>(IntezmenyConfigModulEnum.Eugyintezes, IntezmenyConfigTipusEnum.Url), IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
if (felhasznaloSzerepkorok.Keys.All(x => x == SzerepkorTipusEnum.FokuszMonitoring))
|
||||
{
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(intezmenyConfigHelper.GetIntezmenyConfig<string>(IntezmenyConfigModulEnum.ESL, IntezmenyConfigTipusEnum.Url), IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
if (felhasznaloSzerepkorok.Keys.All(x => x == SzerepkorTipusEnum.LeltarConcerned))
|
||||
{
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(intezmenyConfigHelper.GetIntezmenyConfig<string>(IntezmenyConfigModulEnum.Leltar, IntezmenyConfigTipusEnum.Url), IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
return View("Index", ModelBuilder(allowedRoles, isDktAktiv, isEugyAktiv, isEslAktiv, isFokuszAktiv, isLeltarAktiv, isKonyvtarAktiv, isEJelentkezesAktiv));
|
||||
}
|
||||
|
||||
public ActionResult ChangeRole(SzerepkorTipusEnum role)
|
||||
{
|
||||
var felhasznaloSzerepkorok = ClaimData.FelhasznaloSzerepkorok;
|
||||
if (felhasznaloSzerepkorok.ContainsKey(role))
|
||||
{
|
||||
ClaimManager.SetFelhasznaloSzerepkorClaim(new List<SzerepkorTipusEnum> { role }, GetEugyintezesESLPermissions(felhasznaloSzerepkorok));
|
||||
var isPedagogiaiSzakszolgalat = role == SzerepkorTipusEnum.Adminisztrator && new MukodesiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetMukodesiHelyekForFelhelyValaszto().Any(x => x.FelhelyId.IsEntityId());
|
||||
return Json(new { Url = Url.Content(isPedagogiaiSzakszolgalat ? Constants.General.FelHelyValasztoPage : CommonExtensions.GetDefaultPage()), Success = true });
|
||||
}
|
||||
|
||||
return Json(new { Success = false });
|
||||
}
|
||||
|
||||
public ActionResult Eugyintezes()
|
||||
{
|
||||
if (IsEugyAktiv(ClaimData.FelhasznaloSzerepkorok))
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(helper.GetIntezmenyConfig<string>(IntezmenyConfigModulEnum.Eugyintezes, IntezmenyConfigTipusEnum.Url), IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public ActionResult DKTTanar()
|
||||
{
|
||||
if (IsDktAktiv(ClaimData.FelhasznaloSzerepkorok))
|
||||
{
|
||||
var helper = new IntezmenyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
var intezmenyData = helper.GetIntezmenyiAdatok();
|
||||
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(intezmenyData.DKTTanarUrl, IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public ActionResult DKTDiak()
|
||||
{
|
||||
if (IsDktAktiv(ClaimData.FelhasznaloSzerepkorok))
|
||||
{
|
||||
var helper = new IntezmenyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
var intezmenyData = helper.GetIntezmenyiAdatok();
|
||||
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(intezmenyData.DKTDiakUrl, IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public ActionResult ESL()
|
||||
{
|
||||
if (IsESLAktiv(ClaimData.FelhasznaloSzerepkorok))
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(helper.GetIntezmenyConfig<string>(IntezmenyConfigModulEnum.ESL, IntezmenyConfigTipusEnum.Url), IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public ActionResult Fokusz()
|
||||
{
|
||||
if (IsFokuszAktiv(ClaimData.FelhasznaloSzerepkorok))
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(helper.GetIntezmenyConfig<string>(IntezmenyConfigModulEnum.Fokusz, IntezmenyConfigTipusEnum.Url), IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public ActionResult Leltar()
|
||||
{
|
||||
if (IsLeltarAktiv(ClaimData.FelhasznaloSzerepkorok))
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(helper.GetIntezmenyConfig<string>(IntezmenyConfigModulEnum.Leltar, IntezmenyConfigTipusEnum.Url), IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public ActionResult Konyvtar()
|
||||
{
|
||||
if (IsKonyvtarModulAktiv())
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(helper.GetIntezmenyConfig<string>(IntezmenyConfigModulEnum.Konyvtar, IntezmenyConfigTipusEnum.Url), IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public ActionResult EJelentkezes()
|
||||
{
|
||||
if (IsEJelentkezesAktiv(ClaimData.FelhasznaloSzerepkorok))
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
return Redirect(Classes.Utils.GetAuthenticationTokenRedirectUrl(helper.GetIntezmenyConfig<string>(IntezmenyConfigModulEnum.eJelentkezes, IntezmenyConfigTipusEnum.Url), IdpConfiguration.AuthenticationTokenKey));
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
private BelepesKezeloModel ModelBuilder(List<KeyValuePair<SzerepkorTipusEnum, string>> allowedRoles, bool isDktAktiv, bool isEugyAktiv, bool isEslAktiv, bool isFokuszAktiv, bool isLeltarAktiv, bool isKonyvtarAktiv, bool isEJelentkezesAktiv)
|
||||
{
|
||||
var model = new BelepesKezeloModel();
|
||||
var shortname = ClaimData.OrganizationShortName;
|
||||
model.OrganizationName = ClaimData.OrganizationCode + " - " + (string.IsNullOrWhiteSpace(shortname) ? ClaimData.OrganizationName : shortname);
|
||||
model.UserName = $"{ClaimData.FelhasznaloNev} {(!string.IsNullOrWhiteSpace(ClaimData.GondviseloNeve) ? "(" + ClaimData.GondviseloNeve + ")" : "")}";
|
||||
model.ProfilImgSrc = ProfileUtils.UserProfileImage;
|
||||
|
||||
foreach (var item in allowedRoles)
|
||||
{
|
||||
model.Lehetosegek.Add(new BelepesKezeloModel.BelepesiLehetoseg { Name = item.Value, Szerepkor = item.Key, Tipus = BelepesKezeloModel.LehetosegTipus.Kreta });
|
||||
}
|
||||
|
||||
if (isDktAktiv)
|
||||
{
|
||||
var naplo = false;
|
||||
var ellenorzo = false;
|
||||
foreach (var role in allowedRoles)
|
||||
{
|
||||
if (role.Key == SzerepkorTipusEnum.Naplo)
|
||||
{
|
||||
naplo = true;
|
||||
}
|
||||
|
||||
if (role.Key == SzerepkorTipusEnum.Ellenorzo)
|
||||
{
|
||||
ellenorzo = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (naplo)
|
||||
{
|
||||
model.Lehetosegek.Add(new BelepesKezeloModel.BelepesiLehetoseg { Name = "Digitális Kollaborációs Tér" + (ellenorzo ? " (Tanár)" : ""), Szerepkor = SzerepkorTipusEnum.Naplo, Tipus = BelepesKezeloModel.LehetosegTipus.DKT });
|
||||
}
|
||||
|
||||
if (ellenorzo)
|
||||
{
|
||||
model.Lehetosegek.Add(new BelepesKezeloModel.BelepesiLehetoseg { Name = "Digitális Kollaborációs Tér" + (naplo ? " (Diák)" : ""), Szerepkor = SzerepkorTipusEnum.Ellenorzo, Tipus = BelepesKezeloModel.LehetosegTipus.DKT });
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (isEugyAktiv)
|
||||
{
|
||||
model.Lehetosegek.Add(new BelepesKezeloModel.BelepesiLehetoseg { Name = "e-Ügyintézés", Tipus = BelepesKezeloModel.LehetosegTipus.Eugy });
|
||||
}
|
||||
|
||||
if (isEslAktiv)
|
||||
{
|
||||
model.Lehetosegek.Add(new BelepesKezeloModel.BelepesiLehetoseg { Name = "ESL", Tipus = BelepesKezeloModel.LehetosegTipus.ESL });
|
||||
}
|
||||
|
||||
if (isFokuszAktiv)
|
||||
{
|
||||
model.Lehetosegek.Add(new BelepesKezeloModel.BelepesiLehetoseg { Name = "Fókusz", Tipus = BelepesKezeloModel.LehetosegTipus.Fokusz });
|
||||
}
|
||||
|
||||
if (isLeltarAktiv)
|
||||
{
|
||||
model.Lehetosegek.Add(new BelepesKezeloModel.BelepesiLehetoseg { Name = "KRÉTA Leltár", Tipus = BelepesKezeloModel.LehetosegTipus.Leltar });
|
||||
}
|
||||
|
||||
if (isKonyvtarAktiv)
|
||||
{
|
||||
model.Lehetosegek.Add(new BelepesKezeloModel.BelepesiLehetoseg { Name = "Könyvtár modul", Tipus = BelepesKezeloModel.LehetosegTipus.Konyvtar });
|
||||
}
|
||||
|
||||
if (isEJelentkezesAktiv)
|
||||
{
|
||||
model.Lehetosegek.Add(new BelepesKezeloModel.BelepesiLehetoseg { Name = "e-Jelentkezés", Tipus = BelepesKezeloModel.LehetosegTipus.EJelentkezes });
|
||||
}
|
||||
|
||||
model.CancelLinkText = StringResourcesUtil.GetString(2582); /* Kijelentkezés */
|
||||
model.CancelLinkAction = "BelepesKezelo.logout()";
|
||||
|
||||
return model;
|
||||
}
|
||||
|
||||
private bool IsDktAktiv(Dictionary<SzerepkorTipusEnum, string> felhasznaloSzerepkorok)
|
||||
{
|
||||
if (felhasznaloSzerepkorok.Keys.Any(x => DKTPermissions.Contains(x)) && !ClaimData.GondviseloId.HasValue)
|
||||
{
|
||||
var helper = new IntezmenyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
if (helper.GetIntezmenyiAdatok().IsDKTAktiv)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private bool IsEugyAktiv(Dictionary<SzerepkorTipusEnum, string> felhasznaloSzerepkorok)
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
|
||||
if (helper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.Eugyintezes, IntezmenyConfigTipusEnum.IsEnabled))
|
||||
{
|
||||
if (ClaimData.GondviseloId.HasValue)
|
||||
{
|
||||
return !new GondviseloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).IsCsokkentettGondviselo(ClaimData.GondviseloId.Value);
|
||||
}
|
||||
|
||||
if (felhasznaloSzerepkorok.Keys.Any(x => EUgyinteztesPermissions.Contains(x)) || felhasznaloSzerepkorok.ContainsKey(SzerepkorTipusEnum.Adminisztrator))
|
||||
{
|
||||
if (ClaimData.IsDefaultAdminUser || ClaimData.BelepesiNev.ToUpper() == Constants.General.KretaTechnicalUserNev.ToUpper())
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private bool IsESLAktiv(Dictionary<SzerepkorTipusEnum, string> felhasznaloSzerepkorok)
|
||||
{
|
||||
var fHelper = new FelhasznaloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
var felhasznaloiJogosultsagok = fHelper.GetFelhasznaloiJogosultsagok(ClaimData.FelhasznaloId, (int)SzerepkorTipusEnum.Naplo);
|
||||
|
||||
if (felhasznaloSzerepkorok.Keys.Any(x => ESLPermissions.Contains(x)) || felhasznaloiJogosultsagok.Contains("Osztalyfonok") || felhasznaloiJogosultsagok.Contains("SzuperOsztalyfonok"))
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
|
||||
if (helper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.ESL, IntezmenyConfigTipusEnum.IsEnabled))
|
||||
{
|
||||
if (felhasznaloSzerepkorok.ContainsKey(SzerepkorTipusEnum.Ellenorzo) || ClaimData.IsDefaultAdminUser)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private bool IsFokuszAktiv(Dictionary<SzerepkorTipusEnum, string> felhasznaloSzerepkorok)
|
||||
{
|
||||
if (felhasznaloSzerepkorok.Keys.Any(x => FokuszPermissions.Contains(x)))
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
|
||||
if (helper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.Fokusz, IntezmenyConfigTipusEnum.IsEnabled))
|
||||
{
|
||||
if (felhasznaloSzerepkorok.ContainsKey(SzerepkorTipusEnum.Ellenorzo) || ClaimData.IsDefaultAdminUser || ClaimData.IsPortas)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private bool IsLeltarAktiv(Dictionary<SzerepkorTipusEnum, string> felhasznaloSzerepkorok)
|
||||
{
|
||||
if (felhasznaloSzerepkorok.Keys.Any(x => LeltarPermissions.Contains(x)))
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
|
||||
if (helper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.Leltar, IntezmenyConfigTipusEnum.IsEnabled))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private bool IsKonyvtarModulAktiv()
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
|
||||
if (!ClaimData.GondviseloId.HasValue && helper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.Konyvtar, IntezmenyConfigTipusEnum.IsEnabled))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private bool IsEJelentkezesAktiv(Dictionary<SzerepkorTipusEnum, string> felhasznaloSzerepkorok)
|
||||
{
|
||||
if (felhasznaloSzerepkorok.Keys.Any(x => eJelentkezesPermissions.Contains(x)))
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
||||
if (helper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.eJelentkezes, IntezmenyConfigTipusEnum.IsEnabled))
|
||||
{
|
||||
if (felhasznaloSzerepkorok.ContainsKey(SzerepkorTipusEnum.Adminisztrator) && !ClaimData.IsDefaultAdminUser)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private List<KeyValuePair<SzerepkorTipusEnum, string>> GetAllowedRoles(Dictionary<SzerepkorTipusEnum, string> felhasznaloSzerepkorok)
|
||||
=> felhasznaloSzerepkorok.Where(x => !Constants.General.NotVisiblePermissions.Contains(x.Key)).ToList();
|
||||
|
||||
private List<SzerepkorTipusEnum> GetEugyintezesESLPermissions(Dictionary<SzerepkorTipusEnum, string> felhasznaloSzerepkorok)
|
||||
=> Permissions.Where(x => felhasznaloSzerepkorok.Keys.Any(y => y == x)).ToList();
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue