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

98 lines
4.3 KiB
C#

using System;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Web.Areas.Hianyzas.Models;
using Kreta.Web.Areas.Hianyzas.Models.Mulasztasok;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Hianyzas.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.CsoportVezeto.ClaimValue)]
[Attributes.KretaGlobalLanguageChangeActionFilter(LanguageCode = "hu-Dualis")]
public class DualisMulasztasokController : BaseMulasztasokController
{
protected IKretaAuthorization Authorization { get; }
public DualisMulasztasokController(IKretaAuthorization authorization)
{
Authorization = authorization ?? throw new ArgumentNullException(nameof(authorization));
}
public ActionResult Index()
{
if (!Authorization.IsValidDualisOktato())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var model = new MulasztasIndexModel
{
OsztalyCsoportList = GetOsztalyCsoportList(true),
TabList = GetMulasztasokTabs(Constants.Controllers.DualisMulasztasok),
IgazolasNaploZarasDatum = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetIgazolasokNaplozarasDatuma(),
};
if (ClaimData.FelhasznaloSzerepkorok.ContainsKey(SzerepkorTipusEnum.Naplo))
{
model.OsztalyCsoportId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyfonokElsonekMegtalaltOsztalya(ClaimData.FelhasznaloId);
}
return View("Index", model);
}
public ActionResult GetMulasztasokDatumNezetTab()
{
return base.GetMulasztasokDatumNezetTab(Constants.Controllers.DualisMulasztasok, Constants.ApiControllers.DualisMulasztasokApi, (int)SzervezetTipusEnum.Dualis);
}
public ActionResult GetMulasztasokDatumNezetDetailGrid(MulasztasokDatumNezetGridModel dateModel)
{
dateModel.ApiControllerName = Constants.ApiControllers.DualisMulasztasokApi;
dateModel.SzervezetTipusId = (int)SzervezetTipusEnum.Dualis;
dateModel.MulasztasJogosultsagSetting = CsoportvezetokIgazolasiJogosultsagaEnum.BarmitBeallithatnak;
return base.GetMulasztasokDatumNezetDetailGrid(dateModel);
}
public ActionResult GetMulasztasokTanuloNezetTab()
{
return base.GetMulasztasokTanuloNezetTab(Constants.Controllers.DualisMulasztasok, Constants.ApiControllers.DualisMulasztasokApi, (int)SzervezetTipusEnum.Dualis);
}
public ActionResult GetMulasztasokTanuloNezetDetailGrid(MulasztasokTanuloNezetGridModel tanuloModel, bool GridHasDelete)
{
tanuloModel.ApiControllerName = Constants.ApiControllers.DualisMulasztasokApi;
return base.GetMulasztasokTanuloNezetDetailGrid(tanuloModel, GridHasDelete, (int)SzervezetTipusEnum.Dualis);
}
public ActionResult GetMulasztasokNaploNezetTab()
{
return base.GetMulasztasokNaploNezetTab(Constants.Controllers.DualisMulasztasok, Constants.ApiControllers.DualisMulasztasokApi, (int)SzervezetTipusEnum.Dualis);
}
public ActionResult OpenTanuloMulasztasaiPopup(int tanuloId, int osztalyCsoportId, string apiControllerName = null)
{
return base.OpenTanuloMulasztasaiPopup(tanuloId, osztalyCsoportId, apiControllerName, (int)SzervezetTipusEnum.Dualis);
}
public ActionResult TanuloKezeletlenMulasztasaiDetailGrid(TanuloMulasztasaiPopupModel gridModel, string apiControllerName = null)
{
return base.TanuloKezeletlenMulasztasaiDetailGrid(gridModel, apiControllerName, (int)SzervezetTipusEnum.Dualis);
}
public ActionResult TanuloKezeltMulasztasaiDetailGrid(TanuloMulasztasaiPopupModel gridModel, string apiControllerName = null)
{
return base.TanuloKezeltMulasztasaiDetailGrid(gridModel, apiControllerName, (int)SzervezetTipusEnum.Dualis);
}
}
}