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

66 lines
2.9 KiB
C#

using System.Net;
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Interfaces;
using Kreta.BusinessLogic.Security;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
using Kreta.Web.Areas.DualisKepzes.Models;
using Kreta.Web.Areas.Tantargy.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.DualisKepzes.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsDefaultAdminUser.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
[Attributes.KretaGlobalLanguageChangeActionFilter(LanguageCode = "hu-Dualis")]
public class AdminDualisSzerzodesController : BaseDualisSzerzodesController
{
private bool IsDualisKepzesEnabled => new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
private IKretaAuthorization Authorization { get; }
public AdminDualisSzerzodesController(IFileServiceHelper fileServiceHelper, IKretaAuthorization authorization) : base(fileServiceHelper)
{
Authorization = authorization;
}
public ActionResult DualisOktatoCsoporthozRendeles(string filter)
{
if (!Authorization.IsValidDualisOktatoCsoporthozRendeles())
{
throw new StatusError(HttpStatusCode.Forbidden, ErrorResource.NincsJogaAzOldalMegtekintesehez);
}
var model = new TantargyFelosztasModel
{
IsFromSzervezet = IsDualisKepzesEnabled,
ControllerName = Constants.Controllers.DualisTantargyFelosztas,
ApiControllerName = Constants.ApiControllers.DualisTantargyFelosztasApi,
};
(var oraszam, var _) = new FoglalkozasHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetFoglalkozasOsszOraszamok(model.IsFromSzervezet);
ViewBag.Oraszam = oraszam;
ViewBag.TtfKorrekcioOraszam = 0; // Üzleti döntésre duálisnál 0
return View("~/Areas/Tantargy/Views/TantargyFelosztas/Index.cshtml", model);
}
private AdminDualisSzerzodesGridModel ConvertCoToModel(DualisSzerzodesCo co)
{
return new AdminDualisSzerzodesGridModel()
{
ID = co.TanuloId.ToString(),
SzerzodesFileId = co.SzerzodesFileId,
FileId = co.FileId,
FileNev = co.FileNev,
FeltoltesDatuma = co.FeltoltesDatuma,
FeltoltoId = co.FeltoltoId,
Statusz = co.Statusz
};
}
}
}