kreta/KretaWeb/Areas/LEPModul/Controllers/EloadasokKezeleseController.cs
2024-03-13 00:33:46 +01:00

71 lines
3.2 KiB
C#

using System.Data;
using System.Web.Mvc;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Enums;
using Kreta.Web.Areas.LEPModul.Models;
using Kreta.Web.Areas.Nyomtatvanyok.Logic;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.LEPModul.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.IsLEPKezelo.ClaimValue)]
public class EloadasokKezeleseController : Controller
{
public ActionResult Index()
{
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
TanevCO tanevCo;
var tanev = new TanevHelper(connectionType);
tanevCo = tanev.GetTanevInfo();
int tanevSorszam = int.MinValue;
if (tanevCo != null && tanevCo.Sorszam.IsEntityId())
{
tanevSorszam = tanevCo.Sorszam;
}
bool isLepAlkalmazott = new AlkalmazottHelper(connectionType).IsLEPKezelo();
var isOsztfoCsoportvezetoLEPKezeloRendszerBeallitas = new SystemSettingsHelper(connectionType).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Lazar_Ervin_Program_kezelese);
bool isLepOsztfoCsoportVezeto = (ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.Osztalyfonok.ClaimValue) || ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.CsoportVezeto.ClaimValue)) && isOsztfoCsoportvezetoLEPKezeloRendszerBeallitas;
bool fullLepJogAdminkent = ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.Adminisztrator.ClaimValue)
|| ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.Szuperadmin.ClaimValue)
|| ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.SzuperOsztalyfonok.ClaimValue);
bool isMindenEvfolyamJog = isLepAlkalmazott || fullLepJogAdminkent;
EloadasokSearchModel model = new EloadasokSearchModel();
model.IsMindenEvfolyamJog = isMindenEvfolyamJog;
model.TanevSorszam = tanevSorszam;
if (fullLepJogAdminkent || isLepAlkalmazott || isLepOsztfoCsoportVezeto)
{
return View(model);
}
return Redirect(Url.Content(CommonExtensions.GetDefaultPage()));
}
public ActionResult GetEloadasokDetailPartial(EloadasokDetailModel model, string isMindenEvfolyamJog)
{
var helper = new LepEloadasJegyzekHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var id = int.Parse(model.ID);
model.IsMindenEvfolyamJog = SDAConvert.ToBoolean(isMindenEvfolyamJog);
model.KiseroSzam = helper.GetEloadasSzamok(id).Tables[0].Rows[0].Field<int>("KiseroSzam");
return PartialView("EloadasokDetailPartial", model);
}
public ActionResult GetLepGondviseloEngedelyezesZip(string data)
{
return NyomtatvanyokLogic.GetLepGondviseloEngedelyezesZip(data);
}
}
}