This commit is contained in:
skidoodle 2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View file

@ -0,0 +1,66 @@
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
};
}
}
}

View file

@ -0,0 +1,74 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web;
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
using Kreta.Web.Areas.DualisKepzes.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.ModelBinder.Mvc;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.DualisKepzes.Controllers
{
public abstract class BaseDualisSzerzodesController : Controller
{
private readonly IFileServiceHelper _fileServiceHelper;
public BaseDualisSzerzodesController(IFileServiceHelper fileServiceHelper)
{
_fileServiceHelper = fileServiceHelper ?? throw new ArgumentNullException(nameof(fileServiceHelper));
}
public ActionResult Index()
{
return View("Index");
}
[HttpPost]
public ActionResult UploadFile([ModelBinder(typeof(AlapdokumentumFileUploadBinder))] IEnumerable<System.Web.HttpPostedFileBase> files, int tanuloId)
{
if (files != null && files.Any())
{
var uploadedFiles = files.ToList();
var helper = new DualisSzerzodesHelper(ConnectionTypeExtensions.GetSessionConnectionType(), _fileServiceHelper);
helper.Upload(uploadedFiles[0], ClaimData.IntezmenyGuid.Value, tanuloId);
}
return Content("");
}
[HttpPost]
public HttpResponseMessage DeleteFile(int id)
{
try
{
new DualisSzerzodesHelper(ConnectionTypeExtensions.GetSessionConnectionType(), _fileServiceHelper).SetFelhasznaloAltalTorolt(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaATorlesSoran);
}
}
public ActionResult DownloadFile(FormCollection form)
{
var fileId = form["FileIdHiddenField"];
var helper = new DualisSzerzodesHelper(ConnectionTypeExtensions.GetSessionConnectionType(), _fileServiceHelper);
var (fajlnev, tartalom) = helper.GetFileData(int.Parse(fileId));
var stream = new MemoryStream(tartalom);
var result = File(stream, MimeMapping.GetMimeMapping(fajlnev), fajlnev);
return result;
}
}
}

View file

