214 lines
12 KiB
C#
214 lines
12 KiB
C#
using System.Collections.Generic;
|
|
using System.Web.Http;
|
|
using System.Web.Mvc;
|
|
using Kreta.BusinessLogic.Security;
|
|
using Kreta.Enums;
|
|
using Kreta.Enums.ManualEnums;
|
|
using Kreta.Framework;
|
|
using Kreta.Resources;
|
|
using Kreta.Web.Areas.OsztalyCsoport.Logic;
|
|
using Kreta.Web.Areas.OsztalyCsoport.Models;
|
|
using Kreta.Web.Helpers.TabStrip;
|
|
using Kreta.Web.Models.EditorTemplates;
|
|
using Kreta.Web.Security;
|
|
|
|
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
|
|
{
|
|
[MvcRoleClaimsAuthorize(true)]
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.ClaimValue)]
|
|
public class KollegiumCsoportController : Controller
|
|
{
|
|
public ActionResult Index(string filter)
|
|
{
|
|
var model = new CsoportSearchModel();
|
|
return View("Index", model);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
|
|
public ActionResult OpenCsoportPropertiesTab(int csoportID, bool fromAdd = false)
|
|
{
|
|
AlapkepzesCsoportModel csmodel = new AlapkepzesCsoportModel() { ID = csoportID };
|
|
csmodel.TabList = GetTabItems(csmodel);
|
|
|
|
PopUpModel pm = new PopUpModel(csmodel, "CsoportProperties_Info");
|
|
pm = pm.AddCancelBtn(pm, fromAdd ? "CsoportHelper.csoportModifyAddCancel" : "CsoportHelper.propertiesCancel");
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult OpenCsoportAddPopup(int? id)
|
|
{
|
|
var csmodel = KollegiumOsztalyCsoportLogic.GetCsoportBaseProperties(id);
|
|
csmodel.IsFeladatellatasiHelySzures = true;
|
|
|
|
PopUpModel pm = new PopUpModel(csmodel, "CsoportAdd_Bevitel");
|
|
pm = pm.AddCancelBtn(pm, "CsoportHelper.csoportModifyAddCancel");
|
|
pm = pm.AddOkBtn(pm, "CsoportHelper.modifyAddSave");
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult OpenUjEgyeniCsoportAdd(int? id)
|
|
{
|
|
EgyeniCsoportModel csoportModel = new EgyeniCsoportModel() { CsoportNeve = OsztalyCsoportLogic.GetEgyeniCsoportAlapertelmezettNev() };
|
|
|
|
PopUpModel popUpModel = new PopUpModel(csoportModel, "EgyeniCsoportAdd_Bevitel");
|
|
popUpModel.AddCancelBtn(popUpModel, "CsoportHelper.egyeniCsoportModifyAddCancel");
|
|
popUpModel.AddOkBtn(popUpModel, "CsoportHelper.egyeniCsoportMmodifyAddSave");
|
|
|
|
return PartialView(Constants.General.PopupView, popUpModel);
|
|
}
|
|
|
|
public ActionResult OpenCsoportModifyPopup(int? id)
|
|
{
|
|
AlapkepzesCsoportModel csmodel = KollegiumOsztalyCsoportLogic.GetCsoportBaseProperties(id);
|
|
|
|
csmodel.TabList = new List<TabStripItemModel>();
|
|
csmodel.TabList.Add(new TabStripItemModel() { ItemId = "1", ItemName = StringResourcesUtil.GetString(3880) /*Csoport alapadatok*/, Model = csmodel, PartialViewName = "CsoportModify_Bevitel", IsActive = true });
|
|
csmodel.TabList.Add(new TabStripItemModel() { ItemId = "2", ItemName = StringResourcesUtil.GetString(3881) /*A csoportba járó tanulók listája*/, Model = csmodel, PartialViewName = "CsoportTanulo_Bevitel" });
|
|
|
|
PopUpModel pm = new PopUpModel(csmodel, "CsoportModify_Bevitel_Tab");
|
|
pm = pm.AddCancelBtn(pm, "CsoportHelper.csoportModifyAddCancel");
|
|
pm = pm.AddOkBtn(pm, "CsoportHelper.modifyAddSave");
|
|
|
|
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny)
|
|
{
|
|
csmodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = id.Value;
|
|
csmodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsOsztaly = false;
|
|
OsztalyCsoportLogic.SetCsoportMunkarendVisibility(csmodel, id);
|
|
csmodel.TabList.Add(new TabStripItemModel() { ItemId = "3", ItemName = CommonResource.Munkarend, Model = csmodel, PartialViewName = "Info_CsoportMunkarend_Tab" });
|
|
}
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult OpenModPopup(List<AlapkepzesCsoportModel> csoportLista)
|
|
{
|
|
var model = KollegiumOsztalyCsoportLogic.GetModelForCsoportModPopup(csoportLista);
|
|
|
|
PopUpModel pm = new PopUpModel(model, "CsoportTobbModify_bevitel");
|
|
pm = pm.AddCancelBtn(pm, "CsoportHelper.csoportModifyAddCancel");
|
|
pm = pm.AddOkBtn(pm, "CsoportHelper.confirmCsopModWindow");
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
|
|
public ActionResult GetCsoportBaseProperties(int? id)
|
|
{
|
|
AlapkepzesCsoportModel csmodel = KollegiumOsztalyCsoportLogic.GetCsoportBaseProperties(id);
|
|
return PartialView("Info_Alapadatok_Tab", csmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
|
|
public ActionResult GetCsoportTanuloi(int id)
|
|
{
|
|
AlapkepzesCsoportModel csmodel = new AlapkepzesCsoportModel() { ID = id };
|
|
return PartialView("Info_CsoportTanuloi_Tab", csmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
|
|
public ActionResult GetCsoportFoglalkozasai(int id)
|
|
{
|
|
AlapkepzesCsoportModel csmodel = new AlapkepzesCsoportModel() { ID = id };
|
|
return PartialView("Info_CsoportFoglalkozasai_Tab", csmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
|
|
public ActionResult GetCsoportOrarendiOrai(int id)
|
|
{
|
|
AlapkepzesCsoportModel csmodel = new AlapkepzesCsoportModel() { ID = id };
|
|
return PartialView("Info_CsoportOrarendiOrai_Tab", csmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
|
|
public ActionResult GetCsoportTanmenetei(int id)
|
|
{
|
|
AlapkepzesCsoportModel csmodel = new AlapkepzesCsoportModel() { ID = id };
|
|
return PartialView("Info_CsoportTanmenetei_Tab", csmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
|
|
public ActionResult GetCsoportMegtartottTanorai(int id)
|
|
{
|
|
AlapkepzesCsoportModel csmodel = new AlapkepzesCsoportModel() { ID = id };
|
|
return PartialView("Info_CsoportMegtartottTanorai_Tab", csmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
|
|
public ActionResult GetCsoportErtekelesei(int id)
|
|
{
|
|
AlapkepzesCsoportModel csmodel = new AlapkepzesCsoportModel() { ID = id };
|
|
return PartialView("Info_CsoportErtekelesei_Tab", csmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public ActionResult GetCsoportTanuloinakMunkarendje(int id)
|
|
{
|
|
var csmodel = AlapkepzesOsztalyCsoportLogic.GetCsoportBaseProperties(id);
|
|
csmodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = id;
|
|
OsztalyCsoportLogic.SetCsoportMunkarendVisibility(csmodel, id);
|
|
return PartialView("Info_CsoportMunkarend_Tab", csmodel);
|
|
}
|
|
|
|
public ActionResult GetPartialView(string dataType, int csoportId)
|
|
{
|
|
var model = OsztalyCsoportLogic.GetModelForPartialViewCsoport(dataType, csoportId);
|
|
return PartialView("_TanuloSorolasPartialRowFunction", model);
|
|
}
|
|
|
|
public ActionResult OpenBesorolasModDatum(int tanuloId, int csoportId)
|
|
{
|
|
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForBesorolasModDatumCsoport(tanuloId, csoportId));
|
|
}
|
|
|
|
public ActionResult OpenKisorolasModDatum(int tanuloId, int csoportId)
|
|
{
|
|
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasModDatumCsoport(tanuloId, csoportId));
|
|
}
|
|
|
|
public ActionResult OpenKisorolas(int tanuloId, int csoportId)
|
|
{
|
|
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasCsoport(tanuloId, csoportId));
|
|
}
|
|
|
|
public List<TabStripItemModel> GetTabItems(AlapkepzesCsoportModel model)
|
|
{
|
|
const string CsoportController = Constants.Controllers.KollegiumCsoport;
|
|
|
|
var items = new List<TabStripItemModel>();
|
|
items.Add(new TabStripItemModel { ItemId = "1", ItemName = StringResourcesUtil.GetString(161), Area = "OsztalyCsoport", Controller = CsoportController, Action = "GetCsoportBaseProperties", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } } });
|
|
items.Add(new TabStripItemModel { ItemId = "2", ItemName = StringResourcesUtil.GetString(332)/*Tanulók*/, Area = "OsztalyCsoport", Controller = CsoportController, Action = "GetCsoportTanuloi", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } } });
|
|
items.Add(new TabStripItemModel { ItemId = "3", ItemName = StringResourcesUtil.GetString(164)/*Foglalkozások*/, Area = "OsztalyCsoport", Controller = CsoportController, Action = "GetCsoportFoglalkozasai", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } } });
|
|
|
|
if (!ClaimData.IsSzirIntezmeny)
|
|
{
|
|
items.Add(new TabStripItemModel { ItemId = "4", ItemName = StringResourcesUtil.GetString(165)/*Órarendi órák*/, Area = "OsztalyCsoport", Controller = CsoportController, Action = "GetCsoportOrarendiOrai", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } }, IsETTFDisabled = true });
|
|
items.Add(new TabStripItemModel { ItemId = "5", ItemName = StringResourcesUtil.GetString(166)/*Tanmenetek*/, Area = "OsztalyCsoport", Controller = CsoportController, Action = "GetCsoportTanmenetei", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } }, IsETTFDisabled = true });
|
|
items.Add(new TabStripItemModel { ItemId = "6", ItemName = StringResourcesUtil.GetString(167)/*Megtartott tanórák*/, Area = "OsztalyCsoport", Controller = CsoportController, Action = "GetCsoportMegtartottTanorai", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } }, IsETTFDisabled = true });
|
|
items.Add(new TabStripItemModel { ItemId = "7", ItemName = StringResourcesUtil.GetString(1701)/*Értékelések*/, Area = "OsztalyCsoport", Controller = CsoportController, Action = "GetCsoportErtekelesei", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } }, IsETTFDisabled = true });
|
|
}
|
|
|
|
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny)
|
|
{
|
|
items.Add(new TabStripItemModel { ItemId = "8", ItemName = CommonResource.Munkarend, Area = "OsztalyCsoport", Controller = CsoportController, Action = "GetCsoportTanuloinakMunkarendje", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
|
|
}
|
|
|
|
return items;
|
|
}
|
|
|
|
#region Export
|
|
|
|
public ActionResult ExportCsoportokMindenAdata([FromUri] CsoportSearchModel model)
|
|
{
|
|
return OsztalyCsoportLogic.ExportCsoportokMindenAdata(OktNevelesiKategoriaEnum.Kollegium, model);
|
|
}
|
|
|
|
public ActionResult ExportCsoportbaJaroTanulok([FromUri] CsoportSearchModel model)
|
|
{
|
|
return OsztalyCsoportLogic.ExportCsoportbaJaroTanulok(OktNevelesiKategoriaEnum.Kollegium, model);
|
|
}
|
|
|
|
#endregion Export
|
|
}
|
|
}
|