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

63 lines
2.2 KiB
C#

using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public class HetesekController : Controller
{
public ActionResult Index()
{
IDictionary<string, string> csakOsztalyok = OsztalyokEsCsoportokHelpers.GetCsakOsztalyok(ClaimData.FelhasznaloId, feladatKategoriaId: null);
int osztalyId = 0;
if (csakOsztalyok.Any())
{
osztalyId = int.Parse(csakOsztalyok.First().Key);
if (ClaimData.FelhasznaloSzerepkorok.ContainsKey(SzerepkorTipusEnum.Naplo))
{
var osztCsopId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyfonokElsonekMegtalaltOsztalya(ClaimData.FelhasznaloId);
osztalyId = osztCsopId ?? osztalyId;
}
}
var model = new OsztalyTanuloiSearchModel
{
OsztalyCsoport = osztalyId
};
ViewData["HetSorszamokTanulokkal"] = GetHetSorszamokTanulokkal(osztalyId);
return View("Index", model);
}
public ActionResult GetFrissHetSorszamokTanulokkal(int osztalyCsoportId)
{
return Json(GetHetSorszamokTanulokkal(osztalyCsoportId));
}
private string GetHetSorszamokTanulokkal(int osztalyCsoportId)
{
var helper = new HetesekHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var ds = helper.GetHetSorszamokTanulokkal(osztalyCsoportId);
var json = JsonConvert.SerializeObject(ds.Tables[0]);
return json;
}
}
}