@ -0,0 +1,409 @@
using System;
using System.Collections.Generic;
using System.Web.Mvc;
using Kreta.BusinessLogic.Extensions;
using Kreta.BusinessLogic.HelperClasses.OsztalyCsoportbaSorolas;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.BusinessLogic.Interfaces;
using Kreta.BusinessLogic.Security;
using Kreta.Core.FeatureToggle;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
using Kreta.Web.Areas.Alkalmazott.Models;
using Kreta.Web.Areas.Intezmeny.Models;
using Kreta.Web.Areas.Orarend.Models;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.DualisKepzes.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsDefaultAdminUser.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
[Attributes.KretaGlobalLanguageChangeActionFilter(LanguageCode = "hu-Dualis")]
public class DualisAdminController : BaseDualisSzerzodesController
{
public bool IsDualisKepzesEnabled => new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
private readonly IFeatureContext _featureContext;
private IKretaAuthorization Authorization { get; }
public DualisAdminController(IFeatureContext featureContext, IFileServiceHelper fileServiceHelper, IKretaAuthorization authorization) : base(fileServiceHelper)
{
Authorization = authorization;
_featureContext = featureContext;
}
public ActionResult DualisTanulok()
{
if (!Authorization.IsValidDualisTanulok())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var model = new TanuloSearchModel
{
FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria,
IsFromSzervezet = IsDualisKepzesEnabled,
TanuloHozzaferesGeneralasaGombLathato = false
};
if (ClaimData.FelhasznaloSzerepkor != Kreta.Enums.SzerepkorTipusEnum.Adminisztrator)
{
model.SzervezetId = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
}
return View("~/Areas/Tanulo/Views/Tanulo/Index.cshtml", model);
}
public ActionResult DualisTanulokBesorolas()
{
if (!Authorization.IsValidDualisTanuloSorolas())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportBesorolasModel()
{
IsFromSzervezet = IsDualisKepzesEnabled,
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = BesorolasResource.TanulokCsoportbaSorolasaElsoAlkalommal,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetDualisCsoportokList" }),
ToChangeEvent = "AktTanevCsoportBesorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevDualisTanulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "CsoportBesorolas" })
};
if (ClaimData.FelhasznaloSzerepkor != Kreta.Enums.SzerepkorTipusEnum.Adminisztrator)
{
model.SzervezetId = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
}
return View("~/Areas/OsztalyCsoport/Views/AktTanevSorolas/CsoportBesorolas.cshtml", model);
}
public ActionResult DualisTanuloAthelyezes()
{
if (!Authorization.IsValidDualisTanuloSorolas())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportAtsorolasModel()
{
IsFromSzervezet = IsDualisKepzesEnabled,
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetDualisCsoportokList" }),
FromChangeEvent = "AktTanevCsoportAtsorolasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetDualisCsoportokList" }),
ToChangeEvent = "AktTanevCsoportAtsorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "CsoportAtsorolas" })
};
if (ClaimData.FelhasznaloSzerepkor != Kreta.Enums.SzerepkorTipusEnum.Adminisztrator)
{
model.SzervezetId = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
}
model.Zaradek.IsZaradekKotelezo = false;
return View("~/Areas/OsztalyCsoport/Views/AktTanevSorolas/CsoportAtsorolas.cshtml", model);
}
public ActionResult DualisTanuloBesorolasJavitas()
{
if (!Authorization.IsValidDualisTanuloSorolas())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var model = new AktTanevCsoportTevesBesorolasJavitasModel()
{
IsFromSzervezet = IsDualisKepzesEnabled,
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetDualisCsoportokList" }),
FromChangeEvent = "AktTanevCsoportTevesBesorolasJavitasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetDualisCsoportokList" }),
ToChangeEvent = "AktTanevCsoportTevesBesorolasJavitasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "CsoportTevesBesorolasJavitas" })
};
if (ClaimData.FelhasznaloSzerepkor != Kreta.Enums.SzerepkorTipusEnum.Adminisztrator)
{
model.SzervezetId = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
}
return View("~/Areas/OsztalyCsoport/Views/AktTanevSorolas/CsoportTevesBesorolasJavitas.cshtml", model);
}
public ActionResult DualisTanuloKileptetes()
{
if (!Authorization.IsValidDualisTanuloSorolas())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportKisorolasModel()
{
IsFromSzervezet = IsDualisKepzesEnabled,
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetDualisCsoportokList" }),
FromChangeEvent = "AktTanevCsoportKisorolasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
ToChangeEvent = "",
ToPlaceholder = "",
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = string.Empty,
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "CsoportKisorolas" })
};
model.Zaradek.IsZaradekKotelezo = false;
return View("~/Areas/OsztalyCsoport/Views/AktTanevSorolas/CsoportKisorolas.cshtml", model);
}
public ActionResult DualisAdminTanariOrarend()
{
if (!Authorization.IsValidDualisAdminOrarend())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var controllerName = Constants.Controllers.AdminTanariOrarend;
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var model = new AdminTanariOrarendModel
{
TabList = GetDualisAdminOrarendTabs(controllerName)
};
model.IsFromSzervezet = IsDualisKepzesEnabled;
var orarendHelper = new OrarendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
model.HetirendJson = orarendHelper.GetHetirendek();
model.NaptariHetekHetirendJson = orarendHelper.GetNaptariHetekHetirendek(IsDualisKepzesEnabled);
model.CalendarMinTime = new TimeSpan(0, 0, 0);
model.CalendarMaxTime = new TimeSpan(23, 59, 59);
model.CsengetesiRendMinTime = new TimeSpan();
model.CsengetesiRendMaxTime = new TimeSpan(0, 25, 0);
ViewBag.napirendStart = model.CalendarMinTime;
ViewBag.napirendEnd = model.CalendarMaxTime;
model.IsOravegeBeallitasOrahosszAlapjan = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Orarendi_Elem_Hossz);
return View("~/Areas/Orarend/Views/" + controllerName + "/Index.cshtml", model);
}
public ActionResult DualisAdminOsztalyOrarend()
{
if (!Authorization.IsValidDualisAdminOrarend())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var controllerName = Constants.Controllers.AdminOsztalyOrarend;
var model = new AdminOsztalyOrarendModel
{
TabList = GetDualisAdminOrarendTabs(controllerName)
};
model.IsFromSzervezet = IsDualisKepzesEnabled;
var orarendHelper = new OrarendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
model.HetirendJson = orarendHelper.GetHetirendek();
model.NaptariHetekHetirendJson = orarendHelper.GetNaptariHetekHetirendek(IsDualisKepzesEnabled);
model.CalendarMinTime = new TimeSpan(0, 0, 0);
model.CalendarMaxTime = new TimeSpan(23, 59, 59);
model.CsengetesiRendMinTime = new TimeSpan();
model.CsengetesiRendMaxTime = new TimeSpan(0, 25, 0);
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSystemConnectionType());
ViewBag.napirendStart = model.CalendarMinTime;
ViewBag.napirendEnd = model.CalendarMaxTime;
model.IsOravegeBeallitasOrahosszAlapjan = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Orarendi_Elem_Hossz);
return View("~/Areas/Orarend/Views/" + controllerName + "/Index.cshtml", model);
}
public ActionResult DualisAdminTeremOrarend()
{
if (!Authorization.IsValidDualisAdminOrarend())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var controllerName = Constants.Controllers.AdminTeremOrarend;
var model = new AdminTeremOrarendModel
{
TabList = GetDualisAdminOrarendTabs(controllerName)
};
model.IsFromSzervezet = IsDualisKepzesEnabled;
var orarendHelper = new OrarendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
model.HetirendJson = orarendHelper.GetHetirendek();
model.NaptariHetekHetirendJson = orarendHelper.GetNaptariHetekHetirendek(IsDualisKepzesEnabled);
model.CalendarMinTime = new TimeSpan(0, 0, 0);
model.CalendarMaxTime = new TimeSpan(23, 59, 59);
model.CsengetesiRendMinTime = new TimeSpan();
model.CsengetesiRendMaxTime = new TimeSpan(0, 25, 0);
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSystemConnectionType());
ViewBag.napirendStart = model.CalendarMinTime;
ViewBag.napirendEnd = model.CalendarMaxTime;
model.IsOravegeBeallitasOrahosszAlapjan = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Orarendi_Elem_Hossz);
return View("~/Areas/Orarend/Views/" + controllerName + "/Index.cshtml", model);
}
public ActionResult DualisAlkalmazottak()
{
if (!Authorization.IsValidDualisAlkalmazottak())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var model = new AlkalmazottSearchModel
{
IsFromSzervezet = IsDualisKepzesEnabled,
ControllerName = Constants.Controllers.DualisAdminAlkalmazott,
ApiControllerName = Constants.ApiControllers.DualisAdminAlkalmazottApi,
};
if (ClaimData.FelhasznaloSzerepkor != Kreta.Enums.SzerepkorTipusEnum.Adminisztrator)
{
model.SzervezetId = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
}
model.MunkaugyiAdatokKlebelsbergOrNSZFH =
_featureContext.IsEnabled(Core.Constants.FeatureName.MunkaugyiAdatokKlebelsberg)
|| _featureContext.IsEnabled(Core.Constants.FeatureName.MunkaugyiAdatokNSZFH);
model.FeladatEllatasiHelyId = ClaimData.FelhelySzuro;
return View("~/Areas/Alkalmazott/Views/Alkalmazott/Index.cshtml", model);
}
public ActionResult DualisCsoportok(string filter)
{
if (!Authorization.IsValidDualisCsoportok())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var model = CsoportSearchModel.SetFilterCsoportSearchModel(filter);
model.SearchFeladatEllatasiHelyId = ClaimData.FelhelySzuro;
model.IsFromSzervezet = IsDualisKepzesEnabled;
model.ControllerName = Constants.Controllers.DualisAdminCsoport;
model.ApiControllerName = Constants.ApiControllers.DualisAdminCsoportApi;
model.SearchCsoportTipusId = (int)CsoportTipusEnum.dualis_kepzesi_csoport;
if (ClaimData.FelhasznaloSzerepkor != Kreta.Enums.SzerepkorTipusEnum.Adminisztrator)
{
model.SzervezetId = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
}
return View("~/Areas/OsztalyCsoport/Views/Csoport/Index.cshtml", model);
}
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult DualisSzerzodes()
{
return View("DualisAdminSzerzodes");
}
public ActionResult Helyszinek()
{
if (!Authorization.IsValidDualisHelyszinek())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var model = new TeremSearchModel
{
IsFromSzervezet = IsDualisKepzesEnabled,
ControllerName = Constants.Controllers.DualisAdminTerem,
ApiControllerName = Constants.ApiControllers.DualisAdminTeremApi,
};
if (ClaimData.FelhasznaloSzerepkor != Kreta.Enums.SzerepkorTipusEnum.Adminisztrator)
{
model.SzervezetId = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
}
return View("~/Areas/Intezmeny/Views/Terem/Index.cshtml", model);
}
public List<TabStripItemModel> GetDualisAdminOrarendTabs(string controllerName, CalendarModel calendarModel = null)
{
var list = new List<TabStripItemModel> {
new TabStripItemModel
{
ItemId = "0",
ItemName = AdminisztracioResource.Tanorak,
Area = "Orarend",
Controller = "Dualis" + controllerName,
Action = "GetOrarendiOrak",
RouteParameters = new Dictionary<string, string>
{
{ "index", "0" }
}
},
new TabStripItemModel
{
ItemId = "1",
ItemName = AdminisztracioResource.Napirend,
Area = "Orarend",
Controller = "Dualis" + controllerName,
Action = "GetTanoranKivuliFoglalkozasok",
RouteParameters = new Dictionary<string, string>
{
{ "index", "1" }
}
},
};
return list;
}
}
}

