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,828 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Exceptions;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Framework.Entities;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Helper;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Models;
using Kreta.Web.Security;
using Newtonsoft.Json;
using SDA.DataProvider;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiTanuloApiController : ApiController
{
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public DataSourceResult GetTanuloGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetGridData(data, request);
return modelList.ToDataSourceResult(gridParameter);
}
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<TanuloGridModel>(TanuloGridModel.TanuloExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(TanuloResource.TanuloExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{TanuloResource.TanuloExportFileName}.xlsx");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<TanuloGridModel> modelList) GetGridData(string data, DataSourceRequest request)
{
data = data.Replace("_", string.Empty);
var model = JsonConvert.DeserializeObject<TanuloSearchModel>(data);
var co = model.ConvertModelToCo(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsActivTanev);
co.LekerdezesNapja = DateTime.Today;
co.FeladatKategoriaId = (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas;
var gridParameter = Converter.GridParameter(request);
var coList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloItemCoList(co);
var modelList = new List<TanuloGridModel>();
foreach (var item in coList)
{
var gridModel = new TanuloGridModel(item);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
#region Növendék mentés/módosítás/törlés
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.IsLEPKezelo.ClaimValue)]
public HttpResponseMessage DeleteJogviszonySzuneteltetes(JogviszonySzuneteltetesDeleteModel model)
{
try
{
if (model.IsJogviszonySzuneteltetese && model.GridCnt == 1)
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.JogviszonySzunetLegalabbEgyIdoszakKotelezo);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.DeleteJogviszonySzuneteltetes(model.Id.Value);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveJogviszonySzuneteltetes(JogviszonySzuneteltetesModel model)
{
try
{
if (model.JogviszonySzuneteltetesKezdete.Value > model.JogviszonySzuneteltetesVege.Value)
ModelState.AddModelError("JogviszonySzuneteltetes1", ErrorResource.JogviszonySzuneteltetes);
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanevData = tanevHelper.GetTanevInfo();
if (model.JogviszonySzuneteltetesKezdete.Value < tanevData.KezdoNap)
ModelState.AddModelError("JogviszonySzuneteltetes2", ErrorResource.JogviszonySzuneteltetesKezdeteTanevben);
if (model.JogviszonySzuneteltetesVege.Value > tanevData.UtolsoNap)
ModelState.AddModelError("JogviszonySzuneteltetes3", ErrorResource.JogviszonySzuneteltetesVegeTanevben);
if (ModelState.IsValid)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.SaveJogviszonySzuneteltetes(model.TanuloId.Value, model.OsztalyId, model.JogviszonySzuneteltetesKezdete.Value, model.JogviszonySzuneteltetesVege.Value, ClaimData.KovTanevID);
return Request.CreateResponse(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
catch (Exception e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveTanulo(TanuloModel model)
{
try
{
var felhasznaloiNevGeneralasModja = TanuloLogic.GetFelhasznaloiNevGeneralasModja(model);
TanuloLogic.TanuloCustomValidation(ModelState, model, felhasznaloiNevGeneralasModja, OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
if (ModelState.IsValid)
{
var response = TanuloLogic.TanuloMentese(model, felhasznaloiNevGeneralasModja);
return Request.CreateResponse(HttpStatusCode.OK, response);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
catch (Check4TValidacioExistsException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottFelhasznaloiAdatokkalMarLetezikFelhasznalo);
}
}
public HttpResponseMessage SaveData(TanuloTobbesModModel model)
{
TanuloLogic.TanuloTobbesModCustomValidation(ModelState, model);
if (ModelState.IsValid)
return TanuloLogic.SaveData(ClaimData.SelectedTanevID.Value, model);
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
public HttpResponseMessage PreValidation(TanuloTobbesModModel model)
{
TanuloLogic.TanuloTobbesModCustomValidation(ModelState, model);
if (ModelState.IsValid)
{
string warningMessage = TanuloLogic.ValidateOnSaveData(model);
if (!string.IsNullOrWhiteSpace(warningMessage))
{
return Request.CreateResponse(HttpStatusCode.BadRequest, warningMessage);
}
return TanuloLogic.SaveData(ClaimData.SelectedTanevID.Value, model);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
#endregion Növendék mentés/módosítás/törlés
#region Generálás
public HttpResponseMessage JelszoGeneralas(int userId, bool isGondviselo)
{
var result = TanuloLogic.JelszoGeneralas(userId, isGondviselo);
return Request.CreateResponse(HttpStatusCode.OK, result);
}
public System.Web.Mvc.JsonResult FelhasznalonevGeneralas([FromBody] FelhasznalonevGeneralasModel felhasznalonevGeneralasModel)
{
try
{
var result = new System.Web.Mvc.JsonResult { Data = TanuloLogic.FelhasznalonevGeneralas(felhasznalonevGeneralasModel) };
return result;
}
catch (UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottFelhasznalonevMarLetezik);
}
catch (UserNameExistsException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottFelhasznalonevMarLetezik);
}
}
#endregion
#region Növendék elérhetőség mentés/módosítás/törlés
public CimElerhetosegModel GetTanuloElerhetosegTel(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloElerhetosegTelById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveElerhetosegTel(CimElerhetosegModel model)
{
Kreta.Web.Classes.Utils.TelefonSzamValidation(ModelState, model.Telefon, model.TelefonTipus, TelefonszamTulajdonosEnum.Tanulo);
if (ModelState.IsValid)
{
try
{
var co = CimElerhetosegModel.ConvertModelToTanuloElerhetosegTelCO(model);
new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloElerhetosegTelMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException ex)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message);
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteElerhetosegTel([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloElerhetosegTelTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Telefonszam, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
public CimElerhetosegModel GetTanuloElerhetosegEmail(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloElerhetosegEmailById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveElerhetosegEmail(CimElerhetosegModel model)
{
if (ModelState.IsValid)
{
try
{
var co = CimElerhetosegModel.ConvertModelToTanuloElerhetosegEmailCO(model);
new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloElerhetosegEmailMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException ex)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message);
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteElerhetosegEmail([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloElerhetosegEmailTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.EmailCim, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
public CimElerhetosegModel GetTanuloElerhetosegCim(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloGondviseloCimById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveElerhetosegCim(CimElerhetosegModel model)
{
if (ModelState.IsValid)
{
try
{
var co = CimElerhetosegModel.ConvertModelToElerhetosegCimCO(model);
new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloGondviseloCimMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteElerhetosegCim([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloGondviseloCimTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Cim, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Növendék elérhetőség mentés/módosítás/törlés
#region Gondviselő mentés/módosítás/törlés
public TanuloModGondviseloModel GetTanuloGondviselo(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloGondviseloById(id);
return TanuloModGondviseloModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveGondviselo(TanuloModGondviseloModel model)
{
try
{
TanuloLogic.TanuloGondviseloSaveValidation(ModelState, model);
if (!ModelState.IsValid)
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
var co = TanuloModGondviseloModel.ConvertModelToCo(model);
var belepesList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloGondviseloMentese(co, ClaimData.IsSzirIntezmeny, ClaimData.KovTanevID);
var fileString = TanuloLogic.GondviseloFileGenerate(model.FileLetoltesSzukseges, belepesList);
var response = new { EmailErrors = belepesList.EmailErrors, FileString = fileString };
return Request.CreateResponse(HttpStatusCode.OK, response);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message) { UnHandledException = ex.InnerException };
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteGondviselo([FromBody] int id)
{
try
{
return TanuloLogic.DeleteTanulogondviselo(id);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Gondviselo, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Gondviselő mentés/módosítás/törlés
#region Gondviselő elérhetőség mentés/módosítás/törlés
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public CimElerhetosegModel GetGondviseloElerhetosegCim(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloGondviseloCimById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveGondviseloCim(CimElerhetosegModel model)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var customModelState = TanuloLogic.CheckGondviseloCimCustomValidation(ModelState, model);
if (model.TanulovalEgyezik)
{
var co = CimElerhetosegModel.ConvertModelToElerhetosegCimCO(model);
helper.TanuloGondviseloCimMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
if (customModelState.IsValid)
{
var co = CimElerhetosegModel.ConvertModelToElerhetosegCimCO(model);
helper.TanuloGondviseloCimMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, customModelState);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteGondviseloCim([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloGondviseloCimTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Cim, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Gondviselő elérhetőség mentés/módosítás/törlés
#region GridHelpers
public DataSourceResult GetOsztalyCsoportGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloDetailModel>(data);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetOsztalyCsoport(model.TanuloId, (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas, !model.MegNemAktivOsztalyok);
return ds.ToDataSourceResult();
}
public DataSourceResult GetTanultTantargyakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
DataSourceResult result = tanuloId.IsEntityId()
? helper.GetTanultTantargyak(tanuloId.Value, (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas).ToDataSourceResult()
: new DataSourceResult();
return result;
}
public DataSourceResult GetTanarokTantargyakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetTanarokTantargyak(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetGondviselokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviselok(int.Parse(id), true);
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetGondviselokCimGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviseloCimek(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetGondviselokCimDetailGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviseloCimekByGondviselo(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetOrarendiOrakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetOrarendiOrak(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetErtekelesekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetErtekelesek(int.Parse(id), (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
return ds.ToDataSourceResult();
}
public DataSourceResult GetMulasztasokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetMulasztasok(int.Parse(id), (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
return ds.ToDataSourceResult();
}
public DataSourceResult GetIgazolasokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
DataSourceResult result = tanuloId.IsEntityId()
? helper.GetIgazolasok(tanuloId.Value, (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas).ToDataSourceResult()
: new DataSourceResult();
return result;
}
public DataSourceResult GetFeljegyzesekHaviGrid(string id, string osztalycsoportId, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
var tanuloId = SDAConvert.ToNullableInt32(id);
var osztalyId = SDAConvert.ToNullableInt32(osztalycsoportId);
DataSourceResult result = tanuloId.IsEntityId() && osztalyId.IsEntityId()
? helper.GetFeljegyzesekHavi(tanuloId.Value, osztalyId.Value).ToDataSourceResult()
: new DataSourceResult();
return result;
}
public DataSourceResult GetElozmenyekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetElozmenyek(int.Parse(id), (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetElerhetosegCimGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetCim(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetElerhetosegTelGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetTelefonSzam(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetElerhetosegEmailGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetEmails(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetGondviseloUtolsoBelepesGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviseloUtolsoBelepes(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue)]
public DataSourceResult GetJogviszonySzuneteltetesGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
DataSourceResult result = tanuloId.IsEntityId()
? helper.GetJogviszonySzuneteltetes(tanuloId.Value, (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas).ToDataSourceResult()
: new DataSourceResult();
return result;
}
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetJogviszonyGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var co = helper.GetJogviszony(int.Parse(id));
return co.ToDataSourceResult(Converter.GridParameter(request));
}
#endregion GridHelpers
#region Export
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public JsonResult<List<ExportColumn>> GetExportColumnsTanulokLakcimmel()
{
return Json(TanuloLogic.GetColumnsTanulokLakcimmel());
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public JsonResult<List<ExportColumn>> GetExportColumns()
{
return Json(TanuloLogic.GetColumnsforExport());
}
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public DataSourceResult GetTanuloExportGrid(string searchFilter, string sortColumn, string sortDir)
{
return TanuloLogic.GetDataSetTanuloExport(searchFilter, sortColumn, sortDir).ToDataSourceResult();
}
#endregion Export
#region Tantárgy felosztas mentés/módosítás/törlés
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.AMImodul.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
public DataSourceResult GetTanuloCsoportosFoglalkozasai(int tanuloId, int osztalyId, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new FoglalkozasHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
var ds = helper.GetTanuloCsoportosFoglalkozasai(tanuloId, osztalyId, OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.AMImodul.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
public DataSourceResult GetTanuloEgyeniFoglalkozasai(int tanuloId, int osztalyId, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new FoglalkozasHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
var ds = helper.GetTanuloEgyeniFoglalkozasai(tanuloId, osztalyId, OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
return ds.ToDataSourceResult();
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage ValidateTantargyfelosztas(List<TanuloTantargyaiModel> model)
{
AmiTanuloLogic.ValidateTanuloTantargyaiModel(model);
return Request.CreateResponse(HttpStatusCode.OK, model, Configuration.Formatters.JsonFormatter);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveTantargyfelosztas(SaveTanuloTantargyaiModel list)
{
var osztalyId = list.OsztalyId;
var model = list.TanuloTantargyak;
var tanuloId = list.TanuloId;
var tantargyHelper = new TantargyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
foreach (var m in model)
{
if (!m.TantargyID.HasValue && m.AmiTantargyID.HasValue)
{
(int? tantargyId, int? amiTantargyId, string tantargyNev) = tantargyHelper.GetTantargyAMISablonhoz(m.AmiTantargyID.Value);
if (tantargyId.HasValue)
{
m.TantargyID = tantargyId;
if (!amiTantargyId.HasValue || amiTantargyId.Value != m.AmiTantargyID.Value)
{
tantargyHelper.UpdateAMITantargySablonId(tantargyId.Value, m.AmiTantargyID.Value);
}
}
else
{
var ujTantargyId = tantargyHelper.CreateAMITantargy(m.AmiTantargyID.Value, tantargyNev);
m.TantargyID = ujTantargyId;
}
}
}
var csoportos = model.Where(x => x.IsCsoportos);
var foglalkozasIdsInGrid = csoportos.Where(x => x.AmiFoglalkozasID.HasValue && x.AmiFoglalkozasID.Value > 0)
.Select(x => x.AmiFoglalkozasID.Value);
var foglakozasIdsInDB = new FoglalkozasHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloCsoportosFoglalkozasai(tanuloId, osztalyId, OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas).Tables[0].AsEnumerable()
.Where(x =>
x.Field<int?>("AmiFoglalkozasID").HasValue && x.Field<int?>("AmiFoglalkozasID").Value > 0
).Select(x => x.Field<int?>("AmiFoglalkozasID").Value);
var torlendoCsoportosIds = foglakozasIdsInDB.Except(foglalkozasIdsInGrid).Distinct();
var tantargyFelosztasHelper = new TantargyFelosztasHelper(ConnectionTypeExtensions.GetSessionConnectionType());
foreach (var id in torlendoCsoportosIds)
{
tantargyFelosztasHelper.DeleteFoglalkozasAmiTanulo(id);
}
foreach (var cs in csoportos)
{
if (!int.TryParse(cs.ID, out int id))
{
var foglalkozasId = new FoglalkozasHelper(ConnectionTypeExtensions.GetSessionConnectionType()).SaveFoglalkozas(cs.TantargyID.Value, cs.OsztalyId.Value, cs.TanarID.Value, cs.Oraszam, cs.OsszevontOra_BOOL);
cs.ID = foglalkozasId.ToString();
}
//csak akkor mentünk amifoglalkozást, ha mindent megadott
if (cs.AmiFotargy.IsEntityId() && cs.AmiTagozat.IsEntityId() && cs.AmiTantargyKotelezoseg.IsEntityId() || cs.AmiTantargyKotelezoseg.IsEntityId())
{
tantargyFelosztasHelper.InsertOrUpdateFoglalkozasAmiTanulo(cs.ToCo());
}
}
var egyeni = model.Where(x => !x.IsCsoportos);
var idsInGrid = egyeni.Select(x => int.TryParse(x.ID, out int id) ? id : (int?)null)
.Where(x => x.HasValue && x.Value > 0).Select(x => x.Value);
var idsInDB = new FoglalkozasHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloEgyeniFoglalkozasai(tanuloId, osztalyId, OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas).Tables[0].AsEnumerable()
.Select(x => x.Field<int>("ID"));
var torlendoEgyeniIds = idsInDB.Except(idsInGrid).Distinct();
foreach (var id in torlendoEgyeniIds)
{
tantargyFelosztasHelper.DeleteTargyFelosztas(id);
}
foreach (var e in egyeni)
{
tantargyFelosztasHelper.CreateOrUpdateEgyeniTantargyFelosztasForAMI(e.ToCo());
}
return Request.CreateResponse(HttpStatusCode.OK);
}
#endregion Tantárgy felosztas mentés/módosítás/törlés
[HttpGet]
public JsonResult<bool> HasGondviseloAlapertelmezettCim(int gondviseloId)
{
var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var letezikGondviseloAlapertelmezettCim = tanuloHelper.HasGondviseloAlapertelmezettCim(gondviseloId);
return Json(letezikGondviseloAlapertelmezettCim);
}
}
}

View file

@ -0,0 +1,121 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Exceptions;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Client.KozpontiKreta;
using Kreta.Core;
using Kreta.Core.Configuratiaton.Interface;
using Kreta.Core.Exceptions;
using Kreta.Core.KozpontiModels.MdszModels;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Framework.Entities;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Helper;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Models;
using Kreta.Web.Security;
using Newtonsoft.Json;
using SDA.DataProvider;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
public class BaseTanuloApiController : ApiController
{
public readonly IKozpontiKretaConfiguration kozpontiKretaConfiguration;
public BaseTanuloApiController(IKozpontiKretaConfiguration kozpontiKretaConfiguration)
{
this.kozpontiKretaConfiguration = kozpontiKretaConfiguration ?? throw new ArgumentNullException(nameof(kozpontiKretaConfiguration));
}
[NonAction]
public DataSourceResult GetTanuloGrid(string data, DataSourceRequest request, bool isFromSzervezet)
{
var (gridParameter, modelList) = GetGridData(data, request);
return modelList.ToDataSourceResult(gridParameter);
}
[NonAction]
public DataSourceResult GetFelmentesekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request, bool isFromSzervezet)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
var dualisKepzesTantargyId = new TantargyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetDualisKepzesTantargyId();
var result = tanuloId.IsEntityId()
? helper.GetTanulokFelmentesei(new List<int> { tanuloId.Value }, isFromSzervezet, dualisKepzesTantargyId: dualisKepzesTantargyId).ToDataSourceResult()
: new DataSourceResult();
return result;
}
[NonAction]
public HttpResponseMessage GetExport(string data, DataSourceRequest request, bool isFromSzervezet)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<TanuloGridModel>(isFromSzervezet ? TanuloGridModel.DualisTanuloExportAttributeId : TanuloGridModel.TanuloExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(TanuloResource.TanuloExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), !isFromSzervezet ? $"{TanuloResource.TanuloExportFileName}.{Constants.ImportExport.FileFormatXlsx}" : $"{TanuloResource.TanuloExportFileName}_{DateTime.Now:yyyy_MM_dd}.{Constants.ImportExport.FileFormatXlsx}");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
[NonAction]
public DataSourceResult GetOsztalyCsoportGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request, bool isFromSzervezet)
{
var model = JsonConvert.DeserializeObject<TanuloDetailModel>(data);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetOsztalyCsoport(model.TanuloId, model.FeladatKategoriaId, !model.MegNemAktivOsztalyok, isFromSzervezet);
return ds.ToDataSourceResult();
}
private (GridParameters gridParameter, List<TanuloGridModel> modelList) GetGridData(string data, DataSourceRequest request)
{
data = data.Replace("_", string.Empty);
var model = JsonConvert.DeserializeObject<TanuloSearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var coList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloItemCoList(model.ConvertModelToCo(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsActivTanev));
var modelList = new List<TanuloGridModel>();
foreach (var co in coList)
{
var gridModel = new TanuloGridModel(co);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
}
}

View file

@ -0,0 +1,65 @@
using System.Web.Http;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
public class CsoportTanuloiAdatokApiController : ApiController
{
public DataSourceResult GetTanuloiAlapadatokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloiAdatokModel>(data);
var tanuloId = model?.TanuloId;
var osztalyCsoportId = model?.OsztalyCsoportId;
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DataSourceResult result = tanuloId.IsEntityId() ?
helper.GetTanuloiAlapadatokGrid(tanuloId.Value, osztalyCsoportId.Value).ToDataSourceResult() :
new DataSourceResult();
return result;
}
public DataSourceResult GetTanuloiTanugyiadatokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloiAdatokModel>(data);
var tanuloId = model?.TanuloId;
var osztalyCsoportId = model?.OsztalyCsoportId;
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DataSourceResult result = tanuloId.IsEntityId() ?
helper.GetTanuloiTanugyiadatokGrid(tanuloId.Value, osztalyCsoportId.Value).ToDataSourceResult() :
new DataSourceResult();
return result;
}
public DataSourceResult GetTanuloiEgyebAdatokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloiAdatokModel>(data);
var tanuloId = model?.TanuloId;
var osztalyCsoportId = model?.OsztalyCsoportId;
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DataSourceResult result = tanuloId.IsEntityId() ?
helper.GetTanuloiEgyebAdatokGrid(tanuloId.Value, osztalyCsoportId).ToDataSourceResult() :
new DataSourceResult();
return result;
}
public DataSourceResult GetTanuloiGondviseloAdatokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloiAdatokModel>(data);
var tanuloId = model?.TanuloId;
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DataSourceResult result = tanuloId.IsEntityId() ?
helper.GetTanuloiGondviseloAdatokGrid(tanuloId.Value).ToDataSourceResult() :
new DataSourceResult();
return result;
}
}
}

View file

@ -0,0 +1,70 @@
using System;
using System.Data;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
public class CsoportTanuloiApiController : ApiController
{
public DataSourceResult GetCsoportTanuloiGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<CsoportTanuloiSearchModel>(data);
if (!model.OsztalyCsoport.HasValue)
{
return new DataSourceResult();
}
Enum.TryParse(new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportFeladatKategoria(model.OsztalyCsoport.Value).ToString(), out OktNevelesiKategoriaEnum osztalycsoportKategoria);
model.FeladatKategoriaId = (int)osztalycsoportKategoria;
var authorization = (IKretaAuthorization)Request.GetDependencyScope().GetService(typeof(IKretaAuthorization));
if (!authorization.IsValidCsoport(model.OsztalyCsoport.Value))
{
throw new StatusError(HttpStatusCode.Forbidden, ErrorResource.AFelhasznalonakNincsMegfeleloJogosultsagaAFunkcioHasznalatahoz);
}
bool? tankozelezett = null;
if (model.Tankotelezett.HasValue)
{
tankozelezett = model.Tankotelezett.Value == 1;
}
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
DataSet tanulok = helper.GetTanuloDataSetByOsztalyCsoportId(
model.OsztalyCsoport.Value,
model.FeladatKategoriaId,
model.Nev,
model.AnyjaSzuletesiNev,
model.SzuletesiHely,
model.SzuletesiIdoTol,
model.SzuletesiIdoIg,
model.OktatasiAzonosito,
tankozelezett,
model.Tanterv,
model.FeladatEllatasiHelyId);
return tanulok.ToDataSourceResult();
}
}
}

View file

@ -0,0 +1,318 @@
using System.Collections.Generic;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Configuratiaton.Interface;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Helper;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue,
KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue)]
[Attributes.KretaGlobalLanguageChangeApiActionFilter(LanguageCode = "hu-Dualis")]
public class DualisTanuloApiController : BaseTanuloApiController
{
public bool IsDualisKepzesEnabled => new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
public DualisTanuloApiController(IKozpontiKretaConfiguration kozpontiKretaConfiguration)
: base(kozpontiKretaConfiguration)
{
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetTanuloGrid(string data, DataSourceRequest request)
{
return GetTanuloGrid(data, request, IsDualisKepzesEnabled);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
return GetExport(data, request, IsDualisKepzesEnabled);
}
#region GridHelpers
[ApiRolePackageAuthorize(KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetOsztalyCsoportGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return GetOsztalyCsoportGrid(data, request, IsDualisKepzesEnabled);
}
[ApiRolePackageAuthorize(KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetTanultTantargyakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
var result = tanuloId.IsEntityId()
? helper.GetTanultTantargyak(tanuloId.Value, (int)OktNevelesiKategoriaEnum.NevelesOktatas).ToDataSourceResult()
: new DataSourceResult();
return result;
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetTanarokTantargyakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetTanarokTantargyak(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetGondviselokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetGondviselok(int.Parse(id), true);
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetGondviselokCimGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetGondviseloCimek(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetGondviselokCimDetailGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetGondviseloCimekByGondviselo(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetOrarendiOrakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetOrarendiOrak(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetErtekelesekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetErtekelesek(int.Parse(id), (int)OktNevelesiKategoriaEnum.NevelesOktatas);
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetMulasztasokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetMulasztasok(int.Parse(id), (int)OktNevelesiKategoriaEnum.NevelesOktatas);
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetIgazolasokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
var result = tanuloId.IsEntityId()
? helper.GetIgazolasok(tanuloId.Value, null).ToDataSourceResult()
: new DataSourceResult();
return result;
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetFeljegyzesekHaviGrid(string id, string osztalycsoportId, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
var tanuloId = SDAConvert.ToNullableInt32(id);
var osztalyId = SDAConvert.ToNullableInt32(osztalycsoportId);
var result = tanuloId.IsEntityId() && osztalyId.IsEntityId()
? helper.GetFeljegyzesekHavi(tanuloId.Value, osztalyId.Value).ToDataSourceResult()
: new DataSourceResult();
return result;
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetElozmenyekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetElozmenyek(int.Parse(id), null);
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetElerhetosegCimGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetCim(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetElerhetosegTelGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetTelefonSzam(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetFelmentesekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return GetFelmentesekGrid(id, request, IsDualisKepzesEnabled);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetElerhetosegEmailGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetEmails(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetKozossegiSzolgalatGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetKozossegiSzolgalat(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetGondviseloUtolsoBelepesGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request),
};
var ds = helper.GetGondviseloUtolsoBelepes(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetJogviszonySzuneteltetesGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
var result = tanuloId.IsEntityId()
? helper.GetJogviszonySzuneteltetes(tanuloId.Value, null).ToDataSourceResult()
: new DataSourceResult();
return result;
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetJogviszonyGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var co = helper.GetJogviszony(int.Parse(id));
return co.ToDataSourceResult(Converter.GridParameter(request));
}
#endregion GridHelpers
#region Export
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public JsonResult<List<ExportColumn>> GetExportColumnsTanulokLakcimmel()
{
return Json(TanuloLogic.GetColumnsTanulokLakcimmel());
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public JsonResult<List<ExportColumn>> GetExportColumns()
{
return Json(TanuloLogic.GetColumnsforExport());
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.IsLEPKezelo.ClaimValue)]
public JsonResult<List<ExportColumn>> GetExportColumnsLEP()
{
var items = new List<ExportColumn>
{
new ExportColumn() { Field = "TanuloNeve", Title = TanuloResource.Nev },
new ExportColumn() { Field = "Osztaly", Title = TanuloResource.Osztaly }
};
return Json(items);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetTanuloExportGrid(string searchFilter, string sortColumn, string sortDir)
{
return TanuloLogic.GetDataSetTanuloExport(searchFilter, sortColumn, sortDir).ToDataSourceResult();
}
#endregion Export
}
}

View file

@ -0,0 +1,869 @@
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Exceptions;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Framework.Entities;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Helper;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Models;
using Kreta.Web.Security;
using Newtonsoft.Json;
using SDA.DataProvider;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMITanuloApiController : ApiController
{
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public DataSourceResult GetTanuloGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetGridData(data, request);
return modelList.ToDataSourceResult(gridParameter);
}
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<TanuloGridModel>(TanuloGridModel.TanuloExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(TanuloResource.TanuloExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{TanuloResource.TanuloExportFileName}.xlsx");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<TanuloGridModel> modelList) GetGridData(string data, DataSourceRequest request)
{
data = data.Replace("_", string.Empty);
var model = JsonConvert.DeserializeObject<TanuloSearchModel>(data);
var co = model.ConvertModelToCo(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsActivTanev);
co.LekerdezesNapja = DateTime.Today;
var gridParameter = Converter.GridParameter(request);
var coList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloItemCoList(co);
var modelList = new List<TanuloGridModel>();
foreach (var item in coList)
{
var gridModel = new TanuloGridModel(item);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
#region Tanuló mentés/módosítás/törlés
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public HttpResponseMessage DeleteTanulo([FromBody] int tanuloId)
{
try
{
TanuloLogic.TanuloDelete(tanuloId);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (CannotBeDeletedException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
catch (EntityDeleteFailedException ex)
{
var tanuloAdatCO = TanuloLogic.GetTanuloAdatCO(tanuloId);
var entityName = BusinessLogic.Extensions.NameExtensions.GetNevSorrendben("F", tanuloAdatCO.Elotag, tanuloAdatCO.CsaladiNev, tanuloAdatCO.UtoNev);
var uzenet = string.Format(ErrorResource.TanuloNemTorolhetoKapcsolatMiatt, entityName, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.IsLEPKezelo.ClaimValue)]
public HttpResponseMessage DeleteJogviszonySzuneteltetes(JogviszonySzuneteltetesDeleteModel model)
{
try
{
if (model.IsJogviszonySzuneteltetese && model.GridCnt == 1)
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.JogviszonySzunetLegalabbEgyIdoszakKotelezo);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.DeleteJogviszonySzuneteltetes(model.Id.Value);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveJogviszonySzuneteltetes(JogviszonySzuneteltetesModel model)
{
try
{
if (model.JogviszonySzuneteltetesKezdete.Value > model.JogviszonySzuneteltetesVege.Value)
ModelState.AddModelError("JogviszonySzuneteltetes1", ErrorResource.JogviszonySzuneteltetes);
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanevData = tanevHelper.GetTanevInfo();
if (model.JogviszonySzuneteltetesKezdete.Value < tanevData.KezdoNap)
ModelState.AddModelError("JogviszonySzuneteltetes2", ErrorResource.JogviszonySzuneteltetesKezdeteTanevben);
if (model.JogviszonySzuneteltetesVege.Value > tanevData.UtolsoNap)
ModelState.AddModelError("JogviszonySzuneteltetes3", ErrorResource.JogviszonySzuneteltetesVegeTanevben);
if (ModelState.IsValid)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.SaveJogviszonySzuneteltetes(model.TanuloId.Value, model.OsztalyId, model.JogviszonySzuneteltetesKezdete.Value, model.JogviszonySzuneteltetesVege.Value, ClaimData.KovTanevID);
return Request.CreateResponse(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
catch (Exception e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public IHttpActionResult DeleteSelectedTanulo(List<int> idList)
{
return Json(new { Message = TanuloLogic.DeleteSelectedTanulo(idList) });
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveTanulo(TanuloModel model)
{
try
{
var felhasznaloiNevGeneralasModja = TanuloLogic.GetFelhasznaloiNevGeneralasModja(model);
TanuloLogic.TanuloCustomValidation(ModelState, model, felhasznaloiNevGeneralasModja, OktNevelesiKategoriaEnum.EGYMI);
if (ModelState.IsValid)
{
var response = TanuloLogic.TanuloMentese(model, felhasznaloiNevGeneralasModja);
return Request.CreateResponse(HttpStatusCode.OK, response);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
catch (Check4TValidacioExistsException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottFelhasznaloiAdatokkalMarLetezikFelhasznalo);
}
}
public HttpResponseMessage SaveData(TanuloTobbesModModel model)
{
TanuloLogic.TanuloTobbesModCustomValidation(ModelState, model);
if (ModelState.IsValid)
return TanuloLogic.SaveData(ClaimData.SelectedTanevID.Value, model);
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
public HttpResponseMessage PreValidation(TanuloTobbesModModel model)
{
TanuloLogic.TanuloTobbesModCustomValidation(ModelState, model);
if (ModelState.IsValid)
{
string warningMessage = TanuloLogic.ValidateOnSaveData(model);
if (!string.IsNullOrWhiteSpace(warningMessage))
{
return Request.CreateResponse(HttpStatusCode.BadRequest, warningMessage);
}
return TanuloLogic.SaveData(ClaimData.SelectedTanevID.Value, model);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
#endregion Tanuló mentés/módosítás/törlés
#region Generálás
public HttpResponseMessage JelszoGeneralas(int userId, bool isGondviselo)
{
var result = TanuloLogic.JelszoGeneralas(userId, isGondviselo);
return Request.CreateResponse(HttpStatusCode.OK, result);
}
public System.Web.Mvc.JsonResult FelhasznalonevGeneralas([FromBody] FelhasznalonevGeneralasModel felhasznalonevGeneralasModel)
{
try
{
var result = new System.Web.Mvc.JsonResult { Data = TanuloLogic.FelhasznalonevGeneralas(felhasznalonevGeneralasModel) };
return result;
}
catch (UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottFelhasznalonevMarLetezik);
}
catch (UserNameExistsException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottFelhasznalonevMarLetezik);
}
}
#endregion
#region Tanuló elérhetőség mentés/módosítás/törlés
public CimElerhetosegModel GetTanuloElerhetosegTel(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloElerhetosegTelById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveElerhetosegTel(CimElerhetosegModel model)
{
Kreta.Web.Classes.Utils.TelefonSzamValidation(ModelState, model.Telefon, model.TelefonTipus, TelefonszamTulajdonosEnum.Tanulo);
if (ModelState.IsValid)
{
try
{
var co = CimElerhetosegModel.ConvertModelToTanuloElerhetosegTelCO(model);
new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloElerhetosegTelMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException ex)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message);
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteElerhetosegTel([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloElerhetosegTelTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Telefonszam, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
public CimElerhetosegModel GetTanuloElerhetosegEmail(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloElerhetosegEmailById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveElerhetosegEmail(CimElerhetosegModel model)
{
if (ModelState.IsValid)
{
try
{
var co = CimElerhetosegModel.ConvertModelToTanuloElerhetosegEmailCO(model);
new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloElerhetosegEmailMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException ex)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message);
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteElerhetosegEmail([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloElerhetosegEmailTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.EmailCim, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
public CimElerhetosegModel GetTanuloElerhetosegCim(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloGondviseloCimById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveElerhetosegCim(CimElerhetosegModel model)
{
if (ModelState.IsValid)
{
try
{
var co = CimElerhetosegModel.ConvertModelToElerhetosegCimCO(model);
new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloGondviseloCimMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteElerhetosegCim([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloGondviseloCimTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Cim, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Tanuló elérhetőség mentés/módosítás/törlés
#region Közösségi szolgálat mentés/módosítás/törlés
public TanuloKozszolgModel GetTanuloKozSzolg(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetKozossegiSzolgalatbyId(id);
return TanuloKozszolgModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveKozszolg(TanuloKozszolgModel model)
{
if (ModelState.IsValid)
{
new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).KozossegiSzolgalatMentese(TanuloKozszolgModel.ConvertModelToCo(model));
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteKozszolg([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.KozossegiSzolgalatTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.KozossegiSzolgalat, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Közösségi szolgálat mentés/módosítás/törlés
#region Gondviselő mentés/módosítás/törlés
public TanuloModGondviseloModel GetTanuloGondviselo(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloGondviseloById(id);
return TanuloModGondviseloModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveGondviselo(TanuloModGondviseloModel model)
{
try
{
TanuloLogic.TanuloGondviseloSaveValidation(ModelState, model);
if (!ModelState.IsValid)
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
var co = TanuloModGondviseloModel.ConvertModelToCo(model);
var belepesList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloGondviseloMentese(co, ClaimData.IsSzirIntezmeny, ClaimData.KovTanevID);
var fileString = TanuloLogic.GondviseloFileGenerate(model.FileLetoltesSzukseges, belepesList);
var response = new { EmailErrors = belepesList.EmailErrors, FileString = fileString };
return Request.CreateResponse(HttpStatusCode.OK, response);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message) { UnHandledException = ex.InnerException };
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteGondviselo([FromBody] int id)
{
try
{
return TanuloLogic.DeleteTanulogondviselo(id);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Gondviselo, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Gondviselő mentés/módosítás/törlés
#region Gondviselő elérhetőség mentés/módosítás/törlés
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public CimElerhetosegModel GetGondviseloElerhetosegCim(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloGondviseloCimById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveGondviseloCim(CimElerhetosegModel model)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var customModelState = TanuloLogic.CheckGondviseloCimCustomValidation(ModelState, model);
if (model.TanulovalEgyezik)
{
var co = CimElerhetosegModel.ConvertModelToElerhetosegCimCO(model);
helper.TanuloGondviseloCimMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
if (customModelState.IsValid)
{
var co = CimElerhetosegModel.ConvertModelToElerhetosegCimCO(model);
helper.TanuloGondviseloCimMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, customModelState);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteGondviseloCim([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloGondviseloCimTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Cim, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Gondviselő elérhetőség mentés/módosítás/törlés
#region Felmentés mentés/módosítás/törlés
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveFelmentes(TanuloFelmentesModel model)
{
TanuloLogic.TanuloFelmentesCustomValidation(ModelState, model);
if (ModelState.IsValid)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var co = TanuloFelmentesModel.ConvertModelToCo(model);
if (co.IsKorabbiMulasztasokEllenorzese && co.Kezdete.Value < DateTime.Now && co.OraMentesites)
{
var mulasztasDataSet = helper.CheckModosuloKorabbiMulasztasok(co);
if (mulasztasDataSet.Tables[0].Rows.Count != 0)
{
return Request.CreateResponse(HttpStatusCode.OK, mulasztasDataSet.ToDataSourceResult(), Configuration.Formatters.JsonFormatter);
}
}
if (model.ID == 0)
{
foreach (var item in model.TantargyIdList)
{
co.TantargyId = int.Parse(item);
helper.TanuloFelmentesMentese(co, ClaimData.KovTanevID);
}
}
else
{
helper.TanuloFelmentesMentese(co, ClaimData.KovTanevID);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException e)
{
var error = new StatusError(HttpStatusCode.BadRequest, e.Message);
throw error;
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public TanuloFelmentesModel GetFelmentes(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloFelmentesById(id);
return TanuloFelmentesModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteFelmentes([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloFelmentesTorles(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Felmentes, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Felmentés mentés/módosítás/törlés
#region GridHelpers
public DataSourceResult GetOsztalyCsoportGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloDetailModel>(data);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetOsztalyCsoport(model.TanuloId, (int)OktNevelesiKategoriaEnum.EGYMI, !model.MegNemAktivOsztalyok);
return ds.ToDataSourceResult();
}
public DataSourceResult GetTanultTantargyakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
DataSourceResult result = tanuloId.IsEntityId()
? helper.GetTanultTantargyak(tanuloId.Value, (int)OktNevelesiKategoriaEnum.EGYMI).ToDataSourceResult()
: new DataSourceResult();
return result;
}
public DataSourceResult GetTanarokTantargyakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetTanarokTantargyak(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetGondviselokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviselok(int.Parse(id), true);
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetGondviselokCimGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviseloCimek(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetGondviselokCimDetailGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviseloCimekByGondviselo(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetOrarendiOrakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetOrarendiOrak(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetErtekelesekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetErtekelesek(int.Parse(id), (int)OktNevelesiKategoriaEnum.EGYMI);
return ds.ToDataSourceResult();
}
public DataSourceResult GetMulasztasokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetMulasztasok(int.Parse(id), (int)OktNevelesiKategoriaEnum.EGYMI);
return ds.ToDataSourceResult();
}
public DataSourceResult GetIgazolasokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
DataSourceResult result = tanuloId.IsEntityId()
? helper.GetIgazolasok(tanuloId.Value, null).ToDataSourceResult()
: new DataSourceResult();
return result;
}
public DataSourceResult GetFeljegyzesekHaviGrid(string id, string osztalycsoportId, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
var tanuloId = SDAConvert.ToNullableInt32(id);
var osztalyId = SDAConvert.ToNullableInt32(osztalycsoportId);
DataSourceResult result = tanuloId.IsEntityId() && osztalyId.IsEntityId()
? helper.GetFeljegyzesekHavi(tanuloId.Value, osztalyId.Value).ToDataSourceResult()
: new DataSourceResult();
return result;
}
public DataSourceResult GetElozmenyekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetElozmenyek(int.Parse(id), null);
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetElerhetosegCimGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetCim(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetElerhetosegTelGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetTelefonSzam(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetFelmentesekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
DataSourceResult result = tanuloId.IsEntityId()
? helper.GetTanulokFelmentesei(new List<int>() { tanuloId.Value }).ToDataSourceResult()
: new DataSourceResult();
return result;
}
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetElerhetosegEmailGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetEmails(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetKozossegiSzolgalatGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetKozossegiSzolgalat(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetGondviseloUtolsoBelepesGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviseloUtolsoBelepes(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue)]
public DataSourceResult GetJogviszonySzuneteltetesGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
DataSourceResult result = tanuloId.IsEntityId()
? helper.GetJogviszonySzuneteltetes(tanuloId.Value, (int)OktNevelesiKategoriaEnum.EGYMI).ToDataSourceResult()
: new DataSourceResult();
return result;
}
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetJogviszonyGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var co = helper.GetJogviszony(int.Parse(id));
return co.ToDataSourceResult(Converter.GridParameter(request));
}
#endregion GridHelpers
#region Export
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public JsonResult<List<ExportColumn>> GetExportColumnsTanulokLakcimmel()
{
return Json(TanuloLogic.GetColumnsTanulokLakcimmel());
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public JsonResult<List<ExportColumn>> GetExportColumns()
{
return Json(TanuloLogic.GetColumnsforExport());
}
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public DataSourceResult GetTanuloExportGrid(string searchFilter, string sortColumn, string sortDir)
{
return TanuloLogic.GetDataSetTanuloExport(searchFilter, sortColumn, sortDir).ToDataSourceResult();
}
#endregion Export
[HttpGet]
public JsonResult<bool> HasGondviseloAlapertelmezettCim(int gondviseloId)
{
var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var letezikGondviseloAlapertelmezettCim = tanuloHelper.HasGondviseloAlapertelmezettCim(gondviseloId);
return Json(letezikGondviseloAlapertelmezettCim);
}
}
}

View file

@ -0,0 +1,124 @@
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Text;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public class HetesekApiController : ApiController
{
public DataSourceResult GetHetesekGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<OsztalyTanuloiSearchModel>(data);
if (!model.OsztalyCsoport.HasValue)
{
return new DataSourceResult();
}
var authorization = (IKretaAuthorization)Request.GetDependencyScope().GetService(typeof(IKretaAuthorization));
if (!authorization.IsValidOsztaly(model.OsztalyCsoport.Value))
{
throw new StatusError(HttpStatusCode.Forbidden, ErrorResource.AFelhasznalonakNincsMegfeleloJogosultsagaAFunkcioHasznalatahoz);
}
var helper = new HetesekHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
var ds = helper.GetHetesek(model.OsztalyCsoport.Value);
return ds.ToDataSourceResult();
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage ValidateHetesek(List<HetesekModel> list)
{
ValidateHetesekModel(list);
return Request.CreateResponse(HttpStatusCode.OK, list, Configuration.Formatters.JsonFormatter);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteFutureHetesInOsztalyCsoport(int id)
{
new HetesekHelper(ConnectionTypeExtensions.GetSessionConnectionType()).DeleteFutureHetesInOsztalyCsoport(id);
return Request.CreateResponse(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveHetesek(List<HetesekModel> list)
{
var helper = new HetesekHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var osztalyCsoportId = list.FirstOrDefault().OsztalyCsoportId;
var hetesekCoList = list.ConvertAll(x => x.ToCo());
helper.SaveOrDeleteHetesekFeljegyzessel(hetesekCoList, osztalyCsoportId, ClaimData.FelhasznaloId);
return Request.CreateResponse(HttpStatusCode.OK);
}
private void ValidateHetesekModel(List<HetesekModel> list)
{
var helper = new HetesekHelper(ConnectionTypeExtensions.GetSessionConnectionType());
foreach (var model in list)
{
var errorMessage = new StringBuilder();
if (!string.IsNullOrWhiteSpace(model.Tanulok))
{
var tanuloIds = model.Tanulok.Split(',').Select(x => int.Parse(x)).ToList();
if (tanuloIds.Count > Constants.General.HetesekMaximalisSzama)
{
errorMessage.AppendFormat(ErrorResource.MaximumXHetesLehetAzYsorszamuHetnel, Constants.General.HetesekMaximalisSzama.ToString(), model.HetSorszam.ToString());
}
else
{
var tanulok = helper.GetHetSorszamokTanulokkal(model.OsztalyCsoportId, model.HetSorszam).Tables[0].AsEnumerable()
.Select(x => x.Field<int>("TanuloId")).ToList();
foreach (var tanuloId in tanuloIds)
{
if (!tanulok.Contains(tanuloId))
{
errorMessage.AppendFormat(ErrorResource.ATanuloNemTagjaAzOsztalynakASorszamuHeten, model.HetSorszam.ToString());
break;
}
}
}
}
if (errorMessage.Length > 0)
{
throw new StatusError(HttpStatusCode.BadRequest, errorMessage.ToString());
}
}
}
}
}

View file

@ -0,0 +1,868 @@
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Exceptions;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Framework.Entities;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Helper;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Models;
using Kreta.Web.Security;
using Newtonsoft.Json;
using SDA.DataProvider;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumTanuloApiController : ApiController
{
public DataSourceResult GetTanuloGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetGridData(data, request);
return modelList.ToDataSourceResult(gridParameter);
}
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<TanuloGridModel>(TanuloGridModel.TanuloExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(TanuloResource.TanuloExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{TanuloResource.TanuloExportFileName}.xlsx");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<TanuloGridModel> modelList) GetGridData(string data, DataSourceRequest request)
{
data = data.Replace("_", string.Empty);
var model = JsonConvert.DeserializeObject<TanuloSearchModel>(data);
var co = model.ConvertModelToCo(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsActivTanev);
co.LekerdezesNapja = DateTime.Today;
GridParameters gridParameter = Converter.GridParameter(request);
var coList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloItemCoList(co);
var modelList = new List<TanuloGridModel>();
foreach (var item in coList)
{
var gridModel = new TanuloGridModel(item);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
#region Tanuló mentés/módosítás/törlés
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public HttpResponseMessage DeleteTanulo([FromBody] int tanuloId)
{
try
{
TanuloLogic.TanuloDelete(tanuloId);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (CannotBeDeletedException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
catch (EntityDeleteFailedException ex)
{
var tanuloAdatCO = TanuloLogic.GetTanuloAdatCO(tanuloId);
var entityName = BusinessLogic.Extensions.NameExtensions.GetNevSorrendben("F", tanuloAdatCO.Elotag, tanuloAdatCO.CsaladiNev, tanuloAdatCO.UtoNev);
var uzenet = string.Format(ErrorResource.TanuloNemTorolhetoKapcsolatMiatt, entityName, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.IsLEPKezelo.ClaimValue)]
public HttpResponseMessage DeleteJogviszonySzuneteltetes(JogviszonySzuneteltetesDeleteModel model)
{
try
{
if (model.IsJogviszonySzuneteltetese && model.GridCnt == 1)
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.JogviszonySzunetLegalabbEgyIdoszakKotelezo);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.DeleteJogviszonySzuneteltetes(model.Id.Value);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveJogviszonySzuneteltetes(JogviszonySzuneteltetesModel model)
{
try
{
if (model.JogviszonySzuneteltetesKezdete.Value > model.JogviszonySzuneteltetesVege.Value)
ModelState.AddModelError("JogviszonySzuneteltetes1", ErrorResource.JogviszonySzuneteltetes);
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanevData = tanevHelper.GetTanevInfo();
if (model.JogviszonySzuneteltetesKezdete.Value < tanevData.KezdoNap)
ModelState.AddModelError("JogviszonySzuneteltetes2", ErrorResource.JogviszonySzuneteltetesKezdeteTanevben);
if (model.JogviszonySzuneteltetesVege.Value > tanevData.UtolsoNap)
ModelState.AddModelError("JogviszonySzuneteltetes3", ErrorResource.JogviszonySzuneteltetesVegeTanevben);
if (ModelState.IsValid)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.SaveJogviszonySzuneteltetes(model.TanuloId.Value, model.OsztalyId, model.JogviszonySzuneteltetesKezdete.Value, model.JogviszonySzuneteltetesVege.Value, ClaimData.KovTanevID);
return Request.CreateResponse(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
catch (Exception e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public IHttpActionResult DeleteSelectedTanulo(List<int> idList)
{
return Json(new { Message = TanuloLogic.DeleteSelectedTanulo(idList) });
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveTanulo(TanuloModel model)
{
try
{
var felhasznaloiNevGeneralasModja = TanuloLogic.GetFelhasznaloiNevGeneralasModja(model);
TanuloLogic.TanuloCustomValidation(ModelState, model, felhasznaloiNevGeneralasModja, OktNevelesiKategoriaEnum.Kollegium);
if (ModelState.IsValid)
{
var response = TanuloLogic.TanuloMentese(model, felhasznaloiNevGeneralasModja);
return Request.CreateResponse(HttpStatusCode.OK, response);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
catch (Check4TValidacioExistsException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottFelhasznaloiAdatokkalMarLetezikFelhasznalo);
}
}
public HttpResponseMessage SaveData(TanuloTobbesModModel model)
{
TanuloLogic.TanuloTobbesModCustomValidation(ModelState, model);
if (ModelState.IsValid)
return TanuloLogic.SaveData(ClaimData.SelectedTanevID.Value, model);
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
public HttpResponseMessage PreValidation(TanuloTobbesModModel model)
{
TanuloLogic.TanuloTobbesModCustomValidation(ModelState, model);
if (ModelState.IsValid)
{
string warningMessage = TanuloLogic.ValidateOnSaveData(model);
if (!string.IsNullOrWhiteSpace(warningMessage))
{
return Request.CreateResponse(HttpStatusCode.BadRequest, warningMessage);
}
return TanuloLogic.SaveData(ClaimData.SelectedTanevID.Value, model);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
#endregion Tanuló mentés/módosítás/törlés
#region Generálás
public HttpResponseMessage JelszoGeneralas(int userId, bool isGondviselo)
{
var result = TanuloLogic.JelszoGeneralas(userId, isGondviselo);
return Request.CreateResponse(HttpStatusCode.OK, result);
}
public System.Web.Mvc.JsonResult FelhasznalonevGeneralas([FromBody] FelhasznalonevGeneralasModel felhasznalonevGeneralasModel)
{
try
{
var result = new System.Web.Mvc.JsonResult { Data = TanuloLogic.FelhasznalonevGeneralas(felhasznalonevGeneralasModel) };
return result;
}
catch (UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottFelhasznalonevMarLetezik);
}
catch (UserNameExistsException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottFelhasznalonevMarLetezik);
}
}
#endregion
#region Tanuló elérhetőség mentés/módosítás/törlés
public CimElerhetosegModel GetTanuloElerhetosegTel(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloElerhetosegTelById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveElerhetosegTel(CimElerhetosegModel model)
{
Kreta.Web.Classes.Utils.TelefonSzamValidation(ModelState, model.Telefon, model.TelefonTipus, TelefonszamTulajdonosEnum.Tanulo);
if (ModelState.IsValid)
{
try
{
var co = CimElerhetosegModel.ConvertModelToTanuloElerhetosegTelCO(model);
new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloElerhetosegTelMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException ex)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message);
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteElerhetosegTel([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloElerhetosegTelTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Telefonszam, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
public CimElerhetosegModel GetTanuloElerhetosegEmail(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloElerhetosegEmailById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveElerhetosegEmail(CimElerhetosegModel model)
{
if (ModelState.IsValid)
{
try
{
var co = CimElerhetosegModel.ConvertModelToTanuloElerhetosegEmailCO(model);
new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloElerhetosegEmailMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException ex)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message);
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteElerhetosegEmail([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloElerhetosegEmailTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.EmailCim, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
public CimElerhetosegModel GetTanuloElerhetosegCim(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloGondviseloCimById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveElerhetosegCim(CimElerhetosegModel model)
{
if (ModelState.IsValid)
{
try
{
var co = CimElerhetosegModel.ConvertModelToElerhetosegCimCO(model);
new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloGondviseloCimMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteElerhetosegCim([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloGondviseloCimTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Cim, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Tanuló elérhetőség mentés/módosítás/törlés
#region Közösségi szolgálat mentés/módosítás/törlés
public TanuloKozszolgModel GetTanuloKozSzolg(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetKozossegiSzolgalatbyId(id);
return TanuloKozszolgModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveKozszolg(TanuloKozszolgModel model)
{
if (ModelState.IsValid)
{
new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).KozossegiSzolgalatMentese(TanuloKozszolgModel.ConvertModelToCo(model));
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteKozszolg([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.KozossegiSzolgalatTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.KozossegiSzolgalat, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Közösségi szolgálat mentés/módosítás/törlés
#region Gondviselő mentés/módosítás/törlés
public TanuloModGondviseloModel GetTanuloGondviselo(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloGondviseloById(id);
return TanuloModGondviseloModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveGondviselo(TanuloModGondviseloModel model)
{
try
{
TanuloLogic.TanuloGondviseloSaveValidation(ModelState, model);
if (!ModelState.IsValid)
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
var co = TanuloModGondviseloModel.ConvertModelToCo(model);
var belepesList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).TanuloGondviseloMentese(co, ClaimData.IsSzirIntezmeny, ClaimData.KovTanevID);
var fileString = TanuloLogic.GondviseloFileGenerate(model.FileLetoltesSzukseges, belepesList);
var response = new { EmailErrors = belepesList.EmailErrors, FileString = fileString };
return Request.CreateResponse(HttpStatusCode.OK, response);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message) { UnHandledException = ex.InnerException };
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteGondviselo([FromBody] int id)
{
try
{
return TanuloLogic.DeleteTanulogondviselo(id);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Gondviselo, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Gondviselő mentés/módosítás/törlés
#region Gondviselő elérhetőség mentés/módosítás/törlés
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public CimElerhetosegModel GetGondviseloElerhetosegCim(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloGondviseloCimById(id);
return CimElerhetosegModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveGondviseloCim(CimElerhetosegModel model)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var customModelState = TanuloLogic.CheckGondviseloCimCustomValidation(ModelState, model);
if (model.TanulovalEgyezik)
{
var co = CimElerhetosegModel.ConvertModelToElerhetosegCimCO(model);
helper.TanuloGondviseloCimMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
if (customModelState.IsValid)
{
var co = CimElerhetosegModel.ConvertModelToElerhetosegCimCO(model);
helper.TanuloGondviseloCimMentese(co, ClaimData.KovTanevID);
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, customModelState);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteGondviseloCim([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloGondviseloCimTorlese(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Cim, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Gondviselő elérhetőség mentés/módosítás/törlés
#region Felmentés mentés/módosítás/törlés
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveFelmentes(TanuloFelmentesModel model)
{
TanuloLogic.TanuloFelmentesCustomValidation(ModelState, model);
if (ModelState.IsValid)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var co = TanuloFelmentesModel.ConvertModelToCo(model);
if (co.IsKorabbiMulasztasokEllenorzese && co.Kezdete.Value < DateTime.Now && co.OraMentesites)
{
var mulasztasDataSet = helper.CheckModosuloKorabbiMulasztasok(co);
if (mulasztasDataSet.Tables[0].Rows.Count != 0)
{
return Request.CreateResponse(HttpStatusCode.OK, mulasztasDataSet.ToDataSourceResult(), Configuration.Formatters.JsonFormatter);
}
}
if (model.ID == 0)
{
foreach (var item in model.TantargyIdList)
{
co.TantargyId = int.Parse(item);
helper.TanuloFelmentesMentese(co, ClaimData.KovTanevID);
}
}
else
{
helper.TanuloFelmentesMentese(co, ClaimData.KovTanevID);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException e)
{
var error = new StatusError(HttpStatusCode.BadRequest, e.Message);
throw error;
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public TanuloFelmentesModel GetFelmentes(int id)
{
var co = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloFelmentesById(id);
return TanuloFelmentesModel.ConvertCoToModel(co);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteFelmentes([FromBody] int id)
{
try
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.TanuloFelmentesTorles(id);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = string.Format(ErrorResource.NemTorolhetoKapcsolatMiatt, TanuloResource.Felmentes, ex.ConnectionErrorMessage);
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
}
#endregion Felmentés mentés/módosítás/törlés
#region GridHelpers
public DataSourceResult GetOsztalyCsoportGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloDetailModel>(data);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetOsztalyCsoport(model.TanuloId, (int)OktNevelesiKategoriaEnum.Kollegium, !model.MegNemAktivOsztalyok);
return ds.ToDataSourceResult();
}
public DataSourceResult GetTanultTantargyakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
DataSourceResult result = tanuloId.IsEntityId()
? helper.GetTanultTantargyak(tanuloId.Value, (int)OktNevelesiKategoriaEnum.Kollegium).ToDataSourceResult()
: new DataSourceResult();
return result;
}
public DataSourceResult GetTanarokTantargyakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetTanarokTantargyak(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetGondviselokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviselok(int.Parse(id), true);
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetGondviselokCimGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviseloCimek(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetGondviselokCimDetailGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviseloCimekByGondviselo(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetOrarendiOrakGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetOrarendiOrak(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetErtekelesekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetErtekelesek(int.Parse(id), (int)OktNevelesiKategoriaEnum.Kollegium);
return ds.ToDataSourceResult();
}
public DataSourceResult GetMulasztasokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetMulasztasok(int.Parse(id), (int)OktNevelesiKategoriaEnum.Kollegium);
return ds.ToDataSourceResult();
}
public DataSourceResult GetIgazolasokGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
DataSourceResult result = tanuloId.IsEntityId()
? helper.GetIgazolasok(tanuloId.Value, null).ToDataSourceResult()
: new DataSourceResult();
return result;
}
public DataSourceResult GetFeljegyzesekHaviGrid(string id, string osztalycsoportId, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
var tanuloId = SDAConvert.ToNullableInt32(id);
var osztalyId = SDAConvert.ToNullableInt32(osztalycsoportId);
DataSourceResult result = tanuloId.IsEntityId() && osztalyId.IsEntityId()
? helper.GetFeljegyzesekHavi(tanuloId.Value, osztalyId.Value).ToDataSourceResult()
: new DataSourceResult();
return result;
}
public DataSourceResult GetElozmenyekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetElozmenyek(int.Parse(id), null);
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetElerhetosegCimGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetCim(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetElerhetosegTelGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetTelefonSzam(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetFelmentesekGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
DataSourceResult result = tanuloId.IsEntityId()
? helper.GetTanulokFelmentesei(new List<int> { tanuloId.Value }).ToDataSourceResult()
: new DataSourceResult();
return result;
}
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetElerhetosegEmailGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetEmails(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetKozossegiSzolgalatGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetKozossegiSzolgalat(int.Parse(id));
return ds.ToDataSourceResult();
}
public DataSourceResult GetGondviseloUtolsoBelepesGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetGondviseloUtolsoBelepes(int.Parse(id));
return ds.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue)]
public DataSourceResult GetJogviszonySzuneteltetesGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
var tanuloId = SDAConvert.ToNullableInt32(id);
DataSourceResult result = tanuloId.IsEntityId()
? helper.GetJogviszonySzuneteltetes(tanuloId.Value, (int)OktNevelesiKategoriaEnum.Kollegium).ToDataSourceResult()
: new DataSourceResult();
return result;
}
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue)]
public DataSourceResult GetJogviszonyGrid(string id, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var co = helper.GetJogviszony(int.Parse(id));
return co.ToDataSourceResult(Converter.GridParameter(request));
}
#endregion GridHelpers
#region Export
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public JsonResult<List<ExportColumn>> GetExportColumnsTanulokLakcimmel()
{
return Json(TanuloLogic.GetColumnsTanulokLakcimmel());
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public JsonResult<List<ExportColumn>> GetExportColumns()
{
return Json(TanuloLogic.GetColumnsforExport());
}
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public DataSourceResult GetTanuloExportGrid(string searchFilter, string sortColumn, string sortDir)
{
return TanuloLogic.GetDataSetTanuloExport(searchFilter, sortColumn, sortDir).ToDataSourceResult();
}
#endregion Export
[HttpGet]
public JsonResult<bool> HasGondviseloAlapertelmezettCim(int gondviseloId)
{
var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var letezikGondviseloAlapertelmezettCim = tanuloHelper.HasGondviseloAlapertelmezettCim(gondviseloId);
return Json(letezikGondviseloAlapertelmezettCim);
}
}
}

View file

@ -0,0 +1,65 @@
using System.Web.Http;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public class OsztalyTanuloiAdatokApiController : ApiController
{
public DataSourceResult GetTanuloiAlapadatokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloiAdatokModel>(data);
var tanuloId = model?.TanuloId;
var osztalyCsoportId = model?.OsztalyCsoportId;
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DataSourceResult result = tanuloId.IsEntityId() ?
helper.GetTanuloiAlapadatokGrid(tanuloId.Value, osztalyCsoportId.Value).ToDataSourceResult() :
new DataSourceResult();
return result;
}
public DataSourceResult GetTanuloiTanugyiadatokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloiAdatokModel>(data);
var tanuloId = model?.TanuloId;
var osztalyCsoportId = model?.OsztalyCsoportId;
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DataSourceResult result = tanuloId.IsEntityId() ?
helper.GetTanuloiTanugyiadatokGrid(tanuloId.Value, osztalyCsoportId.Value).ToDataSourceResult() :
new DataSourceResult();
return result;
}
public DataSourceResult GetTanuloiEgyebAdatokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloiAdatokModel>(data);
var tanuloId = model?.TanuloId;
var osztalyCsoportId = model?.OsztalyCsoportId;
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DataSourceResult result = tanuloId.IsEntityId() ?
helper.GetTanuloiEgyebAdatokGrid(tanuloId.Value, osztalyCsoportId).ToDataSourceResult() :
new DataSourceResult();
return result;
}
public DataSourceResult GetTanuloiGondviseloAdatokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloiAdatokModel>(data);
var tanuloId = model?.TanuloId;
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DataSourceResult result = tanuloId.IsEntityId() ?
helper.GetTanuloiGondviseloAdatokGrid(tanuloId.Value).ToDataSourceResult() :
new DataSourceResult();
return result;
}
}
}

View file

@ -0,0 +1,65 @@
using System.Data;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public class OsztalyTanuloiApiController : ApiController
{
public DataSourceResult GetOsztalyTanuloiGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<OsztalyTanuloiSearchModel>(data);
if (!model.OsztalyCsoport.HasValue)
{
return new DataSourceResult();
}
var authorization = (IKretaAuthorization)Request.GetDependencyScope().GetService(typeof(IKretaAuthorization));
if (!authorization.IsValidOsztaly(model.OsztalyCsoport.Value))
{
throw new StatusError(HttpStatusCode.Forbidden, ErrorResource.AFelhasznalonakNincsMegfeleloJogosultsagaAFunkcioHasznalatahoz);
}
bool? tankozelezett = null;
if (model.Tankotelezett.HasValue)
{
tankozelezett = model.Tankotelezett.Value == 1;
}
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
DataSet tanulok = helper.GetTanuloDataSetByOsztalyCsoportId(
model.OsztalyCsoport.Value,
model.FeladatKategoriaId,
model.Nev,
model.AnyjaSzuletesiNev,
model.SzuletesiHely,
model.SzuletesiIdoTol,
model.SzuletesiIdoIg,
model.OktatasiAzonosito,
tankozelezett,
model.Tanterv,
model.FeladatEllatasiHelyId);
return tanulok.ToDataSourceResult();
}
}
}

View file

@ -0,0 +1,39 @@
using System;
using System.Collections.Generic;
using System.Web.Http;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[ApiRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public class OsztalyTanuloiGondviselokApiController : ApiController
{
public DataSourceResult GetOsztalyTanuloiGondviselokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<OsztalyTanuloiGondviselokSearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var coList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyTanuloiGondviselokCoList(model.ConvertToCo(), ClaimData.IsSzuperOsztalyfonok, ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.Evfolyamfelelos.ClaimValue));
var modelList = new List<OsztalyokTanuloiGondviselokGridModel>();
foreach (var co in coList)
{
var gridModel = new OsztalyokTanuloiGondviselokGridModel(co);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,282 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Client.KGR;
using Kreta.Core;
using Kreta.Enums;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Helper;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class SzakkepzesiJuttatasokApiController : ApiController
{
private readonly IKGRClient kgrClient;
public SzakkepzesiJuttatasokApiController(IKGRClient kgrClient)
{
this.kgrClient = kgrClient ?? throw new ArgumentNullException(nameof(kgrClient));
}
public DataSourceResult GetTanuloSzakkepzesiOsztondijGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetTanuloSzakkepzesiOsztondijGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
return modelList.ToDataSourceResult(gridParameter);
}
private (GridParameters gridParameter, List<TanuloSzakkepzesiOsztondijGridModel> modelList) GetTanuloSzakkepzesiOsztondijGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloSzakkepzesiOsztondijSearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var keresesCo = model.ConvertModelToCo();
keresesCo.FeladatKategoriaId = OktNevelesiKategoriaEnum.NevelesOktatas.AsInt();
keresesCo.LekerdezesNapja = DateTime.Today;
var coList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSzakkepzesiOsztondijCoList(keresesCo);
var modelList = new List<TanuloSzakkepzesiOsztondijGridModel>();
foreach (var co in coList)
{
var gridModel = new TanuloSzakkepzesiOsztondijGridModel(co);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
public DataSourceResult GetTanuloEgyszeriPalyakezdesiGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetEgyszeriPalyakezdesiJuttatasGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
return modelList.ToDataSourceResult(gridParameter);
}
public HttpResponseMessage GetSzakkepzesiOsztondijExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetTanuloSzakkepzesiOsztondijGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<TanuloSzakkepzesiOsztondijGridModel>(TanuloSzakkepzesiOsztondijGridModel.SzakkepzesiOsztondijExportAttributeId);
var memoryStream = SzakkepzesiJuttatasokLogic.GetSzakkepzesiOszetondijExport(SzakkepzesiJuttatasokResource.ExportSzakkepzesiOsztondijSheetName, simpleExportColumnCos, modelList);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{SzakkepzesiJuttatasokResource.ExportTanuloSzakkepzesiOsztondijFilename}{DateTime.Now:yyyy_MM_dd_HHmm}{SzakkepzesiJuttatasokResource.ExportTanuloFileExtension}");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
public HttpResponseMessage GetEgyszeriPalyakezdesiJuttatasExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetEgyszeriPalyakezdesiJuttatasGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<TanuloEgyszeriPalyakezdesiJuttatasGridModel>(TanuloSzakkepzesiOsztondijGridModel.EgyszeriPalyakezdesiJuttatasExportAttributeId);
var memoryStream = SzakkepzesiJuttatasokLogic.GetEgyszeriPalyakezdesiJuttatasExport(SzakkepzesiJuttatasokResource.ExportEgyszeriPalyakezdesiJuttatasSheetName, simpleExportColumnCos, modelList);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{SzakkepzesiJuttatasokResource.ExportTanuloEgyszeriPalyakezdesiJutattasFilename}{DateTime.Now:yyyy_MM_dd_HHmm}{SzakkepzesiJuttatasokResource.ExportTanuloFileExtension}");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<TanuloEgyszeriPalyakezdesiJuttatasGridModel> modelList) GetEgyszeriPalyakezdesiJuttatasGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloEgyszeriPalyakezdesiJuttatasSearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var keresesCo = model.ConvertModelToCo();
keresesCo.FeladatKategoriaId = OktNevelesiKategoriaEnum.NevelesOktatas.AsInt();
keresesCo.LekerdezesNapja = DateTime.Today;
var coList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetEgyszeriPalyakezdesiJuttatasCoList(keresesCo);
var modelList = new List<TanuloEgyszeriPalyakezdesiJuttatasGridModel>();
foreach (var co in coList)
{
var gridModel = new TanuloEgyszeriPalyakezdesiJuttatasGridModel(co);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
public DataSourceResult GetTanuloApaczaiIgenylesekGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var (gridParameter, modelList) = GetApaczaiIgenylesekGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
return modelList.ToDataSourceResult(gridParameter);
}
public HttpResponseMessage GetApaczaiIgenylesekExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetApaczaiIgenylesekGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<TanuloApaczaiOsztondijIgenylesekGridModel>(TanuloApaczaiOsztondijBaseGridModel.ApaczaiIgenylesekExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(SzakkepzesiJuttatasokResource.ExportApaczaiIgenylesekSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{SzakkepzesiJuttatasokResource.ExportApaczaiIgenylesekFilename}{DateTime.Now:yyyy_MM_dd_HHmm}{SzakkepzesiJuttatasokResource.ExportTanuloFileExtension}");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<TanuloApaczaiOsztondijIgenylesekGridModel> modelList) GetApaczaiIgenylesekGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloApaczaiOsztondijIgenylesekSearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var coList = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetIgenylesekCoList(kgrClient, model.ConvertToCo(), ClaimData.IntezmenyGuid.Value);
var modelList = new List<TanuloApaczaiOsztondijIgenylesekGridModel>();
foreach (var co in coList)
{
var gridModel = new TanuloApaczaiOsztondijIgenylesekGridModel(co);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
public DataSourceResult GetTanuloApaczaiTanuloiListaGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var (gridParameter, modelList) = GetApaczaiTanuloiListaGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
return modelList.ToDataSourceResult(gridParameter);
}
public HttpResponseMessage GetApaczaiTanuloiListaExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetApaczaiTanuloiListaGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<TanuloApaczaiOsztondijTanuloiListaGridModel>(TanuloApaczaiOsztondijBaseGridModel.ApaczaiTanuloiListaExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(SzakkepzesiJuttatasokResource.ExportApaczaiTanuloiListaSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{SzakkepzesiJuttatasokResource.ExportApaczaiTanuloiListaFilename}{DateTime.Now:yyyy_MM_dd_HHmm}{SzakkepzesiJuttatasokResource.ExportTanuloFileExtension}");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<TanuloApaczaiOsztondijTanuloiListaGridModel> modelList) GetApaczaiTanuloiListaGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloApaczaiOsztondijTanuloiListaSearchModel>(data);
var keresesCo = model.ConvertModelToCo();
keresesCo.FeladatKategoriaId = OktNevelesiKategoriaEnum.NevelesOktatas.AsInt();
keresesCo.LekerdezesNapja = DateTime.Today;
var gridParameter = Converter.GridParameter(request);
var coList = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloiListaCoList(kgrClient, keresesCo, ClaimData.IntezmenyGuid.Value);
var modelList = new List<TanuloApaczaiOsztondijTanuloiListaGridModel>();
modelList.AddRange(coList.Select(co => new TanuloApaczaiOsztondijTanuloiListaGridModel(co)));
return (gridParameter, modelList);
}
[ApiRolePackageDenyAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetTanuloApaczaiKifizetesekGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetApaczaiKifizetesekGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
return modelList.ToDataSourceResult(gridParameter);
}
[ApiRolePackageDenyAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public HttpResponseMessage GetApaczaiKifizetesekExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetApaczaiKifizetesekGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<TanuloApaczaiOsztondijKifizetesekGridModel>(TanuloApaczaiOsztondijBaseGridModel.ApaczaiKifizetesekExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(SzakkepzesiJuttatasokResource.ExportApaczaiKifizetésekSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{SzakkepzesiJuttatasokResource.ExportApaczaiKifizetesekFilename}{DateTime.Now:yyyy_MM_dd_HHmm}{SzakkepzesiJuttatasokResource.ExportTanuloFileExtension}");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<TanuloApaczaiOsztondijKifizetesekGridModel> modelList) GetApaczaiKifizetesekGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloApaczaiOsztondijKifizetesekSearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var coList = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetKifizetesekCoList(kgrClient, model.ConvertToCo());
var modelList = new List<TanuloApaczaiOsztondijKifizetesekGridModel>();
foreach (var co in coList)
{
var gridModel = new TanuloApaczaiOsztondijKifizetesekGridModel(co);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
}
}

View file

@ -0,0 +1,30 @@
using System.Data;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue)]
public class TanarNemTanitottTanulokApiController : ApiController
{
public DataSourceResult GetTanarNemTanitottTanulokGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanarNemTanitottTanulokSearchModel>(data);
var helper = new TanarHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
DataSet ds = helper.GetTanarNemTanitottTanulok(model.OsztalyCsoportID.HasValue ? model.OsztalyCsoportID : null);
return ds.ToDataSourceResult();
}
}
}

View file

@ -0,0 +1,35 @@
using System.Data;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue)]
public class TanarTanitottTanulokApiController : ApiController
{
public DataSourceResult GetTanarTanitottTanulokGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanarTanitottTanulokSearchModel>(data);
var helper = new TanarHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
DataSet ds = helper.GetTanarTanulok(
model.Foglalkozas,
model.FoglalkozasTipus,
model.CsakBukasraAllok ?? false,
model.FeladatKategoriaId
);
return ds.ToDataSourceResult();
}
}
}

View file

@ -0,0 +1,134 @@
using System;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Client.KGR;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Tanulo.ClaimValue)]
public class TanuloApaczaiApiController : ApiController
{
private readonly IKGRClient _kgrClient;
private readonly IKretaAuthorization _authorization;
public TanuloApaczaiApiController(IKGRClient kgrClient, IKretaAuthorization authorization)
{
_kgrClient = kgrClient ?? throw new ArgumentNullException(nameof(kgrClient));
_authorization = authorization ?? throw new ArgumentNullException(nameof(authorization));
}
[HttpPost]
public HttpResponseMessage CreatePalyazat(TanuloApaczaiPalyazatBenyujtasContentModel model)
{
if (!_authorization.IsValidTanuloApaczai() && DateTime.Now > Core.Constants.ApaczaiVegeDatum)
{
throw new StatusError(HttpStatusCode.Forbidden, ErrorResource.NincsJogaAzOldalMegtekintesehez);
}
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
var intezmenyHelper = new IntezmenyHelper(connectionType);
var intezmenyAdatok = intezmenyHelper.GetIntezmenyiAdatok();
var co = model.ConvertToCo();
co.FenntartoAzonosito = intezmenyAdatok.FenntartoAzonosito;
co.FenntartoNev = "-";
co.IntezmenyEgyediAzonosito = intezmenyAdatok.IntezmenyGuid;
co.IntezmenyNev = intezmenyAdatok.Nev;
co.IntezmenyAzonosito = intezmenyAdatok.IntezmenyAzonosito;
co.IdpEgyediAzonosito = ClaimData.FelhasznaloIdpEgyediAzonosito;
co.ModositoId = ClaimData.FelhasznaloId;
co.ModositoNev = ClaimData.FelhasznaloNev;
if (model.AtlagokModel.PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve || model.AtlagokModel.PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve)
{
try
{
var helper = new TanuloApaczaiHelper(connectionType);
var kgrRequestModel = helper.GetApaczaiPalyazatFelvetelRequest(co, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater);
if (!helper.ValidateTanuloMentor(kgrRequestModel))
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.PalyazatbenyujtasTiltottMentorAdatHiany);
}
if (helper.PalyazatAdategyeztetes(_kgrClient, kgrRequestModel))
{
return new HttpResponseMessage { StatusCode = HttpStatusCode.OK };
}
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.SikertelenApaczaiPalyazatBenyujtas);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, $"{ErrorResource.SikertelenApaczaiPalyazatBenyujtas} ({ex.Message})");
}
}
try
{
var helper = new TanuloApaczaiHelper(connectionType);
var kgrRequestModel = helper.GetApaczaiPalyazatFelvetelRequest(co, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater);
if(!helper.ValidateTanuloMentor(kgrRequestModel))
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.PalyazatbenyujtasTiltottMentorAdatHiany);
}
if (helper.CreatePalyazat(_kgrClient, kgrRequestModel))
{
return new HttpResponseMessage { StatusCode = HttpStatusCode.OK };
}
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.SikertelenApaczaiPalyazatBenyujtas);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, $"{ErrorResource.SikertelenApaczaiPalyazatBenyujtas} ({ex.Message})");
}
}
[HttpGet]
public HttpResponseMessage GetPalyazatVisszavonas()
{
try
{
if (new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetPalyazatVisszavonas(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito))
{
return new HttpResponseMessage { StatusCode = HttpStatusCode.OK };
}
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.SikertelenApaczaiPalyazatVisszavonas);
}
catch (Exception ex)
{
if (ex.Data["ApaczaiHiba"] != null)
{
throw new StatusError(HttpStatusCode.BadRequest, null) { Json = ex.Data["ApaczaiHiba"], };
}
throw new StatusError(HttpStatusCode.BadRequest, ex.Message, ex);
}
}
[HttpPost]
public HttpResponseMessage Fellebbezes([FromBody] string indoklas)
{
if (indoklas.Length > Core.Constants.MinMaxValues.MaxApaczaiFellebbezesSzovegHossz)
{
throw new StatusError(HttpStatusCode.BadRequest, string.Format(ErrorResource.ApaczaiFellebezesSzovegMaximalisHossz, Core.Constants.MinMaxValues.MaxApaczaiFellebbezesSzovegHossz));
}
try
{
if (new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).Fellebbezes(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito, indoklas))
{
return new HttpResponseMessage { StatusCode = HttpStatusCode.OK };
}
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.SikertelenApaczaiPalyazatFellebbezesBenyujtas);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, $"{ErrorResource.SikertelenApaczaiPalyazatFellebbezesBenyujtas}{(!string.IsNullOrWhiteSpace(ex.Message) ? $" ({ex.Message})" : string.Empty)}");
}
}
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,123 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.Orarend.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Ellenorzo.ClaimValue,
KretaClaimPackages.Tanulo.ClaimValue,
KretaClaimPackages.Gondviselo.ClaimValue)]
public class TanuloBejelentettSzamonkeresekApiController : ApiController
{
public DataSourceResult GetBejelentettSzamonkeresekGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetGridData(data, request);
return modelList.ToDataSourceResult(gridParameter);
}
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<BejelentettSzamonkeresekGridModel>(BejelentettSzamonkeresekGridModel.BejelentettSzamonkeresekExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OrarendResource.BejelentettSzamonkeresekExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{OrarendResource.BejelentettSzamonkeresekExportFileName}_{DateTime.Now:yyyy_MM_dd}.xlsx");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<BejelentettSzamonkeresekGridModel> modelList) GetGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<BejelentettSzamonkeresekSearchModel>(data);
model.TanuloId = ClaimData.FelhasznaloId;
var gridParameter = Converter.GridParameter(request);
var coList = new SzamonkeresElorejelzesHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetBejelentettSzamonkeresekCoList(model.ConvertToCo());
var modelList = new List<BejelentettSzamonkeresekGridModel>();
foreach (var co in coList)
{
var gridModel = new BejelentettSzamonkeresekGridModel(co);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
public DataSourceResult GetBejelentettSzamonkeresekExportGrid(string searchFilter, string sortColumn, string sortDir)
{
BejelentettSzamonkeresekSearchModel model = JsonConvert.DeserializeObject<BejelentettSzamonkeresekSearchModel>(searchFilter);
model.TanuloId = ClaimData.FelhasznaloId;
var helper = new SzamonkeresElorejelzesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var ds = helper.GetBejelentettSzamonkeresekGrid(model.ConvertToCo());
ds.Tables[0].Columns.Add("SzamonkeresDatumaStr", typeof(string));
ds.Tables[0].Columns.Add("BejelentesDatumaStr", typeof(string));
foreach (DataRow row in ds.Tables[0].Rows)
{
var dt = DateTime.Parse(row["SzamonkeresDatuma"].ToString());
row["SzamonkeresDatumaStr"] = dt.ToString("yyyy.MM.dd.");
var dt2 = DateTime.Parse(row["BejelentesDatuma"].ToString());
row["BejelentesDatumaStr"] = dt2.ToString("yyyy.MM.dd.");
}
if (sortColumn != "-" && sortDir != "-")
{
DataSet result = new DataSet();
ds.Tables[0].DefaultView.Sort = (sortColumn).ToUpper() + " " + (sortDir).ToUpper();
result.Tables.Add(ds.Tables[0].DefaultView.ToTable());
return result.ToDataSourceResult();
}
return ds.ToDataSourceResult();
}
[HttpPost]
public System.Web.Http.Results.JsonResult<List<ExportColumn>> GetExportColumns()
{
List<ExportColumn> Items = new List<ExportColumn>();
Items.Add(new ExportColumn() { Field = "SzamonkeresDatumaStr", Title = OrarendResource.Datum });
Items.Add(new ExportColumn() { Field = "HetNapja_DNAME", Title = OrarendResource.HetNapja });
Items.Add(new ExportColumn() { Field = "Oraszam", Title = OrarendResource.Oraszam });
Items.Add(new ExportColumn() { Field = "TargyNev", Title = OrarendResource.Targy });
Items.Add(new ExportColumn() { Field = "OsztalyNev", Title = OrarendResource.OsztalyCsoport });
Items.Add(new ExportColumn() { Field = "TanarNev", Title = OrarendResource.Tanar });
Items.Add(new ExportColumn() { Field = "ErtekelesModNev", Title = OrarendResource.SzamonkeresMod });
Items.Add(new ExportColumn() { Field = "SzamonkeresMegnevezes", Title = OrarendResource.SzamonkeresMegnevezes });
Items.Add(new ExportColumn() { Field = "BejelentesDatumaStr", Title = OrarendResource.BejelentesDatuma });
return Json(Items);
}
}
}

View file

@ -0,0 +1,78 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Tanulo.ClaimValue, KretaClaimPackages.Gondviselo.ClaimValue)]
public class TanuloHaziFeladatApiController : ApiController
{
public DataSourceResult GetTanulotHaziFeladatGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloHaziFeladatSearchModel>(data);
var co = model.ConvertModelToCo();
var helper = new DktFeladatHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetTanuloHaziFeladat(co, null, false, ClaimData.IsTanuloOrGondviselo);
return ds.ToDataSourceResult();
}
public HttpResponseMessage GetHazifeladatExportGrid(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<TanuloHaziFeladatGridModel>(TanuloHaziFeladatGridModel.TanuloHaziFeladatExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(ImportExportCommonResource.HaziFeladatok, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{OrarendResource.HazifeladatExportFileName}_{DateTime.Now:yyyy_MM_dd}.{Constants.ImportExport.FileFormatXlsx}");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<TanuloHaziFeladatGridModel> modelList) GetGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloHaziFeladatSearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var co = model.ConvertModelToCo();
var helper = new DktFeladatHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var ds = helper.GetTanuloHaziFeladat(co, null, false, ClaimData.IsTanuloOrGondviselo);
var modelList = new List<TanuloHaziFeladatGridModel>();
foreach (var row in ds.Tables[0].AsEnumerable())
{
var gridModel = new TanuloHaziFeladatGridModel(row);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
}
}

View file

@ -0,0 +1,74 @@
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class TanuloJogviszonyAdatokApiController : ApiController
{
[HttpPost]
public DataSourceResult GetJogviszonyAdatokGrid([ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] KretaGridDataSourceRequest request)
{
var (gridParameter, modelList) = GetGridData(request.data, request);
return modelList.ToDataSourceResult(gridParameter);
}
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<JogviszonyAdatokGridModel>(JogviszonyAdatokGridModel.TanulokJogviszonyaAdataiExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(TanuloResource.TanuloJogviszonyAdataiExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{TanuloResource.TanuloJogviszonyAdataiExportSheetName}_{DateTime.Now:yyyy_MM_dd}.{Constants.ImportExport.FileFormatXlsx}");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<JogviszonyAdatokGridModel> modelList) GetGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<TanuloJogviszonyAdatokSearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var coList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloJogviszonyAdatokCoList(model.ConvertToCo());
var modelList = new List<JogviszonyAdatokGridModel>();
foreach (var co in coList)
{
var gridModel = new JogviszonyAdatokGridModel(co);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
}
}

View file

@ -0,0 +1,24 @@
using System.Web.Http;
using System.Web.Http.ModelBinding;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.CsokkentettGondviselo.ClaimValue)]
public class TanulotTanitoTanarokApiController : ApiController
{
public DataSourceResult GetTanulotTanitoTanarGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanarHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
helper.GridParameters = Converter.GridParameter(request);
var ds = helper.GetTanulotTanitoTanarok(ClaimData.FelhasznaloId);
return ds.ToDataSourceResult();
}
}
}

View file

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

View file

@ -0,0 +1,75 @@
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 Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
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.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Modal;
using Kreta.Web.Models;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
public class BaseTanuloController : Controller
{
[System.Web.Mvc.NonAction]
public ActionResult OpenDetailTanuloPopUp(int tanuloId, int? osztalycsoportId, bool isFromSzervezet, bool ertekelesTabAktiv = false, bool tanugyDisabled = false, bool fromAdd = false)
{
if (osztalycsoportId.HasValue)
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
Enum.TryParse(osztalyCsoportHelper.GetOsztalyCsoportFeladatKategoria(osztalycsoportId.Value).ToString(), out OktNevelesiKategoriaEnum kategoria);
if (kategoria == OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas)
{
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var gimnaziumAlapkepzeseskentKezelendo = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Szakgimnaziumok_Alapkezpeseskent_Tudjak_Kezelni_osztalyokat_Tanulokat);
if (!(gimnaziumAlapkepzeseskentKezelendo && osztalyCsoportHelper.GetOsztalyCsoportOktatasNevelesiFeladatTipus(osztalycsoportId.Value) == (int)OktatasiNevelesiFeladatEnum.MuveszetiSzakgimnazium))
{
return RedirectToAction("OpenDetailTanuloPopUp", Constants.Controllers.AmiTanulo, new { tanuloId, osztalycsoportId, ertekelesTabAktiv, fromAdd });
}
}
if (kategoria == OktNevelesiKategoriaEnum.Kollegium)
{
return RedirectToAction("OpenDetailTanuloPopUp", Constants.Controllers.KollegiumTanulo, new { tanuloId, osztalycsoportId, ertekelesTabAktiv, tanugyDisabled, fromAdd });
}
if (kategoria == OktNevelesiKategoriaEnum.EGYMI)
{
return RedirectToAction("OpenDetailTanuloPopUp", Constants.Controllers.EGYMITanulo, new { tanuloId, osztalycsoportId, ertekelesTabAktiv, tanugyDisabled, fromAdd });
}
}
var tanuloDetailModel = new TanuloDetailModel { TanuloId = tanuloId, OsztalycsoportId = osztalycsoportId };
var popUpModel = new PopUpModel(new TanuloSearchModel
{
TanuloId = tanuloId,
TanuloModalHeader = TanuloLogic.GetTanuloModalHeader(tanuloId),
TabList = AlapkepzesTanuloLogic.GetDetailTabs(tanuloDetailModel, ertekelesTabAktiv, tanugyDisabled, isFromSzervezet)
}, "Tanulo_Info");
popUpModel = popUpModel.AddCancelBtn(popUpModel, "TanuloHelper.detailTanuloCancel");
return PartialView(Constants.General.PopupView, popUpModel);
}
}
}

View file

@ -0,0 +1,138 @@
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Enums;
using Kreta.Web.Areas.Hianyzas.Models;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
public class CsoportTanuloiAdatokController : Controller
{
public ActionResult Index()
{
var model = new CsoportTanuloiAdatokModel();
var showTanoraCeluCsoport = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Csoportvezeto_Tanora_Celu_Csoportok);
var helper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var firstCsoportId = helper.GetCsoportListByCsoportVezeto(showTanoraCeluCsoport, (int)CsoportTipusEnum.iskolai_csoport_tanorai_celu_, ClaimData.IsSzuperOsztalyfonok).Select(x => x.Value).FirstOrDefault();
if (!string.IsNullOrWhiteSpace(firstCsoportId))
{
int.TryParse(firstCsoportId, out int result);
model.OsztalyCsoportId = result;
}
return View("Index", model);
}
public ActionResult GetTanuloiAdatokPanelBarItemContent(int? tanuloId, int? osztalyCsoportId)
{
var model = new TanuloiAdatokModel
{
TanuloId = tanuloId,
OsztalyCsoportId = osztalyCsoportId
};
return PartialView("~/Areas/Tanulo/Views/CsoportTanuloiAdatok/TanuloiAdatok.cshtml", model);
}
public ActionResult GetTanuloErtekelesPanelBarItemContent(int? tanuloId, int osztalyCsoportId)
{
var model = new List<TanuloErtekelesByTanuloListModel>
{
new TanuloErtekelesByTanuloListModel()
{
NamePrefix = "TanuloErtekelesPanelBar",
IsJegyekAtlagaMegjelenik = true,
TanuloId = tanuloId,
GridUseToolBar = false,
OktatasiNevelesiFeladatId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportOktatasNevelesiFeladatTipus(osztalyCsoportId)
}
};
return PartialView("~/Areas/TanuloErtekeles/Views/TanuloErtekelesByTanulo/Index.cshtml", model);
}
public ActionResult GetFelmentesekPanelBarItemContent(int? tanuloId)
{
var model = new TanuloDetailModel
{
TanuloId = tanuloId ?? 0,
GridNamePrefix = "FelmentesPanelBar",
GridUseToolBar = false
};
return PartialView("~/Areas/Tanulo/Views/Tanulo/Info_TantargyiMentesseg_Tab.cshtml", model);
}
public ActionResult GetHianyzasokPanelBarItemContent(int? tanuloId)
{
var model = new MulasztasSearchModel
{
TanuloId = tanuloId,
IsCustomForm = true,
CustomFormName = "CsoportTanuloiAdatokForm",
GridUseToolBar = false,
ChildGridHasDelete = false,
ApiControllerName = Constants.ApiControllers.MulasztasokApi
};
return PartialView("~/Areas/Hianyzas/Views/Shared/Mulasztasok_TanuloNezet_Tab.cshtml", model);
}
public ActionResult GetIgazolasokPanelBarItemContent(int? tanuloId)
{
var model = new TanuloDetailModel
{
TanuloId = tanuloId ?? 0,
GridNamePrefix = "IgazolasPanelBar",
GridUseToolBar = false
};
return PartialView("~/Areas/Tanulo/Views/Tanulo/Info_Igazolasok_Tab.cshtml", model);
}
public ActionResult GetFeljegyzesekPanelBarItemContent(int? tanuloId)
{
var tanuloiFeljegyzesekItemModelList = new List<TanuloiFeljegyzesekItemModel>();
if (tanuloId.IsEntityId())
{
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetTanuloiFeljegyzesekItemList(tanuloId.Value);
tanuloiFeljegyzesekItemModelList.AddRange(coList.Select(co => new TanuloiFeljegyzesekItemModel(co)));
}
var model = new TanuloiFeljegyzesekModel
{
TanuloId = tanuloId,
TanuloiFeljegyzesekItemList = tanuloiFeljegyzesekItemModelList.OrderBy(x => x.Datum).ToList()
};
return PartialView("TanuloiFeljegyzesek", model);
}
public ActionResult GetFeljegyzesekHaviPanelBarItemContent(int? tanuloId, int? osztalyCsoportId)
{
var model = new TanuloDetailModel
{
TanuloId = tanuloId ?? 0,
OsztalycsoportId = osztalyCsoportId ?? 0,
GridNamePrefix = "FeljegyzesHaviPanelBar",
GridUseToolBar = false
};
return PartialView("~/Areas/Tanulo/Views/Tanulo/Info_FeljegyzesHavi_Tab.cshtml", model);
}
public ActionResult GetDiakOlimpiaPanelBarItemContent(int? tanuloId, int? osztalyCsoportId)
{
return PartialView("~/Areas/Tanulo/Views/Tanulo/Info_DiakOlimpia.cshtml", tanuloId ?? 0);
}
}
}

View file

@ -0,0 +1,40 @@
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
public class CsoportTanuloiController : Controller
{
public ActionResult Index()
{
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var model = new CsoportTanuloiSearchModel
{
showDetailView = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Csoportvezeto_Tanulo_Adat_Modositas),
showTanoraCeluCsoport = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Csoportvezeto_Tanora_Celu_Csoportok)
};
var helper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var firstCsoportId = helper.GetCsoportListByCsoportVezeto(model.showTanoraCeluCsoport, (int)CsoportTipusEnum.iskolai_csoport_tanorai_celu_, ClaimData.IsSzuperOsztalyfonok).Select(x => x.Value).FirstOrDefault();
if (!string.IsNullOrWhiteSpace(firstCsoportId))
{
int.TryParse(firstCsoportId, out int result);
model.OsztalyCsoport = result;
}
return View("Index", model);
}
}
}

View file

@ -0,0 +1,24 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums.ManualEnums;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsDefaultAdminUser.ClaimValue)]
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue)]
[Attributes.KretaGlobalLanguageChangeActionFilter(LanguageCode = "hu-Dualis")]
public class DualisTanuloController : BaseTanuloController
{
public bool IsDualisKepzesEnabled => new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult OpenDetailTanuloPopUp(int tanuloId, int? osztalycsoportId, bool ertekelesTabAktiv = false, bool tanugyDisabled = false, bool fromAdd = false)
{
return OpenDetailTanuloPopUp(tanuloId, osztalycsoportId, IsDualisKepzesEnabled, ertekelesTabAktiv, tanugyDisabled, fromAdd);
}
}
}

View file

@ -0,0 +1,608 @@
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 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.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Modal;
using Kreta.Web.Models;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
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.EGYMIModul.ClaimValue)]
public class EGYMITanuloController : Controller
{
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult Index()
{
var model = new TanuloSearchModel();
TanuloLogic.SetButtonVisibility(model);
return View("Index", model);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.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 = EGYMITanuloLogic.GetTanuloData(int.Parse(id));
return PartialView(partialViewName, model);
}
public ActionResult GetModPartialView(string id, string partialViewName)
{
var model = EGYMITanuloLogic.GetModTanuloData(int.Parse(id));
return PartialView(partialViewName, model);
}
public ActionResult GetPartialViewWithOsztalycsoport(string id, string osztalyCsoportIdString, string partialViewName)
{
int? osztalyCsoportId = null;
if (int.TryParse(osztalyCsoportIdString, out int resultId))
{ osztalyCsoportId = resultId; }
var model = EGYMITanuloLogic.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 = EGYMITanuloLogic.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.EGYMI);
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 = EGYMITanuloLogic.GetDetailTabs(tanuloDetailModel, ertekelesTabAktiv)
}, "Tanulo_Info");
popUpModel = popUpModel.AddCancelBtn(popUpModel, fromAdd ? "TanuloHelper.modTanuloCancel" : "TanuloHelper.detailTanuloCancel");
return PartialView(Constants.General.PopupView, popUpModel);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult OpenNewTanuloPopUp()
{
var model = TanuloLogic.CreateNewTanuloPopupModel();
if (model.TanuloTanugyModel.IsSzakkepzeses)
{
TanuloLogic.SetTanuloSzakkepzesesBasicProperties(model);
}
model.TanuloTanugyModel.HasAktivOsztalybaSorolas = false;
model.TanuloTanugyModel.TantervId = new TantervHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTop1TantervId();
var pm = new PopUpModel(new TanuloModel
{
TabList = EGYMITanuloLogic.GetNewTabs(model)
}, "Tanulo_Bevitel");
pm = pm.AddCancelBtn(pm, "TanuloHelper.newTanuloCancel");
pm = pm.AddOkBtn(pm, "TanuloHelper.newTanuloSave");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenModTanuloPopUp(int tanuloId, int? osztalycsoportId)
{
var tm = EGYMITanuloLogic.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 = EGYMITanuloLogic.GetModTabs(tm, ClaimData.IsOsztalyfonok, osztalycsoportId);
var pm = new PopUpModel(tm, "Tanulo_Bevitel");
pm = pm.AddCancelBtn(pm, "TanuloHelper.modTanuloCancel");
pm = pm.AddOkBtn(pm, "TanuloHelper.modTanuloSave");
return PartialView(Constants.General.PopupView, pm);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.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];
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 = EGYMITanuloLogic.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 = true,
FormSettings = new List<string>() {
CimElerhetosegConstant.CimSectionVisible,
CimElerhetosegConstant.IsNew,
CimElerhetosegConstant.AlapertelmezettCimVisible
}
};
var hasTanuloAlapertelmezettCim = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).HasTanuloAlapertelmezettCim(tanuloId);
model.AlapertelmezettCim = !hasTanuloAlapertelmezettCim;
if (!hasTanuloAlapertelmezettCim)
{
model.FormSettings.Add(CimElerhetosegConstant.AlapertelmezettNemModosithato);
}
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.EGYMIModul.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);
}
public ActionResult UjFelmentes(int tanuloId)
{
var model = new TanuloFelmentesModel();
var pm = new PopUpModel(model, "_Felmentes_Bevitel");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloFelmentesHelper.newFelmentesCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloFelmentesHelper.newFelmentesSave" });
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult ModFelmentes(int id)
{
var model = TanuloLogic.GetFelmentes(id);
var pm = new PopUpModel(model, "_Felmentes_Bevitel");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloFelmentesHelper.modFelmentesCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloFelmentesHelper.modFelmentesSave" });
return PartialView(Constants.General.PopupView, pm);
}
#endregion Popups
#region Export
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult TanuloExportBesorolashoz([FromUri] TanuloSearchModel data)
{
return TanuloLogic.TanuloExportBesorolashoz(data, OktNevelesiKategoriaEnum.EGYMI);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult TanulokLakcimmelExport([FromUri] TanuloSearchModel data)
{
return TanuloLogic.TanulokLakcimmelExport(data, OktNevelesiKategoriaEnum.EGYMI);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult TanulokTanugyiAdatiExport([FromUri] TanuloSearchModel model)
{
return TanuloLogic.ExportTanulokTanugyiAdatai(model);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult ExportTanulokTantargyaiEsPedagogusai([FromUri] TanuloSearchModel data)
{
return TanuloLogic.ExportTanulokTantargyaiEsPedagogusai(data, OktNevelesiKategoriaEnum.EGYMI);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult GondviselokElerhetosegeiExport([FromUri] TanuloSearchModel data)
{
return TanuloLogic.ExportGondviselokElerhetosegei(data, OktNevelesiKategoriaEnum.EGYMI);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult TanuloKirStatExport([FromUri] TanuloSearchModel data)
{
data.ForOktober = true;
return TanuloLogic.TanuloKirStatExport(data);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.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.EGYMIModul.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.JelszoAlaphelyzetbeAllitasaTanuloConfirm :
TanuloResource.JelszoAlaphelyzetbeAllitasaGondviseloConfirm;
if (isTanulo)
{
hozzaferesModel.TanulokEmailElerhetosegNelkul = TanuloLogic.GetTanulokEmailNelkulSzam(tanuloIdList);
}
}
else
{
if (tanuloIdList != null)
{
hozzaferesModel.ConfirmText = isTanulo ?
TanuloResource.BelepesiAzonositoGeneralasaKijeloltTanulokConfirm :
TanuloResource.BelepesiAzonositoGeneralasaKijeloltTanulokGondviseloinekConfirm;
}
else
{
hozzaferesModel.ConfirmText = isTanulo ?
TanuloResource.BelepesiAzonositoGeneralasTanuloConfirm :
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.EGYMIModul.ClaimValue)]
public JsonResult AzonositoGeneralas(bool isTanulo, bool fileLetoltesSzukseges, bool isPasswordReset, List<int> tanuloIdList = null, bool emailKuldesSzukseges = false)
{
var popupModel = TanuloLogic.AzonositoGeneralas(isTanulo, fileLetoltesSzukseges, isPasswordReset, tanuloIdList, emailKuldesSzukseges);
return Json(popupModel);
}
public ActionResult SetGondviseloToBovitettPopup(List<int> tanuloIdList, bool isKijeloltTanulokGondviseloi)
{
if (isKijeloltTanulokGondviseloi && !TanuloLogic.ExistsGondviselo(tanuloIdList))
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.AKijeloltTanuloknakNincsGondiselojuk);
}
var hozzaferesModel = new GondviseloToBovitettModel
{
TanuloIdList = tanuloIdList,
ConfirmText = isKijeloltTanulokGondviseloi ? TanuloResource.AKijeloltTanulokOsszesGondviselojenekBelepeseBovitettLeszBiztosanFolytatja : 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
}
}

View file

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

View file

@ -0,0 +1,608 @@
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 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.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Modal;
using Kreta.Web.Models;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
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.KollegiumModul.ClaimValue)]
public class KollegiumTanuloController : Controller
{
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult Index()
{
var model = new TanuloSearchModel();
TanuloLogic.SetButtonVisibility(model);
return View("Index", model);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.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 = KollegiumTanuloLogic.GetTanuloData(int.Parse(id));
return PartialView(partialViewName, model);
}
public ActionResult GetModPartialView(string id, string partialViewName)
{
var model = KollegiumTanuloLogic.GetModTanuloData(int.Parse(id));
return PartialView(partialViewName, model);
}
public ActionResult GetPartialViewWithOsztalycsoport(string id, string osztalyCsoportIdString, string partialViewName)
{
int? osztalyCsoportId = null;
if (int.TryParse(osztalyCsoportIdString, out int resultId))
{ osztalyCsoportId = resultId; }
var model = KollegiumTanuloLogic.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 = KollegiumTanuloLogic.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.Kollegium);
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 = KollegiumTanuloLogic.GetDetailTabs(tanuloDetailModel, ertekelesTabAktiv)
}, "Tanulo_Info");
popUpModel = popUpModel.AddCancelBtn(popUpModel, fromAdd ? "TanuloHelper.modTanuloCancel" : "TanuloHelper.detailTanuloCancel");
return PartialView(Constants.General.PopupView, popUpModel);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult OpenNewTanuloPopUp()
{
var model = TanuloLogic.CreateNewTanuloPopupModel();
if (model.TanuloTanugyModel.IsSzakkepzeses)
{
TanuloLogic.SetTanuloSzakkepzesesBasicProperties(model);
}
model.TanuloTanugyModel.HasAktivOsztalybaSorolas = false;
model.TanuloTanugyModel.TantervId = new TantervHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTop1TantervId();
var pm = new PopUpModel(new TanuloModel
{
TabList = KollegiumTanuloLogic.GetNewTabs(model)
}, "Tanulo_Bevitel");
pm = pm.AddCancelBtn(pm, "TanuloHelper.newTanuloCancel");
pm = pm.AddOkBtn(pm, "TanuloHelper.newTanuloSave");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenModTanuloPopUp(int tanuloId, int? osztalycsoportId)
{
var tm = KollegiumTanuloLogic.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 = KollegiumTanuloLogic.GetModTabs(tm, ClaimData.IsOsztalyfonok, osztalycsoportId);
var pm = new PopUpModel(tm, "Tanulo_Bevitel");
pm = pm.AddCancelBtn(pm, "TanuloHelper.modTanuloCancel");
pm = pm.AddOkBtn(pm, "TanuloHelper.modTanuloSave");
return PartialView(Constants.General.PopupView, pm);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.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];
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 = KollegiumTanuloLogic.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 = true,
FormSettings = new List<string>() {
CimElerhetosegConstant.CimSectionVisible,
CimElerhetosegConstant.IsNew,
CimElerhetosegConstant.AlapertelmezettCimVisible
}
};
var hasTanuloAlapertelmezettCim = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).HasTanuloAlapertelmezettCim(tanuloId);
model.AlapertelmezettCim = !hasTanuloAlapertelmezettCim;
if (!hasTanuloAlapertelmezettCim)
{
model.FormSettings.Add(CimElerhetosegConstant.AlapertelmezettNemModosithato);
}
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.Mind, KretaClaimPackages.KollegiumModul.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);
}
public ActionResult UjFelmentes(int tanuloId)
{
var model = new TanuloFelmentesModel();
var pm = new PopUpModel(model, "_Felmentes_Bevitel");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloFelmentesHelper.newFelmentesCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloFelmentesHelper.newFelmentesSave" });
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult ModFelmentes(int id)
{
var model = TanuloLogic.GetFelmentes(id);
var pm = new PopUpModel(model, "_Felmentes_Bevitel");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloFelmentesHelper.modFelmentesCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloFelmentesHelper.modFelmentesSave" });
return PartialView(Constants.General.PopupView, pm);
}
#endregion Popups
#region Export
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult TanuloExportBesorolashoz([FromUri] TanuloSearchModel data)
{
return TanuloLogic.TanuloExportBesorolashoz(data, OktNevelesiKategoriaEnum.Kollegium);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult TanulokLakcimmelExport([FromUri] TanuloSearchModel data)
{
return TanuloLogic.TanulokLakcimmelExport(data, OktNevelesiKategoriaEnum.Kollegium);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult TanulokTanugyiAdatiExport([FromUri] TanuloSearchModel model)
{
return TanuloLogic.ExportTanulokTanugyiAdatai(model);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult ExportTanulokTantargyaiEsPedagogusai([FromUri] TanuloSearchModel data)
{
return TanuloLogic.ExportTanulokTantargyaiEsPedagogusai(data, OktNevelesiKategoriaEnum.Kollegium);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult GondviselokElerhetosegeiExport([FromUri] TanuloSearchModel data)
{
return TanuloLogic.ExportGondviselokElerhetosegei(data, OktNevelesiKategoriaEnum.Kollegium);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult TanuloKirStatExport([FromUri] TanuloSearchModel data)
{
data.ForOktober = true;
return TanuloLogic.TanuloKirStatExport(data);
}
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.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.KollegiumModul.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.JelszoAlaphelyzetbeAllitasaTanuloConfirm :
TanuloResource.JelszoAlaphelyzetbeAllitasaGondviseloConfirm;
if (isTanulo)
{
hozzaferesModel.TanulokEmailElerhetosegNelkul = TanuloLogic.GetTanulokEmailNelkulSzam(tanuloIdList);
}
}
else
{
if (tanuloIdList != null)
{
hozzaferesModel.ConfirmText = isTanulo ?
TanuloResource.BelepesiAzonositoGeneralasaKijeloltTanulokConfirm :
TanuloResource.BelepesiAzonositoGeneralasaKijeloltTanulokGondviseloinekConfirm;
}
else
{
hozzaferesModel.ConfirmText = isTanulo ?
TanuloResource.BelepesiAzonositoGeneralasTanuloConfirm :
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.KollegiumModul.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.AKijeloltTanuloknakNincsGondiselojuk);
}
var hozzaferesModel = new GondviseloToBovitettModel
{
TanuloIdList = tanuloIdList,
ConfirmText = isKijeloltTanulokGondviseloi ? TanuloResource.AKijeloltTanulokOsszesGondviselojenekBelepeseBovitettLeszBiztosanFolytatja : 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
}
}

View file

@ -0,0 +1,131 @@
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Enums;
using Kreta.Web.Areas.Hianyzas.Models;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public class OsztalyTanuloiAdatokController : Controller
{
public ActionResult Index()
{
var model = new OsztalyTanuloiAdatokModel();
if (ClaimData.FelhasznaloSzerepkorok.ContainsKey(SzerepkorTipusEnum.Naplo))
{
model.OsztalyCsoportId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyfonokElsonekMegtalaltOsztalya(ClaimData.FelhasznaloId);
}
return View("Index", model);
}
public ActionResult GetTanuloiAdatokPanelBarItemContent(int? tanuloId, int? osztalyCsoportId)
{
var model = new TanuloiAdatokModel
{
TanuloId = tanuloId,
OsztalyCsoportId = osztalyCsoportId
};
return PartialView("~/Areas/Tanulo/Views/OsztalyTanuloiAdatok/TanuloiAdatok.cshtml", model);
}
public ActionResult GetTanuloErtekelesPanelBarItemContent(int? tanuloId, int osztalyCsoportId)
{
var model = new List<TanuloErtekelesByTanuloListModel>
{
new TanuloErtekelesByTanuloListModel
{
NamePrefix = "TanuloErtekelesPanelBar",
IsJegyekAtlagaMegjelenik = true,
TanuloId = tanuloId,
GridUseToolBar = false,
OktatasiNevelesiFeladatId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportOktatasNevelesiFeladatTipus(osztalyCsoportId)
}
};
return PartialView("~/Areas/TanuloErtekeles/Views/TanuloErtekelesByTanulo/Index.cshtml", model);
}
public ActionResult GetFelmentesekPanelBarItemContent(int? tanuloId)
{
var model = new TanuloDetailModel
{
TanuloId = tanuloId ?? 0,
GridNamePrefix = "FelmentesPanelBar",
GridUseToolBar = false
};
return PartialView("~/Areas/Tanulo/Views/Tanulo/Info_TantargyiMentesseg_Tab.cshtml", model);
}
public ActionResult GetHianyzasokPanelBarItemContent(int? tanuloId)
{
var model = new MulasztasSearchModel
{
TanuloId = tanuloId,
IsCustomForm = true,
CustomFormName = "OsztalyTanuloiAdatokForm",
GridUseToolBar = false,
ChildGridHasDelete = false,
};
return PartialView("~/Areas/Hianyzas/Views/Shared/Mulasztasok_TanuloNezet_Tab.cshtml", model);
}
public ActionResult GetIgazolasokPanelBarItemContent(int? tanuloId)
{
var model = new TanuloDetailModel
{
TanuloId = tanuloId ?? 0,
GridNamePrefix = "IgazolasPanelBar",
GridUseToolBar = false
};
return PartialView("~/Areas/Tanulo/Views/Tanulo/Info_Igazolasok_Tab.cshtml", model);
}
public ActionResult GetFeljegyzesekPanelBarItemContent(int? tanuloId)
{
var tanuloiFeljegyzesekItemModelList = new List<TanuloiFeljegyzesekItemModel>();
if (tanuloId.IsEntityId())
{
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetTanuloiFeljegyzesekItemList(tanuloId.Value);
tanuloiFeljegyzesekItemModelList.AddRange(coList.Select(co => new TanuloiFeljegyzesekItemModel(co)));
}
var model = new TanuloiFeljegyzesekModel
{
TanuloId = tanuloId,
TanuloiFeljegyzesekItemList = tanuloiFeljegyzesekItemModelList.OrderBy(x => x.Datum).ToList()
};
return PartialView("TanuloiFeljegyzesek", model);
}
public ActionResult GetFeljegyzesekHaviPanelBarItemContent(int? tanuloId, int? osztalyCsoportId)
{
var model = new TanuloDetailModel
{
TanuloId = tanuloId ?? 0,
OsztalycsoportId = osztalyCsoportId ?? 0,
GridNamePrefix = "FeljegyzesHaviPanelBar",
GridUseToolBar = false
};
return PartialView("~/Areas/Tanulo/Views/Tanulo/Info_FeljegyzesHavi_Tab.cshtml", model);
}
public ActionResult GetDiakOlimpiaPanelBarItemContent(int? tanuloId, int? osztalyCsoportId)
{
return PartialView("~/Areas/Tanulo/Views/Tanulo/Info_DiakOlimpia.cshtml", tanuloId ?? 0);
}
}
}

View file

@ -0,0 +1,45 @@
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;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public class OsztalyTanuloiController : 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,
FeladatKategoriaId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCsoportFeladatKategoria(osztalyId)
};
return View("Index", model);
}
}
}

View file

@ -0,0 +1,54 @@
using System;
using System.Net;
using System.Web.Http;
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public class OsztalyTanuloiGondviselokController : Controller
{
public ActionResult Index()
{
var model = new OsztalyTanuloiGondviselokSearchModel();
return View("Index", model);
}
public ActionResult OpenGondviseloInfoPopUp(int gondviseloId)
{
try
{
var gondviseloInfoModel = new OsztalyTanuloiGondviselokPopupModel(new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetGondviseloInfoPopUp(gondviseloId));
var model = new PopUpModel(gondviseloInfoModel, "Info_PopUp");
model.AddCancelBtn(model, "OsztalyTanuloiGondviselokHelper.gondviseloInfoCancel");
return PartialView(Constants.General.PopupView, model);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
}
public ActionResult ExportOsztalyTanulokGondviseloi([FromUri] OsztalyTanuloiGondviselokSearchModel model)
{
var stream = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyTanulokGondviseloiExcelExport(model.ConvertToCo(), ClaimData.IsSzuperOsztalyfonok, ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.Evfolyamfelelos.ClaimValue));
return new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = $"{TanuloResource.OsztalyTanulokGondviseloiExportFileName}_{DateTime.Now.ToString(Core.Constants.ToStringPattern.HungarianDateExportPattern)}{Core.Constants.ImportExport.FileExtensionExcelX}" };
}
}
}

View file

@ -0,0 +1,131 @@
using System;
using System.Collections.Generic;
using System.Web.Mvc;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class SzakkepzesiJuttatasokController : Controller
{
// GET: Tanulo/SzakkepzesiJuttatasok
public ActionResult Index()
{
return View();
}
public ActionResult OpenSelectorPopup()
{
var model = new SzakkepzesiJuttatasokSelectorPopupModel
{
IsApaczaiEnabled = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.Apaczai, IntezmenyConfigTipusEnum.IsEnabled)
};
var popupModel = new PopUpModel(model, "SelectorPopup");
return PartialView(Constants.General.PopupView, popupModel);
}
public ActionResult LoadSzakkepzesiOsztondijSearchPanelView()
{
var model = new TanuloSzakkepzesiOsztondijSearchModel() { TanuloTipus = 1 };
return PartialView("SzakkepzesiOsztondijSearchPanel", model);
}
public ActionResult LoadSzakkepzesiOsztondijView()
{
var intezmenyAdatok = new IntezmenyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetIntezmenyiAdatok();
var tanevCo = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanevInfo();
DateTime vizsgaltHonap = TanuloHelper.GetJuttatasVizsgaltHonap(tanevCo, intezmenyAdatok.JuttatasHatarnap, DateTime.Today);
var model = new TanuloSzakkepzesiOsztondijSearchModel();
model.VizsgaltHonap = string.Format("{0}. {1} ", vizsgaltHonap.Year, ((HonapokEnum.Januar + (vizsgaltHonap.Month - 1))).GetDisplayName(ClaimData.SelectedTanevID.Value).ToLower());
return PartialView("SzakkepzesiOsztondij", model);
}
public ActionResult LoadEgyszeriPalyakezdesiJuttatasSearchPanelView()
{
var model = new TanuloEgyszeriPalyakezdesiJuttatasSearchModel();
return PartialView("EgyszeriPalyakezdesiJuttatasSearchPanel", model);
}
public ActionResult LoadEgyszeriPalyakezdesiJuttatasView()
{
return PartialView("EgyszeriPalyakezdesiJuttatas");
}
public ActionResult LoadApaczaiOsztondijView()
{
var model = new ApaczaiTablazatModel
{
TipusList = GetApaczaiOsztondijTablazatList(),
TipusId = (int)ApaczaiOsztondijTablazatEnum.Igenylesek
};
return PartialView("ApaczaiOsztondijContainer", model);
}
[MvcRolePackageDenyAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public List<SelectListItem> GetApaczaiOsztondijTablazatList()
{
var dictionary = EnumExtensions.EnumToDictionary<ApaczaiOsztondijTablazatEnum>(ClaimData.SelectedTanevID.Value, removeValueList: new List<string> { ((int)ApaczaiOsztondijTablazatEnum.Kifizetesek).ToString() });
var result = new List<SelectListItem>();
foreach (var x in dictionary)
{
var sli = new SelectListItem { Text = x.Value, Value = x.Key };
result.Add(sli);
}
return result;
}
public ActionResult LoadApaczaiIgenylesekSearchPanelView()
{
var model = new TanuloApaczaiOsztondijIgenylesekSearchModel();
return PartialView("ApaczaiIgenylesekSearchPanel", model);
}
public ActionResult LoadApaczaiIgenylesekView()
{
return PartialView("ApaczaiIgenylesek");
}
public ActionResult LoadApaczaiTanuloiListaSearchPanelView()
{
var model = new TanuloApaczaiOsztondijTanuloiListaSearchModel();
return PartialView("ApaczaiTanuloiListaSearchPanel", model);
}
public ActionResult LoadApaczaiTanuloiListaView()
{
var intezmenyAdatok = new IntezmenyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetIntezmenyiAdatok();
var tanevCo = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanevInfo();
DateTime vizsgaltHonap = TanuloHelper.GetJuttatasVizsgaltHonap(tanevCo, intezmenyAdatok.JuttatasHatarnap, DateTime.Today);
var model = new TanuloApaczaiOsztondijTanuloiListaSearchModel
{
VizsgaltHonap = string.Format("{0}. {1} ", vizsgaltHonap.Year, (HonapokEnum.Januar + (vizsgaltHonap.Month - 1)).GetDisplayName(ClaimData.SelectedTanevID.Value).ToLower()),
};
return PartialView("ApaczaiTanuloiLista", model);
}
[MvcRolePackageDenyAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult LoadApaczaiKifizetesekSearchPanelView()
{
var model = new TanuloApaczaiOsztondijKifizetesekSearchModel();
return PartialView("ApaczaiKifizetesekSearchPanel", model);
}
[MvcRolePackageDenyAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult LoadApaczaiKifizetesekView()
{
return PartialView("ApaczaiKifizetesek");
}
}
}

View file

@ -0,0 +1,20 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsDualisKepzohelyiOktato.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue)]
public class TanarNemTanitottTanulokController : Controller
{
public ActionResult Index()
{
var model = new TanarNemTanitottTanulokSearchModel();
model.EnableRowFunctions = ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue);
return View("Index", model);
}
}
}

View file

@ -0,0 +1,29 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue)]
public class TanarTanitottTanulokController : Controller
{
public ActionResult Index(bool? csakBukasraAllok = null)
{
var model = new TanarTanitottTanulokSearchModel
{
CsakBukasraAllok = csakBukasraAllok ?? false,
EnableRowFunctions = ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue)
};
return View("Index", model);
}
public ActionResult OpenStartPopup()
{
var model = new TanarTanitottTanulokStartPopUpModel();
return PartialView("Start_Popup", model);
}
}
}

View file

@ -0,0 +1,718 @@
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Mime;
using System.Text;
using System.Web;
using System.Web.Mvc;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Client.KGR;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
using Kreta.Web.Areas.Adminisztracio.Helpers;
using Kreta.Web.Areas.Adminisztracio.Models;
using Kreta.Web.Areas.Tanulo.Helper;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.Gondviselo.ClaimValue, KretaClaimPackages.CsokkentettGondviselo.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Tanulo.ClaimValue)]
public class TanuloApaczaiController : Controller
{
private readonly IKGRClient _kgrClient;
private readonly IKretaAuthorization _authorization;
public TanuloApaczaiController(IKGRClient kgrClient, IKretaAuthorization authorization)
{
_kgrClient = kgrClient ?? throw new ArgumentNullException(nameof(kgrClient));
_authorization = authorization ?? throw new ArgumentNullException(nameof(authorization));
}
// GET: Tanulo/TanuloApaczai
public ActionResult Index()
{
var palyazat = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetPalyazat(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
if (!_authorization.IsValidTanuloApaczai() && palyazat.Id == 0 && DateTime.Now > Core.Constants.ApaczaiVegeDatum)
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var szemelyesAdatok = new ProfilHelper().GetTanuloSajatAdatlapDataForInfo(ClaimData.FelhasznaloId, Request.Url.Host);
szemelyesAdatok.TanuloBankszamla.IsReadonly = true;
szemelyesAdatok.TanuloBankszamla.IdPostfix = "Apaczai";
szemelyesAdatok.TanuloBankszamla.BankszamlaSzamReadonlyTooltip = TanuloApaczaiResource.BankszamlaReadonlyTooltip;
szemelyesAdatok.HideControlsForApaczaiOD = true;
var elerhetosegAdatok = TanuloLogic.GetTanuloElerhetosegCimTelEmail(ClaimData.FelhasznaloId);
var tanuloDetailModel = AlapkepzesTanuloLogic.GetTanuloData(ClaimData.FelhasznaloId);
var isAdategyeztetesreVisszakuldve = palyazat.Statusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve || palyazat.Statusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve;
var palyazatiMenuModel = new TanuloApaczaiPalyazatMenuModel
{
PalyazatStatusz = palyazat.Statusz,
FellebbezesHatarido = palyazat.FellebbezesHatarido
};
var childModel = new List<object>{
palyazatiMenuModel
};
var isSzakkepzoJuttatas = new IntezmenyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetIntezmenyiAdatok().IsSzakkepzoJuttatas;
var dokumentumChildModel = new List<object>{
{
new TanuloApaczaiDokumentumMenuModel
{
PalyazatStatusz = palyazat.Statusz,
IsSzakkepzoJuttatas = isSzakkepzoJuttatas
}
}
};
var model = new TanuloApaczaiModel
{
PanelName = "ApaczaiMenu",
ExpandMode = Kendo.Mvc.UI.PanelBarExpandMode.Multiple,
ChildModels = new List<PanelBarChildModel>
{
new PanelBarChildModel
{
PartialViewTitle = TanuloApaczaiResource.SzemelyesMenu,
PartialViewName = "SzemelyesMenuPartialView",
},
new PanelBarChildModel
{
PartialViewTitle = TanuloApaczaiResource.PalyazatiMenu,
PartialViewName = "PalyazatiMenuPartialView",
Data = childModel,
},
new PanelBarChildModel
{
PartialViewTitle = TanuloApaczaiResource.DokumentumokMenu,
PartialViewName = "DokumentumokMenuPartialView",
Data = dokumentumChildModel,
},
},
SajatAdatlapInfo = szemelyesAdatok,
CimElerhetoseg = elerhetosegAdatok,
AtlagokInfo = new TanuloApaczaiAtlagokModel
{
KeziAtlag = isAdategyeztetesreVisszakuldve ? palyazat.Palyazo.KeziAtlag : null,
SzamitottAtlag = tanuloDetailModel.TanuloJuttatasModel.SzamitottAtlag,
Feljegyzes = isAdategyeztetesreVisszakuldve ? palyazat.Palyazo.AtlagKomment : null,
HatranyosHelyzetIgazolasKiallitasDatuma = isAdategyeztetesreVisszakuldve ? palyazat.HatranyosHelyzetHatarozatDatum.Year : (int?)null,
PalyazatStatusz = palyazat.Statusz
},
IsSzakkepzoJuttatas = isSzakkepzoJuttatas
};
return View(model);
}
public ActionResult HomePartialView()
{
var model = new TanuloApaczaiHomeModel
{
TanuloNeve = ClaimData.FelhasznaloNev,
};
return PartialView("HomePartialView", model);
}
public ActionResult AlapadatokPartialView(SajatAdatlapInfoModel model)
{
return PartialView("AlapadatokPartialView", model);
}
public ActionResult ElerhetosegekPartialView(CimElerhetosegModel model)
{
return PartialView("ElerhetosegekPartialView", model);
}
public ActionResult BankszamlaAdatokPartialView(TanuloBankszamlaModel model)
{
model.IdPostfix = "Apaczai";
return PartialView("BankszamlaAdatokPartialView", model);
}
public ActionResult PalyazatBenyujtasaPartialView(TanuloApaczaiModel model)
{
var apaczaiHelper = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var (countEgyebDokumentum, countHatranyosHelyzetIgazolasa, countHozzajaruloDokumentum, countElozoTanevEvvegiBizonyitvany, countMentoriTamogatoNyilatkozat) = apaczaiHelper.GetFeltoltottDokumentumKategoriak(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
var pageModel = new TanuloApaczaiPalyazatBenyujtasModel
{
TanuloId = ClaimData.FelhasznaloId,
ContentModel = new TanuloApaczaiPalyazatBenyujtasContentModel
{
AlapAdatModel = model.SajatAdatlapInfo,
BankszamlaModel = model.SajatAdatlapInfo.TanuloBankszamla,
ElerhetosegModel = model.CimElerhetoseg,
AtlagokModel = new TanuloApaczaiAtlagokModel
{
KeziAtlag = model.AtlagokInfo.KeziAtlag,
SzamitottAtlag = model.AtlagokInfo.SzamitottAtlag,
Feljegyzes = model.AtlagokInfo.Feljegyzes,
HatranyosHelyzetIgazolasKiallitasDatuma = model.AtlagokInfo.HatranyosHelyzetIgazolasKiallitasDatuma,
PalyazatStatusz = model.AtlagokInfo.PalyazatStatusz
},
DokumentumokModel = new TanuloApaczaiDokumentumokModel
{
CountEgyebDokumentum = countEgyebDokumentum,
CountHatranyosHelyzetIgazolas = countHatranyosHelyzetIgazolasa,
CountHozzajaruloDokumentum = countHozzajaruloDokumentum,
CountMentoriTamogatoNyilatkozat = countMentoriTamogatoNyilatkozat,
CountElozoTanevEvvegiBizonyitvany = countElozoTanevEvvegiBizonyitvany,
}
},
StepDisplayModel = new StepDisplayModel
{
BaseColor = ColorTranslator.ToHtml(Color.Black),
Height = "50px",
Radius = 20,
SelectedColor = ColorTranslator.ToHtml(Color.LightSlateGray),
Steps = 4,
Width = "100%",
}
};
return PartialView("PalyazatBenyujtasaPartialView", pageModel);
}
public ActionResult OpenPalyazatBenyujtasWizard(int tanuloId, TanuloApaczaiPalyazatBenyujtasContentModel contentModel)
{
var model = new TanuloApaczaiPalyazatBenyujtasModel
{
TanuloId = tanuloId,
Title = TanuloApaczaiResource.PalyazatBenyujtasWizardPage1Title,
Percentage = 25,
ContentModel = contentModel,
};
return PartialView("PalyazatBenyujtasPage1PartialView", model);
}
public ActionResult OpenPalyazatBenyujtasDokumentumokWizard(int tanuloId, TanuloApaczaiPalyazatBenyujtasContentModel contentModel)
{
var (countEgyebDokumentum, countHatranyosHelyzetIgazolas, countHozzajaruloDokumentum, countElozoTanevEvvegiBizonyitvany, countMentoriTamogatoNyilatkozat) = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetFeltoltottDokumentumKategoriak(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
var model = new TanuloApaczaiPalyazatBenyujtasDokumentumokModel
{
TanuloId = tanuloId,
Title = TanuloApaczaiResource.PalyazatBenyujtasWizardPage2Title,
Percentage = 50,
ContentModel = new TanuloApaczaiPalyazatBenyujtasDokumentumokContentModel
{
CountEgyebDokumentum = countEgyebDokumentum,
CountHatranyosHelyzetIgazolas = countHatranyosHelyzetIgazolas,
CountHozzajaruloDokumentum = countHozzajaruloDokumentum,
CountMentoriTamogatoNyilatkozat = countMentoriTamogatoNyilatkozat,
CountElozoTanevEvvegiBizonyitvany = countElozoTanevEvvegiBizonyitvany,
UploadAllowed = true,
PalyazatStatusz = contentModel.AtlagokModel.PalyazatStatusz,
},
};
return PartialView("PalyazatBenyujtasPage2PartialView", model);
}
public ActionResult OpenPalyazatBenyujtasAtlagokWizard(int tanuloId, TanuloApaczaiPalyazatBenyujtasContentModel contentModel)
{
var model = new TanuloApaczaiPalyazatBenyujtasAtlagokModel
{
TanuloId = tanuloId,
Title = TanuloApaczaiResource.PalyazatBenyujtasWizardPage3Title,
Percentage = 75,
ContentModel = new TanuloApaczaiPalyazatBenyujtasAtlagokContentModel()
{
SzamitottAtlag = contentModel.AtlagokModel.SzamitottAtlag,
KeziAtlag = contentModel.AtlagokModel.KeziAtlag,
HatranyosHelyzetIgazolasKiallitasDatuma = contentModel.AtlagokModel.HatranyosHelyzetIgazolasKiallitasDatuma,
Feljegyzes = contentModel.AtlagokModel.Feljegyzes,
CountElozoTanevEvvegiBizonyitvany = contentModel.DokumentumokModel.CountElozoTanevEvvegiBizonyitvany,
PalyazatStatusz = contentModel.AtlagokModel.PalyazatStatusz
}
};
return PartialView("PalyazatBenyujtasPage3PartialView", model);
}
public ActionResult OpenPalyazatBenyujtasOsszegzoWizard(int tanuloId, TanuloApaczaiPalyazatBenyujtasContentModel contentModel)
{
var (countEgyebDokumentum, countHatranyosHelyzetIgazolas, countHozzajaruloDokumentum, countElozoTanevEvvegiBizonyitvany, countMentoriTamogatoNyilatkozat) = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetFeltoltottDokumentumKategoriak(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
contentModel.AlapAdatModel.PartialViewTitle = TanuloApaczaiResource.SzemelyesAdatok;
contentModel.AlapAdatModel.PartialViewName = "PalyazatBenyujtasPage4SzemelyesAdatokPartialView";
contentModel.BankszamlaModel.PartialViewTitle = TanuloResource.BankszamlaSzamAdatokTanuloiFejlec;
contentModel.BankszamlaModel.PartialViewName = "BankszamlaEditor";
contentModel.ElerhetosegModel.PartialViewTitle = TanuloResource.Elerhetosegek;
contentModel.ElerhetosegModel.PartialViewName = "_Tanulo_Elerhetoseg_Adatlap_Partial";
var model = new TanuloApaczaiPalyazatBenyujtasOsszegzesModel
{
TanuloId = tanuloId,
Title = TanuloApaczaiResource.PalyazatBenyujtasWizardPage4Title,
Percentage = 90,
PanelBarModel = new PanelBarBaseModel
{
PanelName = "OsszegzoPanelbar",
ExpandMode = Kendo.Mvc.UI.PanelBarExpandMode.Multiple,
ChildModels = new List<PanelBarChildModel>
{
contentModel.AlapAdatModel,
contentModel.ElerhetosegModel,
contentModel.BankszamlaModel,
new TanuloApaczaiPalyazatBenyujtasDokumentumokContentModel
{
PartialViewTitle = TanuloApaczaiResource.DokumentumokMenu,
PartialViewName = "PalyazatBenyujtasDokumentumokContentPartialView",
CountEgyebDokumentum = countEgyebDokumentum,
CountHatranyosHelyzetIgazolas = countHatranyosHelyzetIgazolas,
CountHozzajaruloDokumentum = countHozzajaruloDokumentum,
CountMentoriTamogatoNyilatkozat = countMentoriTamogatoNyilatkozat,
CountElozoTanevEvvegiBizonyitvany = countElozoTanevEvvegiBizonyitvany,
PalyazatStatusz = contentModel.AtlagokModel.PalyazatStatusz,
},
new TanuloApaczaiPalyazatBenyujtasAtlagokContentModel
{
PartialViewTitle = TanuloApaczaiResource.PalyazatBenyujtasWizardPage3Title,
PartialViewName = "PalyazatBenyujtasAtlagokContentPartialView",
SzamitottAtlag = contentModel.AtlagokModel.SzamitottAtlag,
KeziAtlag = contentModel.AtlagokModel.KeziAtlag,
HatranyosHelyzetIgazolasKiallitasDatuma = contentModel.AtlagokModel.HatranyosHelyzetIgazolasKiallitasDatuma,
Feljegyzes = contentModel.AtlagokModel.Feljegyzes,
IsReadOnly = true,
}
},
},
};
return PartialView("PalyazatBenyujtasPage4PartialView", model);
}
public ActionResult OpenPalyazatBenyujtasOsszegzoPopup()
{
var apaczaiHelper = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var palyazat = apaczaiHelper.GetPalyazat(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
var palyazatDokumentumai = apaczaiHelper.GetPalyazatDokumentumai(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
var contentModel = new TanuloApaczaiPalyazatBenyujtasContentModel();
var szemelyesAdatok = new SajatAdatlapInfoModel
{
AlapAdat = new SajatAdatlapInfoModel.AlapAdatModel
{
EloTag = palyazat.Palyazo.EloTag,
CsaladiNev = palyazat.Palyazo.CsaladiNev,
Utonev = palyazat.Palyazo.Utonev,
SzuletesiCsaladNev = palyazat.Palyazo.SzuletesiCsaladNev,
SzuletesiUtonev = palyazat.Palyazo.SzuletesiUtonev,
AnyjaCsaladiNeve = palyazat.Palyazo.AnyjaSzuletesiCsaladiNev,
AnyjaUtonev = palyazat.Palyazo.AnyjaSzuletesiUtonev,
SzuletesiIdo = palyazat.Palyazo.SzuletesiIdo,
SzuletesiHely = palyazat.Palyazo.SzuletesiHely,
SzuletesiOrszag = palyazat.Palyazo.SzuletesiOrszag,
Anyanyelv = palyazat.Palyazo.Anyanyelv,
Allampolgarsag = palyazat.Palyazo.Allampolgarsag,
Allampolgarsag2 = palyazat.Palyazo.Allampolgarsag2,
OktatasiAzonosito = palyazat.Palyazo.OktatasiAzonosito,
},
TanuloBankszamla = new TanuloBankszamlaModel
{
BankszamlaSzam = palyazat.Palyazo.Bankszamla.BankszamlaSzam,
BankszamlaTulajdonos = EnumExtensions.GetIdByDisplayName(palyazat.Palyazo.Bankszamla.BankszamlaTulajdonosa, GeneratedAdatszotarTipusEnum.BankszamlaTulajdonosTipus, ClaimData.SelectedTanevID.Value),
BankszamlaTulajdonosNeve = palyazat.Palyazo.Bankszamla.BankszamlaTulajdonosNeve,
SzamlavezetoBank = palyazat.Palyazo.Bankszamla.SzamlavezetoBank
},
TanuloIgazolvany = new SajatAdatlapInfoModel.TanuloIgazolvanyModel
{
TajSzam = palyazat.Palyazo.TAJszam,
},
HideControlsForApaczaiOD = true
};
szemelyesAdatok.TanuloBankszamla.IsReadonly = true;
var elerhetosegAdatok = new CimElerhetosegModel
{
Orszag = EnumExtensions.GetIdByDisplayName(palyazat.Palyazo.AllandoElerhetoseg.Orszag, GeneratedAdatszotarTipusEnum.OrszagTipus, ClaimData.SelectedTanevID.Value),
CimTipus = EnumExtensions.GetIdByDisplayName(palyazat.Palyazo.AllandoElerhetoseg.CimTipus, GeneratedAdatszotarTipusEnum.CimTipus, ClaimData.SelectedTanevID.Value),
Iranyitoszam = palyazat.Palyazo.AllandoElerhetoseg.Iranyitoszam,
Iranyitoszam_Str = palyazat.Palyazo.AllandoElerhetoseg.Iranyitoszam,
HelysegNev = palyazat.Palyazo.AllandoElerhetoseg.HelysegNev,
HelysegNev_Str = palyazat.Palyazo.AllandoElerhetoseg.HelysegNev,
KozteruletNev = palyazat.Palyazo.AllandoElerhetoseg.KozteruletNev,
KozteruletTipus_Str = palyazat.Palyazo.AllandoElerhetoseg.KozteruletTipus,
KozteruletTipus = palyazat.Palyazo.AllandoElerhetoseg.KozteruletTipus,
Hazszam = palyazat.Palyazo.AllandoElerhetoseg.Hazszam,
Emelet = palyazat.Palyazo.AllandoElerhetoseg.Emelet,
Ajto = palyazat.Palyazo.AllandoElerhetoseg.Ajto,
Telefon = palyazat.Palyazo.AllandoElerhetoseg.TelefonSzam,
TelefonTipus = EnumExtensions.GetIdByDisplayName(palyazat.Palyazo.AllandoElerhetoseg.TelefonTipus, GeneratedAdatszotarTipusEnum.TelefonTipus, ClaimData.SelectedTanevID.Value),
Emailcim_Input = palyazat.Palyazo.AllandoElerhetoseg.Emailcim,
EmailTipus = EnumExtensions.GetIdByDisplayName(palyazat.Palyazo.AllandoElerhetoseg.EmailTipus, GeneratedAdatszotarTipusEnum.EmailTipus, ClaimData.SelectedTanevID.Value),
TartozkodasiOrszag = EnumExtensions.GetIdByDisplayName(palyazat.Palyazo.TartozkodasiElerhetoseg.Orszag, GeneratedAdatszotarTipusEnum.OrszagTipus, ClaimData.SelectedTanevID.Value),
TartozkodasiIranyitoszam = palyazat.Palyazo.TartozkodasiElerhetoseg.Iranyitoszam,
TartozkodasiHelysegNev = palyazat.Palyazo.TartozkodasiElerhetoseg.HelysegNev,
TartozkodasiKozteruletNev = palyazat.Palyazo.TartozkodasiElerhetoseg.KozteruletNev,
TartozkodasiKozteruletTipusNev = palyazat.Palyazo.TartozkodasiElerhetoseg.KozteruletTipus,
TartozkodasiHazszam = palyazat.Palyazo.TartozkodasiElerhetoseg.Hazszam,
TartozkodasiEmelet = palyazat.Palyazo.TartozkodasiElerhetoseg.Emelet,
TartozkodasiAjto = palyazat.Palyazo.TartozkodasiElerhetoseg.Ajto
};
contentModel.AlapAdatModel = szemelyesAdatok;
contentModel.AlapAdatModel.PartialViewTitle = TanuloApaczaiResource.SzemelyesAdatok;
contentModel.AlapAdatModel.PartialViewName = "PalyazatBenyujtasPage4SzemelyesAdatokPartialView";
contentModel.BankszamlaModel = szemelyesAdatok.TanuloBankszamla;
contentModel.BankszamlaModel.PartialViewTitle = TanuloResource.BankszamlaSzamAdatokTanuloiFejlec;
contentModel.BankszamlaModel.PartialViewName = "BankszamlaEditor";
contentModel.ElerhetosegModel = elerhetosegAdatok;
contentModel.ElerhetosegModel.PartialViewTitle = TanuloResource.Elerhetosegek;
contentModel.ElerhetosegModel.PartialViewName = "_Tanulo_Elerhetoseg_Adatlap_Partial";
contentModel.AtlagokModel = new TanuloApaczaiAtlagokModel
{
KeziAtlag = palyazat.Palyazo.KeziAtlag,
SzamitottAtlag = palyazat.Palyazo.SzamitottAtlag,
Feljegyzes = palyazat.Palyazo.AtlagKomment,
HatranyosHelyzetIgazolasKiallitasDatuma = palyazat.HatranyosHelyzetHatarozatDatum.Year
};
var model = new TanuloApaczaiPalyazatBenyujtasOsszegzesModel
{
TanuloId = ClaimData.FelhasznaloId,
Title = "",
PanelBarModel = new PanelBarBaseModel
{
PanelName = "OsszegzoPanelbar",
ExpandMode = Kendo.Mvc.UI.PanelBarExpandMode.Multiple,
ChildModels = new List<PanelBarChildModel>
{
contentModel.AlapAdatModel,
contentModel.ElerhetosegModel,
contentModel.BankszamlaModel,
new TanuloApaczaiPalyazatBenyujtasDokumentumokContentModel
{
PartialViewTitle = TanuloApaczaiResource.DokumentumokMenu,
PartialViewName = "PalyazatBenyujtasDokumentumokContentPartialView",
CountEgyebDokumentum = palyazatDokumentumai.Count(x => x.Kategoria == ApaczaiDokumentumTipusEnum.Egyeb),
CountHatranyosHelyzetIgazolas = palyazatDokumentumai.Count(x => x.Kategoria == ApaczaiDokumentumTipusEnum.HatranyosHelyzetIgazolas),
CountHozzajaruloDokumentum = palyazatDokumentumai.Count(x => x.Kategoria == ApaczaiDokumentumTipusEnum.HozzajaruloNyilatkozat),
CountMentoriTamogatoNyilatkozat = palyazatDokumentumai.Count(x => x.Kategoria == ApaczaiDokumentumTipusEnum.MentoriTamogatoNyilatkozat),
CountElozoTanevEvvegiBizonyitvany = palyazatDokumentumai.Count(x => x.Kategoria == ApaczaiDokumentumTipusEnum.ElozoTanevEvvegiBizonyitvany),
PalyazatStatusz = palyazat.Statusz,
},
new TanuloApaczaiPalyazatBenyujtasAtlagokContentModel
{
PartialViewTitle = TanuloApaczaiResource.PalyazatBenyujtasWizardPage3Title,
PartialViewName = "PalyazatBenyujtasAtlagokContentPartialView",
KeziAtlag = palyazat.Palyazo.KeziAtlag,
SzamitottAtlag = palyazat.Palyazo.SzamitottAtlag,
Feljegyzes = palyazat.Palyazo.AtlagKomment,
HatranyosHelyzetIgazolasKiallitasDatuma = palyazat.HatranyosHelyzetHatarozatDatum.Year,
IsReadOnly = true,
}
},
},
};
var popupModel = new PopUpModel(model, "BenyujtottPalyazatOsszegzoPopup");
popupModel.AddCancelBtn(popupModel, "PalyazatAllapotaHelper.PalyazatAllapotaPopupCancel");
return PartialView(Constants.General.PopupView, popupModel);
}
public ActionResult PalyazatAllapotaPartialView()
{
var apaczaiHelper = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var palyazatAllapota = apaczaiHelper.GetPalyazat(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
var palyazatDokumentumai = apaczaiHelper.GetPalyazatDokumentumai(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
var palyazatiDontesDokumentum = palyazatDokumentumai.Where(d => d.Kategoria == ApaczaiDokumentumTipusEnum.PalyazatiDontes)
.OrderByDescending(d => d.Datum)
.FirstOrDefault();
var tamogatoiOkiratDokumentum = palyazatDokumentumai.Where(d => d.Kategoria == ApaczaiDokumentumTipusEnum.TamogatoiOkirat)
.OrderByDescending(d => d.Datum)
.FirstOrDefault();
var model = new TanuloApaczaiPalyazatAllapotaModel(palyazatAllapota, palyazatiDontesDokumentum, tamogatoiOkiratDokumentum);
return PartialView("PalyazatAllapotaPartialView", model);
}
public ActionResult PalyazatiEsemenyekPartialView()
{
var esemenyek = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetPalyazatiEsemenyek(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
var model = new TanuloApaczaiPalyazatiEsemenyekModel
{
Merfoldkovek = esemenyek.Select(x => new TanuloApaczaiPalyazatiEsemenyMerfoldkoModel(x)),
};
return PartialView("PalyazatiEsemenyekPartialView", model);
}
public ActionResult DokumentumHozzaadasaPartialView(TanuloApaczaiModel model)
{
var palyazatDokumentumai = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetPalyazatDokumentumai(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
var dokumentumHozzaadasaModel = new TanuloApaczaiDokumentumHozzaadasaModel
{
HatranyosHelyzetIgazolasaFajlnevek = palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.HatranyosHelyzetIgazolas).Select(x => x.Nev).ToList(),
HozzajaruloNyilatkozatFajlnevek = palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.HozzajaruloNyilatkozat).Select(x => x.Nev).ToList(),
MentoriTamogatoNyilatkozatFajlnevek = palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.MentoriTamogatoNyilatkozat).Select(x => x.Nev).ToList(),
EgyebDokumentumFajlnevek = palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.Egyeb).Select(x => x.Nev).ToList(),
ElozoTanevEvvegiBizonyitvanyFajlnevek = palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.ElozoTanevEvvegiBizonyitvany).Select(x => x.Nev).ToList(),
PalyazatStatusz = model.AtlagokInfo.PalyazatStatusz,
};
return PartialView("DokumentumHozzaadasaPartialView", dokumentumHozzaadasaModel);
}
public ActionResult DokumentumokMegtekintesePartialView(TanuloApaczaiModel tanuloApaczaiModel)
{
var apaczaiHelper = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var palyazat = apaczaiHelper.GetPalyazat(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
var palyazatDokumentumai = apaczaiHelper.GetPalyazatDokumentumai(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
var model = new TanuloApaczaiDokumentumokMegtekinteseModel
{
Statusz = palyazat.Statusz,
};
var hatranyosHelyzet = new TanuloApaczaiDokumentumKategoriaModel
{
DokumentumkategoriaAzonosito = "HatranyosHelyzetIgazolasa",
DokumentumKategoriaNeve = TanuloApaczaiResource.HatranyosHelyzetIgazolasa,
};
hatranyosHelyzet.DokumentumList.AddRange(palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.HatranyosHelyzetIgazolas).Select(x => new TanuloApaczaiDokumentumModel
{
DokumentumId = x.Azonosito,
DokumentumNev = x.Nev,
}));
var hozzajaruloNyilatkozat = new TanuloApaczaiDokumentumKategoriaModel
{
DokumentumkategoriaAzonosito = "Hozzajarulo",
DokumentumKategoriaNeve = TanuloApaczaiResource.HozzajaruloNyilatkozat
};
hozzajaruloNyilatkozat.DokumentumList.AddRange(palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.HozzajaruloNyilatkozat).Select(x => new TanuloApaczaiDokumentumModel
{
DokumentumId = x.Azonosito,
DokumentumNev = x.Nev,
}));
var mentoriTamogatoNyilatkozat = new TanuloApaczaiDokumentumKategoriaModel
{
DokumentumkategoriaAzonosito = "MentoriTamogatoNyilatkozat",
DokumentumKategoriaNeve = TanuloApaczaiResource.MentoriTamogatoNyilatkozat
};
mentoriTamogatoNyilatkozat.DokumentumList.AddRange(palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.MentoriTamogatoNyilatkozat).Select(x => new TanuloApaczaiDokumentumModel
{
DokumentumId = x.Azonosito,
DokumentumNev = x.Nev,
}));
var palyazatiDontes = new TanuloApaczaiDokumentumKategoriaModel
{
DokumentumkategoriaAzonosito = "PalyazatiDontes",
DokumentumKategoriaNeve = TanuloApaczaiResource.PalyazatiDontes
};
palyazatiDontes.DokumentumList.AddRange(palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.PalyazatiDontes).Select(x => new TanuloApaczaiDokumentumModel
{
DokumentumId = x.Azonosito,
DokumentumNev = x.Nev,
}));
var tamogatoiOkirat = new TanuloApaczaiDokumentumKategoriaModel
{
DokumentumkategoriaAzonosito = "TamogatoiOkirat",
DokumentumKategoriaNeve = TanuloApaczaiResource.TamogatoiOkirat
};
tamogatoiOkirat.DokumentumList.AddRange(palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.TamogatoiOkirat).Select(x => new TanuloApaczaiDokumentumModel
{
DokumentumId = x.Azonosito,
DokumentumNev = x.Nev,
}));
var egyebDokumentumok = new TanuloApaczaiDokumentumKategoriaModel
{
DokumentumkategoriaAzonosito = "Egyeb",
DokumentumKategoriaNeve = TanuloApaczaiResource.EgyebDokumentumok
};
egyebDokumentumok.DokumentumList.AddRange(palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.Egyeb).Select(x => new TanuloApaczaiDokumentumModel
{
DokumentumId = x.Azonosito,
DokumentumNev = x.Nev,
}));
var elozoTanevEvvegiBizonyitvany = new TanuloApaczaiDokumentumKategoriaModel
{
DokumentumkategoriaAzonosito = "ElozoTanevEvvegiBizonyitvany",
DokumentumKategoriaNeve = TanuloApaczaiResource.ElozoTanevEvvegiBizonyitvany,
};
elozoTanevEvvegiBizonyitvany.DokumentumList.AddRange(palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.ElozoTanevEvvegiBizonyitvany).Select(x => new TanuloApaczaiDokumentumModel
{
DokumentumId = x.Azonosito,
DokumentumNev = x.Nev,
}));
var eszaAdatlapokKezelese = new TanuloApaczaiDokumentumKategoriaModel
{
DokumentumkategoriaAzonosito = "EszaAdatlapok",
DokumentumKategoriaNeve = TanuloApaczaiResource.EszaAdatlapok,
IsDeleteDocumentEnabled = false
};
eszaAdatlapokKezelese.DokumentumList.AddRange(palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.EszaTipus).Select(x => new TanuloApaczaiDokumentumModel
{
DokumentumId = x.Azonosito,
DokumentumNev = x.Nev,
}));
model.KategoriaList.Add(hatranyosHelyzet);
model.KategoriaList.Add(hozzajaruloNyilatkozat);
model.KategoriaList.Add(mentoriTamogatoNyilatkozat);
model.KategoriaList.Add(elozoTanevEvvegiBizonyitvany);
model.KategoriaList.Add(egyebDokumentumok);
model.KategoriaList.Add(palyazatiDontes);
if (palyazat.Statusz == ApaczaiPalyazatStatuszEnum.Elfogadott)
{
model.KategoriaList.Add(tamogatoiOkirat);
}
if (tanuloApaczaiModel.IsSzakkepzoJuttatas && palyazat.Statusz == ApaczaiPalyazatStatuszEnum.Elfogadott)
{
model.KategoriaList.Add(eszaAdatlapokKezelese);
}
return PartialView("DokumentumokMegtekintesePartialView", model);
}
public ActionResult EszaAdatlapokMegtekintesePartialView()
{
var palyazatDokumentumai = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetPalyazatDokumentumai(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito);
var tanuloApaczaiEszaAdatlapokMegtekinteseModel = new TanuloApaczaiEszaAdatlapokMegtekinteseModel
{
EszaBelepoNyilatkozatIgazolasaFajlnevek = palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.EszaTipus && x.EszaTipus == TanuloApaczaiResource.EszaBelepoNyilatkozat).Select(x => x.Nev).ToList(),
EszaKilepoNyilatkozatIgazolasaFajlnevek = palyazatDokumentumai.Where(x => x.Kategoria == ApaczaiDokumentumTipusEnum.EszaTipus && x.EszaTipus == TanuloApaczaiResource.EszaKilepoNyilatkozat).Select(x => x.Nev).ToList(),
};
return PartialView("EszaAdatlapokMegtekintesePartialView", tanuloApaczaiEszaAdatlapokMegtekinteseModel);
}
public ActionResult DownloadFile(Guid id, string fileName)
{
try
{
var palyazatDokumentuma = new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetPalyazatDokumentuma(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito, id);
return new FileContentResult(palyazatDokumentuma, MediaTypeNames.Application.Octet)
{
FileDownloadName = HttpUtility.UrlEncode(fileName, Encoding.UTF8),
};
}
catch (Exception ex)
{
if (ex.Data["ApaczaiHiba"] != null)
{
throw new StatusError(HttpStatusCode.BadRequest, null) { Json = ex.Data["ApaczaiHiba"], };
}
throw new StatusError(HttpStatusCode.BadRequest, ex.Message, ex);
}
}
public JsonResult UploadHatranyosHelyzetIgazolasa(HttpPostedFileBase hatranyosHelyzetIgazolasa)
{
return UploadFile(hatranyosHelyzetIgazolasa, ApaczaiDokumentumTipusEnum.HatranyosHelyzetIgazolas);
}
public JsonResult UploadEszaBelepoNyilatkozatIgazolasa(HttpPostedFileBase eszaBelepoNyilatkozatIgazolasa)
{
return UploadFile(eszaBelepoNyilatkozatIgazolasa, ApaczaiDokumentumTipusEnum.EszaBelepoNyilatkozat);
}
public JsonResult UploadEszaKilepoNyilatkozatIgazolasa(HttpPostedFileBase eszaKilepoNyilatkozatIgazolasa)
{
return UploadFile(eszaKilepoNyilatkozatIgazolasa, ApaczaiDokumentumTipusEnum.EszaKilepoNyilatkozat);
}
public JsonResult UploadHozzajaruloNyilatkozat(HttpPostedFileBase hozzajaruloNyilatkozat)
{
return UploadFile(hozzajaruloNyilatkozat, ApaczaiDokumentumTipusEnum.HozzajaruloNyilatkozat);
}
public JsonResult UploadMentoriTamogatoNyilatkozat(HttpPostedFileBase mentoriTamogatoNyilatkozat)
{
return UploadFile(mentoriTamogatoNyilatkozat, ApaczaiDokumentumTipusEnum.MentoriTamogatoNyilatkozat);
}
public JsonResult UploadEgyebDokumentum(HttpPostedFileBase egyebDokumentum)
{
return UploadFile(egyebDokumentum, ApaczaiDokumentumTipusEnum.Egyeb);
}
public JsonResult UploadElozoTanevEvvegiBizonyitvanyDokumentum(HttpPostedFileBase elozoTanevEvvegiBizonyitvanyDokumentum)
{
return UploadFile(elozoTanevEvvegiBizonyitvanyDokumentum, ApaczaiDokumentumTipusEnum.ElozoTanevEvvegiBizonyitvany);
}
public ActionResult PalyazatFellebbezesPartialView()
{
var model = new TanuloApaczaiFellebbezesModel();
return PartialView("FellebbezesPartialView", model);
}
public ActionResult DeleteDokumentum(Guid dokumentumId)
{
try
{
if (new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).DeletePalyazatDokumentuma(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito, dokumentumId))
{
return Json(new { dokumentumId });
}
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.SikertelenApaczaiDokumentumTorles);
}
catch (Exception ex)
{
if (ex.Data["ApaczaiHiba"] != null)
{
throw new StatusError(HttpStatusCode.BadRequest, null) { Json = ex.Data["ApaczaiHiba"], };
}
throw new StatusError(HttpStatusCode.BadRequest, ex.Message, ex);
}
}
private JsonResult UploadFile(HttpPostedFileBase dokumentum, ApaczaiDokumentumTipusEnum apaczaiDokumentumTipus)
{
var ms = new MemoryStream(dokumentum.ContentLength);
dokumentum.InputStream.CopyTo(ms);
var bytes = ms.ToArray();
ms.Dispose();
var uploadedFileCo = new UploadedFileCO
{
PostedFile = bytes,
PostedFileContentType = dokumentum.ContentType,
PostedFileName = dokumentum.FileName,
ApaczaiDokumentumTipus = apaczaiDokumentumTipus
};
try
{
if (!new TanuloApaczaiHelper(ConnectionTypeExtensions.GetSessionConnectionType()).UploadPalyazatDokumentumBinaryMode(_kgrClient, ClaimData.FelhasznaloIdpEgyediAzonosito, (int)apaczaiDokumentumTipus, uploadedFileCo))
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.SikertelenApaczaiDokumentumFeltoltes);
}
}
catch (Exception ex)
{
if (ex.Data["ApaczaiHiba"] != null)
{
throw new StatusError(HttpStatusCode.BadRequest, null) { Json = ex.Data["ApaczaiHiba"], };
}
throw new StatusError(HttpStatusCode.BadRequest, ex.Message, ex);
}
return Json(null);
}
}
}

View file

@ -0,0 +1,22 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.Orarend.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Ellenorzo.ClaimValue,
KretaClaimPackages.Tanulo.ClaimValue,
KretaClaimPackages.Gondviselo.ClaimValue)]
public class TanuloBejelentettSzamonkeresekController : Controller
{
public ActionResult Index()
{
var model = new BejelentettSzamonkeresekSearchModel();
return View("Index", model);
}
}
}

View file

@ -0,0 +1,896 @@
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 Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
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.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Modal;
using Kreta.Web.Models;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue)]
public class TanuloController : BaseTanuloController
{
[MvcRolePackageDenyAuthorize(TanevEnum.Mind, KretaClaimPackages.Osztalyfonok.ClaimValue)]
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.IsLEPKezelo.ClaimValue)]
public ActionResult Index(string filter)
{
if (ClaimData.IsCsokkentettTanuloLEP)
{
return View("IndexLEP", new TanuloSearchModel());
}
var model = TanuloSearchModel.SetFilterTanuloSearchModel(filter);
model.FeladatEllatasiHelyId = ClaimData.FelhelySzuro;
TanuloLogic.SetButtonVisibility(model);
return View("Index", model);
}
[MvcRolePackageDenyAuthorize(TanevEnum.Mind, KretaClaimPackages.Osztalyfonok.ClaimValue)]
[System.Web.Mvc.ActionName("AktivTanulok")]
public ActionResult Index()
{
var model = new TanuloSearchModel
{
FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria,
Aktiv = true
};
TanuloLogic.SetButtonVisibility(model);
return View("Index", model);
}
[MvcRolePackageDenyAuthorize(TanevEnum.Mind, KretaClaimPackages.Osztalyfonok.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);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetPartialView(string id, string partialViewName, string IsFromSzervezet = null)
{
var isFromSzervezet = SDAConvert.ToBoolean(IsFromSzervezet);
var model = AlapkepzesTanuloLogic.GetTanuloData(int.Parse(id));
model.TanuloApiControllerName = isFromSzervezet ? Constants.ApiControllers.DualisTanuloApi : Constants.ApiControllers.TanuloApi;
model.IsFromSzervezet = isFromSzervezet;
return PartialView(partialViewName, model);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetSzakkepzesiJuttatasokPartialView(string id, string osztalyCsoportIdString, string partialViewName)
{
int? osztalyCsoportId = null;
if (int.TryParse(osztalyCsoportIdString, out var resultId))
{ osztalyCsoportId = resultId; }
var tanuloModel = AlapkepzesTanuloLogic.GetTanuloData(int.Parse(id), osztalyCsoportId);
var model = new SzakkepzesiJuttatasokModel
{
TanuloiOsztondijPanelBar = new TanuloiOsztondijPanelBarModel
{
Animation = true,
ChildModels = new List<PanelBarChildModel>
{
new PanelBarChildModel
{
PartialViewTitle = TanuloResource.TanuloOsztondijAdatai,
PartialViewName = "TanuloiOsztondijInfoPanelBar",
Data = new List<object> { tanuloModel },
}
},
ExpandMode = Kendo.Mvc.UI.PanelBarExpandMode.Multiple,
PanelName = "TanuloiOsztondijPanel",
},
EgyszeriPayakezdesiPanelBar = new EgyszeriPalyakezdesiPanelBarModel
{
Animation = true,
ChildModels = new List<PanelBarChildModel>
{
new PanelBarChildModel
{
PartialViewTitle = TanuloResource.EgyszeriPalyakezdesiJuttatas,
PartialViewName = "EgyszeriPalyakezdesiPanelBar",
Data = new List<object> { tanuloModel.TanuloEgyszeriPalyakezdesiModel },
}
},
ExpandMode = Kendo.Mvc.UI.PanelBarExpandMode.Multiple,
PanelName = "EgyszeriPalyakezdesiPanel",
},
ApaczaiOsztondijPanelBar = new ApaczaiOsztondijPanelBarModel
{
Animation = true,
ChildModels = new List<PanelBarChildModel>
{
new PanelBarChildModel
{
PartialViewTitle = TanuloResource.ApaczaiOsztondijAdatai,
PartialViewName = "ApaczaiOsztondijInfoPanelBar",
Data = new List<object> { tanuloModel },
}
},
ExpandMode = Kendo.Mvc.UI.PanelBarExpandMode.Multiple,
PanelName = "ApaczaiOsztondijPanel",
},
};
return PartialView(partialViewName, model);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public ActionResult GetModPartialView(string id, string partialViewName)
{
var model = AlapkepzesTanuloLogic.GetModTanuloData(int.Parse(id));
return PartialView(partialViewName, model);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetPartialViewWithOsztalycsoport(string id, string osztalyCsoportIdString, string partialViewName)
{
int? osztalyCsoportId = null;
if (int.TryParse(osztalyCsoportIdString, out var resultId))
{ osztalyCsoportId = resultId; }
var model = AlapkepzesTanuloLogic.GetTanuloData(int.Parse(id), osztalyCsoportId);
return PartialView(partialViewName, model);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public ActionResult GetModPartialViewWithOsztalycsoport(string id, string osztalyCsoportIdString, string partialViewName)
{
int? osztalyCsoportId = null;
if (int.TryParse(osztalyCsoportIdString, out int resultId))
{ osztalyCsoportId = resultId; }
var model = AlapkepzesTanuloLogic.GetModTanuloData(int.Parse(id), osztalyCsoportId);
var osztalyJellemzok = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyJellemzoi(osztalyId: osztalyCsoportId);
model.TanuloTanugyModel.IsSzakkepzeses = osztalyJellemzok[OsztalyJellemzoEnum.IsSzakkepzeses];
model.IsDualisKepzesEnabled = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
return PartialView(partialViewName, model);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public ActionResult GetModSzakkepzesiJuttatasokPartialViewWithOsztalycsoport(string id, string osztalyCsoportIdString, string partialViewName)
{
int? osztalyCsoportId = null;
if (int.TryParse(osztalyCsoportIdString, out int resultId))
{ osztalyCsoportId = resultId; }
var tanuloModel = AlapkepzesTanuloLogic.GetModTanuloData(int.Parse(id), osztalyCsoportId);
var model = new SzakkepzesiJuttatasokModel
{
TanuloiOsztondijPanelBar = new TanuloiOsztondijPanelBarModel
{
Animation = true,
ChildModels = new List<PanelBarChildModel>
{
new PanelBarChildModel
{
PartialViewTitle = TanuloResource.TanuloOsztondijAdatai,
PartialViewName = "TanuloiOsztondijPanelBar",
Data = new List<object> { tanuloModel },
}
},
ExpandMode = Kendo.Mvc.UI.PanelBarExpandMode.Multiple,
PanelName = "TanuloiOsztondijPanel",
},
EgyszeriPayakezdesiPanelBar = new EgyszeriPalyakezdesiPanelBarModel
{
Animation = true,
ChildModels = new List<PanelBarChildModel>
{
new PanelBarChildModel
{
PartialViewTitle = TanuloResource.EgyszeriPalyakezdesiJuttatas,
PartialViewName = "EgyszeriPalyakezdesiPanelBar",
Data = new List<object> { tanuloModel.TanuloEgyszeriPalyakezdesiModel },
}
},
ExpandMode = Kendo.Mvc.UI.PanelBarExpandMode.Multiple,
PanelName = "EgyszeriPalyakezdesiPanel",
},
ApaczaiOsztondijPanelBar = new ApaczaiOsztondijPanelBarModel
{
Animation = true,
ChildModels = new List<PanelBarChildModel>
{
new PanelBarChildModel
{
PartialViewTitle = TanuloResource.ApaczaiOsztondijAdatai,
PartialViewName = "ApaczaiOsztondijPanelBar",
Data = new List<object> { tanuloModel },
}
},
ExpandMode = Kendo.Mvc.UI.PanelBarExpandMode.Multiple,
PanelName = "ApaczaiOsztondijPanel",
},
};
return PartialView(partialViewName, model);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetTanuloErtekelesPartialView(int tanuloId, string partialViewName, string namePrefix, int? osztalycsoportId = null)
{
var oktNevelesiKategoria = OktNevelesiKategoriaEnum.NevelesOktatas;
if (osztalycsoportId.HasValue)
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
oktNevelesiKategoria = (OktNevelesiKategoriaEnum)osztalyCsoportHelper.GetOsztalyCsoportFeladatKategoria(osztalycsoportId.Value);
}
var tanuloOktatasiNevelesiFeladatIds = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType())
.GetTanuloOktatasiNevelesiFeladatIdList(tanuloId, oktNevelesiKategoria);
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, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult OpenDetailTanuloPopUp(int tanuloId, int? osztalycsoportId, bool ertekelesTabAktiv = false, bool tanugyDisabled = false, bool fromAdd = false)
{
return OpenDetailTanuloPopUp(tanuloId, osztalycsoportId, false, ertekelesTabAktiv, tanugyDisabled, fromAdd);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult OpenDetailTanitottTanuloPopUp(int tanuloId, bool ertekelesTabAktiv = false, int osztalyCsoportId = -1)
{
var tanuloDetailModel = new TanuloDetailModel { TanuloId = tanuloId, OsztalycsoportId = osztalyCsoportId };
var popUpModel = new PopUpModel(new TanuloSearchModel
{
TanuloId = tanuloId,
TanuloModalHeader = TanuloLogic.GetTanuloModalHeader(tanuloId),
TabList = TanarTanitottTanulokViewHelper.GetDetailTabs(tanuloDetailModel, ertekelesTabAktiv),
OsztalyCsoportId = osztalyCsoportId
}, "Tanulo_Info");
popUpModel = popUpModel.AddCancelBtn(popUpModel, "TanarTanitottTanulokHelper.detailTanuloCancel");
return PartialView(Constants.General.PopupView, popUpModel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult OpenDetailNemTanitottTanuloPopUp(int tanuloId, bool ertekelesTabAktiv = false, int osztalyCsoportId = -1)
{
var tanuloDetailModel = new TanuloDetailModel { TanuloId = tanuloId, OsztalycsoportId = osztalyCsoportId };
var popUpModel = new PopUpModel(new TanuloSearchModel
{
TanuloId = tanuloId,
TanuloModalHeader = TanuloLogic.GetTanuloModalHeader(tanuloId),
TabList = TanarTanitottTanulokViewHelper.GetDetailTabs(tanuloDetailModel, ertekelesTabAktiv),
OsztalyCsoportId = osztalyCsoportId
}, "Tanulo_Info");
popUpModel = popUpModel.AddCancelBtn(popUpModel, "TanarNemTanitottTanulokHelper.detailTanuloCancel");
return PartialView(Constants.General.PopupView, popUpModel);
}
public ActionResult OpenNewTanuloPopUp()
{
var model = TanuloLogic.CreateNewTanuloPopupModel();
if (model.TanuloTanugyModel.IsSzakkepzeses)
{
TanuloLogic.SetTanuloSzakkepzesesBasicProperties(model);
}
TanuloLogic.SetTanuloAmiKepzesiJellemzokProperties(model);
model.TanuloTanugyModel.HasAktivOsztalybaSorolas = false;
model.TanuloTanugyModel.TantervId = new TantervHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTop1TantervId();
model.IsDualisKepzesEnabled = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
var pm = new PopUpModel(new TanuloModel
{
TabList = AlapkepzesTanuloLogic.GetNewTabs(model)
}, "Tanulo_Bevitel");
pm = pm.AddCancelBtn(pm, "TanuloHelper.newTanuloCancel");
pm = pm.AddOkBtn(pm, "TanuloHelper.newTanuloSave");
return PartialView(Constants.General.PopupView, pm);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.IsLEPKezelo.ClaimValue)]
public ActionResult OpenLEPTanuloPopUp(int? tanuloId)
{
var model = tanuloId.IsEntityId() ?
new TanuloLEPModel { TanuloId = tanuloId, Nev = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloLEP(tanuloId.Value) } :
new TanuloLEPModel();
var pm = new PopUpModel(model, "Edit_Tanulo_LEP");
pm = pm.AddCancelBtn(pm, "TanuloHelper.newTanuloCancel");
pm = pm.AddOkBtn(pm, "TanuloHelper.newTanuloSave");
return PartialView(Constants.General.PopupView, pm);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Evfolyamfelelos.ClaimValue)]
public ActionResult OpenModTanuloPopUp(int tanuloId, int? osztalycsoportId)
{
if (osztalycsoportId.HasValue && osztalycsoportId.Value > 0)
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
if (osztalyCsoportHelper.GetOsztalyCsoportFeladatKategoria(osztalycsoportId.Value) != (int)OktNevelesiKategoriaEnum.NevelesOktatas)
{
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var gimnaziumAlapkepzeseskentKezelendo = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Szakgimnaziumok_Alapkezpeseskent_Tudjak_Kezelni_osztalyokat_Tanulokat);
if (!(gimnaziumAlapkepzeseskentKezelendo && osztalyCsoportHelper.GetOsztalyCsoportOktatasNevelesiFeladatTipus(osztalycsoportId.Value) == (int)OktatasiNevelesiFeladatEnum.MuveszetiSzakgimnazium))
{
return OpenDetailTanuloPopUp(tanuloId, osztalycsoportId, fromAdd: true);
}
}
}
var tm = AlapkepzesTanuloLogic.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 = AlapkepzesTanuloLogic.GetModTabs(tm, ClaimData.IsOsztalyfonok, osztalycsoportId);
var pm = new PopUpModel(tm, "Tanulo_Bevitel");
pm = pm.AddCancelBtn(pm, "TanuloHelper.modTanuloCancel");
pm = pm.AddOkBtn(pm, "TanuloHelper.modTanuloSave");
return PartialView(Constants.General.PopupView, pm);
}
[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 OpenTobbesModTanuloPopUp(List<TanuloTobbesModAdat> tobbesModAdatList)
{
AlapkepzesTanuloLogic.ValidateTobbesModFeladatKategoria(string.Join(", ", tobbesModAdatList.Where(x => x.OsztalyId.HasValue).Select(x => x.OsztalyId.Value)));
var model = new TanuloTobbesModModel { TanuloTobbesTanugyModel = new TanuloTobbesTanugyModel(), TanuloTobbesJuttatasModel = new TanuloTobbesJuttatasModel() };
model.IsApaczaiEnabled = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.Apaczai, IntezmenyConfigTipusEnum.IsEnabled);
model.IsDualisKepzesEnabled = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
model.TanuloTobbesJuttatasModel.IsAgazatiAlapvizsgaTulajdonsagokEnabled = tobbesModAdatList.All(x => tanuloHelper.IsFelevnelValtosByOsztalyAndTanulo(x.OsztalyId.Value, x.TanuloId));
model.TanuloTobbesJuttatasModel.IsAgazatiAlapvizsgaTulajdonsagokVisible = !tobbesModAdatList.All(x => !tanuloHelper.IsFelevnelValtosByOsztalyAndTanulo(x.OsztalyId.Value, x.TanuloId));
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi();
model.TanuloTobbesTanugyModel.IsSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsSzakkepzeses];
model.TanuloTobbesTanugyModel.IsNKTSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses] && ClaimData.IsSelectedTanev20_21OrLater;
model.TanuloTobbesTanugyModel.IsSzakkepzo = new IntezmenyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetIntezmenyiAdatok().IsSzakkepzo;
var osztalyIdList = tobbesModAdatList.Where(x => x.OsztalyId.IsEntityId()).Select(x => x.OsztalyId.Value).Distinct().ToList();
model.TanuloTobbesTanugyModel.IsAllOsztalyAltalanosIskolaFeladatellatasiHely = tanuloHelper.IsAllOsztalyAltalanosIskolaFeladatellatasiHely(osztalyIdList);
model.TanuloTobbesTanugyModel.HasAktivOsztalybaSorolasGyereknek = tobbesModAdatList.Any(x => x.OsztalyId.IsEntityId());
model.TabList = AlapkepzesTanuloLogic.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
}
};
var tanuloAdatCO = TanuloLogic.GetTanuloAdatCO(tanuloId);
if (tanuloAdatCO.Telefonszam != null)
{
model.AlapertelmezettTel = false;
}
model.AlapertelmezettCim = !(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
}
};
var tanuloAdatCO = TanuloLogic.GetTanuloAdatCO(tanuloId);
if (tanuloAdatCO.Emailcim != null)
{
model.AlapertelmezettEmail = false;
}
model.AlapertelmezettCim = !(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 = true,
FormSettings = new List<string>() {
CimElerhetosegConstant.CimSectionVisible,
CimElerhetosegConstant.AlapertelmezettCimVisible,
CimElerhetosegConstant.IsNew
}
};
var hasTanuloAlapertelmezettCim = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).HasTanuloAlapertelmezettCim(tanuloId);
model.AlapertelmezettCim = !hasTanuloAlapertelmezettCim;
if (!hasTanuloAlapertelmezettCim)
{
model.FormSettings.Add(CimElerhetosegConstant.AlapertelmezettNemModosithato);
}
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.Mind, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.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);
}
public ActionResult UjFelmentes(int tanuloId)
{
var model = new TanuloFelmentesModel();
var pm = new PopUpModel(model, "_Felmentes_Bevitel");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloFelmentesHelper.newFelmentesCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloFelmentesHelper.newFelmentesSave" });
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult ModFelmentes(int id)
{
var model = TanuloLogic.GetFelmentes(id);
var pm = new PopUpModel(model, "_Felmentes_Bevitel");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesCancel", Text = Resources.CommonResource.Megse, EventName = "TanuloFelmentesHelper.modFelmentesCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnFelmentesOk", Text = Resources.CommonResource.Mentes, EventName = "TanuloFelmentesHelper.modFelmentesSave" });
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenNewJogviszonyPopup(int TanuloId)
{
var model = new JogviszonyModel
{
IsNew = true,
JogviszonyTipusaId = (int)TbJogviszonyTipusEnum.tanuloi_jogviszony,
JogviszonyKeletkezesenekJogcimeId = (int)JogvKeletkezeseJogcimTipusEnum.felvetellel,
};
var pm = new PopUpModel(model, "_Jogviszony_Bevitel");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnJogviszonyCancel", Text = CommonResource.Megse, EventName = "JogviszonyHelper.newJogviszonyCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnJogviszonyMentes", Text = CommonResource.Mentes, EventName = "JogviszonyHelper.newJogviszonySave" });
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenCloseJogviszonyPopup(JogviszonyModel model)
{
model.IsNew = false;
var pm = new PopUpModel(model, "_Jogviszony_Bevitel");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnJogviszonyCancel", Text = CommonResource.Megse, EventName = "JogviszonyHelper.closeJogviszonyCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnJogviszonyMentes", Text = CommonResource.Mentes, EventName = "JogviszonyHelper.closeJogviszonySave" });
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenSzakkepzesiMunkaszerzodes(SzakkepzesiMunkaszerzodesGridModel model)
{
var pm = new PopUpModel(model, "_SzakkepzesiMunkaszerzodes_Bevitel");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSzakkepzesiMunkaszerzodesCancel", Text = CommonResource.Megse, EventName = "SzakkepzesiMunkaszerzodesHelper.Cancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSzakkepzesiMunkaszerzodesMentes", Text = CommonResource.Mentes, EventName = $"SzakkepzesiMunkaszerzodesHelper.{(model.ID != null ? "Modify" : "Save")}" });
return PartialView(Constants.General.PopupView, pm);
}
#endregion Popups
#region Export
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult TanuloExportBesorolashoz([FromUri] TanuloSearchModel data)
{
return TanuloLogic.TanuloExportBesorolashoz(data, OktNevelesiKategoriaEnum.NevelesOktatas);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult TanulokLakcimmelExport([FromUri] TanuloSearchModel data)
{
return TanuloLogic.TanulokLakcimmelExport(data, OktNevelesiKategoriaEnum.NevelesOktatas);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult TanulokTanugyiAdatiExport([FromUri] TanuloSearchModel model)
{
return TanuloLogic.ExportTanulokTanugyiAdatai(model);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult ExportTanulokTantargyaiEsPedagogusai([FromUri] TanuloSearchModel data)
{
return TanuloLogic.ExportTanulokTantargyaiEsPedagogusai(data, OktNevelesiKategoriaEnum.NevelesOktatas);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GondviselokElerhetosegeiExport([FromUri] TanuloSearchModel data)
{
return TanuloLogic.ExportGondviselokElerhetosegei(data, OktNevelesiKategoriaEnum.NevelesOktatas);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult TanuloKirStatExport([FromUri] TanuloSearchModel data)
{
data.ForOktober = true;
return TanuloLogic.TanuloKirStatExport(data);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult TanuloKirStatTeljesExport([FromUri] TanuloSearchModel data)
{
return TanuloLogic.TanuloKirStatExport(data);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult TanuloSzirBeallitasokExport([FromUri] TanuloSearchModel data)
{
return TanuloLogic.TanuloSzirBeallitasokExport(data);
}
#endregion Export
#region Belépési azonosító generálás
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.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.JelszoAlaphelyzetbeAllitasaTanuloConfirm :
TanuloResource.JelszoAlaphelyzetbeAllitasaGondviseloConfirm;
if (isTanulo)
{
hozzaferesModel.TanulokEmailElerhetosegNelkul = TanuloLogic.GetTanulokEmailNelkulSzam(tanuloIdList);
}
}
else
{
if (tanuloIdList != null)
{
hozzaferesModel.ConfirmText = isTanulo ?
TanuloResource.BelepesiAzonositoGeneralasaKijeloltTanulokConfirm :
TanuloResource.BelepesiAzonositoGeneralasaKijeloltTanulokGondviseloinekConfirm;
}
else
{
hozzaferesModel.ConfirmText = isTanulo ?
TanuloResource.BelepesiAzonositoGeneralasTanuloConfirm :
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(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public JsonResult AzonositoGeneralas(bool isTanulo, bool fileLetoltesSzukseges, bool isPasswordReset, List<int> tanuloIdList = null, bool emailKuldesSzukseges = false, bool toroltFelhasznaloBelepes = false)
{
var popupModel = TanuloLogic.AzonositoGeneralas(isTanulo, fileLetoltesSzukseges, isPasswordReset, tanuloIdList, emailKuldesSzukseges, toroltFelhasznaloBelepes: toroltFelhasznaloBelepes);
return Json(popupModel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue)]
public ActionResult SetGondviseloToBovitettPopup(List<int> tanuloIdList, bool isKijeloltTanulokGondviseloi)
{
if (isKijeloltTanulokGondviseloi && !TanuloLogic.ExistsGondviselo(tanuloIdList))
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.AKijeloltTanuloknakNincsGondiselojuk);
}
var hozzaferesModel = new GondviseloToBovitettModel
{
TanuloIdList = tanuloIdList,
ConfirmText = isKijeloltTanulokGondviseloi ? TanuloResource.AKijeloltTanulokOsszesGondviselojenekBelepeseBovitettLeszBiztosanFolytatja : 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)]
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.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)]
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Osztalyfonok.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
}
}

View file

@ -0,0 +1,19 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Tanulo.ClaimValue, KretaClaimPackages.Gondviselo.ClaimValue)]
public class TanuloHaziFeladatController : Controller
{
// GET: Tanulo/TanuloHaziFeladat
public ActionResult Index()
{
return View("Index", new TanuloHaziFeladatSearchModel());
}
}
}

View file

@ -0,0 +1,22 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Enums.ManualEnums;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class TanulokJogviszonyAdatokController : Controller
{
public ActionResult Index()
{
var model = new TanuloJogviszonyAdatokSearchModel
{
JogviszonyStatuszId = (int)JogviszonyStatuszEnum.Aktiv
};
return View("Index", model);
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.CsokkentettGondviselo.ClaimValue)]
public class TanulotTanitoTanarokController : Controller
{
// GET: Tanulo/TanulotTanitoTanarok
public ActionResult Index()
{
return View();
}
}
}

View file

@ -0,0 +1,69 @@
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Helper
{
public static class ApaczaiPalyazatStatuszExtensions
{
public static string GetColor(ApaczaiPalyazatStatuszEnum statusz)
{
switch (statusz)
{
case ApaczaiPalyazatStatuszEnum.Bekuldott:
return Constants.ApaczaiPalyazatColors.Yellow;
case ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve:
case ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve:
case ApaczaiPalyazatStatuszEnum.TamogatasiSzerzodesselRendelkezoIntezmenytValtott:
return Constants.ApaczaiPalyazatColors.Orange;
case ApaczaiPalyazatStatuszEnum.Elfogadott:
return Constants.ApaczaiPalyazatColors.Green;
case ApaczaiPalyazatStatuszEnum.Visszavont:
case ApaczaiPalyazatStatuszEnum.Elutasitott:
default:
return Constants.ApaczaiPalyazatColors.Red;
}
}
public static string GetIcon(ApaczaiPalyazatStatuszEnum statusz)
{
switch (statusz)
{
case ApaczaiPalyazatStatuszEnum.Bekuldott:
return Constants.ApaczaiPalyazatIcons.Bekuldott;
case ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve:
case ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve:
return Constants.ApaczaiPalyazatIcons.AdategyeztetesreVisszakuldve;
case ApaczaiPalyazatStatuszEnum.Elfogadott:
return Constants.ApaczaiPalyazatIcons.Elfogadott;
case ApaczaiPalyazatStatuszEnum.Visszavont:
return Constants.ApaczaiPalyazatIcons.Visszavont;
case ApaczaiPalyazatStatuszEnum.TamogatasiSzerzodesselRendelkezoIntezmenytValtott:
return Constants.ApaczaiPalyazatIcons.IntezmenytValtott;
case ApaczaiPalyazatStatuszEnum.Elutasitott:
default:
return Constants.ApaczaiPalyazatIcons.Elutasitott;
}
}
public static string GetText(ApaczaiPalyazatStatuszEnum statusz)
{
switch (statusz)
{
case ApaczaiPalyazatStatuszEnum.Bekuldott:
return TanuloApaczaiResource.Bekuldott;
case ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve:
case ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve:
return TanuloApaczaiResource.AdategyeztetesreVisszakuldve;
case ApaczaiPalyazatStatuszEnum.Elfogadott:
return TanuloApaczaiResource.Elfogadott;
case ApaczaiPalyazatStatuszEnum.Visszavont:
return TanuloApaczaiResource.PalyazoAltalVisszavont;
case ApaczaiPalyazatStatuszEnum.TamogatasiSzerzodesselRendelkezoIntezmenytValtott:
return TanuloApaczaiResource.TamogatasiSzerzodesselRendelkezoIntezmenytValtott;
case ApaczaiPalyazatStatuszEnum.Elutasitott:
default:
return TanuloApaczaiResource.Elutasitott;
}
}
}
}

View file

@ -0,0 +1,70 @@
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Web.Mvc;
using FastReport;
using Kreta.BusinessLogic.Classes;
using Kreta.Core;
using Kreta.Web.Controllers;
namespace Kreta.Web.Areas.Tanulo.Helper
{
public static class BelepesiAdatokPdfLogic
{
public static string GetFileLetoltesUrl(DataSet belepesDataSet, string frxNev, string fileName)
{
var stream = PdfNyomtatas(belepesDataSet, frxNev, pdfNeve: fileName);
var guid = Cache.Add(stream);
var fileFullName = $"{fileName}.pdf";
var url = new UrlHelper(System.Web.HttpContext.Current.Request.RequestContext);
return url.Action(nameof(CacheController.DownloadFile), nameof(CacheController).Replace("Controller", ""), new { guid, fileName = fileFullName, contentType = Core.Constants.ContentTypes.Pdf, area = "" });
}
/// Nyomtatványokhoz Pdf fájl generálás
private static MemoryStream PdfNyomtatas(DataSet ds, string frxNeve, Dictionary<string, object> parameterek = null, string pdfNeve = "Alap")
{
FastReport.Utils.Config.WebMode = true;
var report = new Report();
report.Load(System.Web.Hosting.HostingEnvironment.MapPath((ApplicationData.NyomtatasiSablonokKonyvtar + "/" + frxNeve + ".frx")));
foreach (DataTable dt in ds.Tables)
{
report.RegisterData(dt, dt.TableName);
}
if (parameterek != null)
{
foreach (var parameter in parameterek)
{
report.SetParameterValue(parameter.Key, parameter.Value);
}
}
if (report.Report.Prepare())
{
FastReport.Export.Pdf.PDFExport pdfExport = new FastReport.Export.Pdf.PDFExport
{
ShowProgress = false,
Subject = "Subject",
Title = pdfNeve,
Compressed = true,
AllowPrint = true,
EmbeddingFonts = true
};
var stream = new MemoryStream();
report.Report.Export(pdfExport, stream);
report.Dispose();
pdfExport.Dispose();
stream.Position = 0;
return stream;
}
return null;
}
}
}

View file

@ -0,0 +1,92 @@
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using Aspose.Cells;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Logic;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Helper
{
public static class SzakkepzesiJuttatasokLogic
{
public static MemoryStream GetSzakkepzesiOszetondijExport(string worksheetName, List<SimpleExportColumnCo> simpleExportColumnCos, List<TanuloSzakkepzesiOsztondijGridModel> modelList)
{
using (var workbook = new Workbook())
{
Worksheet worksheet = SimpleExportLogic.GetWorksheet(workbook, worksheetName, simpleExportColumnCos);
worksheet.FillWithData(modelList, simpleExportColumnCos, ClaimData.SelectedTanevID.Value);
worksheet.FreezePanes(1, 0, 1, 0);
foreach (SimpleExportColumnCo simpleExportColumnCo in simpleExportColumnCos)
{
var columnIndex = simpleExportColumnCo.Index;
var columnStyle = worksheet.Cells[0, columnIndex].GetStyle();
columnStyle.IsTextWrapped = true;
columnStyle.Font.Color = Color.White;
var isJogosultsagVizsgalatOszlop = columnIndex >= 8;
if (isJogosultsagVizsgalatOszlop)
{
columnStyle.ForegroundColor = Color.FromArgb(102, Color.Orange);
worksheet.Cells.SetColumnWidth(columnIndex, 18);
}
else
{
columnStyle.ForegroundColor = Color.FromArgb(255, 48, 168, 203);
worksheet.AutoFitColumn(columnIndex);
}
worksheet.Cells[0, simpleExportColumnCo.Index].SetStyle(columnStyle);
}
var memoryStream = new MemoryStream();
workbook.Save(memoryStream, SaveFormat.Xlsx);
memoryStream.Position = 0;
return memoryStream;
}
}
public static MemoryStream GetEgyszeriPalyakezdesiJuttatasExport(string worksheetName, List<SimpleExportColumnCo> simpleExportColumnCos, List<TanuloEgyszeriPalyakezdesiJuttatasGridModel> modelList)
{
using (var workbook = new Workbook())
{
Worksheet worksheet = SimpleExportLogic.GetWorksheet(workbook, worksheetName, simpleExportColumnCos);
worksheet.FillWithData(modelList, simpleExportColumnCos, ClaimData.SelectedTanevID.Value);
worksheet.FreezePanes(1, 0, 1, 0);
foreach (SimpleExportColumnCo simpleExportColumnCo in simpleExportColumnCos)
{
var columnIndex = simpleExportColumnCo.Index;
var columnStyle = worksheet.Cells[0, columnIndex].GetStyle();
columnStyle.IsTextWrapped = true;
columnStyle.Font.Color = Color.White;
var isJogosultsagVizsgalatOszlop = columnIndex >= 14;
if (isJogosultsagVizsgalatOszlop)
{
columnStyle.ForegroundColor = Color.FromArgb(102, Color.Orange);
worksheet.Cells.SetColumnWidth(columnIndex, 16);
}
else
{
columnStyle.ForegroundColor = Color.FromArgb(255, 48, 168, 203);
worksheet.AutoFitColumn(columnIndex);
}
worksheet.Cells[0, simpleExportColumnCo.Index].SetStyle(columnStyle);
}
var memoryStream = new MemoryStream();
workbook.Save(memoryStream, SaveFormat.Xlsx);
memoryStream.Position = 0;
return memoryStream;
}
}
}
}

View file

@ -0,0 +1,42 @@
using System.Collections.Generic;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Resources;
using Kreta.Web.Areas.Tanulo.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Helper
{
public static class TanarTanitottTanulokViewHelper
{
private const string TanuloController = Constants.Controllers.Tanulo;
public static List<TabStripItemModel> GetDetailTabs(TanuloDetailModel model, bool ertekelesTabAktiv)
{
bool isImportantDisabled = !ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue);
var list = new List<TabStripItemModel>
{
new TabStripItemModel {ItemId = "1", ItemName = TanuloResource.Alapadatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary<string, string> {{"Id", model.TanuloId.ToString()}, {"PartialViewName", "Info_SzemelyesAdat_Tab"}}, IsImportantDisabled = isImportantDisabled}
};
if (model.OsztalycsoportId.IsEntityId() && new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).IsAmiOsztalyCsoport(model.OsztalycsoportId.Value))
{ list.Add(new TabStripItemModel { ItemId = "2", ItemName = TanuloResource.AmiTantargyak, Area = Constants.Areas.Tanulo, Controller = Constants.Controllers.AmiTanulo, Action = "GetPartialViewWithOsztalycsoport", RouteParameters = new Dictionary<string, string> { { "id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", model.OsztalycsoportId.ToString() }, { "PartialViewName", "Info_Tantargyak_Tab" } }, IsImportantDisabled = isImportantDisabled }); }
list.Add(new TabStripItemModel { ItemId = "3", ItemName = TanuloResource.Ertekelesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetTanuloErtekelesPartialView", RouteParameters = new Dictionary<string, string> { { "tanuloId", model.TanuloId.ToString() }, { "PartialViewName", "~/Areas/TanuloErtekeles/Views/TanuloErtekelesByTanulo/Index.cshtml" }, { "namePrefix", "TanarTanitottTanulokView" }, { "osztalycsoportId", model.OsztalycsoportId.ToString() } }, IsActive = ertekelesTabAktiv, IsImportantDisabled = isImportantDisabled });
list.Add(new TabStripItemModel { ItemId = "4", ItemName = TanuloResource.Beirasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary<string, string> { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Beirasok_Tab" } }, IsImportantDisabled = isImportantDisabled });
list.Add(new TabStripItemModel { ItemId = "5", ItemName = TanuloResource.Mulasztasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary<string, string> { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Mulasztasok_Tab" } }, IsImportantDisabled = isImportantDisabled });
list.Add(new TabStripItemModel { ItemId = "6", ItemName = TanuloResource.Igazolasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary<string, string>() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Igazolasok_Tab" } }, IsImportantDisabled = isImportantDisabled });
list.Add(new TabStripItemModel { ItemId = "7", ItemName = TanuloResource.Gondviselok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary<string, string>() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Gondviselok_Tab" } }, IsImportantDisabled = isImportantDisabled });
list.Add(new TabStripItemModel { ItemId = "8", ItemName = TanuloResource.Felmentesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary<string, string> { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_TantargyiMentesseg_Tab" } }, IsImportantDisabled = isImportantDisabled });
list.Add(new TabStripItemModel { ItemId = "9", ItemName = TanuloResource.OsztalyaiEsCsoportjai, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary<string, string>() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_OsztalyCsoport_Tab" } }, IsImportantDisabled = isImportantDisabled });
list.Add(new TabStripItemModel { ItemId = "10", ItemName = TanuloResource.KozossegiSzolgalat, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary<string, string>() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", $"{Constants.General.TanuloSharedFolderPrefix}Info_KozossegiSzolgalat_Tab.cshtml" } }, IsImportantDisabled = isImportantDisabled });
list.Add(new TabStripItemModel { ItemId = "11", ItemName = TanuloResource.Elerhetosegek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary<string, string>() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Elerhetosegek_Tab" } }, IsImportantDisabled = isImportantDisabled });
return list;
}
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,8 @@
using Kreta.Web.Models.EditorTemplates;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class ApaczaiOsztondijPanelBarModel : PanelBarBaseModel
{
}
}

View file

@ -0,0 +1,11 @@
using System.Collections.Generic;
using System.Web.Mvc;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class ApaczaiTablazatModel
{
public int? TipusId { get; set; }
public List<SelectListItem> TipusList { get; set; }
}
}

View file

@ -0,0 +1,9 @@
namespace Kreta.Web.Areas.Tanulo.Models
{
public class CsoportTanuloiAdatokModel
{
public int? OsztalyCsoportId { get; set; }
public int? TanuloId { get; set; }
}
}

View file

@ -0,0 +1,44 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class CsoportTanuloiSearchModel
{
[Display(Name = nameof(OsztalyCsoportResource.EllatottKoznevelesiFeladatTipus), ResourceType = typeof(OsztalyCsoportResource))]
public int? FeladatKategoriaId { get; set; }
public bool showDetailView { get; set; }
public bool showTanoraCeluCsoport { get; set; }
[Display(Name = nameof(TanuloResource.Csoport), ResourceType = typeof(TanuloResource))]
public int? OsztalyCsoport { get; set; }
[Display(Name = nameof(TanuloResource.Nev), ResourceType = typeof(TanuloResource))]
public string Nev { get; set; }
[Display(Name = nameof(TanuloResource.AnyjaSzuletesiNev), ResourceType = typeof(TanuloResource))]
public string AnyjaSzuletesiNev { get; set; }
[Display(Name = nameof(TanuloResource.SzuletesiHely), ResourceType = typeof(TanuloResource))]
public string SzuletesiHely { get; set; }
[Display(Name = nameof(TanuloResource.SzuletesiIdo), ResourceType = typeof(TanuloResource))]
public DateTime? SzuletesiIdoTol { get; set; }
[Display(Name = nameof(TanuloResource.SzuletesiIdo), ResourceType = typeof(TanuloResource))]
public DateTime? SzuletesiIdoIg { get; set; }
[Display(Name = nameof(TanuloResource.OktatasiAzonosito), ResourceType = typeof(TanuloResource))]
public string OktatasiAzonosito { get; set; }
[Display(Name = nameof(TanuloResource.Tankotelezett), ResourceType = typeof(TanuloResource))]
public int? Tankotelezett { get; set; }
[Display(Name = nameof(TanuloResource.Tanterv), ResourceType = typeof(TanuloResource))]
public int? Tanterv { get; set; }
[Display(Name = nameof(CommonResource.Feladatellatasihely), ResourceType = typeof(CommonResource))]
public int? FeladatEllatasiHelyId { get; set; }
}
}

View file

@ -0,0 +1,36 @@
using System.ComponentModel.DataAnnotations;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class EgyszeriPalyakezdesiModel
{
[Display(Name = nameof(SzakkepzesiJuttatasokResource.SzakmaiVizsgaErdemjegye), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public double? Erdemjegy { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.AVizsganMegszerezhetoSzakkepesitesAzonositoszama), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string SzakkepesitesAzonosito { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.AVizsganMegszerezhetoSzakkepesitesMegnevezese), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string SzakkepesitesMegnevezes { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.AVizsgaDatuma), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string VizsgaDatum { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.BizonyitvanySzama), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string BizonyitvanySzama { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.JavitoVizsgazo), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string JavitoVizsga { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.PotloVizsgazo), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string PotloVizsga { get; set; }
public int JuttatasSzazalek { get; set; }
public int ElutasitasOka { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.NemJogosultsagOka), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string ElutasitasOkok { get; set; }
}
}

View file

@ -0,0 +1,8 @@
using Kreta.Web.Models.EditorTemplates;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class EgyszeriPalyakezdesiPanelBarModel : PanelBarBaseModel
{
}
}

View file

@ -0,0 +1,9 @@
namespace Kreta.Web.Areas.Tanulo.Models
{
public class FelhasznalonevGeneralasModel
{
public int TanuloId { get; set; }
public int? GondviseloId { get; set; }
}
}

View file

@ -0,0 +1,20 @@
using System.Collections.Generic;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class GondviseloToBovitettModel
{
public GondviseloToBovitettModel()
{
ErrorList = new List<string>();
}
public bool GeneraltFileLetoltes { get; set; }
public bool EmailKuldes { get; set; }
public List<int> TanuloIdList { get; set; } = new List<int>();
public List<string> ErrorList { get; set; }
public string ConfirmText { get; set; }
public string FileString { get; set; }
public bool IsError { get; set; }
}
}

View file

@ -0,0 +1,48 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class HetesekModel : IKretaIdentity
{
public string ID { get; set; }
[Display(Name = nameof(HetesResource.HetSorszama), ResourceType = typeof(HetesResource))]
public int HetSorszam { get; set; }
[Display(Name = nameof(HetesResource.HetKezdoNapja), ResourceType = typeof(HetesResource))]
public DateTime HetKezdoNap { get; set; }
[Display(Name = nameof(HetesResource.HetUtolsoNapja), ResourceType = typeof(HetesResource))]
public DateTime HetUtolsoNap { get; set; }
[Display(Name = nameof(HetesResource.Hetirend), ResourceType = typeof(HetesResource))]
public string Hetirend { get; set; }
[Display(Name = nameof(HetesResource.HetesTanulok), ResourceType = typeof(HetesResource))]
public string Tanulok { get; set; }
public int OsztalyCsoportId { get; set; }
public HetesekCO ToCo()
{
var tanuloIds = new List<int>();
if (!string.IsNullOrWhiteSpace(Tanulok))
{
tanuloIds = Tanulok.Split(',').Select(x => int.Parse(x)).ToList();
}
return new HetesekCO()
{
HetSorszam = HetSorszam,
TanuloIdList = tanuloIds
};
}
}
}

View file

@ -0,0 +1,24 @@
using System.Collections.Generic;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class HozzaferesGeneralasaModel
{
public HozzaferesGeneralasaModel()
{
ErrorList = new List<string>();
VisibileFileDownload = false;
}
public bool GeneraltFileLetoltes { get; set; }
public bool EmailKuldes { get; set; }
public List<int> TanuloIdList { get; set; } = new List<int>();
public List<string> ErrorList { get; set; }
public bool IsTanulo { get; set; }
public bool VisibileFileDownload { get; set; }
public bool IsPasswordReset { get; set; }
public string ConfirmText { get; set; }
public string FileString { get; set; }
public bool IsError { get; set; }
public int TanulokEmailElerhetosegNelkul { get; set; }
}
}

View file

@ -0,0 +1,13 @@
using System.Collections.Generic;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class HozzaferesGeneralasaPopupModel
{
public string FileString { get; set; }
public bool IsError { get; set; }
public List<string> ErrorList { get; set; } = new List<string>();
public string EmailErrors { get; set; }
public bool IsPasswordReset { get; set; }
}
}

View file

@ -0,0 +1,72 @@
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Core.CustomAttributes;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class JogviszonyAdatokGridModel : IKretaIdentity
{
public JogviszonyAdatokGridModel() { }
public JogviszonyAdatokGridModel(TanuloJogviszonyAdatItemCo itemCo)
{
ID = itemCo.ID;
TanuloNev = itemCo.TanuloNev;
OktatasiAzonosito = itemCo.OktatasiAzonosito;
Osztaly = itemCo.Osztaly;
JogviszonyKezdete = itemCo.JogviszonyKezdete.ToString();
JogviszonyKeletkezesenekJogcime = itemCo.JogviszonyKeletkezesenekJogcime.ToString();
JogviszonyVege = itemCo.JogviszonyVege.ToString();
JogviszonyMegszunesenekJogcime = itemCo.JogviszonyMegszunesenekJogcime;
JogviszonyTipus = itemCo.JogviszonyTipus;
Statusz = itemCo.JogviszonnyalRendelkezik.ToString();
Megjegyzes = itemCo.Megjegyzes;
}
public const string TanulokJogviszonyaAdataiExportAttributeId = nameof(TanulokJogviszonyaAdataiExportAttributeId);
public string ID { get; set; }
[SimpleExportColumn(TanulokJogviszonyaAdataiExportAttributeId, 00, nameof(TanuloResource.TanuloNeve), typeof(TanuloResource))]
[Display(Name = nameof(TanuloResource.TanuloNeve), ResourceType = typeof(TanuloResource))]
public string TanuloNev { get; set; }
[SimpleExportColumn(TanulokJogviszonyaAdataiExportAttributeId, 01, nameof(TanuloResource.OktatasiAzonosito), typeof(TanuloResource))]
[Display(Name = nameof(TanuloResource.OktatasiAzonosito), ResourceType = typeof(TanuloResource))]
public string OktatasiAzonosito { get; set; }
[SimpleExportColumn(TanulokJogviszonyaAdataiExportAttributeId, 02, nameof(TanuloResource.Osztaly), typeof(TanuloResource))]
[Display(Name = nameof(TanuloResource.Osztaly), ResourceType = typeof(TanuloResource))]
public string Osztaly { get; set; }
[SimpleExportColumn(TanulokJogviszonyaAdataiExportAttributeId, 04, nameof(TanuloResource.JogviszonyKezdete), typeof(TanuloResource))]
[Display(Name = nameof(TanuloResource.JogviszonyKezdete), ResourceType = typeof(TanuloResource))]
public string JogviszonyKezdete { get; set; }
[SimpleExportColumn(TanulokJogviszonyaAdataiExportAttributeId, 05, nameof(TanuloResource.JogviszonyKeletkezesenekJogcime), typeof(TanuloResource))]
[Display(Name = nameof(TanuloResource.JogviszonyKeletkezesenekJogcime), ResourceType = typeof(TanuloResource))]
public string JogviszonyKeletkezesenekJogcime { get; set; }
[SimpleExportColumn(TanulokJogviszonyaAdataiExportAttributeId, 07, nameof(TanuloResource.JogviszonyVege), typeof(TanuloResource))]
[Display(Name = nameof(TanuloResource.JogviszonyVege), ResourceType = typeof(TanuloResource))]
public string JogviszonyVege { get; set; }
[SimpleExportColumn(TanulokJogviszonyaAdataiExportAttributeId, 08, nameof(TanuloResource.JogviszonyMegszunesenekJogcime), typeof(TanuloResource))]
[Display(Name = nameof(TanuloResource.JogviszonyMegszunesenekJogcime), ResourceType = typeof(TanuloResource))]
public string JogviszonyMegszunesenekJogcime { get; set; }
[SimpleExportColumn(TanulokJogviszonyaAdataiExportAttributeId, 03, nameof(TanuloResource.JogviszonyTipusa), typeof(TanuloResource))]
[Display(Name = nameof(TanuloResource.JogviszonyTipusa), ResourceType = typeof(TanuloResource))]
public string JogviszonyTipus { get; set; }
[SimpleExportColumn(TanulokJogviszonyaAdataiExportAttributeId, 09, nameof(TanuloResource.Statusz), typeof(TanuloResource))]
[Display(Name = nameof(TanuloResource.Statusz), ResourceType = typeof(TanuloResource))]
public string Statusz { get; set; }
[SimpleExportColumn(TanulokJogviszonyaAdataiExportAttributeId, 06, nameof(TanuloResource.Megjegyzes), typeof(TanuloResource))]
[Display(Name = nameof(TanuloResource.Megjegyzes), ResourceType = typeof(TanuloResource))]
public string Megjegyzes { get; set; }
}
}

View file

@ -0,0 +1,9 @@
namespace Kreta.Web.Areas.Tanulo.Models
{
public class JogviszonySzuneteltetesDeleteModel
{
public int? Id { get; set; }
public bool IsJogviszonySzuneteltetese { get; set; }
public int GridCnt { get; set; }
}
}

View file

@ -0,0 +1,21 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class JogviszonySzuneteltetesGridModel : IKretaIdentity
{
public string ID { get; set; }
[Display(Name = nameof(TanuloResource.JogviszonySzunetelesenekKezdete), ResourceType = typeof(TanuloResource))]
public DateTime Kezdete { get; set; }
[Display(Name = nameof(TanuloResource.JogviszonySzunetelesenekVege), ResourceType = typeof(TanuloResource))]
public DateTime Vege { get; set; }
[Display(Name = nameof(TanuloResource.Osztaly), ResourceType = typeof(TanuloResource))]
public string OsztalyNev { get; set; }
}
}

View file

@ -0,0 +1,21 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class JogviszonySzuneteltetesModel
{
public int? Id { get; set; }
public int? TanuloId { get; set; }
public int? OsztalyId { get; set; }
[Required(ErrorMessageResourceName = nameof(ErrorResource.JogviszonySzuneteltetesKezdeteMegadasaKotelezo), ErrorMessageResourceType = typeof(ErrorResource))]
[Display(Name = nameof(TanuloResource.JogviszonySzunetelesenekKezdete), ResourceType = typeof(TanuloResource))]
public DateTime? JogviszonySzuneteltetesKezdete { get; set; }
[Required(ErrorMessageResourceName = nameof(ErrorResource.JogviszonySzuneteltetesVegeMegadasaKotelezo), ErrorMessageResourceType = typeof(ErrorResource))]
[Display(Name = nameof(TanuloResource.JogviszonySzunetelesenekVege), ResourceType = typeof(TanuloResource))]
public DateTime? JogviszonySzuneteltetesVege { get; set; }
}
}

View file

@ -0,0 +1,36 @@
using System;
using System.Collections.Generic;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public class OsztalySorolasModel
{
public OsztalySorolasModel()
{
Lista = new List<OsztalySorolasItemModel>();
DatumLista = new List<OsztalySorolasDateModel>();
}
public List<OsztalySorolasItemModel> Lista { get; set; }
public List<OsztalySorolasDateModel> DatumLista { get; set; }
}
public class OsztalySorolasItemModel
{
public int Id { get; set; }
public string Nev { get; set; }
public int StartDivWidthPercent { get; set; }
public int MiddleDivWidthPercent { get; set; }
public int EndDivWidthPercent { get; set; }
public DateTime StartDate { get; set; }
public DateTime? EndDate { get; set; }
}
public class OsztalySorolasDateModel
{
public int ColNumber { get; set; }
public DateTime Date { get; set; }
}
}

View file

@ -0,0 +1,9 @@
namespace Kreta.Web.Areas.Tanulo.Models
{
public class OsztalyTanuloiAdatokModel
{
public int? OsztalyCsoportId { get; set; }
public int? TanuloId { get; set; }
}
}

View file

@ -0,0 +1,54 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class OsztalyTanuloiGondviselokPopupModel
{
[Display(Name = nameof(FelhasznalokResource.FelhasznaloNev), ResourceType = typeof(FelhasznalokResource))]
public string FelhasznaloNev { get; set; }
[Display(Name = nameof(FelhasznalokResource.BelepesiDatum), ResourceType = typeof(FelhasznalokResource))]
public DateTime? UtolsoBelepes { get; set; }
[Display(Name = nameof(FelhasznalokResource.BelepesiDatumMobil), ResourceType = typeof(FelhasznalokResource))]
public DateTime? UtolsoBelepesMobil { get; set; }
public List<EmailModel> EmailCimek { get; set; } = new List<EmailModel>();
public List<TelefonszamModel> Telefonszamok { get; set; } = new List<TelefonszamModel>();
public OsztalyTanuloiGondviselokPopupModel(OsztalyTanuloiGondviselokPopupCo co)
{
FelhasznaloNev = co.FelhasznaloNev;
UtolsoBelepes = co.UtolsoBelepes;
UtolsoBelepesMobil = co.UtolsoBelepesMobil;
EmailCimek.AddRange(co.EmailCimek.Select(x => new EmailModel() { EmailCim = x.Item2, Alapertelmezett = x.Item1.GetDisplayName(BooleanDisplayFormatEnum.Teljes) }));
Telefonszamok.AddRange(co.Telefonszamok.Select(x => new TelefonszamModel() { Telefonszam = x.Item2, Alapertelmezett = x.Item1.GetDisplayName(BooleanDisplayFormatEnum.Teljes) }));
}
public class TelefonszamModel
{
[Display(Name = nameof(TanuloResource.Alapertelmezett), ResourceType = typeof(TanuloResource))]
public string Alapertelmezett { get; set; }
[Display(Name = nameof(TanuloResource.Telefonszam), ResourceType = typeof(TanuloResource))]
public string Telefonszam { get; set; }
}
public class EmailModel
{
[Display(Name = nameof(TanuloResource.Alapertelmezett), ResourceType = typeof(TanuloResource))]
public string Alapertelmezett { get; set; }
[Display(Name = nameof(TanuloResource.EmailCim), ResourceType = typeof(TanuloResource))]
public string EmailCim { get; set; }
}
}
}

View file

@ -0,0 +1,44 @@
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class OsztalyTanuloiGondviselokSearchModel
{
[Display(Name = nameof(TanuloResource.EllatottKoznevelesiFeladatTipus), ResourceType = typeof(TanuloResource))]
public int? EllatottKoznevelesiFeladatTipusIdSearch { get; set; }
[Display(Name = nameof(TanuloResource.TanuloOsztalya), ResourceType = typeof(TanuloResource))]
public int? OsztalyIdSearch { get; set; }
[Display(Name = nameof(TanuloResource.TanuloNeve), ResourceType = typeof(TanuloResource))]
public string TanuloNevSearch { get; set; }
[Display(Name = nameof(TanuloResource.VanETelefonszama), ResourceType = typeof(TanuloResource))]
public int? IsTelefonszam { get; set; }
[Display(Name = nameof(TanuloResource.VanEEmail), ResourceType = typeof(TanuloResource))]
public int? IsEmail { get; set; }
[Display(Name = nameof(TanuloResource.IsTorvenyesKepviselo), ResourceType = typeof(TanuloResource))]
public int? IsTorvenyesKepviselo { get; set; }
[Display(Name = nameof(TanuloResource.IsBovitettJogosultagu), ResourceType = typeof(TanuloResource))]
public int? IsBovitettJogosultsagu { get; set; }
public OsztalyTanuloiGondviselokSearchCo ConvertToCo()
{
return new OsztalyTanuloiGondviselokSearchCo()
{
EllatottKoznevelesiFeladatTipusIdSearch = EllatottKoznevelesiFeladatTipusIdSearch,
OsztalyIdSearch = OsztalyIdSearch,
TanuloNevSearch = TanuloNevSearch,
IsTelefonszam = IsTelefonszam,
IsEmail = IsEmail,
IsTorvenyesKepviselo = IsTorvenyesKepviselo,
IsBovitettJogosultsagu = IsBovitettJogosultsagu
};
}
}
}

View file

@ -0,0 +1,54 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.Enums;
using Kreta.Resources;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class OsztalyTanuloiSearchModel
{
public OsztalyTanuloiSearchModel()
{
if (ClaimData.IsVegyes)
{ FeladatKategoriaId = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<int>(RendszerBeallitasTipusEnum.Default_Feladat_Kategoria); }
else
{ FeladatKategoriaId = (int)ClaimData.FeladatKategoriak[0]; }
}
[Display(Name = nameof(OsztalyCsoportResource.EllatottKoznevelesiFeladatTipus), ResourceType = typeof(OsztalyCsoportResource))]
public int? FeladatKategoriaId { get; set; }
[Display(Name = nameof(TanuloResource.Osztaly), ResourceType = typeof(TanuloResource))]
public int? OsztalyCsoport { get; set; }
[Display(Name = nameof(TanuloResource.Nev), ResourceType = typeof(TanuloResource))]
public string Nev { get; set; }
[Display(Name = nameof(TanuloResource.AnyjaSzuletesiNev), ResourceType = typeof(TanuloResource))]
public string AnyjaSzuletesiNev { get; set; }
[Display(Name = nameof(TanuloResource.SzuletesiHely), ResourceType = typeof(TanuloResource))]
public string SzuletesiHely { get; set; }
[Display(Name = nameof(TanuloResource.SzuletesiIdo), ResourceType = typeof(TanuloResource))]
public DateTime? SzuletesiIdoTol { get; set; }
[Display(Name = nameof(TanuloResource.SzuletesiIdo), ResourceType = typeof(TanuloResource))]
public DateTime? SzuletesiIdoIg { get; set; }
[Display(Name = nameof(TanuloResource.OktatasiAzonosito), ResourceType = typeof(TanuloResource))]
public string OktatasiAzonosito { get; set; }
[Display(Name = nameof(TanuloResource.Tankotelezett), ResourceType = typeof(TanuloResource))]
public int? Tankotelezett { get; set; }
[Display(Name = nameof(TanuloResource.Tanterv), ResourceType = typeof(TanuloResource))]
public int? Tanterv { get; set; }
[Display(Name = nameof(CommonResource.Feladatellatasihely), ResourceType = typeof(CommonResource))]
public int? FeladatEllatasiHelyId { get; set; }
}
}

View file

@ -0,0 +1,58 @@
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class OsztalyokTanuloiGondviselokGridModel : IKretaIdentity
{
public const string CsoportExportAttributeId = nameof(CsoportExportAttributeId);
public OsztalyokTanuloiGondviselokGridModel() {}
public OsztalyokTanuloiGondviselokGridModel(OsztalyTanuloiGondviselokGridItemCo itemCo)
{
ID = itemCo.ID;
TanuloNeve = itemCo.TanuloNeve;
TanuloOsztalya = itemCo.TanuloOsztalya;
GondviseloNeve = itemCo.GondviseloNeve;
GondviseloBejelentkezesiNev = itemCo.GondviseloBejelentkezesiNev;
RokonsagiFoka = itemCo.RokonsagiFoka;
Telefonszam = itemCo.Telefonszam;
Email = itemCo.Email;
TorvenyesKepviselo = itemCo.TorvenyesKepviselo;
BovitettJogosultsag = itemCo.BovitettJogosultsag;
}
public string ID { get; set; }
[Display(Name = nameof(TanuloResource.TanuloNeve), ResourceType = typeof(TanuloResource))]
public string TanuloNeve { get; set; }
[Display(Name = nameof(TanuloResource.TanuloOsztalya), ResourceType = typeof(TanuloResource))]
public string TanuloOsztalya { get; set; }
[Display(Name = nameof(TanuloResource.GondviseloNeve), ResourceType = typeof(TanuloResource))]
public string GondviseloNeve { get; set; }
[Display(Name = nameof(TanuloResource.Felhasznalonev), ResourceType = typeof(TanuloResource))]
public string GondviseloBejelentkezesiNev { get; set; }
[Display(Name = nameof(TanuloResource.RokonsagFoka), ResourceType = typeof(TanuloResource))]
public string RokonsagiFoka { get; set; }
[Display(Name = nameof(TanuloResource.Telefonszam), ResourceType = typeof(TanuloResource))]
public string Telefonszam { get; set; }
[Display(Name = nameof(TanuloResource.EMail), ResourceType = typeof(TanuloResource))]
public string Email { get; set; }
[Display(Name = nameof(TanuloResource.TorvenyesKepviselo), ResourceType = typeof(TanuloResource))]
public string TorvenyesKepviselo { get; set; }
[Display(Name = nameof(TanuloResource.BovitettJogosultsag), ResourceType = typeof(TanuloResource))]
public string BovitettJogosultsag { get; set; }
}
}

View file

@ -0,0 +1,9 @@
namespace Kreta.Web.Areas.Tanulo.Models
{
public class SzakkepzesiJuttatasokModel
{
public TanuloiOsztondijPanelBarModel TanuloiOsztondijPanelBar { get; set; }
public EgyszeriPalyakezdesiPanelBarModel EgyszeriPayakezdesiPanelBar { get; set; }
public ApaczaiOsztondijPanelBarModel ApaczaiOsztondijPanelBar { get; set; }
}
}

View file

@ -0,0 +1,7 @@
namespace Kreta.Web.Areas.Tanulo.Models
{
public class SzakkepzesiJuttatasokSelectorPopupModel
{
public bool IsApaczaiEnabled { get; set; }
}
}

View file

@ -0,0 +1,48 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class SzakkepzesiMunkaszerzodesGridModel : IKretaIdentity
{
public SzakkepzesiMunkaszerzodesGridModel()
{
}
public SzakkepzesiMunkaszerzodesGridModel(SzakkepzesiMunkaszerzodesItemCo itemCo)
{
ID = itemCo.Id.ToString();
DualisKepzohelyNeve = itemCo.DualisKepzohelyNeve;
DualisKepzohelyAdoszama = itemCo.DualisKepzohelyAdoszama;
Kezdete = itemCo.Kezdete;
Vege = itemCo.Vege;
NewModifySzakkepzesiMunkaszerzodesSzervezetId = itemCo.SzervezetId;
}
public string ID { get; set; }
[Display(Name = nameof(TanuloResource.DualisKepzohelyNeve), ResourceType = typeof(TanuloResource))]
public string DualisKepzohelyNeve { get; set; }
[Display(Name = nameof(TanuloResource.DualisKepzohelyAdoszama), ResourceType = typeof(TanuloResource))]
public string DualisKepzohelyAdoszama { get; set; }
[Display(Name = nameof(TanuloResource.SzakkepzesiMunkaszerzodesKezdete), ResourceType = typeof(TanuloResource))]
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
public DateTime? Kezdete { get; set; }
[Display(Name = nameof(TanuloResource.SzakkepzesiMunkaszerzodesVege), ResourceType = typeof(TanuloResource))]
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
public DateTime? Vege { get; set; }
[Display(Name = nameof(DualisResource.DualisKepzohely), ResourceType = typeof(DualisResource))]
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
public int? NewModifySzakkepzesiMunkaszerzodesSzervezetId { get; set; }
public string GridRowStatus { get; set; }
}
}

View file

@ -0,0 +1,9 @@
namespace Kreta.Web.Areas.Tanulo.Models
{
public class SzakkepzesiMunkaszerzodesModel
{
public int? TanuloId { get; set; }
public bool IsEditable { get; set; }
public bool IsTobbes { get; set; }
}
}

View file

@ -0,0 +1,28 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanarNemTanitottTanulokGridModel : IKretaIdentity
{
public string ID { get; set; }
[Display(Name = nameof(TanuloResource.Tanulo), ResourceType = typeof(TanuloResource))]
public string TanuloNev { get; set; }
[Display(Name = nameof(TanuloResource.Tanulo), ResourceType = typeof(TanuloResource))]
public string TanuloNevElotagNelkul { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.OsztalyCsoport), ResourceType = typeof(OsztalyCsoportResource))]
public string OsztalyCsoportNev { get; set; }
[Display(Name = nameof(TanuloResource.SzuletesiDatuma), ResourceType = typeof(TanuloResource))]
public DateTime SzuletesiIdo { get; set; }
[Display(Name = nameof(TanuloResource.OktatasiAzonosito), ResourceType = typeof(TanuloResource))]
public string OktAzon { get; set; }
}
}

View file

@ -0,0 +1,17 @@
using System.ComponentModel.DataAnnotations;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanarNemTanitottTanulokSearchModel
{
public TanarNemTanitottTanulokSearchModel()
{
EnableRowFunctions = true;
}
[Display(Name = nameof(OsztalyCsoportResource.OsztalyCsoport), ResourceType = typeof(OsztalyCsoportResource))]
public int? OsztalyCsoportID { get; set; }
public bool EnableRowFunctions { get; set; }
}
}

View file

@ -0,0 +1,14 @@
using System.ComponentModel.DataAnnotations;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanarNemTanitottTanulokStartPopUpModel
{
[Display(Name = nameof(TanuloResource.FoglalkozasTipus), ResourceType = typeof(TanuloResource))]
public int? FoglalkozasTipusPopUp { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.OsztalyCsoport), ResourceType = typeof(OsztalyCsoportResource))]
public int? FoglalkozasPopUp { get; set; }
}
}

View file

@ -0,0 +1,26 @@
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanarTanitottTanulokGridModel : IKretaIdentity
{
public string ID { get; set; }
[Display(Name = nameof(TanuloResource.Tanulo), ResourceType = typeof(TanuloResource))]
public string TanuloNev { get; set; }
[Display(Name = nameof(TanuloResource.Tanulo), ResourceType = typeof(TanuloResource))]
public string TanuloNevElotagNelkul { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.OsztalyCsoport), ResourceType = typeof(OsztalyCsoportResource))]
public string FoglalkozasNev { get; set; }
[Display(Name = nameof(TantargyResource.Tantargy), ResourceType = typeof(TantargyResource))]
public string TantargyNev { get; set; }
[Display(Name = nameof(TanuloResource.FoglalkozasTipus), ResourceType = typeof(TanuloResource))]
public string Tipus_DNAME { get; set; }
}
}

View file

@ -0,0 +1,27 @@
using System.ComponentModel.DataAnnotations;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanarTanitottTanulokSearchModel
{
public TanarTanitottTanulokSearchModel()
{
EnableRowFunctions = true;
}
[Display(Name = nameof(TanuloResource.FoglalkozasTipus), ResourceType = typeof(TanuloResource))]
public int? FoglalkozasTipus { get; set; }
[Display(Name = nameof(TanuloResource.Foglalkozas), ResourceType = typeof(TanuloResource))]
public int? Foglalkozas { get; set; }
public bool EnableRowFunctions { get; set; }
[Display(Name = nameof(TanuloResource.CsakBukasraAllok), ResourceType = typeof(TanuloResource))]
public bool? CsakBukasraAllok { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.EllatottKoznevelesiFeladatTipus), ResourceType = typeof(OsztalyCsoportResource))]
public int? FeladatKategoriaId { get; set; }
}
}

View file

@ -0,0 +1,14 @@
using System.ComponentModel.DataAnnotations;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanarTanitottTanulokStartPopUpModel
{
[Display(Name = nameof(TanuloResource.FoglalkozasTipus), ResourceType = typeof(TanuloResource))]
public int? FoglalkozasTipusPopUp { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.OsztalyCsoport), ResourceType = typeof(OsztalyCsoportResource))]
public int? FoglalkozasPopUp { get; set; }
}
}

View file

@ -0,0 +1,14 @@
using Kreta.Enums.ManualEnums;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiAtlagokModel
{
public double? SzamitottAtlag { get; set; }
public double? KeziAtlag { get; set; }
public string Feljegyzes { get; set; }
public int? HatranyosHelyzetIgazolasKiallitasDatuma { get; set; }
public ApaczaiPalyazatStatuszEnum? PalyazatStatusz { get; set; }
}
}

View file

@ -0,0 +1,77 @@
using System.Collections.Generic;
using System.Linq;
using Kreta.Enums.ManualEnums;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiDokumentumHozzaadasaModel
{
public IList<string> HatranyosHelyzetIgazolasaFajlnevek { get; set; }
public bool IsHatranyosHelyzetIgazolasaUploaded => HatranyosHelyzetIgazolasaFajlnevek.Any();
public bool IsHatranyosHelyzetIgazolasaLessThanMax => HatranyosHelyzetIgazolasaFajlnevek.Count < KategoriankentiMaxFajlSzam;
public bool IsHatranyosHelyzetEnable => IsHatranyosHelyzetIgazolasaLessThanMax
&& (!PalyazatStatusz.HasValue
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve || PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve);
public IList<string> HozzajaruloNyilatkozatFajlnevek { get; set; }
public bool IsHozzajaruloNyilatkozatUploaded => HozzajaruloNyilatkozatFajlnevek.Any();
public bool IsHozzajaruloNyilatkozatLessThanMax => HozzajaruloNyilatkozatFajlnevek.Count < KategoriankentiMaxFajlSzam;
public bool IsHozzajaruloNyilatkozatEnable => IsHozzajaruloNyilatkozatLessThanMax
&& (!PalyazatStatusz.HasValue
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve || PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve);
public IList<string> MentoriTamogatoNyilatkozatFajlnevek { get; set; }
public bool IsMentoriTamogatoNyilatkozatUploaded => MentoriTamogatoNyilatkozatFajlnevek.Any();
public bool IsMentoriTamogatoNyilatkozatLessThanMax => MentoriTamogatoNyilatkozatFajlnevek.Count < KategoriankentiMaxFajlSzam;
public bool IsMentoriTamogatoNyilatkozatEnable => IsMentoriTamogatoNyilatkozatLessThanMax
&& (!PalyazatStatusz.HasValue
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve || PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve);
public IList<string> EgyebDokumentumFajlnevek { get; set; }
public bool IsEgyebDokumentumUploaded => EgyebDokumentumFajlnevek.Any();
public bool IsEgyebDokumentumLessThanMax => EgyebDokumentumFajlnevek.Count < KategoriankentiMaxFajlSzam;
public bool IsEgyebDokumentumEnable => IsEgyebDokumentumLessThanMax
&& (!PalyazatStatusz.HasValue
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.Elfogadott);
public IList<string> ElozoTanevEvvegiBizonyitvanyFajlnevek { get; set; }
public bool IsElozoTanevEvvegiBizonyitvanyUploaded => ElozoTanevEvvegiBizonyitvanyFajlnevek.Any();
public bool IsElozoTanevEvvegiBizonyitvanyLessThanMax => ElozoTanevEvvegiBizonyitvanyFajlnevek.Count < KategoriankentiMaxFajlSzam;
public bool IsElozoTanevEvvegiBizonyitvanyEnable => IsElozoTanevEvvegiBizonyitvanyLessThanMax
&& (!PalyazatStatusz.HasValue
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve || PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve);
public IEnumerable<string> AllowedFileExtensions { get; set; }
public int KategoriankentiMaxFajlSzam => Core.Constants.MinMaxValues.MaxApaczaiKategoriankentFeltotlhetoFajlokSzama;
public ApaczaiPalyazatStatuszEnum? PalyazatStatusz { get; set; }
public TanuloApaczaiDokumentumHozzaadasaModel()
{
HatranyosHelyzetIgazolasaFajlnevek = new List<string>();
HozzajaruloNyilatkozatFajlnevek = new List<string>();
MentoriTamogatoNyilatkozatFajlnevek = new List<string>();
EgyebDokumentumFajlnevek = new List<string>();
ElozoTanevEvvegiBizonyitvanyFajlnevek = new List<string>();
AllowedFileExtensions = Constants.UploadFile.ApaczaiAllowedFileExtensions;
}
}
}

View file

@ -0,0 +1,10 @@
using Kreta.Enums.ManualEnums;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiDokumentumMenuModel
{
public ApaczaiPalyazatStatuszEnum? PalyazatStatusz { get; set; }
public bool IsSzakkepzoJuttatas { get; set; }
}
}

View file

@ -0,0 +1,34 @@
using System;
using System.Collections.Generic;
using System.Linq;
using Kreta.Enums.ManualEnums;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiDokumentumokMegtekinteseModel
{
public ApaczaiPalyazatStatuszEnum? Statusz { get; set; }
public List<TanuloApaczaiDokumentumKategoriaModel> KategoriaList { get; set; } = new List<TanuloApaczaiDokumentumKategoriaModel>();
}
public class TanuloApaczaiDokumentumKategoriaModel
{
public TanuloApaczaiDokumentumKategoriaModel()
{
DokumentumList = new List<TanuloApaczaiDokumentumModel>();
}
public string DokumentumkategoriaAzonosito { get; set; }
public string DokumentumKategoriaNeve { get; set; }
public List<TanuloApaczaiDokumentumModel> DokumentumList { get; set; }
public bool IsFeltoltott => DokumentumList.Any();
public bool IsDeleteDocumentEnabled { get; set; } = true;
}
public class TanuloApaczaiDokumentumModel
{
public Guid DokumentumId { get; set; }
public string DokumentumNev { get; set; }
}
}

View file

@ -0,0 +1,12 @@
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiDokumentumokModel
{
public int CountHozzajaruloDokumentum { get; set; }
public int CountHatranyosHelyzetIgazolas { get; set; }
public int CountEgyebDokumentum { get; set; }
public int CountElozoTanevEvvegiBizonyitvany { get; set; }
public int CountMentoriTamogatoNyilatkozat { get; set; }
public int KategoriankentiMaxFajlSzam => Core.Constants.MinMaxValues.MaxApaczaiKategoriankentFeltotlhetoFajlokSzama;
}
}

View file

@ -0,0 +1,33 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Kreta.Enums.ManualEnums;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiEszaAdatlapokMegtekinteseModel
{
public TanuloApaczaiEszaAdatlapokMegtekinteseModel()
{
EszaBelepoNyilatkozatIgazolasaFajlnevek = new List<string>();
EszaKilepoNyilatkozatIgazolasaFajlnevek = new List<string>();
}
public IList<string> EszaBelepoNyilatkozatIgazolasaFajlnevek { get; set; }
public bool IsEszaBelepoNyilatkozatUploaded => EszaBelepoNyilatkozatIgazolasaFajlnevek.Any();
public IList<string> EszaKilepoNyilatkozatIgazolasaFajlnevek { get; set; }
public bool IsEszaKilepoNyilatkozatUploaded => EszaKilepoNyilatkozatIgazolasaFajlnevek.Any();
public int KategoriankentiMaxFajlSzam => Core.Constants.MinMaxValues.MaxApaczaiKategoriankentFeltotlhetoFajlokSzama;
public bool IsEszaBelepoNyilatkozatEnable => EszaBelepoNyilatkozatIgazolasaFajlnevek.Count < KategoriankentiMaxFajlSzam;
public bool IsEszaKilepoNyilatkozatEnable => EszaKilepoNyilatkozatIgazolasaFajlnevek.Count < KategoriankentiMaxFajlSzam;
public IEnumerable<string> AllowedFileExtensions { get; } = Constants.UploadFile.ApaczaiAllowedFileExtensions;
}
}

View file

@ -0,0 +1,11 @@
using System.ComponentModel.DataAnnotations;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiFellebbezesModel
{
[MaxLength(Core.Constants.MinMaxValues.MaxApaczaiFellebbezesSzovegHossz, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
public string Content { get; set; }
}
}

View file

@ -0,0 +1,7 @@
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiHomeModel
{
public string TanuloNeve { get; set; }
}
}

View file

@ -0,0 +1,16 @@
using System.Collections.Generic;
using Kreta.Web.Areas.Adminisztracio.Models;
using Kreta.Web.Models;
using Kreta.Web.Models.EditorTemplates;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiModel : PanelBarBaseModel
{
public SajatAdatlapInfoModel SajatAdatlapInfo { get; set; }
public CimElerhetosegModel CimElerhetoseg { get; set; }
public TanuloApaczaiAtlagokModel AtlagokInfo { get; set; }
public IEnumerable<string> AllowedFileExtensions { get; } = Constants.UploadFile.ApaczaiAllowedFileExtensions;
public bool IsSzakkepzoJuttatas { get; set; }
}
}

View file

@ -0,0 +1,44 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Core.CustomAttributes;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiOsztondijBaseGridModel : IKretaIdentity
{
public const string ApaczaiIgenylesekExportAttributeId = nameof(ApaczaiIgenylesekExportAttributeId);
public const string ApaczaiKifizetesekExportAttributeId = nameof(ApaczaiKifizetesekExportAttributeId);
public const string ApaczaiTanuloiListaExportAttributeId = nameof(ApaczaiTanuloiListaExportAttributeId);
public string ID { get; set; }
[SimpleExportColumn(ApaczaiIgenylesekExportAttributeId, 00, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameTanuloNeve), typeof(SzakkepzesiJuttatasokResource))]
[SimpleExportColumn(ApaczaiKifizetesekExportAttributeId, 00, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameTanuloNeve), typeof(SzakkepzesiJuttatasokResource))]
[SimpleExportColumn(ApaczaiTanuloiListaExportAttributeId, 00, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameTanuloNeve), typeof(SzakkepzesiJuttatasokResource))]
[Display(Name = nameof(TanuloResource.TanuloNeve), ResourceType = typeof(TanuloResource))]
public string TanuloNeve { get; set; }
[SimpleExportColumn(ApaczaiIgenylesekExportAttributeId, 01, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameOktatasiAzonosito), typeof(SzakkepzesiJuttatasokResource))]
[SimpleExportColumn(ApaczaiKifizetesekExportAttributeId, 01, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameOktatasiAzonosito), typeof(SzakkepzesiJuttatasokResource))]
[SimpleExportColumn(ApaczaiTanuloiListaExportAttributeId, 01, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameOktatasiAzonosito), typeof(SzakkepzesiJuttatasokResource))]
[Display(Name = nameof(TanuloResource.OktatasiAzonosito), ResourceType = typeof(TanuloResource))]
public string OktatasiAzonosito { get; set; }
[SimpleExportColumn(ApaczaiIgenylesekExportAttributeId, 02, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameSzuletesiIdo), typeof(SzakkepzesiJuttatasokResource))]
[SimpleExportColumn(ApaczaiKifizetesekExportAttributeId, 02, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameSzuletesiIdo), typeof(SzakkepzesiJuttatasokResource))]
[Display(Name = nameof(TanuloResource.SzuletesiIdo), ResourceType = typeof(TanuloResource))]
public DateTime SzuletesiIdeje { get; set; }
[SimpleExportColumn(ApaczaiIgenylesekExportAttributeId, 03, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameOsztaly), typeof(SzakkepzesiJuttatasokResource))]
[SimpleExportColumn(ApaczaiKifizetesekExportAttributeId, 03, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameOsztaly), typeof(SzakkepzesiJuttatasokResource))]
[Display(Name = nameof(TanuloResource.Osztaly), ResourceType = typeof(TanuloResource))]
public string Osztaly { get; set; }
[SimpleExportColumn(ApaczaiIgenylesekExportAttributeId, 04, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameEvfolyam), typeof(SzakkepzesiJuttatasokResource))]
[SimpleExportColumn(ApaczaiKifizetesekExportAttributeId, 04, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameEvfolyam), typeof(SzakkepzesiJuttatasokResource))]
[Display(Name = nameof(TanuloResource.Evfolyam), ResourceType = typeof(TanuloResource))]
public string EvfolyamNev { get; set; }
}
}

View file

@ -0,0 +1,29 @@
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses.ApaczaiProgramCOs;
using Kreta.Core.CustomAttributes;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiOsztondijIgenylesekGridModel : TanuloApaczaiOsztondijBaseGridModel
{
public TanuloApaczaiOsztondijIgenylesekGridModel()
{
}
public TanuloApaczaiOsztondijIgenylesekGridModel(IgenylesCo co)
{
this.TanuloNeve = co.TanuloNeve;
this.SzuletesiIdeje = co.SzuletesiIdeje;
this.PalyazatAllapota = co.PalyazatAllapotaNev;
this.Osztaly = co.OsztalyNev;
this.OktatasiAzonosito = co.OktatasiAzonosito;
this.EvfolyamNev = co.EvfolyamNev;
}
[SimpleExportColumn(ApaczaiIgenylesekExportAttributeId, 05, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNamePalyazatAllapota), typeof(SzakkepzesiJuttatasokResource))]
[Display(Name = nameof(SzakkepzesiJuttatasokResource.PalyazatAllapota), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string PalyazatAllapota { get; set; }
}
}

View file

@ -0,0 +1,24 @@
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses.ApaczaiProgramCOs;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiOsztondijIgenylesekSearchModel : TanuloSzakkepzesiJuttatasSearchModel
{
[Display(Name = nameof(SzakkepzesiJuttatasokResource.PalyazatAllapota), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public int? PalyazatAllapota { get; set; }
public IgenylesSearchCo ConvertToCo()
{
return new IgenylesSearchCo
{
EvfolyamId = this.Evfolyam,
OktatasiAzonosito = this.OktatasiAzonosito?.Trim(" _".ToCharArray()),
OsztalyId = this.OsztalyId,
PalyazatAllapotaId = this.PalyazatAllapota,
TanuloNeve = this.TanuloNeve,
};
}
}
}

View file

@ -0,0 +1,39 @@
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses.ApaczaiProgramCOs;
using Kreta.Core.CustomAttributes;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiOsztondijKifizetesekGridModel : TanuloApaczaiOsztondijBaseGridModel
{
public TanuloApaczaiOsztondijKifizetesekGridModel()
{
}
public TanuloApaczaiOsztondijKifizetesekGridModel(KifizetesCo co)
{
this.TanuloNeve = co.TanuloNeve;
this.SzuletesiIdeje = co.SzuletesiIdeje;
this.Osztaly = co.OsztalyNev;
this.OktatasiAzonosito = co.OktatasiAzonosito;
this.EvfolyamNev = co.EvfolyamNev;
this.Jogosultsag = co.Jogosultsag;
this.JuttatasOsszege = co.JuttatasOsszege;
this.NemJogosultsagOka = co.NemJogosultsagOka;
}
[SimpleExportColumn(ApaczaiKifizetesekExportAttributeId, 05, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameJogosultsag), typeof(SzakkepzesiJuttatasokResource))]
[Display(Name = nameof(SzakkepzesiJuttatasokResource.Jogosultsag), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string Jogosultsag { get; set; }
[SimpleExportColumn(ApaczaiKifizetesekExportAttributeId, 06, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameNemJogosultsagOka), typeof(SzakkepzesiJuttatasokResource))]
[Display(Name = nameof(SzakkepzesiJuttatasokResource.NemJogosultsagOka), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string NemJogosultsagOka { get; set; }
[SimpleExportColumn(ApaczaiKifizetesekExportAttributeId, 07, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNameJuttatasOsszege), typeof(SzakkepzesiJuttatasokResource))]
[Display(Name = nameof(SzakkepzesiJuttatasokResource.JuttatasOsszege), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public int? JuttatasOsszege { get; set; }
}
}

View file

@ -0,0 +1,30 @@
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses.ApaczaiProgramCOs;
using Kreta.Core;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiOsztondijKifizetesekSearchModel : TanuloSzakkepzesiJuttatasSearchModel
{
[Display(Name = nameof(SzakkepzesiJuttatasokResource.Jogosultsag), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public int? Jogosultsag { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.JuttatasOsszege), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public int? JuttatasOsszege { get; set; }
public KifizetesSearchCo ConvertToCo()
{
return new KifizetesSearchCo
{
EvfolyamId = this.Evfolyam,
OktatasiAzonosito = this.OktatasiAzonosito?.Trim(" _".ToCharArray()),
OsztalyId = this.OsztalyId,
TanuloNeve = this.TanuloNeve,
Jogosultsag = this.Jogosultsag.ToNullableBoolean(),
JuttatasOsszege = this.JuttatasOsszege,
};
}
}
}

View file

@ -0,0 +1,48 @@
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.HelperClasses.ApaczaiProgramCOs;
using Kreta.Core.CustomAttributes;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiOsztondijTanuloiListaGridModel : TanuloApaczaiOsztondijBaseGridModel
{
public TanuloApaczaiOsztondijTanuloiListaGridModel()
{
}
public TanuloApaczaiOsztondijTanuloiListaGridModel(TanuloApaczaiTanuloListaItemCo co)
{
TanuloNeve = co.TanuloNeve;
OktatasiAzonosito = co.OktatasiAzonosito;
Osztaly = co.Osztaly;
EvfolyamNev = co.EvfolyamNeve;
SzuletesiIdeje = co.SzuletesiIdeje.Value;
PalyazatKgrAllapota = co.PalyazatKgrAllapota;
Jogosultsag = co.Jogosultsag.GetDisplayName();
NemJogosultsagOka = co.NemJogosultsagOka_STR;
JuttatasOsszege = co.JuttatasOsszege;
MentorNeve = co.MentorNeve;
}
[SimpleExportColumn(ApaczaiTanuloiListaExportAttributeId, 05, nameof(SzakkepzesiJuttatasokResource.ExportHeaderNamePalyazatAllapota), typeof(SzakkepzesiJuttatasokResource))]
[Display(Name = nameof(SzakkepzesiJuttatasokResource.PalyazatAllapota), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string PalyazatKgrAllapota { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.Jogosultsag), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string Jogosultsag { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.NemJogosultsagOka), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string NemJogosultsagOka { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.JuttatasOsszege), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public int? JuttatasOsszege { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.MentorNeve), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string MentorNeve { get; set; }
}
}

View file

@ -0,0 +1,38 @@
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses.ApaczaiProgramCOs;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiOsztondijTanuloiListaSearchModel : TanuloSzakkepzesiJuttatasSearchModel
{
[Display(Name = nameof(SzakkepzesiJuttatasokResource.PalyazatAllapota), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public int? PalyazatAllapota { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.Jogosultsag), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public int? Jogosultsag { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.MentorNeve), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public string MentorNeve { get; set; }
[Display(Name = nameof(SzakkepzesiJuttatasokResource.CsakErvenyesPalyazattalRendelkezok), ResourceType = typeof(SzakkepzesiJuttatasokResource))]
public bool IsCsakErvenyesPalyazattal { get; set; }
public string VizsgaltHonap { get; set; }
public TanuloiListaSearchCo ConvertModelToCo()
{
return new TanuloiListaSearchCo
{
EvfolyamId = Evfolyam,
OktatasiAzonosito = OktatasiAzonosito?.Trim(" _".ToCharArray()),
OsztalyId = OsztalyId,
PalyazatAllapotaId = PalyazatAllapota,
TanuloNeve = TanuloNeve,
Jogosultsag = Jogosultsag,
MentorNeve = MentorNeve,
IsCsakErvenyesPalyazattal = IsCsakErvenyesPalyazattal,
};
}
}
}

View file

@ -0,0 +1,98 @@
using System;
using Kreta.BusinessLogic.HelperClasses.ApaczaiProgramCOs;
using Kreta.Enums.ManualEnums;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiPalyazatAllapotaModel
{
public TanuloApaczaiPalyazatAllapotaModel(PalyazatCo co, DokumentumCo palyazatiDontesDokumentum, DokumentumCo tamogatoiOkiratDokumentum)
{
ErkeztetesiSzam = co.ErkeztetesiSzam;
Iktatoszam = co.Iktatoszam;
Komment = co.Komment;
Statusz = co.Statusz;
FellebbezesHatarido = co.FellebbezesHatarido;
PalyazatiDontesFajlnev = palyazatiDontesDokumentum?.Nev;
PalyazatiDontesGuid = palyazatiDontesDokumentum?.Azonosito;
TamogatoiOkiratFajlnev = tamogatoiOkiratDokumentum?.Nev;
TamogatoiOkiratGuid = tamogatoiOkiratDokumentum?.Azonosito;
MegNincsBiralatAlatt = co.StatuszId == (int)KgrPalyazatStatuszEnum.Uj;
}
public bool MegNincsBiralatAlatt { get; private set; }
public string ErkeztetesiSzam { get; set; }
public string Iktatoszam { get; set; }
public ApaczaiPalyazatStatuszEnum? Statusz { get; set; }
public DateTime? FellebbezesHatarido { get; set; }
public string StatuszColor
{
get
{
if (Statusz.HasValue)
{
return Helper.ApaczaiPalyazatStatuszExtensions.GetColor(Statusz.Value);
}
return string.Empty;
}
}
public string StatuszIcon
{
get
{
if (Statusz.HasValue)
{
return Helper.ApaczaiPalyazatStatuszExtensions.GetIcon(Statusz.Value);
}
return string.Empty;
}
}
public string StatuszText
{
get
{
if (Statusz.HasValue)
{
return Helper.ApaczaiPalyazatStatuszExtensions.GetText(Statusz.Value);
}
return string.Empty;
}
}
public string Komment { get; set; }
public bool IsKommentVisible => !string.IsNullOrWhiteSpace(Komment);
public bool IsFellebbezesiIdoszakban => DateTime.Now <= FellebbezesHatarido;
public string PalyazatiDontesFajlnev { get; set; }
public Guid? PalyazatiDontesGuid { get; set; }
public string TamogatoiOkiratFajlnev { get; set; }
public Guid? TamogatoiOkiratGuid { get; set; }
public PalyazatCo ConvertToCo()
{
return new PalyazatCo
{
ErkeztetesiSzam = ErkeztetesiSzam,
Iktatoszam = Iktatoszam,
Komment = Komment,
Statusz = Statusz,
FellebbezesHatarido = FellebbezesHatarido
};
}
}
}

View file

@ -0,0 +1,59 @@
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiPalyazatBenyujtasAtlagokContentModel : Web.Models.EditorTemplates.PanelBarChildModel
{
[Display(Name = nameof(TanuloApaczaiResource.SzamitottAtlag), ResourceType = typeof(TanuloApaczaiResource))]
public double? SzamitottAtlag { get; set; }
[Display(Name = nameof(TanuloApaczaiResource.KeziAtlag), ResourceType = typeof(TanuloApaczaiResource))]
public double? KeziAtlag { get; set; }
[Display(Name = nameof(TanuloApaczaiResource.HatranyosHelyzetIgazolasKiallitasDatuma), ResourceType = typeof(TanuloApaczaiResource))]
public int? HatranyosHelyzetIgazolasKiallitasDatuma { get; set; }
public ApaczaiPalyazatStatuszEnum? PalyazatStatusz { get; set; }
[Display(Name = nameof(TanuloApaczaiResource.Feljegyzes), ResourceType = typeof(TanuloApaczaiResource))]
[MaxLength(4000, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
public string Feljegyzes { get; set; }
public int CountElozoTanevEvvegiBizonyitvany { get; set; }
public int KategoriankentiMaxFajlSzam => Core.Constants.MinMaxValues.MaxApaczaiKategoriankentFeltotlhetoFajlokSzama;
public bool IsElozoTanevEvvegiBizonyitvanyEnable => CountElozoTanevEvvegiBizonyitvany < KategoriankentiMaxFajlSzam
&& (!PalyazatStatusz.HasValue
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve);
public IEnumerable<string> AllowedFileExtensions { get; set; }
[Display(Name = nameof(TanuloApaczaiResource.NyilatkozatValosAdatokrol), ResourceType = typeof(TanuloApaczaiResource))]
public bool NyilatkozatValosAdatokrol { get; set; }
[Display(Name = nameof(TanuloApaczaiResource.NyilatkozatHitelesAdatokrol), ResourceType = typeof(TanuloApaczaiResource))]
public bool NyilatkozatHitelesAdatokrol { get; set; }
[Display(Name = nameof(TanuloApaczaiResource.NyilatkozatKotelezettsegVallalasMentor), ResourceType = typeof(TanuloApaczaiResource))]
public bool NyilatkozatKotelezettsegVallalasMentor { get; set; }
[Display(Name = nameof(TanuloApaczaiResource.NyilatkozatSzakkepzesKeretebenNincsEvVegiMinosites), ResourceType = typeof(TanuloApaczaiResource))]
public bool NyilatkozatSzakkepzesKeretebenNincsEvVegiMinosites { get; set; }
[Display(Name = nameof(TanuloApaczaiResource.NyilatkozatSzabalyzatElolvasasarol), ResourceType = typeof(TanuloApaczaiResource))]
public bool NyilatkozatSzabalyzatElolvasasarol { get; set; }
[Display(Name = nameof(TanuloApaczaiResource.NyilatkozatSzemelyesAdatokKozleserol), ResourceType = typeof(TanuloApaczaiResource))]
public bool NyilatkozatSzemelyesAdatokKozleserol { get; set; }
public bool IsReadOnly { get; set; } = false;
public TanuloApaczaiPalyazatBenyujtasAtlagokContentModel()
{
AllowedFileExtensions = Constants.UploadFile.ApaczaiAllowedFileExtensions;
}
}
}

View file

@ -0,0 +1,8 @@

namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiPalyazatBenyujtasAtlagokModel : TanuloApaczaiPalyazatBenyujtasModel
{
public TanuloApaczaiPalyazatBenyujtasAtlagokContentModel ContentModel { get; set; }
}
}

View file

@ -0,0 +1,84 @@
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.HelperClasses.ApaczaiProgramCOs;
using Kreta.Enums;
using Kreta.Web.Areas.Adminisztracio.Models;
using Kreta.Web.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiPalyazatBenyujtasContentModel
{
public SajatAdatlapInfoModel AlapAdatModel { get; set; }
public CimElerhetosegModel ElerhetosegModel { get; set; }
public TanuloBankszamlaModel BankszamlaModel { get; set; }
public TanuloApaczaiAtlagokModel AtlagokModel { get; set; }
public TanuloApaczaiDokumentumokModel DokumentumokModel { get; set; }
public TanuloAdatokCo ConvertToCo()
{
return new TanuloAdatokCo
{
Allampolgarsag = AlapAdatModel.AlapAdat.Allampolgarsag,
Allampolgarsag2 = AlapAdatModel.AlapAdat.Allampolgarsag2,
Anyanyelv = AlapAdatModel.AlapAdat.Anyanyelv,
AnyjaCsaladiNeve = AlapAdatModel.AlapAdat.AnyjaCsaladiNeve,
AnyjaUtonev = AlapAdatModel.AlapAdat.AnyjaUtonev,
CsaladiNev = AlapAdatModel.AlapAdat.CsaladiNev,
EloTag = AlapAdatModel.AlapAdat.EloTag,
IgazolvanySzam = AlapAdatModel.AlapAdat.IgazolvanySzam,
IgazolvanyTipus = AlapAdatModel.AlapAdat.IgazolvanyTipus,
OktatasiAzonosito = AlapAdatModel.AlapAdat.OktatasiAzonosito,
SzuletesiCsaladNev = AlapAdatModel.AlapAdat.SzuletesiCsaladNev,
SzuletesiHely = AlapAdatModel.AlapAdat.SzuletesiHely,
SzuletesiIdo = AlapAdatModel.AlapAdat.SzuletesiIdo,
SzuletesiOrszag = AlapAdatModel.AlapAdat.SzuletesiOrszag,
SzuletesiUtonev = AlapAdatModel.AlapAdat.SzuletesiUtonev,
Utonev = AlapAdatModel.AlapAdat.Utonev,
TAJSzam = AlapAdatModel.TanuloIgazolvany.TajSzam,
AllandoElerhetoseg = new TanuloElerhetosegAdatokCo
{
Orszag = ElerhetosegModel.OrszagStr,
CimTipus = ElerhetosegModel.CimTipusStr,
Iranyitoszam = ElerhetosegModel.Iranyitoszam,
HelysegNev = ElerhetosegModel.HelysegNev_Str,
KozteruletNev = ElerhetosegModel.KozteruletNev,
KozteruletTipus = ElerhetosegModel.KozteruletTipus_Str,
Hazszam = ElerhetosegModel.Hazszam,
Emelet = ElerhetosegModel.Emelet,
Ajto = ElerhetosegModel.Ajto,
TelefonSzam = ElerhetosegModel.Telefon ?? "-",
TelefonTipus = ElerhetosegModel.TelefonTipusStr,
Emailcim = ElerhetosegModel.Emailcim ?? "-",
EmailTipus = ElerhetosegModel.EmailTipusStr,
},
TartozkodasiElerhetoseg = new TanuloElerhetosegAdatokCo
{
Orszag = ElerhetosegModel.TartozkodasiOrszagStr,
CimTipus = ElerhetosegModel.TartozkodasiCimTipusStr,
Iranyitoszam = ElerhetosegModel.TartozkodasiIranyitoszam,
HelysegNev = ElerhetosegModel.TartozkodasiHelysegNev,
KozteruletNev = ElerhetosegModel.TartozkodasiKozteruletNev,
KozteruletTipus = ElerhetosegModel.TartozkodasiKozteruletTipusNev,
Hazszam = ElerhetosegModel.TartozkodasiHazszam,
Emelet = ElerhetosegModel.TartozkodasiEmelet,
Ajto = ElerhetosegModel.TartozkodasiAjto,
TelefonSzam = ElerhetosegModel.Telefon2 ?? "-",
TelefonTipus = ElerhetosegModel.TelefonTipus2Str,
Emailcim = ElerhetosegModel.Emailcim ?? "-",
EmailTipus = ElerhetosegModel.EmailTipusStr,
},
BankszamlaSzam = AlapAdatModel.TanuloBankszamla.BankszamlaSzam,
BankszamlaTulajdonos = AlapAdatModel.TanuloBankszamla.BankszamlaTulajdonos.GetDisplayName<BankszamlaTulajdonosTipusEnum>(ClaimData.SelectedTanevID.Value),
BankszamlaTulajdonosNeve = AlapAdatModel.TanuloBankszamla.BankszamlaTulajdonosNeve,
SzamlavezetoBank = AlapAdatModel.TanuloBankszamla.SzamlavezetoBank ?? "-",
KeziAtlag = AtlagokModel.KeziAtlag,
SzamitottAtlag = AtlagokModel.SzamitottAtlag,
Feljegyzes = AtlagokModel.Feljegyzes,
HatranyosHelyzetIgazolasKiallitasDatuma = AtlagokModel.HatranyosHelyzetIgazolasKiallitasDatuma.Value,
PalyazatStatusz = AtlagokModel.PalyazatStatusz
};
}
}
}

View file

@ -0,0 +1,53 @@
using System.Collections.Generic;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiPalyazatBenyujtasDokumentumokContentModel : Web.Models.EditorTemplates.PanelBarChildModel
{
public string HozzajaruloDokumentum { get; set; } = TanuloApaczaiResource.HozzajaruloNyilatkozat;
public string HatranyosHelyzetetIgazoloDokumentum { get; set; } = TanuloApaczaiResource.HatranyosHelyzetIgazolasa;
public string MentoriTamogatoNyilatkozat { get; set; } = TanuloApaczaiResource.MentoriTamogatoNyilatkozat;
public string EgyebDokumentum { get; set; } = TanuloApaczaiResource.EgyebDokumentum;
public string ElozoTanevEvvegiBizonyitvany { get; set; } = TanuloApaczaiResource.ElozoTanevEvvegiBizonyitvany;
public int CountHozzajaruloDokumentum { get; set; }
public bool IsHozzajaruloNyilatkozatLessThanMax => CountHozzajaruloDokumentum < KategoriankentiMaxFajlSzam;
public bool IsHozzajaruloNyilatkozatEnable => IsHozzajaruloNyilatkozatLessThanMax
&& (!PalyazatStatusz.HasValue
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve);
public int CountHatranyosHelyzetIgazolas { get; set; }
public bool IsHatranyosHelyzetIgazolasaLessThanMax => CountHatranyosHelyzetIgazolas < KategoriankentiMaxFajlSzam;
public bool IsHatranyosHelyzetEnabled => IsHatranyosHelyzetIgazolasaLessThanMax
&& (!PalyazatStatusz.HasValue
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve);
public int CountMentoriTamogatoNyilatkozat { get; set; }
public bool IsMentoriTamogatoNyilatkozatLessThanMax => CountMentoriTamogatoNyilatkozat < KategoriankentiMaxFajlSzam;
public bool IsMentoriTamogatoNyilatkozatEnabled => IsMentoriTamogatoNyilatkozatLessThanMax
&& (!PalyazatStatusz.HasValue
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve);
public int CountEgyebDokumentum { get; set; }
public bool IsEgyebDokumentumLessThanMax => CountEgyebDokumentum < KategoriankentiMaxFajlSzam;
public bool IsEgyebDokumentumEnable => IsEgyebDokumentumLessThanMax
&& (!PalyazatStatusz.HasValue
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.Elfogadott);
public int CountElozoTanevEvvegiBizonyitvany { get; set; }
public bool IsElozoTanevEvvegiBizonyitvanyLessThanMax => CountElozoTanevEvvegiBizonyitvany < KategoriankentiMaxFajlSzam;
public bool IsElozoTanevEvvegiBizonyitvanyEnable => IsElozoTanevEvvegiBizonyitvanyLessThanMax
&& (!PalyazatStatusz.HasValue
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.AdategyeztetesreVisszakuldve
|| PalyazatStatusz == ApaczaiPalyazatStatuszEnum.FelulvizsgalatrolAdategyeztetesreVisszakuldve);
public int KategoriankentiMaxFajlSzam => Core.Constants.MinMaxValues.MaxApaczaiKategoriankentFeltotlhetoFajlokSzama;
public IEnumerable<string> AllowedFileExtensions { get; } = Constants.UploadFile.ApaczaiAllowedFileExtensions;
public bool UploadAllowed { get; set; }
public ApaczaiPalyazatStatuszEnum? PalyazatStatusz { get; set; }
}
}

View file

@ -0,0 +1,7 @@
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiPalyazatBenyujtasDokumentumokModel : TanuloApaczaiPalyazatBenyujtasModel
{
public TanuloApaczaiPalyazatBenyujtasDokumentumokContentModel ContentModel { get; set; }
}
}

View file

@ -0,0 +1,14 @@
using Kreta.Web.Models;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiPalyazatBenyujtasModel
{
public int TanuloId { get; set; }
public string Title { get; set; }
public int Percentage { get; set; }
public StepDisplayModel StepDisplayModel { get; set; }
public TanuloApaczaiPalyazatBenyujtasContentModel ContentModel { get; set; }
}
}

View file

@ -0,0 +1,9 @@
using Kreta.Web.Models.EditorTemplates;
namespace Kreta.Web.Areas.Tanulo.Models
{
public class TanuloApaczaiPalyazatBenyujtasOsszegzesModel : TanuloApaczaiPalyazatBenyujtasModel
{
public PanelBarBaseModel PanelBarModel { get; set; }
}
}

Some files were not shown because too many files have changed in this diff Show more