649 lines
32 KiB
C#
649 lines
32 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Net;
|
|
using System.Net.Mime;
|
|
using System.Text;
|
|
using System.Web;
|
|
using System.Web.Http;
|
|
using System.Web.Mvc;
|
|
using Kendo.Mvc.Extensions;
|
|
using Kreta.BusinessLogic.HelperClasses;
|
|
using Kreta.BusinessLogic.Helpers;
|
|
using Kreta.BusinessLogic.Security;
|
|
using Kreta.Core;
|
|
using Kreta.Enums;
|
|
using Kreta.Enums.ManualEnums;
|
|
using Kreta.Resources;
|
|
using Kreta.Web.Areas.Tanulo.Helper;
|
|
using Kreta.Web.Areas.Tanulo.Models;
|
|
using Kreta.Web.Areas.TanuloErtekeles.Controllers;
|
|
using Kreta.Web.Controllers;
|
|
using Kreta.Web.Helpers;
|
|
using Kreta.Web.Helpers.Error;
|
|
using Kreta.Web.Helpers.Modal;
|
|
using Kreta.Web.Models;
|
|
using Kreta.Web.Models.EditorTemplates;
|
|
using Kreta.Web.Security;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace Kreta.Web.Areas.Tanulo.Controllers
|
|
{
|
|
[MvcRoleClaimsAuthorize(true)]
|
|
[MvcRolePackageDenyAuthorize(TanevEnum.Mind, KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public class AmiTanuloController : Controller
|
|
{
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public ActionResult Index()
|
|
{
|
|
var model = new TanuloSearchModel();
|
|
TanuloLogic.SetButtonVisibility(model);
|
|
|
|
return View("Index", model);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
|
|
[System.Web.Mvc.ActionName("AktivTanulokByOsztaly")]
|
|
public ActionResult Index(int osztalyId)
|
|
{
|
|
var model = new TanuloSearchModel
|
|
{
|
|
FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria,
|
|
Aktiv = true,
|
|
OsztalyCsoportId = osztalyId
|
|
};
|
|
|
|
TanuloLogic.SetButtonVisibility(model);
|
|
|
|
return View("Index", model);
|
|
}
|
|
|
|
public ActionResult GetPartialView(string id, string partialViewName)
|
|
{
|
|
var model = AmiTanuloLogic.GetTanuloData(int.Parse(id));
|
|
return PartialView(partialViewName, model);
|
|
}
|
|
|
|
public ActionResult GetModPartialView(string id, string partialViewName, int? osztalyId = null)
|
|
{
|
|
var model = AmiTanuloLogic.GetModTanuloData(int.Parse(id), osztalyId);
|
|
|
|
//sablonizálóhoz
|
|
int tanuloId = int.Parse(id);
|
|
var api = new ComboBoxHelperApiController();
|
|
|
|
ViewData["Sablonok"] = api.GetSablonokDropDown(model.TanuloTanugyModel.OsztalyId ?? 0);
|
|
|
|
ViewData["Osztalyok"] = api.GetAMITanuloOsztalyCsoportokEgyeniNelkulDropDown(tanuloId, ClaimData.IsActivTanev);
|
|
ViewData["EgyeniCsoportok"] = api.GetTanuloEgyeniCsoportokDropDown(tanuloId, model.TanuloTanugyModel.OsztalyId ?? 0, !ClaimData.IsActivTanev);
|
|
ViewData["Tanarok"] = api.GetTanarDropDown();
|
|
|
|
ViewData["AmiFotargyak"] = api.GetAMIFotargyList();
|
|
ViewData["AmiTagozatok"] = api.GetAMITagozatList();
|
|
ViewData["AmiTantargyKotelezosegek"] = api.GetAMITantargyKotelezosegList();
|
|
ViewData["EvfolyamTipusok"] = api.GetAmiEvfolyamList();
|
|
|
|
ViewData["TantargyakSablonokkal"] = GetTantargyakSablonokkal();
|
|
|
|
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
(int? osztalyCsoportId, int? osztalyCsoportVezetoId) = helper.GetDefaultAMINemEgyeniOsztalyCsoportAndVezeto(tanuloId);
|
|
|
|
ViewData["OsztalyCsoportId"] = osztalyCsoportId;
|
|
ViewData["OsztalyCsoportVezetoId"] = osztalyCsoportVezetoId;
|
|
|
|
(int? egyeniCsoportId, int? egyeniCsoportVezetoId) = helper.GetDefaultEgyeniCsoportAndVezeto(tanuloId, model.TanuloTanugyModel.OsztalyId ?? 0, !ClaimData.IsActivTanev);
|
|
|
|
ViewData["EgyeniCsoportId"] = egyeniCsoportId;
|
|
ViewData["EgyeniCsoportVezetoId"] = egyeniCsoportVezetoId;
|
|
|
|
return PartialView(partialViewName, model);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.AMImodul.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
|
|
public ActionResult GetPartialViewWithOsztalycsoport(string id, string osztalyCsoportIdString, string partialViewName)
|
|
{
|
|
int? osztalyCsoportId = null;
|
|
if (int.TryParse(osztalyCsoportIdString, out int resultId))
|
|
{ osztalyCsoportId = resultId; }
|
|
|
|
var model = AmiTanuloLogic.GetTanuloData(int.Parse(id), osztalyCsoportId);
|
|
return PartialView(partialViewName, model);
|
|
}
|
|
|
|
public ActionResult GetModPartialViewWithOsztalycsoport(string id, string osztalyCsoportIdString, string partialViewName)
|
|
{
|
|
int? osztalyCsoportId = null;
|
|
if (int.TryParse(osztalyCsoportIdString, out int resultId))
|
|
{ osztalyCsoportId = resultId; }
|
|
|
|
var model = AmiTanuloLogic.GetModTanuloData(int.Parse(id), osztalyCsoportId);
|
|
return PartialView(partialViewName, model);
|
|
}
|
|
|
|
public ActionResult GetTanuloErtekelesPartialView(int tanuloId, string partialViewName, string namePrefix)
|
|
{
|
|
var tanuloOktatasiNevelesiFeladatIds = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
|
|
.GetTanuloOktatasiNevelesiFeladatIdList(tanuloId, OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
|
|
|
|
var model = new TanuloErtekelesByTanuloController().PartialViewModel(tanuloId, namePrefix, tanuloOktatasiNevelesiFeladatIds);
|
|
return PartialView(partialViewName, model);
|
|
}
|
|
|
|
#region Popups
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
|
|
public ActionResult OpenJogviszonySzuneteltetes()
|
|
{
|
|
var pm = new PopUpModel(new JogviszonySzuneteltetesModel(), "Edit_JogviszonySzuneteltetes");
|
|
pm = pm.AddBtn(pm, "JogviszonySzuneteltetesCancel", CommonResource.Megse, "JogviszonySzuneteltetesHelper.Cancel");
|
|
pm = pm.AddBtn(pm, "JogviszonySzuneteltetesSave", CommonResource.Mentes, "JogviszonySzuneteltetesHelper.Save");
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult OpenDetailTanuloPopUp(int tanuloId, int? osztalycsoportId, bool ertekelesTabAktiv = false, bool fromAdd = false)
|
|
{
|
|
var tanuloDetailModel = new TanuloDetailModel { TanuloId = tanuloId, OsztalycsoportId = osztalycsoportId };
|
|
var popUpModel = new PopUpModel(new TanuloSearchModel
|
|
{
|
|
TanuloId = tanuloId,
|
|
TanuloModalHeader = TanuloLogic.GetTanuloModalHeader(tanuloId),
|
|
TabList = AmiTanuloLogic.GetDetailTabs(tanuloDetailModel, ertekelesTabAktiv),
|
|
OsztalyCsoportId = osztalycsoportId
|
|
}, "Tanulo_Info");
|
|
|
|
popUpModel = popUpModel.AddCancelBtn(popUpModel, fromAdd ? "TanuloHelper.modTanuloCancel" : "TanuloHelper.detailTanuloCancel");
|
|
|
|
return PartialView(Constants.General.PopupView, popUpModel);
|
|
}
|
|
|
|
public ActionResult OpenModTanuloPopUp(int tanuloId, int? osztalycsoportId)
|
|
{
|
|
var tm = AmiTanuloLogic.GetModTanuloData(tanuloId, osztalycsoportId);
|
|
TanuloLogic.SetTanuloSzakkepzesesBasicProperties(tm);
|
|
|
|
tm.TanuloAlapAdatModel.NemList = TanuloLogic.GetNemList(true);
|
|
tm.TanuloAlapAdatModel.FelhasznaloiNevGeneralasModja = TanuloLogic.GetFelhasznaloiNevGeneralasModja(tm);
|
|
tm.TanuloModalHeader = TanuloLogic.GetTanuloModalHeader(tanuloId);
|
|
|
|
tm.TabList = AmiTanuloLogic.GetModTabs(tm, ClaimData.IsOsztalyfonok, osztalycsoportId);
|
|
|
|
var pm = new PopUpModel(tm, "Tanulo_Bevitel");
|
|
pm = pm.AddCancelBtn(pm, "TanuloHelper.modTanuloCancel");
|
|
pm = pm.AddOkBtn(pm, "TanuloHelper.modTanuloSave");
|
|
|
|
//sablonizálóhoz
|
|
var api = new ComboBoxHelperApiController();
|
|
|
|
ViewData["Sablonok"] = api.GetSablonokDropDown(tm.TanuloTanugyModel.OsztalyId ?? 0);
|
|
|
|
ViewData["Osztalyok"] = api.GetAMITanuloOsztalyCsoportokEgyeniNelkulDropDown(tanuloId, ClaimData.IsActivTanev);
|
|
ViewData["EgyeniCsoportok"] = api.GetTanuloEgyeniCsoportokDropDown(tanuloId, tm.TanuloTanugyModel.OsztalyId ?? 0, !ClaimData.IsActivTanev);
|
|
ViewData["Tanarok"] = api.GetTanarDropDown();
|
|
|
|
ViewData["AmiFotargyak"] = api.GetAMIFotargyList();
|
|
ViewData["AmiTagozatok"] = api.GetAMITagozatList();
|
|
ViewData["AmiTantargyKotelezosegek"] = api.GetAMITantargyKotelezosegList();
|
|
ViewData["EvfolyamTipusok"] = api.GetAmiEvfolyamList();
|
|
|
|
ViewData["TantargyakSablonokkal"] = GetTantargyakSablonokkal();
|
|
|
|
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
(int? osztalyCsoportId, int? osztalyCsoportVezetoId) = helper.GetDefaultAMINemEgyeniOsztalyCsoportAndVezeto(tanuloId);
|
|
|
|
ViewData["OsztalyCsoportId"] = osztalyCsoportId;
|
|
ViewData["OsztalyCsoportVezetoId"] = osztalyCsoportVezetoId;
|
|
|
|
(int? egyeniCsoportId, int? egyeniCsoportVezetoId) = helper.GetDefaultEgyeniCsoportAndVezeto(tanuloId, tm.TanuloTanugyModel.OsztalyId ?? 0, !ClaimData.IsActivTanev);
|
|
|
|
ViewData["EgyeniCsoportId"] = egyeniCsoportId;
|
|
ViewData["EgyeniCsoportVezetoId"] = egyeniCsoportVezetoId;
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public ActionResult OpenTobbesModTanuloPopUp(List<TanuloTobbesModAdat> tobbesModAdatList)
|
|
{
|
|
var model = new TanuloTobbesModModel { TanuloTobbesTanugyModel = new TanuloTobbesTanugyModel() };
|
|
|
|
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
|
var osztalyJellemzoi = helper.GetOsztalyJellemzoi();
|
|
model.TanuloTobbesTanugyModel.IsSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsSzakkepzeses];
|
|
model.TanuloTobbesTanugyModel.IsNKTSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses] && ClaimData.IsSelectedTanev20_21OrLater;
|
|
|
|
var osztalyIdList = tobbesModAdatList.Where(x => x.OsztalyId.IsEntityId()).Select(x => x.OsztalyId.Value).Distinct().ToList();
|
|
var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
model.TanuloTobbesTanugyModel.IsAllOsztalyAltalanosIskolaFeladatellatasiHely = tanuloHelper.IsAllOsztalyAltalanosIskolaFeladatellatasiHely(osztalyIdList);
|
|
|
|
model.TabList = AmiTanuloLogic.GetTanuloTobbesModTabs(model);
|
|
|
|
foreach (var item in tobbesModAdatList)
|
|
{
|
|
model.TobbesModIdList.Add(new TanuloTobbesModId() { TanuloId = item.TanuloId, OsztalyId = item.OsztalyId });
|
|
}
|
|
|
|
model.TanuloNevArray = string.Join(", ", tobbesModAdatList.Select(x => x.TanuloNev));
|
|
|
|
var pm = new PopUpModel(model, "TanuloTobbesModify_Bevitel");
|
|
pm = pm.AddCancelBtn(pm, "TanuloHelper.modifyCancel");
|
|
pm = pm.AddOkBtn(pm, "TanuloHelper.confirmCsopModWindow");
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult NewElerhetosegTel(int tanuloId)
|
|
{
|
|
var model = new CimElerhetosegModel()
|
|
{
|
|
FelhasznaloId = tanuloId,
|
|
TanulovalEgyezik = true,
|
|
AlapertelmezettTel = true,
|
|
TelefonKotelezo = true,
|
|
FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.TelSectionVisible,
|
|
CimElerhetosegConstant.IsNew,
|
|
CimElerhetosegConstant.AlapertelmezettTelVisible
|
|
}
|
|
};
|
|
model.AlapertelmezettTel = !(new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).HasTanuloAlapertelmezettTelefon(tanuloId));
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Tel_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloElerhetosegTelHelper.newElerhetosegTelCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloElerhetosegTelHelper.newElerhetosegTelSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult ModElerhetosegTel(int id)
|
|
{
|
|
var model = TanuloLogic.GetTanuloElerhetosegTel(id);
|
|
model.TanulovalEgyezik = true;
|
|
model.TelefonKotelezo = true;
|
|
model.FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.TelSectionVisible,
|
|
CimElerhetosegConstant.AlapertelmezettTelVisible
|
|
};
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Tel_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloElerhetosegTelHelper.modElerhetosegTelCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloElerhetosegTelHelper.modElerhetosegTelSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult NewElerhetosegEmail(int tanuloId)
|
|
{
|
|
var model = new CimElerhetosegModel()
|
|
{
|
|
FelhasznaloId = tanuloId,
|
|
AlapertelmezettEmail = true,
|
|
TanulovalEgyezik = true,
|
|
EmailcimKotelezo = true,
|
|
EmailTipusKotelezo = true,
|
|
FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.EmailSectionVisible,
|
|
CimElerhetosegConstant.IsNew,
|
|
CimElerhetosegConstant.AlapertelmezettEmailVisible
|
|
}
|
|
};
|
|
model.AlapertelmezettEmail = !(new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).HasTanuloAlapertelmezettEmail(tanuloId));
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Email_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloElerhetosegEmailHelper.newElerhetosegEmailCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloElerhetosegEmailHelper.newElerhetosegEmailSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult ModElerhetosegEmail(int id)
|
|
{
|
|
var model = TanuloLogic.GetTanuloElerhetosegEmail(id);
|
|
model.TanulovalEgyezik = true;
|
|
model.EmailcimKotelezo = true;
|
|
model.EmailTipusKotelezo = true;
|
|
model.FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.EmailSectionVisible,
|
|
CimElerhetosegConstant.AlapertelmezettEmailVisible
|
|
};
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Email_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloElerhetosegEmailHelper.modElerhetosegEmailCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloElerhetosegEmailHelper.modElerhetosegEmailSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult NewElerhetosegCim(int tanuloId)
|
|
{
|
|
var model = new CimElerhetosegModel()
|
|
{
|
|
FelhasznaloId = tanuloId,
|
|
Orszag = (int)OrszagTipusEnum.Magyarorszag,
|
|
CimTipus = (int)CimTipusEnum.allando_lakcim,
|
|
AlapertelmezettCim = false,
|
|
FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.CimSectionVisible,
|
|
CimElerhetosegConstant.IsNew,
|
|
CimElerhetosegConstant.AlapertelmezettCimVisible
|
|
}
|
|
};
|
|
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Cim_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloElerhetosegCimHelper.newElerhetosegCimCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloElerhetosegCimHelper.newElerhetosegCimSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult ModElerhetosegCim(int id)
|
|
{
|
|
var model = TanuloLogic.GetTanuloElerhetosegCim(id);
|
|
model.FormSettings = new List<string>(){
|
|
CimElerhetosegConstant.CimSectionVisible,
|
|
CimElerhetosegConstant.AlapertelmezettCimVisible };
|
|
model.IsAlapertelmezettModosithato = !model.AlapertelmezettCim;
|
|
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Cim_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloElerhetosegCimHelper.modElerhetosegCimCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloElerhetosegCimHelper.modElerhetosegCimSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
|
|
public ActionResult Info_GondviselokCimGrid(int id)
|
|
{
|
|
return PartialView("Info_GondviselokCimGrid", id);
|
|
}
|
|
|
|
public ActionResult NewGondviselo(int tanuloId)
|
|
{
|
|
var model = new TanuloModGondviseloModel()
|
|
{
|
|
TanulovalEgyezik = true,
|
|
GondviseloAutoEmail = !ClaimData.IsSzirIntezmeny,
|
|
FileLetoltesSzukseges = !ClaimData.IsSzirIntezmeny,
|
|
RokonsagiFok = (int)RokonsagiFokEnum.na,
|
|
FelhasznaloId = tanuloId,
|
|
EmailcimKotelezo = false,
|
|
EmailTipusKotelezo = false,
|
|
TelefonKotelezo = false,
|
|
IsGondviseloElerhetoseg = false,
|
|
FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.EmailSectionVisible,
|
|
CimElerhetosegConstant.TelSectionVisible,
|
|
CimElerhetosegConstant.TanuloElerhetosegEmailVisible,
|
|
CimElerhetosegConstant.TanuloElerhetosegTelVisible
|
|
},
|
|
IsSzirIntezmeny = ClaimData.IsSzirIntezmeny
|
|
};
|
|
|
|
var pm = new PopUpModel(model, "_Gondviselo_Bevitel");
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnGondviseloCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloGondviseloHelper.newGondviseloCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnGondviseloOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloGondviseloHelper.newGondviseloSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult ModGondviselo(int id)
|
|
{
|
|
var model = TanuloLogic.GetTanuloGondviselo(id);
|
|
model.TanulovalEgyezik = true;
|
|
model.EmailcimKotelezo = false;
|
|
model.EmailTipusKotelezo = false;
|
|
model.TelefonKotelezo = false;
|
|
model.IsGondviseloElerhetoseg = false;
|
|
model.FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.EmailSectionVisible,
|
|
CimElerhetosegConstant.TelSectionVisible,
|
|
CimElerhetosegConstant.TanuloElerhetosegEmailVisible,
|
|
CimElerhetosegConstant.TanuloElerhetosegTelVisible
|
|
};
|
|
model.IsSzirIntezmeny = ClaimData.IsSzirIntezmeny;
|
|
var pm = new PopUpModel(model, "_Gondviselo_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnGondviseloCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloGondviseloHelper.modGondviseloCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnGondviseloOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloGondviseloHelper.modGondviseloSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult NewGondviseloCim(int tanuloId)
|
|
{
|
|
var model = new CimElerhetosegModel()
|
|
{
|
|
FelhasznaloId = tanuloId,
|
|
CimTipus = (int)CimTipusEnum.allando_lakcim,
|
|
AlapertelmezettCim = true,
|
|
IsGondviseloElerhetoseg = true,
|
|
TanulovalEgyezik = false,
|
|
FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.CimSectionVisible,
|
|
CimElerhetosegConstant.IsNew,
|
|
CimElerhetosegConstant.AlapertelmezettCimVisible
|
|
}
|
|
};
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Cim_BevitelGondv");
|
|
|
|
var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
if (!tanuloHelper.CheckLetezikGondviseloAllandoLakcim(tanuloId))
|
|
{
|
|
model.CimTipus = (int)CimTipusEnum.allando_lakcim;
|
|
}
|
|
|
|
model.GondviselokAlapertelmezettCimmel = tanuloHelper.GondviselokAlapertelmezettCimmel(tanuloId);
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "GondviseloElerhetosegCimHelper.newGondviseloCimCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "GondviseloElerhetosegCimHelper.newGondviseloCimSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult ModGondviseloCim(int id)
|
|
{
|
|
var model = TanuloLogic.GetGondviseloElerhetosegCim(id);
|
|
model.IsGondviseloElerhetoseg = true;
|
|
model.FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.CimSectionVisible,
|
|
CimElerhetosegConstant.AlapertelmezettCimVisible
|
|
};
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Cim_BevitelGondv");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "GondviseloElerhetosegCimHelper.modGondviseloCimCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "GondviseloElerhetosegCimHelper.modGondviseloCimSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
#endregion Popups
|
|
|
|
#region Export
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public ActionResult TanuloExportBesorolashoz([FromUri] TanuloSearchModel data)
|
|
{
|
|
return TanuloLogic.TanuloExportBesorolashoz(data, OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public ActionResult TanulokLakcimmelExport([FromUri] TanuloSearchModel data)
|
|
{
|
|
return TanuloLogic.TanulokLakcimmelExport(data, OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public ActionResult TanulokTanugyiAdatiExport([FromUri] TanuloSearchModel model)
|
|
{
|
|
return TanuloLogic.ExportTanulokTanugyiAdatai(model);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public ActionResult ExportTanulokTantargyaiEsPedagogusai([FromUri] TanuloSearchModel data)
|
|
{
|
|
return TanuloLogic.ExportTanulokTantargyaiEsPedagogusai(data, OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public ActionResult GondviselokElerhetosegeiExport([FromUri] TanuloSearchModel model)
|
|
{
|
|
return TanuloLogic.ExportGondviselokElerhetosegei(model, OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public ActionResult TanuloKirStatExport([FromUri] TanuloSearchModel data)
|
|
{
|
|
data.ForOktober = true;
|
|
return TanuloLogic.TanuloKirStatExport(data);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public ActionResult TanuloKirStatTeljesExport([FromUri] TanuloSearchModel data)
|
|
{
|
|
return TanuloLogic.TanuloKirStatExport(data);
|
|
}
|
|
|
|
#endregion Export
|
|
|
|
#region Belépési azonosító generálás
|
|
|
|
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
|
|
[MvcRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public ActionResult AzonositoGeneralasPopup(bool isTanulo, bool isPasswordReset, List<int> tanuloIdList = null, bool generaltFileLetoltes = true, bool emailKuldes = true)
|
|
{
|
|
var hozzaferesModel = new HozzaferesGeneralasaModel
|
|
{
|
|
TanuloIdList = tanuloIdList,
|
|
IsTanulo = isTanulo,
|
|
GeneraltFileLetoltes = generaltFileLetoltes,
|
|
EmailKuldes = emailKuldes,
|
|
IsPasswordReset = isPasswordReset
|
|
};
|
|
|
|
if (isPasswordReset)
|
|
{
|
|
hozzaferesModel.ConfirmText = isTanulo ?
|
|
TanuloResource.JelszoAlaphelyzetbeAllitasaNovendekConfirm :
|
|
TanuloResource.JelszoAlaphelyzetbeAllitasaGondviseloConfirm;
|
|
if (isTanulo)
|
|
{
|
|
hozzaferesModel.TanulokEmailElerhetosegNelkul = TanuloLogic.GetTanulokEmailNelkulSzam(tanuloIdList);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (tanuloIdList != null)
|
|
{
|
|
hozzaferesModel.ConfirmText = isTanulo ?
|
|
TanuloResource.BelepesiAzonositoGeneralasaKijeloltNovendekekConfirm :
|
|
TanuloResource.BelepesiAzonositoGeneralasaKijeloltNovendekekGondviseloinekConfirm;
|
|
}
|
|
else
|
|
{
|
|
hozzaferesModel.ConfirmText = isTanulo ?
|
|
TanuloResource.BelepesiAzonositoGeneralasNovendekConfirm :
|
|
TanuloResource.BelepesiAzonositoGeneralasGondviseloConfirm;
|
|
}
|
|
}
|
|
var model = new PopUpModel(hozzaferesModel, "HozzaferesGeneralasModal");
|
|
model.AddBtn(model, "hozzaferes_generalas_Nem", "Nem", "KretaWindowHelper.destroyAllWindow");
|
|
model.AddBtn(model, "hozzaferes_generalas_Igen", "Igen", "TanuloHelper.hozzaferesGeneralas");
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
|
|
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
|
|
[MvcRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
|
|
public JsonResult AzonositoGeneralas(bool isTanulo, bool fileLetoltesSzukseges, bool isPasswordReset, List<int> tanuloIdList = null)
|
|
{
|
|
var popupModel = TanuloLogic.AzonositoGeneralas(isTanulo, fileLetoltesSzukseges, isPasswordReset, tanuloIdList);
|
|
return Json(popupModel);
|
|
}
|
|
|
|
public ActionResult SetGondviseloToBovitettPopup(List<int> tanuloIdList, bool isKijeloltTanulokGondviseloi)
|
|
{
|
|
if (isKijeloltTanulokGondviseloi && !TanuloLogic.ExistsGondviselo(tanuloIdList))
|
|
{
|
|
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.AKijeloltNovendekeknekNincsGondiselojuk);
|
|
}
|
|
|
|
var hozzaferesModel = new GondviseloToBovitettModel
|
|
{
|
|
TanuloIdList = tanuloIdList,
|
|
ConfirmText = isKijeloltTanulokGondviseloi ? TanuloResource.AKijeloltNovendekekOsszesGondviselojenekBelepeseBovitettLeszBiztosanFolytatja : TanuloResource.AKivalasztottGondviselonekBovitettJogosultsagLeszGeneralvaBiztosanFolytatja,
|
|
EmailKuldes = true,
|
|
GeneraltFileLetoltes = true
|
|
};
|
|
|
|
var model = new PopUpModel(hozzaferesModel, "GondviseloToBovitettModal");
|
|
model.AddBtn(model, "hozzaferes_generalas_Nem", CommonResource.Nem, "TanuloGondviseloHelper.setGondviseloToBovitettCancel");
|
|
model.AddBtn(model, "hozzaferes_generalas_Igen", CommonResource.Igen, isKijeloltTanulokGondviseloi ? "TanuloHelper.setGondviseloToBovitett" : "TanuloGondviseloHelper.setGondviseloToBovitett");
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
|
|
[MvcRolePackageDenyAuthorize(TanevEnum.Mind, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
|
|
public JsonResult SetKijeloltTanulokGondviseloiToBovitett(bool emailKuldesSzukseges, bool fileLetoltesSzukseges, List<int> tanuloIdList)
|
|
{
|
|
var popupModel = TanuloLogic.SetKijeloltTanulokGondviseloiToBovitett(emailKuldesSzukseges, fileLetoltesSzukseges, tanuloIdList);
|
|
return Json(popupModel);
|
|
}
|
|
|
|
[MvcRolePackageDenyAuthorize(TanevEnum.Mind, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
|
|
public JsonResult SetGondviseloToBovitett(bool emailKuldesSzukseges, bool fileLetoltesSzukseges, List<int> gondviseloIdList)
|
|
{
|
|
var popupModel = TanuloLogic.SetGondviseloToBovitett(emailKuldesSzukseges, fileLetoltesSzukseges, gondviseloIdList);
|
|
return Json(popupModel);
|
|
}
|
|
|
|
public ActionResult DownloadEmailNelkuliTanulokJelszoResetEsetenXlsx(List<int> tanuloIds)
|
|
{
|
|
try
|
|
{
|
|
var nevmodel = new NyomtatvanyNevGeneralasModel { TanevID = ClaimData.AktivTanevID };
|
|
var fileName = CommonExtensions.NevGeneralas(TanuloResource.TanulokEmailElerhetosegNelkulFileName, nevmodel);
|
|
|
|
var fileContent = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanulokEmailNelkulJelszoResethezXlsx(tanuloIds);
|
|
|
|
return new FileContentResult(fileContent, MediaTypeNames.Application.Octet)
|
|
{
|
|
FileDownloadName = HttpUtility.UrlEncode($"{fileName}.xlsx", Encoding.UTF8),
|
|
};
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.SikertelenAllomanyLetoltes, ex);
|
|
}
|
|
}
|
|
|
|
#endregion Belépési azonosító generálás
|
|
|
|
#region Tantárgy felosztas mentés/módosítás/törlés
|
|
|
|
public ActionResult LoadSablon(int tanuloId, int osztalyId, int sablonId)
|
|
{
|
|
return Json(AmiTanuloLogic.GetSablon(tanuloId, osztalyId, sablonId));
|
|
}
|
|
|
|
private string GetTantargyakSablonokkal()
|
|
{
|
|
var helper = new TantargyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
var ds = helper.GetTantargyakSablonokkal();
|
|
|
|
var json = JsonConvert.SerializeObject(ds.Tables[0]);
|
|
|
|
return json;
|
|
}
|
|
|
|
public ActionResult GetFrissTantargyakSablonokkal()
|
|
{
|
|
return Json(GetTantargyakSablonokkal());
|
|
}
|
|
|
|
#endregion Tantárgy felosztas mentés/módosítás/törlés
|
|
}
|
|
}
|