View file

@ -0,0 +1,118 @@
using System.Collections.Generic;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Enums;
using Kreta.Resources;
using Kreta.Web.Areas.DualisKepzes.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Models.EditorTemplates;
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)]
public class DualisKepzohelyController : Controller
{
public ActionResult Index()
{
var model = new DualisKepzohelySearchModel();
if (ClaimData.FelhasznaloSzerepkor != Kreta.Enums.SzerepkorTipusEnum.Adminisztrator)
{
model.SzervezetId = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
}
return View("Index", model);
}
public ActionResult OpenModifyAddPopup(int? Id, int? parentSzervezetId)
{
DualisKepzohelyModel model;
if (Id.HasValue)
{
model = GetDualisKepzohely(Id.Value);
}
else
{
model = new DualisKepzohelyModel();
if (!parentSzervezetId.HasValue)
{
model.HelyszinTipusId = (int)DualisHelyszinTipusEnum.szekhely;
}
else
{
var parentDualisKepzohely = GetDualisKepzohely(parentSzervezetId ?? 0); //mivel a paraméter nullable
model.HelyszinTipusId = (int)DualisHelyszinTipusEnum.telephely;
model.KepzohelyAdoszama = parentDualisKepzohely.KepzohelyAdoszama;
}
model.ParentSzervezetId = parentSzervezetId;
}
model.IsEditable = true;
var tabModel = GetTabModel(model);
var pm = new PopUpModel(tabModel, "DualisKepzohely_ModifyAdd_Bevitel");
pm = pm.AddCancelBtn(pm, "DualisKepzohelyHelper.modifyAddCancel");
pm = pm.AddBtn(pm, "saveDualisKepzohely", CommonResource.Mentes, "DualisKepzohelyHelper.modifyAddSave");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenInfoPopup(int? Id)
{
var model = GetDualisKepzohely(Id.Value);
var tabModel = GetTabModel(model);
var pm = new PopUpModel(tabModel, "DualisKepzohely_ModifyAdd_Bevitel");
pm = pm.AddCancelBtn(pm, "DualisKepzohelyHelper.modifyAddCancel");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult GetAlSzervezetek(int id)
{
return PartialView("DualisKepzohelyDetailGrid", id);
}
private DualisKepzohelyModel GetDualisKepzohely(int pId)
{
var h = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var co = h.GetDualisKepzohelyById(pId);
var model = new DualisKepzohelyModel()
{
ID = co.ID,
KepzohelyNeve = co.KepzohelyNeve,
KepzohelyAdoszama = co.KepzohelyAdoszama,
KepzohelyCime = co.KepzohelyCime,
HelyszinTipusId = co.HelyszinTipusId,
ParentSzervezetId = co.ParentSzervezetId,
};
return model;
}
private static TabStripModel GetTabModel(DualisKepzohelyModel model)
{
var tabstripModel = new TabStripModel
{
TabList = new List<TabStripItemModel>
{
new TabStripItemModel { ItemId = "1", ItemName = DualisResource.TabAlapadatok, Model = model, PartialViewName = "New_Modify_Alapadatok_Tab", IsActive = true }
}
};
if (model.ID.IsEntityId())
{
tabstripModel.TabList.Add(new TabStripItemModel { ItemId = "2", ItemName = DualisResource.TabTanulok, Model = model, PartialViewName = "Dualis_Tanulok_Tab" });
tabstripModel.TabList.Add(new TabStripItemModel { ItemId = "3", ItemName = DualisResource.TabOktatok, Model = model, PartialViewName = "Dualis_Oktatok_Tab" });
tabstripModel.TabList.Add(new TabStripItemModel { ItemId = "4", ItemName = DualisResource.TabCsoportok, Model = model, PartialViewName = "Dualis_Csoportok_Tab" });
tabstripModel.TabList.Add(new TabStripItemModel { ItemId = "5", ItemName = DualisResource.TabTantargyak, Model = model, PartialViewName = "Dualis_Tantargyak_Tab" });
tabstripModel.TabList.Add(new TabStripItemModel { ItemId = "6", ItemName = DualisResource.TabHelyszinek, Model = model, PartialViewName = "Dualis_Helyszinek_Tab" });
}
return tabstripModel;
}
}
}

View file

@ -0,0 +1,31 @@
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Interfaces;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.DualisKepzes.Controllers;
using Kreta.Web.Areas.DualisKepzes.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.DualisKepzes
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public class DualisSzerzodesController : BaseDualisSzerzodesController
{
public DualisSzerzodesController(IFileServiceHelper fileServiceHelper) : base(fileServiceHelper) { }
private DualisSzerzodesGridModel ConvertCoToModel(DualisSzerzodesCo co)
{
return new DualisSzerzodesGridModel()
{
ID = co.TanuloId.ToString(),
SzerzodesFileId = co.SzerzodesFileId,
FileId = co.FileId,
FileNev = co.FileNev,
FeltoltesDatuma = co.FeltoltesDatuma,
FeltoltoId = co.FeltoltoId,
Statusz = co.Statusz
};
}
}
}

View file

@ -0,0 +1,48 @@
using System.Net;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Resources;
using Kreta.Web.Areas.DualisKepzes.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.DualisKepzes.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsDefaultAdminUser.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue)]
public class SzakkepzesiMunkaszerzodesController : Controller
{
private IKretaAuthorization Authorization { get; }
public SzakkepzesiMunkaszerzodesController(IKretaAuthorization authorization)
{
Authorization = authorization;
}
public ActionResult Index()
{
if (!Authorization.IsValidSzakkepzesiMunkaszerzodes())
{
throw new StatusError(HttpStatusCode.Forbidden, ErrorResource.NincsJogaAzOldalMegtekintesehez);
}
return View("Index");
}
public ActionResult OpenInfoSzakkepzesiMunkaszerzodesAdatokPopup(int id)
{
var co = new SzakkepzesiMunkaszerzodesHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSzakepzesiMunkaszerzodesById(id);
var infoModel = new SzakkepzesiMunkaszerzodesInfoModel(co);
var model = new PopUpModel(infoModel, "Info_PopUp");
model.AddCancelBtn(model, "SzakkepzesiMunkaszerzodesHelper.infoCancel");
return PartialView(Constants.General.PopupView, model);
}
}
}