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,237 @@
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Security;
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class AktTanevSorolasApiController : ApiController
{
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyBesorolasElsoAlkalom(AktTanevOsztalyBesorolasElsoAlkalomModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).OsztalybaSorolasElsoAlkalommal(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyKisorolas(AktTanevOsztalyKisorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).OsztalyKisorolas(model, model.ConvertModelToJogviszonyCo());
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
var ret = new HttpResponseMessage(HttpStatusCode.OK);
return ret;
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyTevesBesorolasJavitas(AktTanevOsztalyTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).OsztalybaSorolasJavitasa(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyAtsorolas(AktTanevOsztalyAtsorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).OsztalyAtsorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
var ret = new HttpResponseMessage(HttpStatusCode.OK);
return ret;
}
class ModBinder : System.Web.ModelBinding.DefaultModelBinder
{
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyVisszairatkoztatas(AktTanevOsztalyVisszairatkoztatasModel model)
{
try
{
OsztalyCsoportLogic.AktTanevOsztalyVisszairatkoztatasJogviszonyCustomValidation(ModelState, model);
if (ModelState.IsValid)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).VisszaIratkoztatas(model, model.ConvertModelToJogviszonyCo());
}
catch (BlException e)
{
var error = new StatusError(HttpStatusCode.BadRequest, e.Message);
throw error;
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue)]
public HttpResponseMessage CsoportBesorolas(AktTanevCsoportBesorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).CsoportbaSorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusError(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue)]
public HttpResponseMessage CsoportAtsorolas(AktTanevCsoportAtsorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).CsoportbaAtsorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue)]
public HttpResponseMessage CsoportKisorolas(AktTanevCsoportKisorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).CsoportbolKisorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue)]
public HttpResponseMessage CsoportTevesBesorolasJavitas(AktTanevCsoportTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).CsoportSorolasJavitas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,173 @@
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Security;
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiAktTanevSorolasApiController : ApiController
{
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyBesorolasElsoAlkalom(AktTanevOsztalyBesorolasElsoAlkalomModel model)
{
if (model.EgyeniCsoportAutoLetrehozas)
{
model.EgyeniCsoportAutoLetrehozas = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyokByMuveszetiAg(MuveszetiAgEnum.ZenemuveszetiAg).Contains(model.ToDDL.Value);
}
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).AmiOsztalybaSorolasElsoAlkalommal(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyKisorolas(AktTanevOsztalyKisorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).AmiOsztalyKisorolas(model, model.ConvertModelToJogviszonyCo());
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyTevesBesorolasJavitas(AktTanevOsztalyTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).AmiOsztalybaSorolasJavitasa(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportAtsorolas(AktTanevCsoportAtsorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).AmiCsoportbaAtsorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportBesorolas(AktTanevCsoportBesorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).AmiCsoportbaSorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusError(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportKisorolas(AktTanevCsoportKisorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).AmiCsoportbolKisorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportTevesBesorolasJavitas(AktTanevCsoportTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).AmiCsoportSorolasJavitas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiBesorolasModCsoportListaApiController : ApiController
{
public DataSourceResult GetAmiBesorolasModCsoportGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<AmiBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<AmiBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new AmiBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiBesorolasModCsoportbolbolKiirtTanulokApiController : ApiController
{
public DataSourceResult GetAmiBesorolasModCsoportbolKiirtTanulokGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<AmiBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetKiirtTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<AmiBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new AmiBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiBesorolasModOsztalyListaApiController : ApiController
{
public DataSourceResult GetAmiBesorolasModOsztalyGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<AmiBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<AmiBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new AmiBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiBesorolasModOsztalybolKiirtTanulokApiController : ApiController
{
public DataSourceResult GetAmiBesorolasModOsztalybolKiirtTanulokGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<AmiBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetKiirtTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<AmiBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new AmiBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,50 @@
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.Security;
using Kreta.Enums;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiKovTanevCsoportBesorolasTorlesApiController : ApiController
{
public DataSourceResult GetCsoportBesorolasGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KovTanevCsoportBesorolasTorlesModel>(data);
var co = model.ConvertToCo(OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetNextSessionConnectionType());
var coList = helper.GetTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<KovTanevCsoportBesorolasTorlesGridModel>();
foreach (var item in coList)
{
var gridModel = new KovTanevCsoportBesorolasTorlesGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas(string tanuloCsoportId, int tanuloId)
{
var helper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true);
helper.DeleteCsoportBesorolas(tanuloCsoportId);
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,50 @@
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.Security;
using Kreta.Enums;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiKovTanevOsztalyBesorolasTorlesApiController : ApiController
{
public DataSourceResult GetOsztalyBesorolasGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KovTanevOsztalyBesorolasTorlesModel>(data);
var co = model.ConvertToCo(OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetNextSessionConnectionType());
var coList = helper.GetTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<KovTanevOsztalyBesorolasTorlesGridModel>();
foreach (var item in coList)
{
var gridModel = new KovTanevOsztalyBesorolasTorlesGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas(int tanuloCsoportId, int osztalyCsoportId, int tanuloId)
{
var helper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true);
helper.DeleteOsztalyBesorolas(tanuloCsoportId, osztalyCsoportId, tanuloId);
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,151 @@
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Security;
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiKovTanevSorolasApiController : ApiController
{
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportLeptetes(KovTanevCsoportAtleptetesModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).AmiCsoportLeptetes(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportBesorolas(KovTanevCsoportBesorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).AmiCsoportbaSorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusError(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportTevesBesorolasJavitas(KovTanevCsoportTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).AmiCsoportSorolasJavitas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyLeptetes(KovTanevOsztalyAtleptetesModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).AmiOsztalyLeptetes(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyBesorolasElsoAlkalom(KovTanevOsztalyBesorolasElsoAlkalomModel model)
{
if (model.EgyeniCsoportAutoLetrehozas)
{
model.EgyeniCsoportAutoLetrehozas = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyokByMuveszetiAg(MuveszetiAgEnum.ZenemuveszetiAg).Contains(model.ToDDL.Value);
}
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).AmiOsztalybaSorolasElsoAlkalommal(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyTevesBesorolasJavitas(KovTanevOsztalyTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).AmiOsztalybaSorolasJavitasa(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,172 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public class BaseCsoportApiController : ApiController
{
[NonAction]
public DataSourceResult GetCsoportGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetGridData(data, request);
return modelList.ToDataSourceResult(gridParameter);
}
public DataSourceResult GetCsoportTanuloi(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportTanuloi(csoportId, request);
}
[NonAction]
public HttpResponseMessage SaveModifiedOrNewCsoport(AlapkepzesCsoportModel model)
{
try
{
ModelState.AddRange(AlapkepzesOsztalyCsoportLogic.ValidateCsoport(model));
if (ModelState.IsValid)
{
AlapkepzesOsztalyCsoportLogic.SaveCsoport(model);
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, OsztalyCsoportResource.AMegadottNevMarLetezik);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public HttpResponseMessage SaveModCsoport(CsoportModModel model)
{
try
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateCsoportGroup(model));
if (ModelState.IsValid)
{
var errorMessage = OsztalyCsoportLogic.SaveCsoportGroup(model);
if (!string.IsNullOrWhiteSpace(errorMessage))
{
errorMessage = $"{ErrorResource.AzAlabbiOsztalyCsoportokModositasaSikertelenVoltMertVanTanuloBesorolas}{errorMessage}";
return Request.CreateResponse(HttpStatusCode.OK, errorMessage);
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
[NonAction]
public IHttpActionResult DeleteCsoport([FromBody] int csoportID, bool isFromSzervezet)
{
var csoportList = new List<int> { csoportID };
return DeleteKijeloltCsoportok(csoportList);
}
[HttpPost]
public IHttpActionResult DeleteKijeloltCsoportok(List<int> csoportLista)
{
var errorMsg = OsztalyCsoportLogic.DeleteCsoportGroup(csoportLista, out bool deleteError);
if (deleteError)
{
throw new StatusError(HttpStatusCode.BadRequest, errorMsg);
}
return Json(new { Message = errorMsg });
}
public DataSourceResult GetCsoportOrarendiOrai(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request, bool isFromSzervezet)
{
return OsztalyCsoportLogic.GetCsoportOrarendiOrai(csoportId, request, isFromSzervezet);
}
public (GridParameters gridParameter, List<CsoportGridModel> modelList) GetGridData(string data, DataSourceRequest request, bool aktualisLetszam = false)
{
var connection = ConnectionTypeExtensions.GetSessionConnectionType();
var model = JsonConvert.DeserializeObject<CsoportSearchModel>(data);
var gridParameter = Converter.GridParameter(request);
int? felhasznaloSzervezetId = null;
if (ClaimData.FelhasznaloSzerepkor != SzerepkorTipusEnum.Adminisztrator)
{
felhasznaloSzervezetId = new SzervezetHelper(connection).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
model.SzervezetId = felhasznaloSzervezetId;
}
var coList = new CsoportHelper(connection).GetCsoportKeresesCoList(model.ConvertToCo(OsztalyCsoportLogic.GetSearchDate()), felhasznaloSzervezetId);
var modelList = coList.Select(x => new CsoportGridModel(x, aktualisLetszam)).ToList();
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
return (gridParameter, modelList);
}
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<CsoportGridModel>(isFromSzervezet ? CsoportGridModel.CsoportSzervezetExportAttributeId : CsoportGridModel.CsoportExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.CsoportExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
var exportFileName = OsztalyCsoportResource.CsoportExportFileName;
if (isFromSzervezet)
{
exportFileName = $"{OsztalyCsoportResource.DualisCsoportokExportFileNev}_{DateTime.Now.Year}_{DateTime.Now.Month}_{DateTime.Now.Day}{Core.Constants.ImportExport.FileExtensionExcelX}";
}
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), exportFileName);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
}
}

View file

@ -0,0 +1,202 @@
using System;
using System.Collections.Generic;
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.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Framework.Entities;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class BesorolasModCsoportListaApiController : ApiController
{
public DataSourceResult GetBesorolasModCsoportGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<AktTanevBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<BesorolasModCsoportGridModel>();
foreach (var item in coList)
{
var gridModel = new BesorolasModCsoportGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
public BesorolasModCsoportModel GetTanuloData(int tanuloCsoportId)
{
var model = new BesorolasModCsoportModel(tanuloCsoportId);
var connectionType = ConnectionTypeExtensions.GetActiveSessionConnectionType();
var tanevHelper = new TanevHelper(connectionType);
var tanevCo = tanevHelper.GetTanevInfo();
model.AlapadatModel.KezdoNap = tanevCo.KezdoNap;
model.AlapadatModel.UtolsoNap = tanevCo.UtolsoNap;
model.AlapadatModel.UtolsoTanitasiNap = tanevCo.UtolsoTanitasiNap;
var tanuloHelper = new TanuloHelper(connectionType);
var tanuloCsoportCo = tanuloHelper.GetTanuloCsoportById(tanuloCsoportId);
model.AlapadatModel.TanuloCsoportId = tanuloCsoportCo.ID;
model.AlapadatModel.TanuloId = tanuloCsoportCo.TanuloId;
model.AlapadatModel.CsoportId = tanuloCsoportCo.OsztalyCsoportId;
model.AlapadatModel.CsoportNev = tanuloCsoportCo.OsztalyNev;
model.AlapadatModel.TanuloNev = tanuloHelper.GetTanuloNev(tanuloCsoportCo.TanuloId);
model.AlapadatModel.BelepesDatum = tanuloCsoportCo.BelepDatum.Value;
model.AlapadatModel.KilepesDatum = tanuloCsoportCo.KilepDatum;
model.AlapadatModel.Megjegyzes = tanuloCsoportCo.Megjegyzes;
model.AlapadatModel.BefogadoIntezmeny = tanuloCsoportCo.BefogadoIntezmeny;
return model;
}
public HttpResponseMessage SaveData(BesorolasModCsoportModel model)
{
if (ModelState.IsValid)
{
var ms = TanuloBesorolasLogic.CustomValidation(ModelState, model.AlapadatModel, isOsztaly: false);
if (ms.IsValid)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var tanuloCsoportCo = model.ConvertModelToTanuloCsoportCo();
helper.UpdateTanuloBesorolas(tanuloCsoportCo);
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ms);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveDataTobbes(BesorolasTobbesModCsoportModel model)
{
if (ModelState.IsValid)
{
int x = 0;
List<int> tanuloCsoportIdList = model.TanuloCsoportIdArray.Split(',').Where(str => int.TryParse(str, out x)).Select(str => x).ToList();
if (tanuloCsoportIdList.Count > 1)
{
var tHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
string errorMessage = tHelper.ValidateTanuloBesorolasTobbesModositas(model.ConvertTobbesModelToTanuloCsoportCo(), tanuloCsoportIdList, ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, false);
if (errorMessage.Length > 0)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, errorMessage);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
public HttpResponseMessage UpdateDatum(List<string> updatedIds)
{
TanevCO tanecCO;
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
tanecCO = helper.GetTanevInfo();
var tHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var belepesDatum = new DateTime(tanecCO.KezdoNap.Year, 9, 1);
List<int> updatedIdInts = updatedIds.Select(s => int.TryParse(s, out int n) ? n : (int?)null)
.Where(n => n.HasValue)
.Select(n => n.Value)
.ToList();
var tanuloBesorolasTobbesModTanuloValidationCOItems = tHelper.GetBesorolasTobbesModTanuloValidationItems(updatedIdInts);
StringBuilder HibaListaSzoveg = new StringBuilder();
foreach (var tanuloBesorolasTobbesModTanuloValidationCOItem in tanuloBesorolasTobbesModTanuloValidationCOItems)
{
Enum.TryParse(new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportFeladatKategoria(tanuloBesorolasTobbesModTanuloValidationCOItem.OsztalyCsoportId).ToString(), out OktNevelesiKategoriaEnum kategoria);
var message = tHelper.GetUtkozoCsoportok(tanuloBesorolasTobbesModTanuloValidationCOItem.TanuloId, belepesDatum, tanuloBesorolasTobbesModTanuloValidationCOItem.Id, kategoria);
if (!string.IsNullOrWhiteSpace(message))
{
if (HibaListaSzoveg.Length > 0)
{
HibaListaSzoveg.AppendFormat(", {0} {1}", tanuloBesorolasTobbesModTanuloValidationCOItem.Nev, message);
}
else
{
HibaListaSzoveg.AppendFormat("{0} {1}", tanuloBesorolasTobbesModTanuloValidationCOItem.Nev, message);
}
}
}
if (HibaListaSzoveg.Length > 0)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, HibaListaSzoveg.ToString());
}
tHelper.UpdateTanuloCsoportBesorolasDatum(updatedIds/*, new DateTime(tanecCO.KezdoNap.Year, 10, 1)*/, belepesDatum);
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas([FromBody] int tanuloCsoportId)
{
var osztalyCsoportbaSorolasHelper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID);
if (!osztalyCsoportbaSorolasHelper.CheckCsoportBesorolasDelete(tanuloCsoportId, out var errorMessages))
{
throw new StatusError(HttpStatusCode.BadRequest, string.Empty)
{
Json = new
{
message = string.Join("<br/><br/>", errorMessages)
}
};
}
var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
try
{
tanuloHelper.DeleteTanuloCsoport(tanuloCsoportId);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = $"{ErrorResource.NemTorolhetoAzAlabbiKapcsolodasokMiatt}{Environment.NewLine}{ex.ConnectionErrorMessage}";
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,171 @@
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.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Framework.Entities;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class BesorolasModCsoportbolbolKiirtTanulokApiController : ApiController
{
public DataSourceResult GetBesorolasModCsoportbolKiirtTanulokGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<AktTanevBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetKiirtTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<BesorolasModCsoportGridModel>();
foreach (var item in coList)
{
var gridModel = new BesorolasModCsoportGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
public BesorolasModCsoportbolKiirtTanulokModel GetTanuloData(int tanuloCsoportId)
{
var model = new BesorolasModCsoportbolKiirtTanulokModel(tanuloCsoportId);
var connectionType = ConnectionTypeExtensions.GetActiveSessionConnectionType();
var tanevHelper = new TanevHelper(connectionType);
var tanevCo = tanevHelper.GetTanevInfo();
model.AlapadatModel.ElsoTanitasiNap = tanevCo.ElsoTanitasiNap;
model.AlapadatModel.UtolsoNap = tanevCo.UtolsoNap;
model.AlapadatModel.UtolsoTanitasiNap = tanevCo.UtolsoTanitasiNap;
var tanuloHelper = new TanuloHelper(connectionType);
var tanuloCsoportCo = tanuloHelper.GetTanuloCsoportById(tanuloCsoportId);
model.AlapadatModel.TanuloCsoportId = tanuloCsoportCo.ID;
model.AlapadatModel.TanuloId = tanuloCsoportCo.TanuloId;
model.AlapadatModel.CsoportId = tanuloCsoportCo.OsztalyCsoportId;
model.AlapadatModel.CsoportNev = tanuloCsoportCo.OsztalyNev;
model.AlapadatModel.TanuloNev = tanuloHelper.GetTanuloNev(tanuloCsoportCo.TanuloId);
model.AlapadatModel.BelepesDatum = tanuloCsoportCo.BelepDatum.Value;
model.AlapadatModel.KilepesDatum = tanuloCsoportCo.KilepDatum;
model.AlapadatModel.Megjegyzes = tanuloCsoportCo.Megjegyzes;
model.AlapadatModel.BefogadoIntezmeny = tanuloCsoportCo.BefogadoIntezmeny;
return model;
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveData(BesorolasModCsoportbolKiirtTanulokModel model)
{
if (ModelState.IsValid)
{
var ms = TanuloBesorolasLogic.CustomValidation(ModelState, model.AlapadatModel, isOsztaly: false);
if (ms.IsValid)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var tanuloCsoportCo = model.ConvertModelToTanuloCsoportCo();
helper.UpdateTanuloBesorolas(tanuloCsoportCo);
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ms);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveDataTobbes(BesorolasTobbesModCsoportbolKiirtTanulokModel model)
{
if (ModelState.IsValid)
{
int x = 0;
List<int> tanuloCsoportIdList = model.TanuloCsoportIdArray.Split(',').Where(str => int.TryParse(str, out x)).Select(str => x).ToList();
if (tanuloCsoportIdList.Count > 1)
{
var tHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
string errorMessage = tHelper.ValidateTanuloBesorolasTobbesModositas(model.ConvertTobbesModelToTanuloCsoportCo(), tanuloCsoportIdList, ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, false);
if (errorMessage.Length > 0)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, errorMessage);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage UpdateDatum(List<string> updatedIds)
{
TanevCO tanecCO;
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
tanecCO = helper.GetTanevInfo();
var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
tanuloHelper.UpdateTanuloCsoportBesorolasDatum(updatedIds /*, new DateTime(tanecCO.KezdoNap.Year, 10, 1)*/, new DateTime(tanecCO.KezdoNap.Year, 9, 1));
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas([FromBody] int tanuloCsoportId)
{
var osztalyCsoportbaSorolasHelper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID);
if (!osztalyCsoportbaSorolasHelper.CheckCsoportBesorolasDelete(tanuloCsoportId, out var errorMessages))
{
throw new StatusError(HttpStatusCode.BadRequest, string.Empty)
{
Json = new
{
message = string.Join("<br/><br/>", errorMessages)
}
};
}
var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
try
{
tanuloHelper.DeleteTanuloCsoport(tanuloCsoportId);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = $"{ErrorResource.NemTorolhetoAzAlabbiKapcsolodasokMiatt}{Environment.NewLine}{ex.ConnectionErrorMessage}";
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,72 @@
using System;
using System.Net;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Exceptions;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Framework.Entities;
using Kreta.Resources;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class BesorolasModFelNemVettTanuloTorleseApiController : ApiController
{
public DataSourceResult GetBesorolasModFelNemVettTanuloTorleseGrid([ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()) { GridParameters = Converter.GridParameter(request) };
return helper.GetNemBesoroltTanulok().ToDataSourceResult();
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public IHttpActionResult DeleteData(string[] torlesreJeloltTanulok)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var errorMsg = string.Empty;
var counter = 0;
foreach (var item in torlesreJeloltTanulok)
{
try
{
helper.TanuloTorlese(int.Parse(item), ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater);
counter++;
}
catch (CannotBeDeletedException ex)
{
errorMsg += $"{ex.Message}{Environment.NewLine}";
continue;
}
catch (EntityDeleteFailedException ex)
{
var tanuloAdatCO = helper.GetTanuloiAdatok(int.Parse(item), ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater);
var entityName = BusinessLogic.Extensions.NameExtensions.GetNevSorrendben("F", tanuloAdatCO.Elotag, tanuloAdatCO.CsaladiNev, tanuloAdatCO.UtoNev);
errorMsg += string.Format(ErrorResource.TanuloNemTorolhetoKapcsolatMiatt, entityName, ex.ConnectionErrorMessage) + Environment.NewLine + Environment.NewLine;
continue;
}
}
if (string.IsNullOrWhiteSpace(errorMsg))
{
return Json(new { Message = string.Format(ErrorResource.NSorTorlesSikeres, counter) });
}
if (counter > 0)
{
errorMsg += Environment.NewLine + string.Format(ErrorResource.NSorTorlesSikeres, counter);
}
throw new StatusError(HttpStatusCode.BadRequest, errorMsg);
}
}
}

View file

@ -0,0 +1,264 @@
using System;
using System.Collections.Generic;
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.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Framework.Entities;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class BesorolasModOsztalyListaApiController : ApiController
{
public DataSourceResult GetBesorolasModOsztalyGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<AktTanevBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<BesorolasModOsztalyGridModel>();
foreach (var item in coList)
{
var gridModel = new BesorolasModOsztalyGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
public BesorolasModOsztalyModel GetTanuloData(int tanuloCsoportId)
{
var model = new BesorolasModOsztalyModel(tanuloCsoportId);
var intezmenyHelper = new IntezmenyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
model.AlapadatModel.IsSzakkepzo = intezmenyHelper.GetIntezmenyiAdatok().IsSzakkepzo;
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var tanevCo = tanevHelper.GetTanevInfo();
model.AlapadatModel.KezdoNap = tanevCo.KezdoNap;
model.AlapadatModel.UtolsoNap = tanevCo.UtolsoNap;
model.AlapadatModel.UtolsoTanitasiNap = tanevCo.UtolsoTanitasiNap;
var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var tanuloCsoportCo = tanuloHelper.GetTanuloCsoportById(tanuloCsoportId);
var tanuloJegyzekAdatok = tanuloHelper.GetTanuloJegyzekadatok(tanuloCsoportId, tanuloCsoportCo.TanuloId, tanuloCsoportCo.OsztalyCsoportId, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater);
model.AlapadatModel.TanuloCsoportId = tanuloCsoportCo.ID;
model.AlapadatModel.TanuloId = tanuloCsoportCo.TanuloId;
model.AlapadatModel.OsztalyId = tanuloCsoportCo.OsztalyCsoportId;
model.AlapadatModel.OsztalyNev = tanuloCsoportCo.OsztalyNev;
model.AlapadatModel.TanuloNev = tanuloHelper.GetTanuloNev(tanuloCsoportCo.TanuloId);
model.AlapadatModel.BelepesDatum = tanuloCsoportCo.BelepDatum.Value;
model.AlapadatModel.KilepesDatum = tanuloCsoportCo.KilepDatum;
model.AlapadatModel.NaploSorszam = tanuloCsoportCo.NaploSorszam;
model.AlapadatModel.TanuloEvfolyamTipusId = tanuloCsoportCo.TanuloEvfolyamTipusId;
model.AlapadatModel.IsOsszevontOsztaly = tanuloCsoportCo.IsOsszevontOsztaly;
model.AlapadatModel.TorzslapSzam = tanuloCsoportCo.TorzslapSzam;
model.AlapadatModel.Megjegyzes = tanuloCsoportCo.Megjegyzes;
model.AlapadatModel.BefogadoIntezmeny = tanuloCsoportCo.BefogadoIntezmeny;
model.AlapadatModel.AgazatId = tanuloCsoportCo.AgazatId;
model.AlapadatModel.SzakmacsoportId = tanuloCsoportCo.SzakmacsoportId;
model.AlapadatModel.SzakkepesitesId = tanuloCsoportCo.SzakkepesitesId;
model.AlapadatModel.ReszSzakkepesitesId = tanuloCsoportCo.ReszSzakkepesitesId;
model.AlapadatModel.TantervId = tanuloCsoportCo.TantervId;
model.AlapadatModel.JogviszonyTipusId = tanuloCsoportCo.JogviszonyTipusId;
model.AlapadatModel.AgazatUjSzktTipusId = tanuloCsoportCo.AgazatUjSzktTipusId;
model.AlapadatModel.SzakmaTipusId = tanuloCsoportCo.SzakmaTipusId;
model.AlapadatModel.SzakmairanyTipusId = tanuloCsoportCo.SzakmairanyTipusId;
model.AlapadatModel.SzakiranyNktTipusId = tanuloCsoportCo.SzakiranyNktTipusId;
model.AlapadatModel.SzakkepesitesNktTipusId = tanuloCsoportCo.SzakkepesitesNktTipusId;
model.AlapadatModel.TanulmanyiTeruletNktTipusId = tanuloCsoportCo.TanulmanyiTeruletNktTipusId;
model.AlapadatModel.AgazatReszSzakmaTipusId = tanuloCsoportCo.AgazatReszSzakmaTipusId;
model.AlapadatModel.ReszSzakmaTipusId = tanuloCsoportCo.ReszSzakmaTipusId;
model.AlapadatModel.SzakmaReszSzakmaTipusId = tanuloCsoportCo.SzakmaReszSzakmaTipusId;
model.MulasztasokModel.HozottIgazolatlanHianyzas = tanuloCsoportCo.HozottIgazolatlanHianyzas;
model.MulasztasokModel.HozottIgazolatlanKesesPercben = tanuloCsoportCo.HozottIgazolatlanKesesPercben;
model.MulasztasokModel.HozottIgazoltHianyzas = tanuloCsoportCo.HozottIgazoltHianyzas;
model.MulasztasokModel.HozottIgazoltKesesPercben = tanuloCsoportCo.HozottIgazoltKesesPercben;
model.AlapadatModel.IsSzakkepzeses = tanuloJegyzekAdatok.IsSzakkepzeses;
model.AlapadatModel.IsNKTSzakkepzeses = tanuloJegyzekAdatok.IsNKTSzakkepzeses;
model.AlapadatModel.IsMuveszetiSzakGimnazium = tanuloJegyzekAdatok.IsMuveszetiSzakGimnazium;
model.AlapadatModel.IsAgazatUjSzktTipusModificationEnabled = tanuloJegyzekAdatok.IsAgazatUjSzktTipusModificationEnabled;
model.AlapadatModel.IsSzakmaTipusModificationEnabled = tanuloJegyzekAdatok.IsSzakmaTipusModificationEnabled;
model.AlapadatModel.IsSzakmairanyTipusModificationEnabled = tanuloJegyzekAdatok.IsSzakmairanyTipusModificationEnabled;
model.AlapadatModel.IsSzakmacsoportModificationEnabled = tanuloJegyzekAdatok.IsSzakmacsoportModificationEnabled;
model.AlapadatModel.IsAgazatModificationEnabled = tanuloJegyzekAdatok.IsAgazatModificationEnabled;
model.AlapadatModel.IsSzakkepesitesModificationEnabled = tanuloJegyzekAdatok.IsSzakkepesitesModificationEnabled;
model.AlapadatModel.IsReszSzakkepesitesModificationEnabled = tanuloJegyzekAdatok.IsReszSzakkepesitesModificationEnabled;
model.AlapadatModel.IsTanulmanyiTeruletNktTipusModificationEnabled = tanuloJegyzekAdatok.IsTanulmanyiTeruletNktTipusModificationEnabled;
model.AlapadatModel.IsSzakkepesitesNktTipusModificationEnabled = tanuloJegyzekAdatok.IsSzakkepesitesNktTipusModificationEnabled;
model.AlapadatModel.IsSzakiranyNktTipusModificationEnabled = tanuloJegyzekAdatok.IsSzakiranyNktTipusModificationEnabled;
model.AlapadatModel.IsAgazatReszSzakmaTipusModificationEnabled = tanuloJegyzekAdatok.IsAgazatReszSzakmaTipusModificationEnabled;
model.AlapadatModel.IsSzakmaReszSzakmaTipusModificationEnabled = tanuloJegyzekAdatok.IsSzakmaReszSzakmaTipusModificationEnabled;
model.AlapadatModel.IsReszSzakmaTipusModificationEnabled = tanuloJegyzekAdatok.IsReszSzakmaTipusModificationEnabled;
if ((model.AlapadatModel.IsSzakkepzeses || model.AlapadatModel.IsNKTSzakkepzeses) && ClaimData.IsSelectedTanev21_22OrLater)
{
if (!model.AlapadatModel.ReszSzakmaTipusId.HasValue)
{
model.AlapadatModel.ReszSzakmaTipusId = (int)ReszSzakmaTipusEnum.na;
}
if (!model.AlapadatModel.AgazatReszSzakmaTipusId.HasValue)
{
model.AlapadatModel.AgazatReszSzakmaTipusId = (int)AgazatReszSzakmaTipusEnum.na;
}
if (!model.AlapadatModel.SzakmaReszSzakmaTipusId.HasValue)
{
model.AlapadatModel.SzakmaReszSzakmaTipusId = (int)SzakmaReszSzakmaTipusEnum.na;
}
}
return model;
}
public HttpResponseMessage SaveData(BesorolasModOsztalyModel model)
{
if (ModelState.IsValid)
{
var ms = TanuloBesorolasLogic.CustomValidation(ModelState, model.AlapadatModel, isOsztaly: true);
TanuloBesorolasLogic.ValidateJegyzekAdatok(model.AlapadatModel, ms);
if (ms.IsValid)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var tanuloCsoportCo = model.ConvertModelToTanuloCsoportCo();
helper.UpdateTanuloBesorolas(tanuloCsoportCo);
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ms);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveDataTobbes(BesorolasTobbesModOsztalyModel model)
{
if (ModelState.IsValid)
{
int x = 0;
List<int> tanuloCsoportIdList = model.TanuloCsoportIdArray.Split(',').Where(str => int.TryParse(str, out x)).Select(str => x).ToList();
if (tanuloCsoportIdList.Count > 1)
{
var tHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
string errorMessage = tHelper.ValidateTanuloBesorolasTobbesModositas(model.ConvertTobbesModelToTanuloCsoportCo(), tanuloCsoportIdList, ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, true);
if (errorMessage.Length > 0)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, errorMessage);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
public HttpResponseMessage UpdateDatum(List<string> updatedIds)
{
TanevCO tanecCO;
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
tanecCO = helper.GetTanevInfo();
var tHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var belepesDatum = new DateTime(tanecCO.KezdoNap.Year, 9, 1);
List<int> updatedIdInts = updatedIds.Select(s => int.TryParse(s, out int n) ? n : (int?)null)
.Where(n => n.HasValue)
.Select(n => n.Value)
.ToList();
var tanuloBesorolasTobbesModTanuloValidationCOItems = tHelper.GetBesorolasTobbesModTanuloValidationItems(updatedIdInts);
StringBuilder HibaListaSzoveg = new StringBuilder();
foreach (var tanuloBesorolasTobbesModTanuloValidationCOItem in tanuloBesorolasTobbesModTanuloValidationCOItems)
{
Enum.TryParse(new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportFeladatKategoria(tanuloBesorolasTobbesModTanuloValidationCOItem.OsztalyCsoportId).ToString(), out OktNevelesiKategoriaEnum kategoria);
var message = tHelper.GetUtkozoOsztalyok(tanuloBesorolasTobbesModTanuloValidationCOItem.TanuloId, belepesDatum, tanuloBesorolasTobbesModTanuloValidationCOItem.Id, kategoria);
if (!string.IsNullOrWhiteSpace(message))
{
if (HibaListaSzoveg.Length > 0)
{
HibaListaSzoveg.AppendFormat(", {0} {1}", tanuloBesorolasTobbesModTanuloValidationCOItem.Nev, message);
}
else
{
HibaListaSzoveg.AppendFormat("{0} {1}", tanuloBesorolasTobbesModTanuloValidationCOItem.Nev, message);
}
}
}
if (HibaListaSzoveg.Length > 0)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, HibaListaSzoveg.ToString());
}
tHelper.UpdateTanuloCsoportBesorolasDatum(updatedIds/*, new DateTime(tanecCO.KezdoNap.Year, 10, 1)*/, belepesDatum);
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas(int tanuloCsoportId, int osztalyId, int tanuloId)
{
var helper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID);
if (!helper.CheckOsztalyBesorolasDelete(tanuloCsoportId, out var errorMessages))
{
throw new StatusError(HttpStatusCode.BadRequest, string.Empty)
{
Json = new
{
message = string.Join("<br/><br/>", errorMessages)
}
};
}
try
{
helper.DeleteOsztalyBesorolas(tanuloCsoportId, osztalyId, tanuloId);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = $"{ErrorResource.NemTorolhetoAzAlabbiKapcsolodasokMiatt}{Environment.NewLine}{ex.ConnectionErrorMessage}";
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,233 @@
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.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Framework.Entities;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class BesorolasModOsztalybolKiirtTanulokApiController : ApiController
{
public DataSourceResult GetBesorolasModOsztalybolKiirtTanulokGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<AktTanevBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetKiirtTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<BesorolasModOsztalyGridModel>();
foreach (var item in coList)
{
var gridModel = new BesorolasModOsztalyGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
public BesorolasModOsztalybolKiirtTanulokModel GetTanuloData(int tanuloCsoportId)
{
var model = new BesorolasModOsztalybolKiirtTanulokModel(tanuloCsoportId);
var intezmenyHelper = new IntezmenyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
model.AlapadatModel.IsSzakkepzo = intezmenyHelper.GetIntezmenyiAdatok().IsSzakkepzo;
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var tanevCo = tanevHelper.GetTanevInfo();
model.AlapadatModel.KezdoNap = tanevCo.KezdoNap;
model.AlapadatModel.UtolsoNap = tanevCo.UtolsoNap;
model.AlapadatModel.UtolsoTanitasiNap = tanevCo.UtolsoTanitasiNap;
var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var tanuloCsoportCo = tanuloHelper.GetTanuloCsoportById(tanuloCsoportId);
var tanuloJegyzekAdatok = tanuloHelper.GetTanuloJegyzekadatok(tanuloCsoportId, tanuloCsoportCo.TanuloId, tanuloCsoportCo.OsztalyCsoportId, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater);
model.AlapadatModel.TanuloCsoportId = tanuloCsoportCo.ID;
model.AlapadatModel.TanuloId = tanuloCsoportCo.TanuloId;
model.AlapadatModel.OsztalyId = tanuloCsoportCo.OsztalyCsoportId;
model.AlapadatModel.OsztalyNev = tanuloCsoportCo.OsztalyNev;
model.AlapadatModel.TanuloNev = tanuloHelper.GetTanuloNev(tanuloCsoportCo.TanuloId);
model.AlapadatModel.BelepesDatum = tanuloCsoportCo.BelepDatum.Value;
model.AlapadatModel.KilepesDatum = tanuloCsoportCo.KilepDatum;
model.AlapadatModel.NaploSorszam = tanuloCsoportCo.NaploSorszam;
model.AlapadatModel.TanuloEvfolyamTipusId = tanuloCsoportCo.TanuloEvfolyamTipusId;
model.AlapadatModel.IsOsszevontOsztaly = tanuloCsoportCo.IsOsszevontOsztaly;
model.AlapadatModel.TorzslapSzam = tanuloCsoportCo.TorzslapSzam;
model.AlapadatModel.Megjegyzes = tanuloCsoportCo.Megjegyzes;
model.AlapadatModel.BefogadoIntezmeny = tanuloCsoportCo.BefogadoIntezmeny;
model.AlapadatModel.AgazatId = tanuloCsoportCo.AgazatId;
model.AlapadatModel.SzakmacsoportId = tanuloCsoportCo.SzakmacsoportId;
model.AlapadatModel.SzakkepesitesId = tanuloCsoportCo.SzakkepesitesId;
model.AlapadatModel.ReszSzakkepesitesId = tanuloCsoportCo.ReszSzakkepesitesId;
model.AlapadatModel.TantervId = tanuloCsoportCo.TantervId;
model.AlapadatModel.JogviszonyTipusId = tanuloCsoportCo.JogviszonyTipusId;
model.AlapadatModel.AgazatUjSzktTipusId = tanuloCsoportCo.AgazatUjSzktTipusId;
model.AlapadatModel.SzakmaTipusId = tanuloCsoportCo.SzakmaTipusId;
model.AlapadatModel.SzakmairanyTipusId = tanuloCsoportCo.SzakmairanyTipusId;
model.AlapadatModel.SzakiranyNktTipusId = tanuloCsoportCo.SzakiranyNktTipusId;
model.AlapadatModel.SzakkepesitesNktTipusId = tanuloCsoportCo.SzakkepesitesNktTipusId;
model.AlapadatModel.TanulmanyiTeruletNktTipusId = tanuloCsoportCo.TanulmanyiTeruletNktTipusId;
model.AlapadatModel.AgazatReszSzakmaTipusId = tanuloCsoportCo.AgazatReszSzakmaTipusId;
model.AlapadatModel.ReszSzakmaTipusId = tanuloCsoportCo.ReszSzakmaTipusId;
model.AlapadatModel.SzakmaReszSzakmaTipusId = tanuloCsoportCo.SzakmaReszSzakmaTipusId;
model.MulasztasokModel.HozottIgazolatlanHianyzas = tanuloCsoportCo.HozottIgazolatlanHianyzas;
model.MulasztasokModel.HozottIgazolatlanKesesPercben = tanuloCsoportCo.HozottIgazolatlanKesesPercben;
model.MulasztasokModel.HozottIgazoltHianyzas = tanuloCsoportCo.HozottIgazoltHianyzas;
model.MulasztasokModel.HozottIgazoltKesesPercben = tanuloCsoportCo.HozottIgazoltKesesPercben;
model.AlapadatModel.IsSzakkepzeses = tanuloJegyzekAdatok.IsSzakkepzeses;
model.AlapadatModel.IsNKTSzakkepzeses = tanuloJegyzekAdatok.IsNKTSzakkepzeses;
model.AlapadatModel.IsMuveszetiSzakGimnazium = tanuloJegyzekAdatok.IsMuveszetiSzakGimnazium;
model.AlapadatModel.IsAgazatUjSzktTipusModificationEnabled = tanuloJegyzekAdatok.IsAgazatUjSzktTipusModificationEnabled;
model.AlapadatModel.IsSzakmaTipusModificationEnabled = tanuloJegyzekAdatok.IsSzakmaTipusModificationEnabled;
model.AlapadatModel.IsSzakmairanyTipusModificationEnabled = tanuloJegyzekAdatok.IsSzakmairanyTipusModificationEnabled;
model.AlapadatModel.IsSzakmacsoportModificationEnabled = tanuloJegyzekAdatok.IsSzakmacsoportModificationEnabled;
model.AlapadatModel.IsAgazatModificationEnabled = tanuloJegyzekAdatok.IsAgazatModificationEnabled;
model.AlapadatModel.IsSzakkepesitesModificationEnabled = tanuloJegyzekAdatok.IsSzakkepesitesModificationEnabled;
model.AlapadatModel.IsReszSzakkepesitesModificationEnabled = tanuloJegyzekAdatok.IsReszSzakkepesitesModificationEnabled;
model.AlapadatModel.IsTanulmanyiTeruletNktTipusModificationEnabled = tanuloJegyzekAdatok.IsTanulmanyiTeruletNktTipusModificationEnabled;
model.AlapadatModel.IsSzakkepesitesNktTipusModificationEnabled = tanuloJegyzekAdatok.IsSzakkepesitesNktTipusModificationEnabled;
model.AlapadatModel.IsSzakiranyNktTipusModificationEnabled = tanuloJegyzekAdatok.IsSzakiranyNktTipusModificationEnabled;
model.AlapadatModel.IsAgazatReszSzakmaTipusModificationEnabled = tanuloJegyzekAdatok.IsAgazatReszSzakmaTipusModificationEnabled;
model.AlapadatModel.IsSzakmaReszSzakmaTipusModificationEnabled = tanuloJegyzekAdatok.IsSzakmaReszSzakmaTipusModificationEnabled;
model.AlapadatModel.IsReszSzakmaTipusModificationEnabled = tanuloJegyzekAdatok.IsReszSzakmaTipusModificationEnabled;
if ((model.AlapadatModel.IsSzakkepzeses || model.AlapadatModel.IsNKTSzakkepzeses) && ClaimData.IsSelectedTanev21_22OrLater)
{
if (!model.AlapadatModel.ReszSzakmaTipusId.HasValue)
{
model.AlapadatModel.ReszSzakmaTipusId = (int)ReszSzakmaTipusEnum.na;
}
if (!model.AlapadatModel.AgazatReszSzakmaTipusId.HasValue)
{
model.AlapadatModel.AgazatReszSzakmaTipusId = (int)AgazatReszSzakmaTipusEnum.na;
}
if (!model.AlapadatModel.SzakmaReszSzakmaTipusId.HasValue)
{
model.AlapadatModel.SzakmaReszSzakmaTipusId = (int)SzakmaReszSzakmaTipusEnum.na;
}
}
return model;
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveData(BesorolasModOsztalybolKiirtTanulokModel model)
{
if (ModelState.IsValid)
{
var ms = TanuloBesorolasLogic.CustomValidation(ModelState, model.AlapadatModel, isOsztaly: true);
TanuloBesorolasLogic.ValidateJegyzekAdatok(model.AlapadatModel, ms);
if (ms.IsValid)
{
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var tanuloCsoportCo = model.ConvertModelToTanuloCsoportCo();
helper.UpdateTanuloBesorolas(tanuloCsoportCo);
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ms);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveDataTobbes(BesorolasTobbesModOsztalybolKiirtTanulokModel model)
{
if (ModelState.IsValid)
{
int x = 0;
List<int> tanuloCsoportIdList = model.TanuloCsoportIdArray.Split(',').Where(str => int.TryParse(str, out x)).Select(str => x).ToList();
if (tanuloCsoportIdList.Count > 1)
{
var tHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
string errorMessage = tHelper.ValidateTanuloBesorolasTobbesModositas(model.ConvertTobbesModelToTanuloCsoportCo(), tanuloCsoportIdList, ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, false);
if (errorMessage.Length > 0)
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, errorMessage);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage UpdateDatum(List<string> updatedIds)
{
TanevCO tanecCO;
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
tanecCO = helper.GetTanevInfo();
var tHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
tHelper.UpdateTanuloCsoportBesorolasDatum(updatedIds /*, new DateTime(tanecCO.KezdoNap.Year, 10, 1)*/, new DateTime(tanecCO.KezdoNap.Year, 9, 1));
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas(int tanuloCsoportId, int osztalyId, int tanuloId)
{
var helper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID);
if (!helper.CheckOsztalyBesorolasDelete(tanuloCsoportId, out var errorMessages))
{
throw new StatusError(HttpStatusCode.BadRequest, string.Empty)
{
Json = new
{
message = string.Join("<br/><br/>", errorMessages)
}
};
}
try
{
helper.DeleteOsztalyBesorolas(tanuloCsoportId, osztalyId, tanuloId);
}
catch (EntityDeleteFailedException ex)
{
var uzenet = $"{ErrorResource.NemTorolhetoAzAlabbiKapcsolodasokMiatt}{Environment.NewLine}{ex.ConnectionErrorMessage}";
throw new StatusError(HttpStatusCode.BadRequest, uzenet);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,276 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class CsoportAmiApiController : ApiController
{
public DataSourceResult GetCsoportGrid(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<CsoportGridModel>(CsoportGridModel.CsoportExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.CsoportExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), OsztalyCsoportResource.CsoportExportFileName);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
public HttpResponseMessage GetCsoportAktualisLetszamAdataiExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request, aktualisLetszam: true);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<CsoportGridModel>(CsoportGridModel.CsoportExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.CsoportExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), OsztalyCsoportResource.CsoportokAktualisLetszamadataiExportFileName);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<CsoportGridModel> modelList) GetGridData(string data, DataSourceRequest request, bool aktualisLetszam = false)
{
var model = JsonConvert.DeserializeObject<CsoportSearchModel>(data);
model.FeladatKategoriaId = (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas;
var gridParameter = Converter.GridParameter(request);
var coList = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetCsoportKeresesCoList(model.ConvertToCo(OsztalyCsoportLogic.GetSearchDate()));
var modelList = new List<CsoportGridModel>();
foreach (var co in coList)
{
var gridModel = new CsoportGridModel(co, aktualisLetszam);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
public HttpResponseMessage SaveModifiedOrNewCsoport(AmiCsoportModel model)
{
try
{
ModelState.AddRange(AmiOsztalyCsoportLogic.ValidateCsoport(model));
if (ModelState.IsValid)
{
AmiOsztalyCsoportLogic.SaveCsoport(model);
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, OsztalyCsoportResource.AMegadottNevMarLetezik);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public HttpResponseMessage SaveModCsoport(CsoportModModel model)
{
try
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateCsoportGroup(model));
if (ModelState.IsValid)
{
var errorMessage = OsztalyCsoportLogic.SaveCsoportGroup(model);
if (!string.IsNullOrWhiteSpace(errorMessage))
{
errorMessage = $"{ErrorResource.AzAlabbiOsztalyCsoportokModositasaSikertelenVoltMertVanTanuloBesorolas}{errorMessage}";
return Request.CreateResponse(HttpStatusCode.OK, errorMessage);
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
[System.Web.Http.HttpPost]
public IHttpActionResult DeleteCsoport([FromBody] int csoportID)
{
var csoportList = new List<int> { csoportID };
return DeleteKijeloltCsoportok(csoportList);
}
[System.Web.Http.HttpPost]
public IHttpActionResult DeleteKijeloltCsoportok(List<int> csoportLista)
{
var errorMsg = OsztalyCsoportLogic.DeleteCsoportGroup(csoportLista, out bool deleteError);
if (deleteError)
{
throw new StatusError(HttpStatusCode.BadRequest, errorMsg);
}
return Json(new { Message = errorMsg });
}
public VegzosOsztalyModel GetOsztalyEvfolyama(string osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyEvfolyama(osztalyId);
}
public int GetOsztalyFeladatEllatasiHelye(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyFeladatEllatasiHelye(osztalyId);
}
public DataSourceResult GetCsoportTanuloi(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportTanuloi(csoportId, request);
}
public DataSourceResult GetCsoportFoglalkozasai(int csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportFoglalkozasai(csoportId, request);
}
public DataSourceResult GetCsoportOrarendiOrai(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportOrarendiOrai(csoportId, request);
}
public DataSourceResult GetCsoportTanmenetei(int csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportTanmenetei(csoportId, request);
}
public DataSourceResult GetCsoportMegtartottTanorai(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportMegtartottTanorai(csoportId, request);
}
public DataSourceResult GetCsoportErtekelesListGrid(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportErtekelesListGrid(csoportId, request, (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
}
[System.Web.Http.HttpPost]
public JsonResult<List<ExportColumn>> GetExportColumns()
{
List<ExportColumn> Items = new List<ExportColumn>();
Items.Add(new ExportColumn() { Field = "Tanev", Title = OsztalyCsoportResource.Tanev });
Items.Add(new ExportColumn() { Field = "csoportNev", Title = OsztalyCsoportResource.CsoportNeve });
Items.Add(new ExportColumn() { Field = "EVFOLYAMTIPUSA_DNAME", Title = OsztalyCsoportResource.Evfolyam });
Items.Add(new ExportColumn() { Field = "CsopTip_DNAME", Title = OsztalyCsoportResource.CsoportTipus });
Items.Add(new ExportColumn() { Field = "OsztalyBontasNev", Title = OsztalyCsoportResource.Osztalybontas });
Items.Add(new ExportColumn() { Field = "Terem", Title = OsztalyCsoportResource.Terem });
Items.Add(new ExportColumn() { Field = "vegzos_BNAME", Title = OsztalyCsoportResource.Vegzos });
Items.Add(new ExportColumn() { Field = "Tanulokszama", Title = TanuloResource.NovendekekSzama });
return Json(Items);
}
public HttpResponseMessage SaveNewEgyeniCsoport(EgyeniCsoportModel model)
{
try
{
OsztalyCsoportLogic.SaveNewEgyeniCsoport(model);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottNevMarLetezik); //A megadott név már létezik
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public object GetOsztalyMuvesztiAgAdatok(int osztalyId)
{
return AmiOsztalyCsoportLogic.GetOsztalyMuvesztiAgAdatok(osztalyId);
}
[HttpGet]
public bool IsOsszevontOsztaly(int osztalyBontasId)
{
OsztalyHelper osztalyHelper = new OsztalyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztaly = osztalyHelper.GetClassById(osztalyBontasId);
List<int> osszevontEvfolyamTipusIds = EnumExtensions.GetEvfolyamTipusDictionaryItems(ClaimData.SelectedTanevID.Value, true).Select(x => x.Id).ToList();
bool isOsszevontEvfolyamTipus = osszevontEvfolyamTipusIds.Any(x => x == osztaly.EvfolyamTipusa);
return isOsszevontEvfolyamTipus;
}
public int? GetOsztalyKepzesiFormaja(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyKepzesiFormaja(osztalyId);
}
public GyogypedaogiaiLogopediaiOsztalyModel GetOsztalyCsoportByOsztalyId(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyByOsztalyId(osztalyId);
}
}
}

View file

@ -0,0 +1,150 @@
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public class CsoportApiController : BaseCsoportApiController
{
public DataSourceResult GetCsoportGrid(string data, DataSourceRequest request)
{
return base.GetCsoportGrid(data, request);
}
public HttpResponseMessage SaveModifiedOrNewCsoport(AlapkepzesCsoportModel model)
{
return base.SaveModifiedOrNewCsoport(model);
}
public HttpResponseMessage GetCsoportAktualisLetszamAdataiExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request, aktualisLetszam: true);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<CsoportGridModel>(CsoportGridModel.CsoportExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.CsoportExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), OsztalyCsoportResource.CsoportokAktualisLetszamadataiExportFileName);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
public VegzosOsztalyModel GetOsztalyEvfolyama(string osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyEvfolyama(osztalyId);
}
public int GetOsztalyFeladatEllatasiHelye(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyFeladatEllatasiHelye(osztalyId);
}
public DataSourceResult GetCsoportFoglalkozasai(int csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportFoglalkozasai(csoportId, request);
}
public DataSourceResult GetCsoportOrarendiOrai(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return base.GetCsoportOrarendiOrai(csoportId, request, false);
}
public DataSourceResult GetCsoportTanmenetei(int csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportTanmenetei(csoportId, request);
}
public DataSourceResult GetCsoportMegtartottTanorai(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportMegtartottTanorai(csoportId, request);
}
public DataSourceResult GetCsoportErtekelesListGrid(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportErtekelesListGrid(csoportId, request, (int)OktNevelesiKategoriaEnum.NevelesOktatas);
}
[System.Web.Http.HttpPost]
public JsonResult<List<ExportColumn>> GetExportColumns()
{
var items = new List<ExportColumn>();
items.Add(new ExportColumn() { Field = "Tanev", Title = OsztalyCsoportResource.Tanev });
items.Add(new ExportColumn() { Field = "csoportNev", Title = OsztalyCsoportResource.CsoportNeve });
items.Add(new ExportColumn() { Field = "EVFOLYAMTIPUSA_DNAME", Title = OsztalyCsoportResource.Evfolyam });
items.Add(new ExportColumn() { Field = "CsopTip_DNAME", Title = OsztalyCsoportResource.CsoportTipus });
items.Add(new ExportColumn() { Field = "OsztalyBontasNev", Title = OsztalyCsoportResource.Osztalybontas });
items.Add(new ExportColumn() { Field = "Terem", Title = OsztalyCsoportResource.Terem });
items.Add(new ExportColumn() { Field = "vegzos_BNAME", Title = OsztalyCsoportResource.Vegzos });
items.Add(new ExportColumn() { Field = "Tanulokszama", Title = OsztalyCsoportResource.TanulokSzama });
return Json(items);
}
public HttpResponseMessage SaveNewEgyeniCsoport(EgyeniCsoportModel model)
{
try
{
OsztalyCsoportLogic.SaveNewEgyeniCsoport(model);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottNevMarLetezik); //A megadott név már létezik
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public int? GetOsztalyKepzesiFormaja(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyKepzesiFormaja(osztalyId);
}
public GyogypedaogiaiLogopediaiOsztalyModel GetOsztalyCsoportByOsztalyId(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyByOsztalyId(osztalyId);
}
[HttpPost]
public IHttpActionResult DeleteCsoport([FromBody] int csoportID)
{
return base.DeleteCsoport(csoportID, false);
}
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
return base.GetExport(data, request, false);
}
}
}

View file

@ -0,0 +1,58 @@
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
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.Util;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public class DualisAdminCsoportApiController : BaseCsoportApiController
{
public bool IsDualisKepzesEnabled => new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
public DataSourceResult GetCsoportGrid(string data, DataSourceRequest request)
{
return base.GetCsoportGrid(data, request);
}
public DataSourceResult GetCsoportOrarendiOrai(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return base.GetCsoportOrarendiOrai(csoportId, request, IsDualisKepzesEnabled);
}
[HttpPost]
public IHttpActionResult DeleteCsoport([FromBody] int csoportID)
{
return base.DeleteCsoport(csoportID, IsDualisKepzesEnabled);
}
public HttpResponseMessage SaveModifiedOrNewCsoport(AlapkepzesCsoportModel model)
{
return base.SaveModifiedOrNewCsoport(model);
}
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
return base.GetExport(data, request, IsDualisKepzesEnabled);
}
}
}

View file

@ -0,0 +1,226 @@
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Security;
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIAktTanevSorolasApiController : ApiController
{
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyBesorolasElsoAlkalom(AktTanevOsztalyBesorolasElsoAlkalomModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).EGYMIOsztalybaSorolasElsoAlkalommal(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyKisorolas(AktTanevOsztalyKisorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).EGYMIOsztalyKisorolas(model, model.ConvertModelToJogviszonyCo());
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyTevesBesorolasJavitas(AktTanevOsztalyTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).EGYMIOsztalybaSorolasJavitasa(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyAtsorolas(AktTanevOsztalyAtsorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).EGYMIOsztalyAtsorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyVisszairatkoztatas(AktTanevOsztalyVisszairatkoztatasModel model)
{
try
{
OsztalyCsoportLogic.AktTanevOsztalyVisszairatkoztatasJogviszonyCustomValidation(ModelState, model);
if (ModelState.IsValid)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).EGYMIVisszaIratkoztatas(model, model.ConvertModelToJogviszonyCo());
}
catch (BlException e)
{
var error = new StatusError(HttpStatusCode.BadRequest, e.Message);
throw error;
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportBesorolas(AktTanevCsoportBesorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).EGYMICsoportbaSorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusError(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportAtsorolas(AktTanevCsoportAtsorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).EGYMICsoportbaAtsorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportKisorolas(AktTanevCsoportKisorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).EGYMICsoportbolKisorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportTevesBesorolasJavitas(AktTanevCsoportTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).EGYMICsoportSorolasJavitas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIBesorolasModCsoportListaApiController : ApiController
{
public DataSourceResult GetEGYMIBesorolasModCsoportGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<EGYMIBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<EGYMIBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new EGYMIBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIBesorolasModCsoportbolbolKiirtTanulokApiController : ApiController
{
public DataSourceResult GetEGYMIBesorolasModCsoportbolKiirtTanulokGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<EGYMIBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetKiirtTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<EGYMIBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new EGYMIBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIBesorolasModOsztalyListaApiController : ApiController
{
public DataSourceResult GetEGYMIBesorolasModOsztalyGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<EGYMIBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<EGYMIBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new EGYMIBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIBesorolasModOsztalybolKiirtTanulokApiController : ApiController
{
public DataSourceResult GetEGYMIBesorolasModOsztalybolKiirtTanulokGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<EGYMIBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetKiirtTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<EGYMIBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new EGYMIBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,256 @@
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMICsoportApiController : ApiController
{
public DataSourceResult GetCsoportGrid(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<CsoportGridModel>(CsoportGridModel.CsoportExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.CsoportExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), OsztalyCsoportResource.CsoportExportFileName);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
public HttpResponseMessage GetCsoportAktualisLetszamAdataiExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request, aktualisLetszam: true);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<CsoportGridModel>(CsoportGridModel.CsoportExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.CsoportExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), OsztalyCsoportResource.CsoportokAktualisLetszamadataiExportFileName);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<CsoportGridModel> modelList) GetGridData(string data, DataSourceRequest request, bool aktualisLetszam = false)
{
var model = JsonConvert.DeserializeObject<CsoportSearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var coList = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetCsoportKeresesCoList(model.ConvertToCo(OsztalyCsoportLogic.GetSearchDate()));
var modelList = new List<CsoportGridModel>();
foreach (var co in coList)
{
var gridModel = new CsoportGridModel(co, aktualisLetszam);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
public HttpResponseMessage SaveModifiedOrNewCsoport(AlapkepzesCsoportModel model)
{
try
{
ModelState.AddRange(EGYMIOsztalyCsoportLogic.ValidateCsoport(model));
if (ModelState.IsValid)
{
EGYMIOsztalyCsoportLogic.SaveCsoport(model);
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, OsztalyCsoportResource.AMegadottNevMarLetezik);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public HttpResponseMessage SaveModCsoport(CsoportModModel model)
{
try
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateCsoportGroup(model));
if (ModelState.IsValid)
{
var errorMessage = OsztalyCsoportLogic.SaveCsoportGroup(model);
if (!string.IsNullOrWhiteSpace(errorMessage))
{
errorMessage = $"{ErrorResource.AzAlabbiOsztalyCsoportokModositasaSikertelenVoltMertVanTanuloBesorolas}{errorMessage}";
return Request.CreateResponse(HttpStatusCode.OK, errorMessage);
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
[System.Web.Http.HttpPost]
public IHttpActionResult DeleteCsoport([FromBody] int csoportID)
{
var csoportList = new List<int> { csoportID };
return DeleteKijeloltCsoportok(csoportList);
}
[System.Web.Http.HttpPost]
public IHttpActionResult DeleteKijeloltCsoportok(List<int> csoportLista)
{
var errorMsg = OsztalyCsoportLogic.DeleteCsoportGroup(csoportLista, out bool deleteError);
if (deleteError)
{
throw new StatusError(HttpStatusCode.BadRequest, errorMsg);
}
return Json(new { Message = errorMsg });
}
public VegzosOsztalyModel GetOsztalyEvfolyama(string osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyEvfolyama(osztalyId);
}
public int GetOsztalyFeladatEllatasiHelye(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyFeladatEllatasiHelye(osztalyId);
}
public DataSourceResult GetCsoportTanuloi(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportTanuloi(csoportId, request);
}
public DataSourceResult GetCsoportFoglalkozasai(int csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportFoglalkozasai(csoportId, request);
}
public DataSourceResult GetCsoportOrarendiOrai(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportOrarendiOrai(csoportId, request);
}
public DataSourceResult GetCsoportTanmenetei(int csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportTanmenetei(csoportId, request);
}
public DataSourceResult GetCsoportMegtartottTanorai(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportMegtartottTanorai(csoportId, request);
}
public DataSourceResult GetCsoportErtekelesListGrid(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportErtekelesListGrid(csoportId, request, (int)OktNevelesiKategoriaEnum.EGYMI);
}
[System.Web.Http.HttpPost]
public JsonResult<List<ExportColumn>> GetExportColumns()
{
List<ExportColumn> Items = new List<ExportColumn>();
Items.Add(new ExportColumn() { Field = "Tanev", Title = OsztalyCsoportResource.Tanev });
Items.Add(new ExportColumn() { Field = "csoportNev", Title = OsztalyCsoportResource.CsoportNeve });
Items.Add(new ExportColumn() { Field = "EVFOLYAMTIPUSA_DNAME", Title = OsztalyCsoportResource.Evfolyam });
Items.Add(new ExportColumn() { Field = "CsopTip_DNAME", Title = OsztalyCsoportResource.CsoportTipus });
Items.Add(new ExportColumn() { Field = "OsztalyBontasNev", Title = OsztalyCsoportResource.Osztalybontas });
Items.Add(new ExportColumn() { Field = "Terem", Title = OsztalyCsoportResource.Terem });
Items.Add(new ExportColumn() { Field = "vegzos_BNAME", Title = OsztalyCsoportResource.Vegzos });
Items.Add(new ExportColumn() { Field = "Tanulokszama", Title = OsztalyCsoportResource.TanulokSzama });
return Json(Items);
}
public HttpResponseMessage SaveNewEgyeniCsoport(EgyeniCsoportModel model)
{
try
{
OsztalyCsoportLogic.SaveNewEgyeniCsoport(model);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottNevMarLetezik); //A megadott név már létezik
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public int? GetOsztalyKepzesiFormaja(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyKepzesiFormaja(osztalyId);
}
public GyogypedaogiaiLogopediaiOsztalyModel GetOsztalyCsoportByOsztalyId(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyByOsztalyId(osztalyId);
}
}
}

View file

@ -0,0 +1,50 @@
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.Security;
using Kreta.Enums;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIKovTanevCsoportBesorolasTorlesApiController : ApiController
{
public DataSourceResult GetCsoportBesorolasGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KovTanevCsoportBesorolasTorlesModel>(data);
var co = model.ConvertToCo(OktNevelesiKategoriaEnum.EGYMI);
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetNextSessionConnectionType());
var coList = helper.GetTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<KovTanevCsoportBesorolasTorlesGridModel>();
foreach (var item in coList)
{
var gridModel = new KovTanevCsoportBesorolasTorlesGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas(string tanuloCsoportId, int tanuloId)
{
var helper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true);
helper.DeleteCsoportBesorolas(tanuloCsoportId);
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,50 @@
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.Security;
using Kreta.Enums;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIKovTanevOsztalyBesorolasTorlesApiController : ApiController
{
public DataSourceResult GetOsztalyBesorolasGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KovTanevOsztalyBesorolasTorlesModel>(data);
var co = model.ConvertToCo(OktNevelesiKategoriaEnum.EGYMI);
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetNextSessionConnectionType());
var coList = helper.GetTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<KovTanevOsztalyBesorolasTorlesGridModel>();
foreach (var item in coList)
{
var gridModel = new KovTanevOsztalyBesorolasTorlesGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas(int tanuloCsoportId, int osztalyCsoportId, int tanuloId)
{
var helper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true);
helper.DeleteOsztalyBesorolas(tanuloCsoportId, osztalyCsoportId, tanuloId);
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,189 @@
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Security;
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIKovTanevSorolasApiController : ApiController
{
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportLeptetes(KovTanevCsoportAtleptetesModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).EGYMICsoportLeptetes(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportBesorolas(KovTanevCsoportBesorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).EGYMICsoportbaSorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusError(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportTevesBesorolasJavitas(KovTanevCsoportTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).EGYMICsoportSorolasJavitas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyLeptetes(KovTanevOsztalyAtleptetesModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).EGYMIOsztalyLeptetes(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyBesorolasElsoAlkalom(KovTanevOsztalyBesorolasElsoAlkalomModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).EGYMIOsztalybaSorolasElsoAlkalommal(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyTevesBesorolasJavitas(KovTanevOsztalyTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).EGYMIOsztalybaSorolasJavitasa(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyVisszairatkoztatas(KovTanevVisszairatkoztatasModel model)
{
try
{
OsztalyCsoportLogic.KovTanevVisszairatkoztatasJogviszonyCustomValidation(ModelState, model);
if (ModelState.IsValid)
{
try
{
new OsztalyCsoportbaSorolasHelper(
ConnectionTypeExtensions.GetSessionConnectionType(),
ClaimData.IsSzakkepzoIntezmeny,
ClaimData.IsSelectedTanev21_22OrLater,
ClaimData.AktivTanevID,
ClaimData.KovTanevID,
true).EGYMIVisszaIratkoztatas(model, model.ConvertModelToJogviszonyCo());
}
catch (BlException e)
{
var error = new StatusError(HttpStatusCode.BadRequest, e.Message);
throw error;
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,237 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes.ComboBox;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Framework;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIOsztalyApiController : ApiController
{
public DataSourceResult GetOsztalyGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetGridData(data, request);
return modelList.ToDataSourceResult(gridParameter);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<OsztalyGridModel>(OsztalyGridModel.OsztalyExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.Osztalyok, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{OsztalyCsoportResource.OsztalyokExportFileName}_{DateTime.Now:yyyy_MM_dd}.xlsx");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<OsztalyGridModel> modelList) GetGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<OsztalySearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var searchCo = model.ConvertToCo(OsztalyCsoportLogic.GetSearchDate());
searchCo.FeladatKategoriaId = (int)OktNevelesiKategoriaEnum.EGYMI;
var coList = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCoList(searchCo);
var modelList = new List<OsztalyGridModel>();
foreach (var co in coList)
{
var gridModel = new OsztalyGridModel(co);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveOsztaly(AlapkepzesOsztalyModel model)
{
try
{
ModelState.AddRange(EGYMIOsztalyCsoportLogic.ValidateOsztaly(model));
if (model.NaplosorszamEsTorzslapszamBeallitasaiModelList?.Count > 0)
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateNaplosorszamEsTorzslapszamBeallitasaiModelList(model.NaplosorszamEsTorzslapszamBeallitasaiModelList));
}
if (ModelState.IsValid)
{
EGYMIOsztalyCsoportLogic.SaveOsztaly(model);
if (model.NaplosorszamEsTorzslapszamBeallitasaiModelList?.Count > 0)
{
OsztalyCsoportLogic.SaveNaplosorszamEsTorzslapszamBeallitasai(model.NaplosorszamEsTorzslapszamBeallitasaiModelList);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, StringResourcesUtil.GetString(3684)); // Ebben a tanévben már létezik ilyen nevű osztály
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public HttpResponseMessage SaveModifiedOsztalyGroup(ModOsztalyModel model)
{
try
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateOsztalyGroup(model));
if (ModelState.IsValid)
{
var errorMessage = OsztalyCsoportLogic.SaveOsztalyGroup(model);
if (!string.IsNullOrWhiteSpace(errorMessage))
{
errorMessage = $"{ErrorResource.AzAlabbiOsztalyCsoportokModositasaSikertelenVoltMertVanTanuloBesorolas}{errorMessage}";
return Request.CreateResponse(HttpStatusCode.OK, errorMessage);
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
public HttpResponseMessage SaveNaplosorszamListGroup(ModOsztalyModel model)
{
try
{
if (ModelState.IsValid)
{
OsztalyCsoportLogic.SaveNaplosorszamListGroup(model.OsztalyIdArray.Select(int.Parse).ToList());
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
public ModOsztalyModel GetOsztalyModProperties(int? osztalyID = null)
{
return OsztalyCsoportLogic.GetOsztalyModProperties(osztalyID);
}
public DataSourceResult GetOsztalyTanuloi(string osztalyId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyTanuloi(osztalyId, request);
}
//Osztályhoz tartozó összes csoport + osztálybontás csoportjai
public DataSourceResult GetOsztalyBontasCsoportjai(string osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyBontasCsoportjai(osztalyID, request);
}
public DataSourceResult GetOsztalyFoglalkozasai(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyFoglalkozasai(osztalyID, request);
}
public DataSourceResult GetOsztalyOrarendiOrai(string osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyOrarendiOrai(osztalyID, request);
}
public DataSourceResult GetOsztalyTanmenetei(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyTanmenetei(osztalyID, request);
}
public DataSourceResult GetOsztalyErtekelesListGrid(string osztalyId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyErtekelesListGrid(osztalyId, request, (int)OktNevelesiKategoriaEnum.EGYMI);
}
public DataSourceResult GetOsztalyIgazolasai(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyIgazolasai(osztalyID, request);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public IHttpActionResult DeleteOsztalyok(DeleteOsztalyModel model)
{
var returnMsg = OsztalyCsoportLogic.DeleteOsztalyok(model.OsztalyIdLista, model.CsoportokTorlese, out bool deleteError);
if (deleteError)
{
throw new StatusError(HttpStatusCode.BadRequest, returnMsg);
}
return Json(new { Message = returnMsg });
}
public JsonResult<List<ComboBoxListItem>> GetEvfolyamList(string cascadeFilter)
{
return Json(OsztalyCsoportLogic.GetEvfolyamListFilter(cascadeFilter));
}
}
}

View file

@ -0,0 +1,225 @@
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Security;
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumAktTanevSorolasApiController : ApiController
{
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyBesorolasElsoAlkalom(AktTanevOsztalyBesorolasElsoAlkalomModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).KollegiumOsztalybaSorolasElsoAlkalommal(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyKisorolas(AktTanevOsztalyKisorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).KollegiumOsztalyKisorolas(model, model.ConvertModelToJogviszonyCo());
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyTevesBesorolasJavitas(AktTanevOsztalyTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).KollegiumOsztalybaSorolasJavitasa(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyAtsorolas(AktTanevOsztalyAtsorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).KollegiumOsztalyAtsorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyVisszairatkoztatas(AktTanevOsztalyVisszairatkoztatasModel model)
{
try
{
OsztalyCsoportLogic.AktTanevOsztalyVisszairatkoztatasJogviszonyCustomValidation(ModelState, model);
if (ModelState.IsValid)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).KollegiumVisszaIratkoztatas(model, model.ConvertModelToJogviszonyCo());
}
catch (BlException e)
{
var error = new StatusError(HttpStatusCode.BadRequest, e.Message);
throw error;
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportBesorolas(AktTanevCsoportBesorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).KollegiumCsoportbaSorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusError(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportAtsorolas(AktTanevCsoportAtsorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).KollegiumCsoportbaAtsorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportKisorolas(AktTanevCsoportKisorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).KollegiumCsoportbolKisorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportTevesBesorolasJavitas(AktTanevCsoportTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID).KollegiumCsoportSorolasJavitas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumBesorolasModCsoportListaApiController : ApiController
{
public DataSourceResult GetKollegiumBesorolasModCsoportGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KollegiumBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<KollegiumBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new KollegiumBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumBesorolasModCsoportbolbolKiirtTanulokApiController : ApiController
{
public DataSourceResult GetKollegiumBesorolasModCsoportbolKiirtTanulokGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KollegiumBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetKiirtTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<KollegiumBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new KollegiumBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumBesorolasModOsztalyListaApiController : ApiController
{
public DataSourceResult GetKollegiumBesorolasModOsztalyGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KollegiumBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<KollegiumBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new KollegiumBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,38 @@
using System.Collections.Generic;
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.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumBesorolasModOsztalybolKiirtTanulokApiController : ApiController
{
public DataSourceResult GetKollegiumBesorolasModOsztalybolKiirtTanulokGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KollegiumBesorolasSearchModel>(data);
var co = model.ConvertToCo();
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var coList = helper.GetKiirtTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<KollegiumBesorolasGridModel>();
foreach (var item in coList)
{
var gridModel = new KollegiumBesorolasGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
}
}

View file

@ -0,0 +1,256 @@
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumCsoportApiController : ApiController
{
public DataSourceResult GetCsoportGrid(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<CsoportGridModel>(CsoportGridModel.CsoportExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.CsoportExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), OsztalyCsoportResource.CsoportExportFileName);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
public HttpResponseMessage GetCsoportAktualisLetszamAdataiExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request, aktualisLetszam: true);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<CsoportGridModel>(CsoportGridModel.CsoportExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.CsoportExportSheetName, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), OsztalyCsoportResource.CsoportokAktualisLetszamadataiExportFileName);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<CsoportGridModel> modelList) GetGridData(string data, DataSourceRequest request, bool aktualisLetszam = false)
{
var model = JsonConvert.DeserializeObject<CsoportSearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var coList = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetCsoportKeresesCoList(model.ConvertToCo(OsztalyCsoportLogic.GetSearchDate()));
var modelList = new List<CsoportGridModel>();
foreach (var co in coList)
{
var gridModel = new CsoportGridModel(co, aktualisLetszam);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
public HttpResponseMessage SaveModifiedOrNewCsoport(AlapkepzesCsoportModel model)
{
try
{
ModelState.AddRange(KollegiumOsztalyCsoportLogic.ValidateCsoport(model));
if (ModelState.IsValid)
{
KollegiumOsztalyCsoportLogic.SaveCsoport(model);
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, OsztalyCsoportResource.AMegadottNevMarLetezik);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public HttpResponseMessage SaveModCsoport(CsoportModModel model)
{
try
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateCsoportGroup(model));
if (ModelState.IsValid)
{
var errorMessage = OsztalyCsoportLogic.SaveCsoportGroup(model);
if (!string.IsNullOrWhiteSpace(errorMessage))
{
errorMessage = $"{ErrorResource.AzAlabbiOsztalyCsoportokModositasaSikertelenVoltMertVanTanuloBesorolas}{errorMessage}";
return Request.CreateResponse(HttpStatusCode.OK, errorMessage);
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
[System.Web.Http.HttpPost]
public IHttpActionResult DeleteCsoport([FromBody] int csoportID)
{
var csoportList = new List<int> { csoportID };
return DeleteKijeloltCsoportok(csoportList);
}
[System.Web.Http.HttpPost]
public IHttpActionResult DeleteKijeloltCsoportok(List<int> csoportLista)
{
var errorMsg = OsztalyCsoportLogic.DeleteCsoportGroup(csoportLista, out bool deleteError);
if (deleteError)
{
throw new StatusError(HttpStatusCode.BadRequest, errorMsg);
}
return Json(new { Message = errorMsg });
}
public VegzosOsztalyModel GetOsztalyEvfolyama(string osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyEvfolyama(osztalyId);
}
public int GetOsztalyFeladatEllatasiHelye(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyFeladatEllatasiHelye(osztalyId);
}
public DataSourceResult GetCsoportTanuloi(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportTanuloi(csoportId, request);
}
public DataSourceResult GetCsoportFoglalkozasai(int csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportFoglalkozasai(csoportId, request);
}
public DataSourceResult GetCsoportOrarendiOrai(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportOrarendiOrai(csoportId, request);
}
public DataSourceResult GetCsoportTanmenetei(int csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportTanmenetei(csoportId, request);
}
public DataSourceResult GetCsoportMegtartottTanorai(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportMegtartottTanorai(csoportId, request);
}
public DataSourceResult GetCsoportErtekelesListGrid(string csoportId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetCsoportErtekelesListGrid(csoportId, request, (int)OktNevelesiKategoriaEnum.Kollegium);
}
[System.Web.Http.HttpPost]
public JsonResult<List<ExportColumn>> GetExportColumns()
{
List<ExportColumn> Items = new List<ExportColumn>();
Items.Add(new ExportColumn() { Field = "Tanev", Title = OsztalyCsoportResource.Tanev });
Items.Add(new ExportColumn() { Field = "csoportNev", Title = OsztalyCsoportResource.CsoportNeve });
Items.Add(new ExportColumn() { Field = "EVFOLYAMTIPUSA_DNAME", Title = OsztalyCsoportResource.Evfolyam });
Items.Add(new ExportColumn() { Field = "CsopTip_DNAME", Title = OsztalyCsoportResource.CsoportTipus });
Items.Add(new ExportColumn() { Field = "OsztalyBontasNev", Title = OsztalyCsoportResource.Osztalybontas });
Items.Add(new ExportColumn() { Field = "Terem", Title = OsztalyCsoportResource.Terem });
Items.Add(new ExportColumn() { Field = "vegzos_BNAME", Title = OsztalyCsoportResource.Vegzos });
Items.Add(new ExportColumn() { Field = "Tanulokszama", Title = OsztalyCsoportResource.TanulokSzama });
return Json(Items);
}
public HttpResponseMessage SaveNewEgyeniCsoport(EgyeniCsoportModel model)
{
try
{
OsztalyCsoportLogic.SaveNewEgyeniCsoport(model);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, CommonResource.AMegadottNevMarLetezik); //A megadott név már létezik
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public int? GetOsztalyKepzesiFormaja(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyKepzesiFormaja(osztalyId);
}
public GyogypedaogiaiLogopediaiOsztalyModel GetOsztalyCsoportByOsztalyId(int osztalyId)
{
return OsztalyCsoportLogic.GetOsztalyByOsztalyId(osztalyId);
}
}
}

View file

@ -0,0 +1,50 @@
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.Security;
using Kreta.Enums;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumKovTanevCsoportBesorolasTorlesApiController : ApiController
{
public DataSourceResult GetCsoportBesorolasGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KovTanevCsoportBesorolasTorlesModel>(data);
var co = model.ConvertToCo(OktNevelesiKategoriaEnum.Kollegium);
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetNextSessionConnectionType());
var coList = helper.GetTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<KovTanevCsoportBesorolasTorlesGridModel>();
foreach (var item in coList)
{
var gridModel = new KovTanevCsoportBesorolasTorlesGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas(string tanuloCsoportId, int tanuloId)
{
var helper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true);
helper.DeleteCsoportBesorolas(tanuloCsoportId);
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,50 @@
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.Security;
using Kreta.Enums;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumKovTanevOsztalyBesorolasTorlesApiController : ApiController
{
public DataSourceResult GetOsztalyBesorolasGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KovTanevOsztalyBesorolasTorlesModel>(data);
var co = model.ConvertToCo(OktNevelesiKategoriaEnum.Kollegium);
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetNextSessionConnectionType());
var coList = helper.GetTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<KovTanevOsztalyBesorolasTorlesGridModel>();
foreach (var item in coList)
{
var gridModel = new KovTanevOsztalyBesorolasTorlesGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas(int tanuloCsoportId, int osztalyCsoportId, int tanuloId)
{
var helper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true);
helper.DeleteOsztalyBesorolas(tanuloCsoportId, osztalyCsoportId, tanuloId);
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,189 @@
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Security;
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumKovTanevSorolasApiController : ApiController
{
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportLeptetes(KovTanevCsoportAtleptetesModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).KollegiumCsoportLeptetes(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportBesorolas(KovTanevCsoportBesorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).KollegiumCsoportbaSorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusError(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportTevesBesorolasJavitas(KovTanevCsoportTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).KollegiumCsoportSorolasJavitas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyLeptetes(KovTanevOsztalyAtleptetesModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).KollegiumOsztalyLeptetes(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyBesorolasElsoAlkalom(KovTanevOsztalyBesorolasElsoAlkalomModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).KollegiumOsztalybaSorolasElsoAlkalommal(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyTevesBesorolasJavitas(KovTanevOsztalyTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).KollegiumOsztalybaSorolasJavitasa(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyVisszairatkoztatas(KovTanevVisszairatkoztatasModel model)
{
try
{
OsztalyCsoportLogic.KovTanevVisszairatkoztatasJogviszonyCustomValidation(ModelState, model);
if (ModelState.IsValid)
{
try
{
new OsztalyCsoportbaSorolasHelper(
ConnectionTypeExtensions.GetSessionConnectionType(),
ClaimData.IsSzakkepzoIntezmeny,
ClaimData.IsSelectedTanev21_22OrLater,
ClaimData.AktivTanevID,
ClaimData.KovTanevID,
true).KollegiumVisszaIratkoztatas(model, model.ConvertModelToJogviszonyCo());
}
catch (BlException e)
{
var error = new StatusError(HttpStatusCode.BadRequest, e.Message);
throw error;
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,237 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes.ComboBox;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Framework;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumOsztalyApiController : ApiController
{
public DataSourceResult GetOsztalyGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetGridData(data, request);
return modelList.ToDataSourceResult(gridParameter);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<OsztalyGridModel>(OsztalyGridModel.OsztalyExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.Osztalyok, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{OsztalyCsoportResource.OsztalyokExportFileName}_{DateTime.Now:yyyy_MM_dd}.xlsx");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<OsztalyGridModel> modelList) GetGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<OsztalySearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var searchCo = model.ConvertToCo(OsztalyCsoportLogic.GetSearchDate());
searchCo.FeladatKategoriaId = (int)OktNevelesiKategoriaEnum.Kollegium;
var coList = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCoList(searchCo);
var modelList = new List<OsztalyGridModel>();
foreach (var co in coList)
{
var gridModel = new OsztalyGridModel(co);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveOsztaly(AlapkepzesOsztalyModel model)
{
try
{
ModelState.AddRange(KollegiumOsztalyCsoportLogic.ValidateOsztaly(model));
if (model.NaplosorszamEsTorzslapszamBeallitasaiModelList?.Count > 0)
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateNaplosorszamEsTorzslapszamBeallitasaiModelList(model.NaplosorszamEsTorzslapszamBeallitasaiModelList));
}
if (ModelState.IsValid)
{
KollegiumOsztalyCsoportLogic.SaveOsztaly(model);
if (model.NaplosorszamEsTorzslapszamBeallitasaiModelList?.Count > 0)
{
OsztalyCsoportLogic.SaveNaplosorszamEsTorzslapszamBeallitasai(model.NaplosorszamEsTorzslapszamBeallitasaiModelList);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, StringResourcesUtil.GetString(3684)); // Ebben a tanévben már létezik ilyen nevű osztály
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public HttpResponseMessage SaveModifiedOsztalyGroup(ModOsztalyModel model)
{
try
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateOsztalyGroup(model));
if (ModelState.IsValid)
{
var errorMessage = OsztalyCsoportLogic.SaveOsztalyGroup(model);
if (!string.IsNullOrWhiteSpace(errorMessage))
{
errorMessage = $"{ErrorResource.AzAlabbiOsztalyCsoportokModositasaSikertelenVoltMertVanTanuloBesorolas}{errorMessage}";
return Request.CreateResponse(HttpStatusCode.OK, errorMessage);
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
public HttpResponseMessage SaveNaplosorszamListGroup(ModOsztalyModel model)
{
try
{
if (ModelState.IsValid)
{
OsztalyCsoportLogic.SaveNaplosorszamListGroup(model.OsztalyIdArray.Select(int.Parse).ToList());
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
public ModOsztalyModel GetOsztalyModProperties(int? osztalyID = null)
{
return OsztalyCsoportLogic.GetOsztalyModProperties(osztalyID);
}
public DataSourceResult GetOsztalyTanuloi(string osztalyId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyTanuloi(osztalyId, request);
}
//Osztályhoz tartozó összes csoport + osztálybontás csoportjai
public DataSourceResult GetOsztalyBontasCsoportjai(string osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyBontasCsoportjai(osztalyID, request);
}
public DataSourceResult GetOsztalyFoglalkozasai(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyFoglalkozasai(osztalyID, request);
}
public DataSourceResult GetOsztalyOrarendiOrai(string osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyOrarendiOrai(osztalyID, request);
}
public DataSourceResult GetOsztalyTanmenetei(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyTanmenetei(osztalyID, request);
}
public DataSourceResult GetOsztalyErtekelesListGrid(string osztalyId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyErtekelesListGrid(osztalyId, request, (int)OktNevelesiKategoriaEnum.Kollegium);
}
public DataSourceResult GetOsztalyIgazolasai(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyIgazolasai(osztalyID, request);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public IHttpActionResult DeleteOsztalyok(DeleteOsztalyModel model)
{
var returnMsg = OsztalyCsoportLogic.DeleteOsztalyok(model.OsztalyIdLista, model.CsoportokTorlese, out bool deleteError);
if (deleteError)
{
throw new StatusError(HttpStatusCode.BadRequest, returnMsg);
}
return Json(new { Message = returnMsg });
}
public JsonResult<List<ComboBoxListItem>> GetEvfolyamList(string cascadeFilter)
{
return Json(OsztalyCsoportLogic.GetEvfolyamListFilter(cascadeFilter));
}
}
}

View file

@ -0,0 +1,49 @@
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.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class KovTanevCsoportBesorolasTorlesApiController : ApiController
{
public DataSourceResult GetCsoportBesorolasGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KovTanevCsoportBesorolasTorlesModel>(data);
var co = model.ConvertToCo(oktNeveleiKategoriaId: null);
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetNextSessionConnectionType());
var coList = helper.GetTanulokEsCsoportokGridItemCoList(co);
var modelList = new List<KovTanevCsoportBesorolasTorlesGridModel>();
foreach (var item in coList)
{
var gridModel = new KovTanevCsoportBesorolasTorlesGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas(string tanuloCsoportId, int tanuloId)
{
var helper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true);
helper.DeleteCsoportBesorolas(tanuloCsoportId);
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,49 @@
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.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class KovTanevOsztalyBesorolasTorlesApiController : ApiController
{
public DataSourceResult GetOsztalyBesorolasGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<KovTanevOsztalyBesorolasTorlesModel>(data);
var co = model.ConvertToCo(oktNeveleiKategoriaId: null);
var gridParameter = Converter.GridParameter(request);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetNextSessionConnectionType());
var coList = helper.GetTanulokEsOsztalyokGridItemCoList(co);
var modelList = new List<KovTanevOsztalyBesorolasTorlesGridModel>();
foreach (var item in coList)
{
var gridModel = new KovTanevOsztalyBesorolasTorlesGridModel(item);
modelList.Add(gridModel);
}
return modelList.ToDataSourceResult(gridParameter);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteBesorolas(int tanuloCsoportId, int osztalyCsoportId, int tanuloId)
{
var helper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true);
helper.DeleteOsztalyBesorolas(tanuloCsoportId, osztalyCsoportId, tanuloId);
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,226 @@
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
using System;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Kreta.BusinessLogic.Exceptions;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.KretaServer.Exceptions;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Security;
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class KovTanevSorolasApiController : ApiController
{
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportLeptetes(KovTanevCsoportAtleptetesModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).CsoportLeptetes(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportBesorolas(KovTanevCsoportBesorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).CsoportbaSorolas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusError(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage CsoportTevesBesorolasJavitas(KovTanevCsoportTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).CsoportSorolasJavitas(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage NebuloBesorolas(KovTanevNebuloBesorolasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).NebuloMentes(model, ClaimData.IsSzirIntezmeny);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
catch (KretaException e)
{
if (e is OktatasiAzonositoExistsException)
{
throw new StatusError(HttpStatusCode.BadRequest, $"{e.Message}{Core.Constants.General.Sortores}{ErrorResource.EzzelAzOktatasiAzonositovalMarRegisztraltakTanulotEbbeATanevbe}");
}
throw new StatusError(HttpStatusCode.BadRequest, e.Message) { UnHandledException = e };
}
catch (Exception e)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAMuveletSoran) { UnHandledException = e };
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyLeptetes(KovTanevOsztalyAtleptetesModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).OsztalyLeptetes(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyBesorolasElsoAlkalom(KovTanevOsztalyBesorolasElsoAlkalomModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).OsztalybaSorolasElsoAlkalommal(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyTevesBesorolasJavitas(KovTanevOsztalyTevesBesorolasJavitasModel model)
{
try
{
new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID, kovTanev: true).OsztalybaSorolasJavitasa(model);
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsztalyVisszairatkoztatas(KovTanevVisszairatkoztatasModel model)
{
try
{
OsztalyCsoportLogic.KovTanevVisszairatkoztatasJogviszonyCustomValidation(ModelState, model);
if (ModelState.IsValid)
{
try
{
new OsztalyCsoportbaSorolasHelper(
ConnectionTypeExtensions.GetSessionConnectionType(),
ClaimData.IsSzakkepzoIntezmeny,
ClaimData.IsSelectedTanev21_22OrLater,
ClaimData.AktivTanevID,
ClaimData.KovTanevID,
true).VisszaIratkoztatas(model, model.ConvertModelToJogviszonyCo());
}
catch (BlException e)
{
var error = new StatusError(HttpStatusCode.BadRequest, e.Message);
throw error;
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException ex)
{
var error = StatusErrorFactory.GetSorolasStatusErrorWithReloadDDL(ex.Message);
if (ex.IsUnHandled)
{
error.UnHandledException = ex.InnerException;
}
throw error;
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,58 @@
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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class MunkarendApiController : ApiController
{
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public DataSourceResult GetOsztalyCsoportTanuloMunkarendjeGrid(int osztalyCsoportId, bool isOsztaly, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var gridParameter = Converter.GridParameter(request);
if (isOsztaly)
{
var ohelper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var oresult = ohelper.GetOsztalyTanuloiByMunkarend(osztalyCsoportId, true, ClaimData.IsActivTanev);
return oresult.ToDataSourceResult(gridParameter);
}
else
{
var cshelper = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var csresult = cshelper.GetCsoportTanuloiByMunkarend(osztalyCsoportId, true, ClaimData.IsActivTanev);
return csresult.ToDataSourceResult(gridParameter);
}
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetsztalyCsoportTanuloMunkarendNelkulGrid(int osztalyCsoportId, bool isOsztaly, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var gridParameter = Converter.GridParameter(request);
if (isOsztaly)
{
var ohelper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var oresult = ohelper.GetOsztalyTanuloiByMunkarend(osztalyCsoportId, false, ClaimData.IsActivTanev);
return oresult.ToDataSourceResult(gridParameter);
}
else
{
var cshelper = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var csresult = cshelper.GetCsoportTanuloiByMunkarend(osztalyCsoportId, false, ClaimData.IsActivTanev);
return csresult.ToDataSourceResult(gridParameter);
}
}
}
}

View file

@ -0,0 +1,129 @@
using System;
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.ManualEnums;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class OraSorszamozasHalmazApiController : ApiController
{
public DataSourceResult GetHalmazGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<OraSorszamozasHalmazSearchModel>(data);
var helper = new OraSorszamozasHalmazHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
var ds = helper.GetAllPaged(model.ConvertToCO());
return ds.ToDataSourceResult();
}
public DataSourceResult GetOsszerendelesGrid(int halmazId)
{
var helper = new OraSorszamozasHalmazHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var ds = helper.GetOsszerendelesek(halmazId, true);
return ds.ToDataSourceResult();
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteHalmaz(int id)
{
new OraSorszamozasHalmazHelper(ConnectionTypeExtensions.GetSessionConnectionType()).Delete(id);
return Request.CreateResponse(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteOsszerendeles(int id)
{
new OraSorszamozasHalmazHelper(ConnectionTypeExtensions.GetSessionConnectionType()).DeleteOsszerendeles(id);
return Request.CreateResponse(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage Save(OraSorszamozasHalmazModel model)
{
try
{
CustomValidation(ModelState, model);
if (ModelState.IsValid)
{
new OraSorszamozasHalmazHelper(ConnectionTypeExtensions.GetSessionConnectionType()).Save(model.ConvertModelToCo());
return Request.CreateResponse(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
catch (Exception e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message) { UnHandledException = e };
}
}
private void CustomValidation(ModelStateDictionary modelState, OraSorszamozasHalmazModel model)
{
if (!string.IsNullOrWhiteSpace(model.Nev))
{
var helper = new OraSorszamozasHalmazHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var result = helper.NevExists(model.Nev, model.ID);
if (result)
{
modelState.AddModelError(nameof(model.Nev), OraSorszamozasHalmazResource.AMegadottNevvelMarLetezikHalmaz);
}
}
if (model.Osszerendelesek == null || model.Osszerendelesek.Count < 1)
{
modelState.AddModelError(nameof(model.Osszerendelesek), OraSorszamozasHalmazResource.LegalabbEgyOsszerendelesRogziteseKotelezo);
}
if (model.Tipus == (int)SorszamozasKezdoErtekenekBeallitasa.SorszamozasKezdoErtekeKezzelMegadva)
{
if (!model.Kezdoertek.HasValue)
{
modelState.AddModelError(nameof(model.Kezdoertek), OraSorszamozasHalmazResource.AKezdoErtekMegadasaKotelezo);
}
else
{
if (model.Kezdoertek.Value < 1)
{
modelState.AddModelError(nameof(model.Kezdoertek), OraSorszamozasHalmazResource.AKezdoErtekNemLehetKisebbMintEgy);
}
else
{
if (model.Kezdoertek.Value > 1000)
{
modelState.AddModelError(nameof(model.Kezdoertek), OraSorszamozasHalmazResource.AKezdoErtekNemLehetNagyobbMintEzer);
}
}
}
}
}
}
}

View file

@ -0,0 +1,237 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes.ComboBox;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Framework;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class OsztalyAmiApiController : ApiController
{
public DataSourceResult GetOsztalyGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetGridData(data, request);
return modelList.ToDataSourceResult(gridParameter);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<OsztalyGridModel>(OsztalyGridModel.OsztalyExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.Osztalyok, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{OsztalyCsoportResource.OsztalyokExportFileName}_{DateTime.Now:yyyy_MM_dd}.xlsx");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<OsztalyGridModel> modelList) GetGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<OsztalySearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var searchCo = model.ConvertToCo(OsztalyCsoportLogic.GetSearchDate());
searchCo.FeladatKategoriaId = (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas;
var coList = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCoList(searchCo);
var modelList = new List<OsztalyGridModel>();
foreach (var co in coList)
{
var gridModel = new OsztalyGridModel(co);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveOsztaly(AmiOsztalyModel model)
{
try
{
ModelState.AddRange(AmiOsztalyCsoportLogic.ValidateOsztaly(model));
if (model.NaplosorszamEsTorzslapszamBeallitasaiModelList?.Count > 0)
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateNaplosorszamEsTorzslapszamBeallitasaiModelList(model.NaplosorszamEsTorzslapszamBeallitasaiModelList));
}
if (ModelState.IsValid)
{
AmiOsztalyCsoportLogic.SaveOsztaly(model);
if (model.NaplosorszamEsTorzslapszamBeallitasaiModelList?.Count > 0)
{
OsztalyCsoportLogic.SaveNaplosorszamEsTorzslapszamBeallitasai(model.NaplosorszamEsTorzslapszamBeallitasaiModelList);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, StringResourcesUtil.GetString(3684)); // Ebben a tanévben már létezik ilyen nevű osztály
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public HttpResponseMessage SaveModifiedOsztalyGroup(ModOsztalyModel model)
{
try
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateOsztalyGroup(model));
if (ModelState.IsValid)
{
var errorMessage = OsztalyCsoportLogic.SaveOsztalyGroup(model);
if (!string.IsNullOrWhiteSpace(errorMessage))
{
errorMessage = $"{ErrorResource.AzAlabbiOsztalyCsoportokModositasaSikertelenVoltMertVanTanuloBesorolas}{errorMessage}";
return Request.CreateResponse(HttpStatusCode.OK, errorMessage);
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
public HttpResponseMessage SaveNaplosorszamListGroup(ModOsztalyModel model)
{
try
{
if (ModelState.IsValid)
{
OsztalyCsoportLogic.SaveNaplosorszamListGroup(model.OsztalyIdArray.Select(int.Parse).ToList());
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
public ModOsztalyModel GetOsztalyModProperties(int? osztalyID = null)
{
return OsztalyCsoportLogic.GetOsztalyModProperties(osztalyID);
}
public DataSourceResult GetOsztalyTanuloi(string osztalyId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyTanuloi(osztalyId, request);
}
//Osztályhoz tartozó összes csoport + osztálybontás csoportjai
public DataSourceResult GetOsztalyBontasCsoportjai(string osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyBontasCsoportjai(osztalyID, request);
}
public DataSourceResult GetOsztalyFoglalkozasai(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyFoglalkozasai(osztalyID, request);
}
public DataSourceResult GetOsztalyOrarendiOrai(string osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyOrarendiOrai(osztalyID, request);
}
public DataSourceResult GetOsztalyTanmenetei(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyTanmenetei(osztalyID, request);
}
public DataSourceResult GetOsztalyErtekelesListGrid(string osztalyId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyErtekelesListGrid(osztalyId, request, (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas);
}
public DataSourceResult GetOsztalyIgazolasai(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyIgazolasai(osztalyID, request);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public IHttpActionResult DeleteOsztalyok(DeleteOsztalyModel model)
{
var returnMsg = OsztalyCsoportLogic.DeleteOsztalyok(model.OsztalyIdLista, model.CsoportokTorlese, out bool deleteError);
if (deleteError)
{
throw new StatusError(HttpStatusCode.BadRequest, returnMsg);
}
return Json(new { Message = returnMsg });
}
public JsonResult<List<ComboBoxListItem>> GetEvfolyamList(string cascadeFilter)
{
return Json(OsztalyCsoportLogic.GetEvfolyamListFilter(cascadeFilter));
}
}
}

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 System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes.ComboBox;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Framework;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.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.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class OsztalyApiController : ApiController
{
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetOsztalyGrid(string data, DataSourceRequest request)
{
var (gridParameter, modelList) = GetGridData(data, request);
return modelList.ToDataSourceResult(gridParameter);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public HttpResponseMessage GetExport(string data, DataSourceRequest request)
{
try
{
var (gridParameter, modelList) = GetGridData(data, request);
modelList = modelList.SortingAndPaging(gridParameter.OrderDictionary);
var simpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<OsztalyGridModel>(OsztalyGridModel.OsztalyExportAttributeId);
var memoryStream = SimpleExportLogic.GetExport(OsztalyCsoportResource.Osztalyok, simpleExportColumnCos, modelList, ClaimData.SelectedTanevID.Value);
return HttpResponseExtensions.GetFileHttpResponse(memoryStream.ToArray(), $"{OsztalyCsoportResource.OsztalyokExportFileName}_{DateTime.Now:yyyy_MM_dd}.xlsx");
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ErrorResource.HibaTortentAFajlExportalasaKozben) { UnHandledException = ex };
}
}
private (GridParameters gridParameter, List<OsztalyGridModel> modelList) GetGridData(string data, DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<OsztalySearchModel>(data);
var gridParameter = Converter.GridParameter(request);
var coList = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCoList(model.ConvertToCo(OsztalyCsoportLogic.GetSearchDate()));
var modelList = new List<OsztalyGridModel>();
foreach (var co in coList)
{
var gridModel = new OsztalyGridModel(co);
modelList.Add(gridModel);
}
return (gridParameter, modelList);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveOsztaly(AlapkepzesOsztalyModel model)
{
try
{
ModelState.AddRange(AlapkepzesOsztalyCsoportLogic.ValidateOsztaly(model));
if (model.NaplosorszamEsTorzslapszamBeallitasaiModelList?.Count > 0)
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateNaplosorszamEsTorzslapszamBeallitasaiModelList(model.NaplosorszamEsTorzslapszamBeallitasaiModelList));
}
if (ModelState.IsValid)
{
AlapkepzesOsztalyCsoportLogic.SaveOsztaly(model);
if (model.NaplosorszamEsTorzslapszamBeallitasaiModelList?.Count > 0)
{
OsztalyCsoportLogic.SaveNaplosorszamEsTorzslapszamBeallitasai(model.NaplosorszamEsTorzslapszamBeallitasaiModelList);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
catch (SDA.DataProvider.UniqueKeyViolationException)
{
throw new StatusError(HttpStatusCode.BadRequest, StringResourcesUtil.GetString(3684)); // Ebben a tanévben már létezik ilyen nevű osztály
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
}
public HttpResponseMessage SaveModifiedOsztalyGroup(ModOsztalyModel model)
{
try
{
ModelState.AddRange(OsztalyCsoportLogic.ValidateOsztalyGroup(model));
if (ModelState.IsValid)
{
var errorMessage = OsztalyCsoportLogic.SaveOsztalyGroup(model);
if (!string.IsNullOrWhiteSpace(errorMessage))
{
errorMessage = $"{ErrorResource.AzAlabbiOsztalyCsoportokModositasaSikertelenVoltMertVanTanuloBesorolas}{errorMessage}";
return Request.CreateResponse(HttpStatusCode.OK, errorMessage);
}
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
public HttpResponseMessage SaveNaplosorszamListGroup(ModOsztalyModel model)
{
try
{
if (ModelState.IsValid)
{
OsztalyCsoportLogic.SaveNaplosorszamListGroup(model.OsztalyIdArray.Select(int.Parse).ToList());
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
catch (BlException e)
{
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
return new HttpResponseMessage(HttpStatusCode.OK);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public ModOsztalyModel GetOsztalyModProperties(int? osztalyID = null)
{
return OsztalyCsoportLogic.GetOsztalyModProperties(osztalyID);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetOsztalyTanuloi(string osztalyId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyTanuloi(osztalyId, request);
}
//Osztályhoz tartozó összes csoport + osztálybontás csoportjai
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetOsztalyBontasCsoportjai(string osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyBontasCsoportjai(osztalyID, request);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetOsztalyFoglalkozasai(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyFoglalkozasai(osztalyID, request);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetOsztalyOrarendiOrai(string osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyOrarendiOrai(osztalyID, request);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetOsztalyTanmenetei(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyTanmenetei(osztalyID, request);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetOsztalyErtekelesListGrid(string osztalyId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyErtekelesListGrid(osztalyId, request, (int)OktNevelesiKategoriaEnum.NevelesOktatas);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetOsztalyIgazolasai(int osztalyID, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyIgazolasai(osztalyID, request);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetSorolasTbJogviszonyGrid(string json, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<SorolasTbJogviszonyModel>(json);
var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var co = helper.GetJogviszonyByTanuloIdsAndJogvTipusId(model.List.Select(x => x.TanuloId).ToList());
return co.ToDataSourceResult();
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public IHttpActionResult DeleteOsztalyok(DeleteOsztalyModel model)
{
var returnMsg = OsztalyCsoportLogic.DeleteOsztalyok(model.OsztalyIdLista, model.CsoportokTorlese, out bool deleteError);
if (deleteError)
{
throw new StatusError(HttpStatusCode.BadRequest, returnMsg);
}
return Json(new { Message = returnMsg });
}
public JsonResult<List<ComboBoxListItem>> GetEvfolyamList(string cascadeFilter)
{
return Json(OsztalyCsoportLogic.GetEvfolyamListFilter(cascadeFilter));
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetOsztalyTanuloinakKepzesiJellemzoiGrid(int osztalyId, int jegyzekTipus, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
return OsztalyCsoportLogic.GetOsztalyTanuloinakKepzesiJellemzoi(osztalyId, jegyzekTipus, request);
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetOsztalyTanuloiByKepzesiJellemzok(string data, [System.Web.Mvc.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var settings = new JsonSerializerSettings();
settings.NullValueHandling = NullValueHandling.Ignore;
var tanuloKepzesiJellemzoSearchModel = JsonConvert.DeserializeObject<TanuloKepzesiJellemzoSearchModel>(data, settings);
var ohelper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var osztalyTanuloiKepzesiJellemzoAlapjan = ohelper.GetOsztalyTanuloiByKepzesiJellemzok(tanuloKepzesiJellemzoSearchModel.ConvertToCo(), ClaimData.IsActivTanev);
return osztalyTanuloiKepzesiJellemzoAlapjan.ToDataSourceResult();
}
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public DataSourceResult GetOsztalyKepzesiJellemzokNelkuliTanuloiGrid(int osztalyId, int jegyzekTipus, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var tanuloKepzesiJellemzoSearchModel = new TanuloKepzesiJellemzoSearchModel();
tanuloKepzesiJellemzoSearchModel.OsztalyId = osztalyId;
tanuloKepzesiJellemzoSearchModel.JegyzekTipus = jegyzekTipus;
var ohelper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var osztalyTanuloiKepzesiJellemzoAlapjan = ohelper.GetOsztalyTanuloiByKepzesiJellemzok(tanuloKepzesiJellemzoSearchModel.ConvertToCo(), ClaimData.IsActivTanev);
return osztalyTanuloiKepzesiJellemzoAlapjan.ToDataSourceResult();
}
}
}

View file

@ -0,0 +1,163 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Results;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.HelperClasses.OsztalyCsoportbaSorolas;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue)]
public class ZaradekApiController : ApiController
{
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveZaradek(SorolasZaradek model)
{
if (!ValidateZaradek(model, out var errorDictionary))
{
ModelState.AddRange(errorDictionary);
}
if (ModelState.IsValid)
{
try
{
var helper = new ZaradekHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.SaveZaradek(model.ConvertToCo(), ClaimData.IsOsztalyfonok, ClaimData.IsAdministrator);
return Request.CreateResponse(HttpStatusCode.OK);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.InternalServerError, ex.Message, ex);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.InternalServerError, ErrorResource.NemSikerultAMuvelet, ex);
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage DeleteZaradek(int zaradekId)
{
try
{
new ZaradekHelper(ConnectionTypeExtensions.GetSessionConnectionType()).DeleteZaradek(zaradekId, ClaimData.IsOsztalyfonok);
return Request.CreateResponse(HttpStatusCode.OK);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.InternalServerError, ErrorResource.NemSikerultAMuvelet, ex);
}
}
private bool ValidateZaradek(SorolasZaradek model, out Dictionary<string, List<string>> errorDictionary)
{
errorDictionary = new Dictionary<string, List<string>>();
if (model.ZaradekSzovegList == null || !model.ZaradekSzovegList.Any(z => z.NyelvId == (int)AnyanyelvEnum.magyar && !string.IsNullOrWhiteSpace(z.Szoveg)))
{
errorDictionary.Add($"ZaradekSzovegTextArea_{(int)AnyanyelvEnum.magyar}", new List<string> { OsztalyCsoportResource.ZaradekSzovegeKotelezo });
}
if (string.IsNullOrWhiteSpace(model.KeltezesHelye))
{
errorDictionary.Add($"KeltezesHelye", new List<string> { OsztalyCsoportResource.KeltezesHelyeKotelezo });
}
if (!model.KeltezesDatuma.HasValue)
{
errorDictionary.Add($"KeltezesDatuma", new List<string> { OsztalyCsoportResource.KeltezesDatumaKotelezo });
}
return !errorDictionary.Any();
}
[HttpGet]
[ApiValidateAjaxAntiForgeryToken]
public JsonResult<ZaradekMegjeleniteseModel> GetZaradekMegjelenese(int adatszotarId)
{
var helper = new AdatszotarHelper(ConnectionTypeExtensions.GetSessionConnectionType());
AdatszotarCO co = helper.GetAdatszotarElem(adatszotarId);
var result = new ZaradekMegjeleniteseModel();
result.ZaradekSzovegList = new List<ZaradekNyelvCo> { new ZaradekNyelvCo { NyelvId = (int)AnyanyelvEnum.magyar, Szoveg = co.Megnevezes } };
result.ZaradekSzovegList.AddRange(co.ZaradekSzovegCoList.ConvertAll(x => new ZaradekNyelvCo { NyelvId = x.NyelvId, Szoveg = x.Name }).ToList());
result.IsBizonyitvanMegjelenes = co.IsBizonyitvanybanMegjelenik;
result.IsTorzslapMegjelenes = co.IsTorzslaponMegjelenik;
result.IsNaploMegjelenes = co.IsNaplobanMegjelenik;
return Json(result);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage SaveZaradekTobbesModositas(ZaradekTobbesModositasaModel model)
{
if (!ValidateZaradek(model.SorolasZaradekModel, out var errorDictionary))
{
ModelState.AddRange(errorDictionary);
}
if (ModelState.IsValid)
{
try
{
var helper = new ZaradekHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.SaveZaradekTobbesModositas(model.SorolasZaradekModel.ConvertToCo(), ClaimData.IsOsztalyfonok, ClaimData.IsAdministrator, model.TanuloCsoportIdList);
return Request.CreateResponse(HttpStatusCode.OK);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.InternalServerError, ex.Message, ex);
}
catch (Exception ex)
{
throw new StatusError(HttpStatusCode.InternalServerError, ErrorResource.NemSikerultAMuvelet, ex);
}
}
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage OsszesZaradekTorlese(ZaradekTobbesModositasaModel model)
{
var helper = new ZaradekHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.OsszesZaradekTorlese(model.TanuloCsoportIdList, model.IsOsztalyList);
return new HttpResponseMessage(HttpStatusCode.OK);
}
[HttpPost]
[ApiValidateAjaxAntiForgeryToken]
public HttpResponseMessage LegutobbRogzitettZaradekTorlese(ZaradekTobbesModositasaModel model)
{
var helper = new ZaradekHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.LegutobbRogzitettZaradekokTorlese(model.TanuloCsoportIdList, model.IsOsztalyList);
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
}

View file

@ -0,0 +1,263 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses.OsztalyCsoportbaSorolas;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class AktTanevSorolasController : Controller
{
public ActionResult OsztalyBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyBesorolasElsoAlkalomModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = StringResourcesUtil.GetString(4012),
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyBesorolasElsoAlkalomHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevNemBesoroltTanulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "OsztalyBesorolasElsoAlkalom" })
};
return View(model);
}
public ActionResult OsztalyKisorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyKisorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevOsztalyKisorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
ToChangeEvent = "",
ToPlaceholder = "",
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
GetTanulokListToUrl = string.Empty,
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "OsztalyKisorolas" })
};
return View(model);
}
public ActionResult OsztalyTevesBesorolasJavitas()
{
var model = new AktTanevOsztalyTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevOsztalyTevesBesorolasJavitasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyTevesBesorolasJavitasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "OsztalyTevesBesorolasJavitas" })
};
return View(model);
}
public ActionResult OsztalyAtsorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyAtsorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevOsztalyAtsorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyAtsorolasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "OsztalyAtsorolas" })
};
return View(model);
}
public ActionResult OsztalyVisszairatkoztatas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyVisszairatkoztatasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetTanevekKovetkezoNelkul" }),
FromChangeEvent = "AktTanevOsztalyVisszairatkoztatasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiATanevet,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyVisszairatkoztatasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetTanevKiiratkoztatottTanulokList" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "OsztalyVisszairatkoztatas" })
};
return View(model);
}
public ActionResult CsoportAtsorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportAtsorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportAtsorolasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportAtsorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "CsoportAtsorolas" })
};
model.Zaradek.IsZaradekKotelezo = false;
return View(model);
}
public ActionResult CsoportBesorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportBesorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevCsoportBesorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportBesorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyAktivTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "CsoportBesorolas" })
};
return View(model);
}
public ActionResult CsoportKisorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportKisorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportKisorolasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
ToChangeEvent = "",
ToPlaceholder = "",
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = string.Empty,
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "CsoportKisorolas" })
};
model.Zaradek.IsZaradekKotelezo = false;
return View(model);
}
public ActionResult CsoportTevesBesorolasJavitas()
{
var model = new AktTanevCsoportTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportTevesBesorolasJavitasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportTevesBesorolasJavitasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AktTanevSorolasApi", action = "CsoportTevesBesorolasJavitas" })
};
return View(model);
}
}
}

View file

@ -0,0 +1,220 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses.OsztalyCsoportbaSorolas;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Framework;
using Kreta.KretaServer.SystemSettings;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiAktTanevSorolasController : Controller
{
public ActionResult OsztalyBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyBesorolasElsoAlkalomModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = StringResourcesUtil.GetString(4012),
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyBesorolasElsoAlkalomHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiAktivTanevBesorolhatoTanulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiAktTanevSorolasApi", action = "OsztalyBesorolasElsoAlkalom" }),
EgyeniCsoportAutoLetrehozas = GetSystemSettingValue(RendszerBeallitasTipusEnum.Egyeni_Csoportok_Automatikus_Letrehozasa),
ZenemuveszetisOsztalyokJson = JsonConvert.SerializeObject(new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyokByMuveszetiAg(MuveszetiAgEnum.ZenemuveszetiAg))
};
return View(model);
}
public ActionResult OsztalyKisorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyKisorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevOsztalyKisorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
ToChangeEvent = "",
ToPlaceholder = "",
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
GetTanulokListToUrl = string.Empty,
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiAktTanevSorolasApi", action = "OsztalyKisorolas" })
};
return View(model);
}
public ActionResult OsztalyTevesBesorolasJavitas()
{
var model = new AktTanevOsztalyTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevOsztalyTevesBesorolasJavitasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyTevesBesorolasJavitasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiAktTanevSorolasApi", action = "OsztalyTevesBesorolasJavitas" })
};
return View(model);
}
public ActionResult CsoportAtsorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportAtsorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportAtsorolasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiCsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportAtsorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiAktTanevSorolasApi", action = "CsoportAtsorolas" })
};
model.Zaradek.IsZaradekKotelezo = false;
return View(model);
}
public ActionResult CsoportBesorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportBesorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevCsoportBesorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiCsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportBesorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyAktivTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiAktTanevSorolasApi", action = "CsoportBesorolas" }),
EgyeniCsoportAutoLetrehozas = GetSystemSettingValue(RendszerBeallitasTipusEnum.Egyeni_Csoportok_Automatikus_Letrehozasa)
};
return View(model);
}
public ActionResult CsoportKisorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportKisorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportKisorolasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
ToChangeEvent = "",
ToPlaceholder = "",
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = string.Empty,
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiAktTanevSorolasApi", action = "CsoportKisorolas" })
};
return View(model);
}
public ActionResult CsoportTevesBesorolasJavitas()
{
var model = new AktTanevCsoportTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportTevesBesorolasJavitasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiCsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportTevesBesorolasJavitasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiAktTanevSorolasApi", action = "CsoportTevesBesorolasJavitas" })
};
return View(model);
}
private bool GetSystemSettingValue(RendszerBeallitasTipusEnum enumValue)
{
return SystemSettingsManager.GetSystemSettingValue<bool>(enumValue, ClaimData.IntezmenyAzonosito, ClaimData.SelectedTanevID.Value);
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiBesorolasModCsoportListaController : BaseBesorolasController<AmiBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new AmiBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiBesorolasModCsoportbolbolKiirtTanulokController : BaseBesorolasController<AmiBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new AmiBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiBesorolasModOsztalyListaController : BaseBesorolasController<AmiBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new AmiBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiBesorolasModOsztalybolKiirtTanulokController : BaseBesorolasController<AmiBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new AmiBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

@ -0,0 +1,225 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.HelperClasses.OsztalyCsoportbaSorolas;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Framework;
using Kreta.KretaServer.SystemSettings;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(TanevEnum.KovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
public class AmiKovTanevSorolasController : Controller
{
public ActionResult OsztalyBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevOsztalyBesorolasElsoAlkalomModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = StringResourcesUtil.GetString(4012),
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyBesorolasElsoAlkalomHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiKovTanevBesorolhatoTanulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiKovTanevSorolasApi", action = "OsztalyBesorolasElsoAlkalom" }),
EgyeniCsoportAutoLetrehozas = GetSystemSettingValue(RendszerBeallitasTipusEnum.Egyeni_Csoportok_Automatikus_Letrehozasa),
ZenemuveszetisOsztalyokJson = JsonConvert.SerializeObject(new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyokByMuveszetiAg(MuveszetiAgEnum.ZenemuveszetiAg)),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult OsztalyBesorolasTorles()
{
return View(new KovTanevOsztalyBesorolasTorlesModel());
}
public ActionResult OsztalyTevesBesorolasJavitas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var model = new KovTanevOsztalyTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
FromChangeEvent = "KovTanevOsztalyTevesBesorolasJavitasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyTevesBesorolasJavitasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiKovTanevSorolasApi", action = "OsztalyTevesBesorolasJavitas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult CsoportAtleptetes()
{
TanevCO aktData;
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
aktData = tanevHelper.GetTanevInfo();
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
TanevCO kovData = helper.GetTanevInfo();
var model = new KovTanevCsoportAtleptetesModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "KovTanevCsoportAtleptetesHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiCsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportAtleptetesHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = kovData.KezdoNap.ToString(),
MaxDatum = aktData.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloiCsoportLepteteshez" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiKovTanevSorolasApi", action = "CsoportLeptetes" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult CsoportBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevCsoportBesorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
FromChangeEvent = "KovTanevCsoportBesorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiCsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportBesorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiKovTanevSorolasApi", action = "CsoportBesorolas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult CsoportBesorolasTorles()
{
return View(new KovTanevCsoportBesorolasTorlesModel());
}
public ActionResult CsoportTevesBesorolasJavitas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var model = new KovTanevCsoportTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiCsoportokListByEvfolyamForBesorolasokKovTanev" }),
FromChangeEvent = "KovTanevCsoportTevesBesorolasJavitasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiCsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportTevesBesorolasJavitasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiKovTanevSorolasApi", action = "CsoportTevesBesorolasJavitas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult OsztalyAtleptetes()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var aktData = helper.GetTanevInfo();
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var kovData = tanevHelper.GetTanevInfo();
var model = new KovTanevOsztalyAtleptetesModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "KovTanevOsztalyAtleptetesHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAmiOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyAtleptetesHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = kovData.KezdoNap.ToString(),
MaxDatum = aktData.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloiOsztalyLepteteshez" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "AmiKovTanevSorolasApi", action = "OsztalyLeptetes" }),
EgyeniCsoportLetrejonFigyelmeztetes = OsztalyCsoportResource.EgyeniCsoportLetrejonFigyelmeztetes,
AutoEgyeniCsoportFigyelmeztetes = string.Format(OsztalyCsoportResource.AutoEgyeniCsoportFigyelmeztetes, new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<bool>(Enums.RendszerBeallitasTipusEnum.Egyeni_Csoportok_Automatikus_Letrehozasa) ? OsztalyCsoportResource.Engedelyezve : OsztalyCsoportResource.Tiltva),
DropKovTanevAlert = tanevHelper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
private bool GetSystemSettingValue(RendszerBeallitasTipusEnum enumValue)
{
return SystemSettingsManager.GetSystemSettingValue<bool>(enumValue, ClaimData.IntezmenyAzonosito, ClaimData.SelectedTanevID.Value);
}
}
}

View file

@ -0,0 +1,41 @@
using System.Web.Http;
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Controllers.Logic;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.AMImodul.ClaimValue,
KretaClaimPackages.EGYMIModul.ClaimValue, KretaClaimPackages.FelnottkepzesModul.ClaimValue,
KretaClaimPackages.KollegiumModul.ClaimValue)]
public class BaseBesorolasController<T> : Controller
where T : BaseBesorolasSearchModel
{
#region Exportok
public ActionResult ExportBesorolasOsztaly([FromUri] T data)
{
return CommonExportLogic.ExportBesorolasokOsztalyok(data, false);
}
public ActionResult ExportBesorolasOsztalyKiirt([FromUri] T data)
{
return CommonExportLogic.ExportBesorolasokOsztalyok(data, true);
}
public ActionResult ExportBesorolasCsoport([FromUri] T data)
{
return CommonExportLogic.ExportBesorolasokCsoportok(data, false);
}
public ActionResult ExportBesorolasCsoportKiirt([FromUri] T data)
{
return CommonExportLogic.ExportBesorolasokCsoportok(data, true);
}
#endregion
}
}

View file

@ -0,0 +1,188 @@
using System;
using System.Collections.Generic;
using System.Net;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.Core.FeatureToggle;
using Kreta.Core.FileService;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
public class BaseCsoportController : Controller
{
protected readonly IFeatureContext FeatureContext;
protected readonly IFileService FileService;
public BaseCsoportController(IFeatureContext featureContext, IFileService fileService)
{
FeatureContext = featureContext;
FileService = fileService;
}
[NonAction]
public ActionResult OpenCsoportAddPopup(int? id, int? szervezetId, bool isFromSzervezet)
{
var csmodel = AlapkepzesOsztalyCsoportLogic.GetCsoportBaseProperties(id);
csmodel.IsFeladatellatasiHelySzures = false;
csmodel.IsFromSzervezet = isFromSzervezet;
csmodel.IsKretaIntezmenyiAdminIsFromSzervezet = ClaimManager.HasPackage("Adminisztrator") && isFromSzervezet;
PopUpModel pm = new PopUpModel(csmodel, "CsoportAdd_Bevitel");
pm = pm.AddCancelBtn(pm, "CsoportHelper.csoportModifyAddCancel");
pm = pm.AddOkBtn(pm, "CsoportHelper.modifyAddSave");
return PartialView(Constants.General.PopupView, pm);
}
[NonAction]
public ActionResult OpenCsoportModifyPopup(int? id, int? szervezetId, bool isFromSzervezet, string controllerName, string apiControllerName)
{
bool isAmiAlapkepzesesGimnaziumkentKezelendo = false;
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
if (!isFromSzervezet && osztalyCsoportHelper.GetOsztalyCsoportFeladatKategoria(id.Value) != (int)OktNevelesiKategoriaEnum.NevelesOktatas)
{
var gimnaziumAlapkepzeseskentKezelendo = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Szakgimnaziumok_Alapkezpeseskent_Tudjak_Kezelni_osztalyokat_Tanulokat);
if (!(gimnaziumAlapkepzeseskentKezelendo && osztalyCsoportHelper.GetOsztalyCsoportOktatasNevelesiFeladatTipus(id.Value) == (int)OktatasiNevelesiFeladatEnum.MuveszetiSzakgimnazium))
{
return OpenCsoportPropertiesTab(id.Value, isFromSzervezet, controllerName, apiControllerName, true);
}
isAmiAlapkepzesesGimnaziumkentKezelendo = true;
}
AlapkepzesCsoportModel csmodel = AlapkepzesOsztalyCsoportLogic.GetCsoportBaseProperties(id);
csmodel.IsFromSzervezet = isFromSzervezet;
csmodel.TabList = new List<TabStripItemModel>();
csmodel.TabList.Add(new TabStripItemModel() { ItemId = "1", ItemName = StringResourcesUtil.GetString(3880) /*Csoport alapadatok*/, Model = csmodel, PartialViewName = "CsoportModify_Bevitel", IsActive = true });
csmodel.TabList.Add(new TabStripItemModel() { ItemId = "2", ItemName = StringResourcesUtil.GetString(3881) /*A csoportba járó tanulók listája*/, Model = csmodel, PartialViewName = "CsoportTanulo_Bevitel" });
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny && !isFromSzervezet)
{
csmodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = id.Value;
csmodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsOsztaly = false;
OsztalyCsoportLogic.SetCsoportMunkarendVisibility(csmodel, id);
csmodel.TabList.Add(new TabStripItemModel() { ItemId = "3", ItemName = CommonResource.Munkarend, Model = csmodel, PartialViewName = "Info_CsoportMunkarend_Tab" });
}
csmodel.IsAmiAlapkepzesesGimnaziumkentKezelendo = isAmiAlapkepzesesGimnaziumkentKezelendo;
PopUpModel pm = new PopUpModel(csmodel, "CsoportModify_Bevitel_Tab");
pm = pm.AddCancelBtn(pm, "CsoportHelper.csoportModifyAddCancel");
pm = pm.AddOkBtn(pm, "CsoportHelper.modifyAddSave");
return PartialView(Constants.General.PopupView, pm);
}
[NonAction]
public ActionResult OpenCsoportPropertiesTab(int csoportID, bool isFromSzervezet, string controllerName, string apiControllerName, bool fromAdd = false)
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
Enum.TryParse(osztalyCsoportHelper.GetOsztalyCsoportFeladatKategoria(csoportID).ToString(), out OktNevelesiKategoriaEnum kategoria);
if (kategoria == OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas)
{
var gimnaziumAlapkepzeseskentKezelendo = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Szakgimnaziumok_Alapkezpeseskent_Tudjak_Kezelni_osztalyokat_Tanulokat);
if (!(gimnaziumAlapkepzeseskentKezelendo && osztalyCsoportHelper.GetOsztalyCsoportOktatasNevelesiFeladatTipus(csoportID) == (int)OktatasiNevelesiFeladatEnum.MuveszetiSzakgimnazium))
{
return RedirectToAction("OpenCsoportPropertiesTab", Constants.Controllers.CsoportAmi, new { csoportID, fromAdd });
}
}
if (kategoria == OktNevelesiKategoriaEnum.Kollegium)
{
return RedirectToAction("OpenCsoportPropertiesTab", Constants.Controllers.KollegiumCsoport, new { csoportID, fromAdd });
}
if (kategoria == OktNevelesiKategoriaEnum.EGYMI)
{
return RedirectToAction("OpenCsoportPropertiesTab", Constants.Controllers.EGYMICsoport, new { csoportID, fromAdd });
}
var csmodel = new AlapkepzesCsoportModel() { ID = csoportID };
csmodel.ControllerName = controllerName;
csmodel.ApiControllerName = apiControllerName;
csmodel.IsFromSzervezet = isFromSzervezet;
csmodel.IsKretaIntezmenyiAdminIsFromSzervezet = ClaimManager.HasPackage("Adminisztrator") && isFromSzervezet;
csmodel.TabList = GetTabItems(csmodel);
var pm = new PopUpModel(csmodel, "CsoportProperties_Info");
pm = pm.AddCancelBtn(pm, "CsoportHelper.propertiesCancel");
return PartialView(Constants.General.PopupView, pm);
}
[NonAction]
public ActionResult OpenModPopup(List<AlapkepzesCsoportModel> csoportLista, bool isFromSzervezet)
{
var model = AlapkepzesOsztalyCsoportLogic.GetModelForCsoportModPopup(csoportLista, isFromSzervezet);
if (!isFromSzervezet)
{
AlapkepzesOsztalyCsoportLogic.ValidateTobbesModFeladatKategoria(model.CsoportIDArrayString);
}
model.IsFromSzervezet = isFromSzervezet;
PopUpModel pm = new PopUpModel(model, "CsoportTobbModify_bevitel");
pm = pm.AddCancelBtn(pm, "CsoportHelper.csoportModifyAddCancel");
pm = pm.AddOkBtn(pm, "CsoportHelper.confirmCsopModWindow");
return PartialView(Constants.General.PopupView, pm);
}
[NonAction]
public ActionResult GetCsoportBaseProperties(int? id, bool isFromSzervezet)
{
var csmodel = AlapkepzesOsztalyCsoportLogic.GetCsoportBaseProperties(id);
csmodel.IsFromSzervezet = isFromSzervezet;
return PartialView("Info_Alapadatok_Tab", csmodel);
}
public List<TabStripItemModel> GetTabItems(AlapkepzesCsoportModel model)
{
var csoportController = model.ControllerName;
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = StringResourcesUtil.GetString(161), Area = "OsztalyCsoport", Controller = csoportController, Action = "GetCsoportBaseProperties", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = OsztalyCsoportResource.Tanulok, /*Tanulók*/ Area = "OsztalyCsoport", Controller = Constants.Controllers.Csoport, Action = "GetCsoportTanuloi", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "3", ItemName = StringResourcesUtil.GetString(164)/*Foglalkozások*/, Area = "OsztalyCsoport", Controller = Constants.Controllers.Csoport, Action = "GetCsoportFoglalkozasai", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } } });
if (!ClaimData.IsSzirIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = "4", ItemName = OsztalyCsoportResource.OrarendiOrak, Area = "OsztalyCsoport", Controller = csoportController, Action = "GetCsoportOrarendiOrai", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() }, { "apiControllerName", model.ApiControllerName } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "5", ItemName = OsztalyCsoportResource.Tanmenetek, Area = "OsztalyCsoport", Controller = Constants.Controllers.Csoport, Action = "GetCsoportTanmenetei", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "6", ItemName = StringResourcesUtil.GetString(167)/*Megtartott tanórák*/, Area = "OsztalyCsoport", Controller = Constants.Controllers.Csoport, Action = "GetCsoportMegtartottTanorai", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "7", ItemName = StringResourcesUtil.GetString(1701)/*Értékelések*/, Area = "OsztalyCsoport", Controller = Constants.Controllers.Csoport, Action = "GetCsoportErtekelesei", RouteParameters = new Dictionary<string, string>() { { "Id", model.ID.ToString() } }, IsETTFDisabled = true });
}
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny && !model.IsFromSzervezet)
{
items.Add(new TabStripItemModel { ItemId = "8", ItemName = CommonResource.Munkarend, Area = "OsztalyCsoport", Controller = Constants.Controllers.Csoport, Action = "GetCsoportTanuloinakMunkarendje", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
}
return items;
}
[NonAction]
public ActionResult GetCsoportOrarendiOrai(int id, string apiControllerName, bool isFromSzervezet)
{
var csmodel = AlapkepzesOsztalyCsoportLogic.GetCsoportBaseProperties(id);
csmodel.ApiControllerName = apiControllerName;
csmodel.IsFromSzervezet = isFromSzervezet;
return PartialView("Info_CsoportOrarendiOrai_Tab", csmodel);
}
}
}

View file

@ -0,0 +1,102 @@
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.ApiControllers;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class BesorolasModCsoportListaController : BaseBesorolasController<AktTanevBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new AktTanevBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
public ActionResult OpenModPopUp(int tanuloCsoportId, bool isZaradekTabAktiv = false)
{
var model = new BesorolasModCsoportModel(tanuloCsoportId);
model.TabList = GetModifyTabs(tanuloCsoportId);
if (isZaradekTabAktiv)
{
model.TabList[0].IsActive = false;
model.TabList.FirstOrDefault(x => x.ItemName.Equals(OsztalyCsoportResource.Zaradekok)).IsActive = true;
}
PopUpModel pm = new PopUpModel(model, "CsoportModify_Bevitel");
pm = pm.AddCancelBtn(pm, "BesorolasModCsoportHelper.modifyCancel");
pm = pm.AddOkBtn(pm, "BesorolasModCsoportHelper.modifySave");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenTobbesModPopUp(List<BesorolasTobbesModCsoportModel> csoportTanuloiList)
{
BesorolasTobbesModCsoportModel model = new BesorolasTobbesModCsoportModel();
foreach (var item in csoportTanuloiList)
{
model.TanuloCsoportIdArray += item.TanuloCsoportId.ToString() + ",";
model.TanuloNevArray += item.TanuloNev.ToString() + ", ";
}
PopUpModel pm = new PopUpModel(model, "CsoportTobbesModify_Bevitel");
pm = pm.AddCancelBtn(pm, "BesorolasModCsoportHelper.modifyCancel");
pm = pm.AddOkBtn(pm, "BesorolasModCsoportHelper.modifyTobbesSave");
return PartialView(Constants.General.PopupView, pm);
}
private static List<TabStripItemModel> GetModifyTabs(int tanuloCsoportId)
{
var tabList = new List<TabStripItemModel>();
tabList.Add(new TabStripItemModel()
{
ItemId = "1",
ItemName = OsztalyCsoportResource.Alapadatok,
Area = Constants.Areas.OsztalyCsoport,
Controller = Constants.Controllers.BesorolasModCsoportLista,
Action = nameof(GetModPartialView),
RouteParameters = new Dictionary<string, string>
{
{ "tanuloCsoportId", tanuloCsoportId.ToString() },
{ "PartialViewName", "Edit_AlapadatokTab" }
},
IsActive = true
});
tabList.Add(new TabStripItemModel()
{
ItemId = "2",
ItemName = OsztalyCsoportResource.Zaradekok,
Area = Constants.Areas.OsztalyCsoport,
Controller = Constants.Controllers.BesorolasModCsoportLista,
Action = nameof(GetModPartialView),
RouteParameters = new Dictionary<string, string>
{
{ "tanuloCsoportId", tanuloCsoportId.ToString() },
{ "PartialViewName", "Edit_ZaradekokTab" }
}
});
return tabList;
}
public ActionResult GetModPartialView(string tanuloCsoportId, string partialViewName)
{
var besorolasModCsoportListaApiController = new BesorolasModCsoportListaApiController();
var model = besorolasModCsoportListaApiController.GetTanuloData(int.Parse(tanuloCsoportId));
return PartialView(partialViewName, model);
}
}
}

View file

@ -0,0 +1,102 @@
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.ApiControllers;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class BesorolasModCsoportbolbolKiirtTanulokController : BaseBesorolasController<AktTanevBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new AktTanevBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
public ActionResult OpenModPopUp(int tanuloCsoportId, bool isZaradekTabAktiv = false)
{
var model = new BesorolasModCsoportbolKiirtTanulokModel(tanuloCsoportId);
model.TabList = GetModifyTabs(tanuloCsoportId);
if (isZaradekTabAktiv)
{
model.TabList[0].IsActive = false;
model.TabList.FirstOrDefault(x => x.ItemName.Equals(OsztalyCsoportResource.Zaradekok)).IsActive = true;
}
PopUpModel pm = new PopUpModel(model, "CsoportbolKiirtModify_Bevitel");
pm = pm.AddCancelBtn(pm, "BesorolasModCsoportbolKiirtTanulokHelper.modifyCancel");
pm = pm.AddOkBtn(pm, "BesorolasModCsoportbolKiirtTanulokHelper.modifySave");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenTobbesModPopUp(List<BesorolasTobbesModCsoportbolKiirtTanulokModel> osztalyTanuloiList)
{
BesorolasTobbesModCsoportbolKiirtTanulokModel model = new BesorolasTobbesModCsoportbolKiirtTanulokModel();
foreach (var item in osztalyTanuloiList)
{
model.TanuloCsoportIdArray += item.TanuloCsoportId.ToString() + ",";
model.TanuloNevArray += item.TanuloNev.ToString() + ", ";
}
PopUpModel pm = new PopUpModel(model, "CsoportbolKiirtTobbesModify_Bevitel");
pm = pm.AddCancelBtn(pm, "BesorolasModCsoportbolKiirtTanulokHelper.modifyCancel");
pm = pm.AddOkBtn(pm, "BesorolasModCsoportbolKiirtTanulokHelper.modifyTobbesSave");
return PartialView(Constants.General.PopupView, pm);
}
private static List<TabStripItemModel> GetModifyTabs(int tanuloCsoportId)
{
var tabList = new List<TabStripItemModel>();
tabList.Add(new TabStripItemModel()
{
ItemId = "1",
ItemName = OsztalyCsoportResource.Alapadatok,
Area = Constants.Areas.OsztalyCsoport,
Controller = Constants.Controllers.BesorolasModCsoportbolbolKiirtTanulok,
Action = nameof(GetModPartialView),
RouteParameters = new Dictionary<string, string>
{
{ "tanuloCsoportId", tanuloCsoportId.ToString() },
{ "PartialViewName", "Edit_AlapadatokTab" }
},
IsActive = true
});
tabList.Add(new TabStripItemModel()
{
ItemId = "2",
ItemName = OsztalyCsoportResource.Zaradekok,
Area = Constants.Areas.OsztalyCsoport,
Controller = Constants.Controllers.BesorolasModCsoportbolbolKiirtTanulok,
Action = nameof(GetModPartialView),
RouteParameters = new Dictionary<string, string>
{
{ "tanuloCsoportId", tanuloCsoportId.ToString() },
{ "PartialViewName", "Edit_ZaradekokTab" }
}
});
return tabList;
}
public ActionResult GetModPartialView(string tanuloCsoportId, string partialViewName)
{
var besorolasModCsoportbolbolKiirtTanulokApiController = new BesorolasModCsoportbolbolKiirtTanulokApiController();
var model = besorolasModCsoportbolbolKiirtTanulokApiController.GetTanuloData(int.Parse(tanuloCsoportId));
return PartialView(partialViewName, model);
}
}
}

View file

@ -0,0 +1,17 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.AMImodul.ClaimValue)]
public class BesorolasModFelNemVettTanuloTorleseAmiController : Controller
{
public ActionResult Index()
{
return View("~/Areas/OsztalyCsoport/Views/BesorolasModFelNemVettTanuloTorlese/Index.cshtml");
}
}
}

View file

@ -0,0 +1,17 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class BesorolasModFelNemVettTanuloTorleseController : Controller
{
public ActionResult Index()
{
return View("Index");
}
}
}

View file

@ -0,0 +1,123 @@
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.ApiControllers;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class BesorolasModOsztalyListaController : BaseBesorolasController<AktTanevBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new AktTanevBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
public ActionResult OpenModPopUp(int tanuloCsoportId, bool isZaradekTabAktiv = false)
{
var model = new BesorolasModOsztalyModel(tanuloCsoportId);
model.TabList = GetModifyTabs(tanuloCsoportId);
if (isZaradekTabAktiv)
{
model.TabList[0].IsActive = false;
model.TabList.FirstOrDefault(x => x.ItemName.Equals(OsztalyCsoportResource.Zaradekok)).IsActive = true;
}
PopUpModel pm = new PopUpModel(model, "OsztalyModify_Bevitel");
pm = pm.AddCancelBtn(pm, "BesorolasModOsztalyHelper.modifyCancel");
pm = pm.AddOkBtn(pm, "BesorolasModOsztalyHelper.modifySave");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenTobbesModPopUp(List<BesorolasTobbesModOsztalyModel> osztalyTanuloiList)
{
BesorolasTobbesModOsztalyModel model = new BesorolasTobbesModOsztalyModel();
var (IsIsSzakkepesites, IsNKTSzakkepzeses) = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloSzakKepesitesDetailsByTanulocsoportIdList(osztalyTanuloiList.Select(x => x.TanuloCsoportId));
model.IsSzakkepesites = IsIsSzakkepesites;
model.IsNKTSzakkepzeses = IsNKTSzakkepzeses;
model.IsSzakkepzo = new IntezmenyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetIntezmenyiAdatok().IsSzakkepzo;
foreach (var item in osztalyTanuloiList)
{
model.TanuloCsoportIdArray += item.TanuloCsoportId.ToString() + ",";
model.TanuloNevArray += item.TanuloNev.ToString() + ", ";
}
PopUpModel pm = new PopUpModel(model, "OsztalyTobbesModify_Bevitel");
pm = pm.AddCancelBtn(pm, "BesorolasModOsztalyHelper.modifyCancel");
pm = pm.AddOkBtn(pm, "BesorolasModOsztalyHelper.modifyTobbesSave");
return PartialView(Constants.General.PopupView, pm);
}
private static List<TabStripItemModel> GetModifyTabs(int tanuloCsoportId)
{
var tabList = new List<TabStripItemModel>();
tabList.Add(new TabStripItemModel()
{
ItemId = "1",
ItemName = OsztalyCsoportResource.Alapadatok,
Area = Constants.Areas.OsztalyCsoport,
Controller = Constants.Controllers.BesorolasModOsztalyLista,
Action = nameof(GetModPartialView),
RouteParameters = new Dictionary<string, string>
{
{ "tanuloCsoportId", tanuloCsoportId.ToString() },
{ "PartialViewName", "Edit_AlapadatokTab" }
},
IsActive = true
});
tabList.Add(new TabStripItemModel()
{
ItemId = "2",
ItemName = OsztalyCsoportResource.Mulasztasok,
Area = Constants.Areas.OsztalyCsoport,
Controller = Constants.Controllers.BesorolasModOsztalyLista,
Action = nameof(GetModPartialView),
RouteParameters = new Dictionary<string, string>
{
{ "tanuloCsoportId", tanuloCsoportId.ToString() },
{ "PartialViewName", "Edit_MulasztasokTab" }
}
});
tabList.Add(new TabStripItemModel()
{
ItemId = "3",
ItemName = OsztalyCsoportResource.Zaradekok,
Area = Constants.Areas.OsztalyCsoport,
Controller = Constants.Controllers.BesorolasModOsztalyLista,
Action = nameof(GetModPartialView),
RouteParameters = new Dictionary<string, string>
{
{ "tanuloCsoportId", tanuloCsoportId.ToString() },
{ "PartialViewName", "Edit_ZaradekokTab" }
}
});
return tabList;
}
public ActionResult GetModPartialView(string tanuloCsoportId, string partialViewName)
{
var besorolasModOsztalyListaApiController = new BesorolasModOsztalyListaApiController();
var model = besorolasModOsztalyListaApiController.GetTanuloData(int.Parse(tanuloCsoportId));
return PartialView(partialViewName, model);
}
}
}

View file

@ -0,0 +1,125 @@
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.ApiControllers;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class BesorolasModOsztalybolKiirtTanulokController : BaseBesorolasController<AktTanevBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new AktTanevBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
public ActionResult OpenModPopUp(int tanuloCsoportId, bool isZaradekTabAktiv = false)
{
var model = new BesorolasModOsztalybolKiirtTanulokModel(tanuloCsoportId);
model.TabList = GetModifyTabs(tanuloCsoportId);
if (isZaradekTabAktiv)
{
model.TabList[0].IsActive = false;
model.TabList.FirstOrDefault(x => x.ItemName.Equals(OsztalyCsoportResource.Zaradekok)).IsActive = true;
}
PopUpModel pm = new PopUpModel(model, "OsztalybolKiirtModify_Bevitel");
pm = pm.AddCancelBtn(pm, "BesorolasModOsztalybolKiirtTanulokHelper.modifyCancel");
pm = pm.AddOkBtn(pm, "BesorolasModOsztalybolKiirtTanulokHelper.modifySave");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenTobbesModPopUp(List<BesorolasTobbesModOsztalybolKiirtTanulokModel> osztalyTanuloiList)
{
BesorolasTobbesModOsztalybolKiirtTanulokModel model = new BesorolasTobbesModOsztalybolKiirtTanulokModel();
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var intezmenyJellemzoi = helper.GetOsztalyJellemzoi();
var (IsIsSzakkepesites, IsNKTSzakkepzeses) = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloSzakKepesitesDetailsByTanulocsoportIdList(osztalyTanuloiList.Select(x => x.TanuloCsoportId));
model.IsSzakkepesites = IsIsSzakkepesites;
model.IsNKTSzakkepzeses = IsNKTSzakkepzeses;
model.IsSzakkepzo = new IntezmenyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetIntezmenyiAdatok().IsSzakkepzo;
foreach (var item in osztalyTanuloiList)
{
model.TanuloCsoportIdArray += item.TanuloCsoportId.ToString() + ",";
model.TanuloNevArray += item.TanuloNev.ToString() + ", ";
}
PopUpModel pm = new PopUpModel(model, "OsztalybolKiirtTobbesModify_Bevitel");
pm = pm.AddCancelBtn(pm, "BesorolasModOsztalybolKiirtTanulokHelper.modifyCancel");
pm = pm.AddOkBtn(pm, "BesorolasModOsztalybolKiirtTanulokHelper.modifyTobbesSave");
return PartialView(Constants.General.PopupView, pm);
}
private static List<TabStripItemModel> GetModifyTabs(int tanuloCsoportId)
{
var tabList = new List<TabStripItemModel>();
tabList.Add(new TabStripItemModel()
{
ItemId = "1",
ItemName = OsztalyCsoportResource.Alapadatok,
Area = Constants.Areas.OsztalyCsoport,
Controller = Constants.Controllers.BesorolasModOsztalybolKiirtTanulok,
Action = nameof(GetModPartialView),
RouteParameters = new Dictionary<string, string>
{
{ "tanuloCsoportId", tanuloCsoportId.ToString() },
{ "PartialViewName", "Edit_AlapadatokTab" }
},
IsActive = true
});
tabList.Add(new TabStripItemModel()
{
ItemId = "2",
ItemName = OsztalyCsoportResource.Mulasztasok,
Area = Constants.Areas.OsztalyCsoport,
Controller = Constants.Controllers.BesorolasModOsztalybolKiirtTanulok,
Action = nameof(GetModPartialView),
RouteParameters = new Dictionary<string, string>
{
{ "tanuloCsoportId", tanuloCsoportId.ToString() },
{ "PartialViewName", "Edit_MulasztasokTab" }
}
});
tabList.Add(new TabStripItemModel()
{
ItemId = "3",
ItemName = OsztalyCsoportResource.Zaradekok,
Area = Constants.Areas.OsztalyCsoport,
Controller = Constants.Controllers.BesorolasModOsztalybolKiirtTanulok,
Action = nameof(GetModPartialView),
RouteParameters = new Dictionary<string, string>
{
{ "tanuloCsoportId", tanuloCsoportId.ToString() },
{ "PartialViewName", "Edit_ZaradekokTab" }
}
});
return tabList;
}
public ActionResult GetModPartialView(string tanuloCsoportId, string partialViewName)
{
var besorolasModOsztalybolKiirtTanulokApiController = new BesorolasModOsztalybolKiirtTanulokApiController();
var model = besorolasModOsztalybolKiirtTanulokApiController.GetTanuloData(int.Parse(tanuloCsoportId));
return PartialView(partialViewName, model);
}
}
}

View file

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

View file

@ -0,0 +1,166 @@
using System;
using System.Collections.Generic;
using System.Web.Http;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.BusinessLogic.Security;
using Kreta.Core.FeatureToggle;
using Kreta.Core.FileService;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public class CsoportController : BaseCsoportController
{
public CsoportController(IFeatureContext featureContext, IFileService fileService)
: base(featureContext, fileService)
{
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult Index(string filter)
{
var model = CsoportSearchModel.SetFilterCsoportSearchModel(filter);
model.ControllerName = Constants.Controllers.Csoport;
model.ApiControllerName = Constants.ApiControllers.CsoportApi;
model.SearchFeladatEllatasiHelyId = ClaimData.FelhelySzuro;
return View("Index", model);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult OpenCsoportPropertiesTab(int csoportID, bool fromAdd = false)
{
return OpenCsoportPropertiesTab(csoportID, false, Constants.Controllers.Csoport, Constants.ApiControllers.CsoportApi, fromAdd);
}
public ActionResult OpenCsoportAddPopup(int? csoportId, int? szervezetId)
{
return OpenCsoportAddPopup(csoportId, szervezetId, false);
}
public ActionResult OpenUjEgyeniCsoportAdd(int? id)
{
EgyeniCsoportModel csoportModel = new EgyeniCsoportModel() { CsoportNeve = OsztalyCsoportLogic.GetEgyeniCsoportAlapertelmezettNev() };
PopUpModel popUpModel = new PopUpModel(csoportModel, "EgyeniCsoportAdd_Bevitel");
popUpModel.AddCancelBtn(popUpModel, "CsoportHelper.egyeniCsoportModifyAddCancel");
popUpModel.AddOkBtn(popUpModel, "CsoportHelper.egyeniCsoportMmodifyAddSave");
return PartialView(Constants.General.PopupView, popUpModel);
}
public ActionResult OpenCsoportModifyPopup(int? id, int? szervezetId)
{
return OpenCsoportModifyPopup(id, szervezetId, false, Constants.Controllers.Csoport, Constants.ApiControllers.CsoportApi);
}
public ActionResult OpenModPopup(List<AlapkepzesCsoportModel> csoportLista)
{
return OpenModPopup(csoportLista, false);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetCsoportBaseProperties(int? id)
{
return GetCsoportBaseProperties(id, false);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetCsoportTanuloi(int id)
{
var csmodel = AlapkepzesOsztalyCsoportLogic.GetCsoportBaseProperties(id);
return PartialView("Info_CsoportTanuloi_Tab", csmodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetCsoportFoglalkozasai(int id)
{
var csmodel = AlapkepzesOsztalyCsoportLogic.GetCsoportBaseProperties(id);
return PartialView("Info_CsoportFoglalkozasai_Tab", csmodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetCsoportOrarendiOrai(int id, string apiControllerName)
{
return GetCsoportOrarendiOrai(id, apiControllerName, false);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetCsoportTanmenetei(int id)
{
var csmodel = AlapkepzesOsztalyCsoportLogic.GetCsoportBaseProperties(id);
return PartialView("Info_CsoportTanmenetei_Tab", csmodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetCsoportMegtartottTanorai(int id)
{
var csmodel = AlapkepzesOsztalyCsoportLogic.GetCsoportBaseProperties(id);
return PartialView("Info_CsoportMegtartottTanorai_Tab", csmodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetCsoportErtekelesei(int id)
{
var csmodel = AlapkepzesOsztalyCsoportLogic.GetCsoportBaseProperties(id);
return PartialView("Info_CsoportErtekelesei_Tab", csmodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetCsoportTanuloinakMunkarendje(int id)
{
var csmodel = AlapkepzesOsztalyCsoportLogic.GetCsoportBaseProperties(id);
csmodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = id;
OsztalyCsoportLogic.SetCsoportMunkarendVisibility(csmodel, id);
return PartialView("Info_CsoportMunkarend_Tab", csmodel);
}
public ActionResult GetPartialView(string dataType, int csoportId)
{
var model = OsztalyCsoportLogic.GetModelForPartialViewCsoport(dataType, csoportId);
return PartialView("_TanuloSorolasPartialRowFunction", model);
}
public ActionResult OpenBesorolasModDatum(int tanuloId, int csoportId)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForBesorolasModDatumCsoport(tanuloId, csoportId));
}
public ActionResult OpenKisorolasModDatum(int tanuloId, int csoportId)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasModDatumCsoport(tanuloId, csoportId));
}
public ActionResult OpenKisorolas(int tanuloId, int csoportId)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasCsoport(tanuloId, csoportId));
}
#region Export
public ActionResult ExportCsoportokMindenAdata([FromUri] CsoportSearchModel model)
{
return OsztalyCsoportLogic.ExportCsoportokMindenAdata(null, model);
}
public ActionResult ExportCsoportbaJaroTanulok([FromUri] CsoportSearchModel model)
{
return OsztalyCsoportLogic.ExportCsoportbaJaroTanulok(null, model);
}
#endregion Export
}
}

View file

@ -0,0 +1,60 @@
using System.Collections.Generic;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.FeatureToggle;
using Kreta.Core.FileService;
using Kreta.Enums.ManualEnums;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.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 DualisAdminCsoportController : BaseCsoportController
{
public bool IsDualisKepzesEnabled => new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
public DualisAdminCsoportController(IFeatureContext featureContext, IFileService fileService)
: base(featureContext, fileService)
{
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult OpenCsoportPropertiesTab(int csoportID, bool fromAdd = false)
{
return OpenCsoportPropertiesTab(csoportID, IsDualisKepzesEnabled, Constants.Controllers.DualisAdminCsoport, Constants.ApiControllers.DualisAdminCsoportApi, fromAdd);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetCsoportBaseProperties(int? id)
{
return GetCsoportBaseProperties(id, IsDualisKepzesEnabled);
}
public ActionResult OpenCsoportAddPopup(int? id, int? szervezetId)
{
return OpenCsoportAddPopup(id, szervezetId, IsDualisKepzesEnabled);
}
public ActionResult OpenCsoportModifyPopup(int? id, int? szervezetId)
{
return OpenCsoportModifyPopup(id, szervezetId, IsDualisKepzesEnabled, Constants.Controllers.DualisAdminCsoport, Constants.ApiControllers.DualisAdminCsoportApi);
}
public ActionResult OpenModPopup(List<AlapkepzesCsoportModel> csoportLista)
{
return OpenModPopup(csoportLista, IsDualisKepzesEnabled);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue, KretaClaimPackages.IsSzakiranyuOktatasertFelelos.ClaimValue)]
public ActionResult GetCsoportOrarendiOrai(int id, string apiControllerName)
{
return GetCsoportOrarendiOrai(id, apiControllerName, IsDualisKepzesEnabled);
}
}
}

View file

@ -0,0 +1,267 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses.OsztalyCsoportbaSorolas;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIAktTanevSorolasController : Controller
{
public ActionResult OsztalyBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyBesorolasElsoAlkalomModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = StringResourcesUtil.GetString(4012),
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyBesorolasElsoAlkalomHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIAktivTanevBesorolhatoTanulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIAktTanevSorolasApi", action = "OsztalyBesorolasElsoAlkalom" })
};
return View(model);
}
public ActionResult OsztalyKisorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyKisorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevOsztalyKisorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
ToChangeEvent = "",
ToPlaceholder = "",
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
GetTanulokListToUrl = string.Empty,
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIAktTanevSorolasApi", action = "OsztalyKisorolas" })
};
return View(model);
}
public ActionResult OsztalyTevesBesorolasJavitas()
{
var model = new AktTanevOsztalyTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevOsztalyTevesBesorolasJavitasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyTevesBesorolasJavitasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIAktTanevSorolasApi", action = "OsztalyTevesBesorolasJavitas" })
};
return View(model);
}
public ActionResult OsztalyAtsorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyAtsorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevOsztalyAtsorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyAtsorolasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIAktTanevSorolasApi", action = "OsztalyAtsorolas" })
};
return View(model);
}
public ActionResult OsztalyVisszairatkoztatas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyVisszairatkoztatasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetTanevekKovetkezoNelkul" }),
FromChangeEvent = "AktTanevOsztalyVisszairatkoztatasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiATanevet,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyVisszairatkoztatasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIAktivTanevKiiratkoztatottTanulokList" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIAktTanevSorolasApi", action = "OsztalyVisszairatkoztatas" })
};
return View(model);
}
public ActionResult CsoportAtsorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportAtsorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMICsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportAtsorolasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMICsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportAtsorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIAktTanevSorolasApi", action = "CsoportAtsorolas" })
};
model.Zaradek.IsZaradekKotelezo = false;
return View(model);
}
public ActionResult CsoportBesorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportBesorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevCsoportBesorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMICsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportBesorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyAktivTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIAktTanevSorolasApi", action = "CsoportBesorolas" })
};
return View(model);
}
public ActionResult CsoportKisorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportKisorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMICsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportKisorolasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
ToChangeEvent = "",
ToPlaceholder = "",
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = string.Empty,
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIAktTanevSorolasApi", action = "CsoportKisorolas" })
};
model.Zaradek.IsZaradekKotelezo = false;
return View(model);
}
public ActionResult CsoportTevesBesorolasJavitas()
{
var model = new AktTanevCsoportTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMICsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportTevesBesorolasJavitasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMICsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportTevesBesorolasJavitasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIAktTanevSorolasApi", action = "CsoportTevesBesorolasJavitas" })
};
return View(model);
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIBesorolasModCsoportListaController : BaseBesorolasController<EGYMIBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new EGYMIBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIBesorolasModCsoportbolbolKiirtTanulokController : BaseBesorolasController<EGYMIBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new EGYMIBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIBesorolasModOsztalyListaController : BaseBesorolasController<EGYMIBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new EGYMIBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIBesorolasModOsztalybolKiirtTanulokController : BaseBesorolasController<EGYMIBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new EGYMIBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

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

View file

@ -0,0 +1,266 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.HelperClasses.OsztalyCsoportbaSorolas;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums.ManualEnums;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(TanevEnum.KovTanev, KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIKovTanevSorolasController : Controller
{
public ActionResult CsoportAtleptetes()
{
TanevCO aktData;
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
aktData = helper.GetTanevInfo();
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
TanevCO kovData = tanevHelper.GetTanevInfo();
var model = new KovTanevCsoportAtleptetesModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMICsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "KovTanevCsoportAtleptetesHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMICsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportAtleptetesHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = kovData.KezdoNap.ToString(),
MaxDatum = aktData.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloiCsoportLepteteshez" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIKovTanevSorolasApi", action = "CsoportLeptetes" }),
DropKovTanevAlert = tanevHelper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult CsoportBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevCsoportBesorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
FromChangeEvent = "KovTanevCsoportBesorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMICsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportBesorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIKovTanevSorolasApi", action = "CsoportBesorolas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult CsoportBesorolasTorles()
{
return View(new KovTanevCsoportBesorolasTorlesModel());
}
public ActionResult CsoportTevesBesorolasJavitas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var model = new KovTanevCsoportTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMICsoportokListByEvfolyamForBesorolasokKovTanev" }),
FromChangeEvent = "KovTanevCsoportTevesBesorolasJavitasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMICsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportTevesBesorolasJavitasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIKovTanevSorolasApi", action = "CsoportTevesBesorolasJavitas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
[MvcRoleClaimsAuthorize(false)]
public ActionResult NebuloBesorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevNebuloBesorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = OsztalyCsoportResource.NebulokBesorolasa,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevNebuloBesorolasHelper.changeToOsztaly",
ToPlaceholder = OsztalyCsoportResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetFelvettNebulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIKovTanevSorolasApi", action = "NebuloBesorolas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult OsztalyAtleptetes()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var aktData = helper.GetTanevInfo();
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var kovData = tanevHelper.GetTanevInfo();
var model = new KovTanevOsztalyAtleptetesModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "KovTanevOsztalyAtleptetesHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyAtleptetesHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = kovData.KezdoNap.ToString(),
MaxDatum = aktData.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloiOsztalyLepteteshez" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIKovTanevSorolasApi", action = "OsztalyLeptetes" }),
DropKovTanevAlert = tanevHelper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult OsztalyBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevOsztalyBesorolasElsoAlkalomModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = StringResourcesUtil.GetString(4012),
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyBesorolasElsoAlkalomHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIKovTanevBesorolhatoTanulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIKovTanevSorolasApi", action = "OsztalyBesorolasElsoAlkalom" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult OsztalyBesorolasTorles()
{
return View(new KovTanevOsztalyBesorolasTorlesModel());
}
public ActionResult OsztalyTevesBesorolasJavitas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var model = new KovTanevOsztalyTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
FromChangeEvent = "KovTanevOsztalyTevesBesorolasJavitasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyTevesBesorolasJavitasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIKovTanevSorolasApi", action = "OsztalyTevesBesorolasJavitas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult Visszairatkoztatas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevVisszairatkoztatasModel
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetTanevek" }),
FromChangeEvent = "KovTanevVisszairatkoztatasHelper.changeFromTanev",
FromPlaceholder = BesorolasResource.ValasszaKiATanevet,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEGYMIOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevVisszairatkoztatasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevKiiratkoztatottTanulokList" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "EGYMIKovTanevSorolasApi", action = "OsztalyVisszairatkoztatas" }),
Datum = data.KezdoNap,
JogviszonyKezdete = data.KezdoNap,
MaxDatum = data.KezdoNap.ToString()
};
return View(model);
}
}
}

View file

@ -0,0 +1,308 @@
using System.Collections.Generic;
using System.Web.Http;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Controllers;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.EGYMIModul.ClaimValue)]
public class EGYMIOsztalyController : Controller
{
public ActionResult Index()
{
var model = new OsztalySearchModel();
model.TanevList = new ComboBoxHelperApiController().GetTanevListDropDown();
return View("Index", model);
}
public ActionResult OpenOsztalyModifyPopup(int osztalyId)
{
var omodel = EGYMIOsztalyCsoportLogic.GetOsztalyBasicProperties(osztalyId);
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi(osztalyId: osztalyId);
EGYMIOsztalyCsoportLogic.SetOsztalySzakkepzesesBasicProperties(omodel);
omodel.GimnaziumIdsJSON = JsonConvert.SerializeObject(OsztalyCsoportLogic.GetIdsBySelectedOktatasiNevelesiFeladat((int)OktatasiNevelesiFeladatEnum.gimnazium));
omodel.GimnaziumiEvfolyamTipusId = omodel.GimnaziumiEvfolyamTipusId.HasValue ? omodel.GimnaziumiEvfolyamTipusId : (int)GimnaziumiEvfolyamTipusEnum.Na;
omodel.FeladatellatasiHelyIsSzakkepzeses = OsztalyCsoportLogic.GetFeladatellatasiHelyIsSzakkepzesesDictionary();
omodel.FeladatellatasiHelyIsNkt = OsztalyCsoportLogic.GetFeladatellatasiHelyIsNktDictionary();
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.OsztalyId = osztalyId;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = osztalyId;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsOsztaly = true;
AlapkepzesOsztalyCsoportLogic.SetOsztalyKepzesiJellemzokVisibility(omodel, osztalyId);
OsztalyCsoportLogic.SetOsztalyMunkarendVisibility(omodel, osztalyId);
omodel.KepzesList = OsztalyCsoportLogic.GetKepzesList();
omodel.IsNKTSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses];
omodel.TabList = GetModifytabItems(omodel);
var pm = new PopUpModel(omodel, "OsztalyModify_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.cancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.save");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenOsztalyAddPopup()
{
PopUpModel pm;
var omodel = EGYMIOsztalyCsoportLogic.GetOsztalyBasicProperties();
EGYMIOsztalyCsoportLogic.SetOsztalySzakkepzesesBasicProperties(omodel);
//oModel.EvfolyamList = GetEvfolyamList(null/*oModel.FeladatEllatasiHelyid*/);
omodel.FeladatellatasiHelyIsSzakkepzeses = OsztalyCsoportLogic.GetFeladatellatasiHelyIsSzakkepzesesDictionary();
omodel.GimnaziumIdsJSON = JsonConvert.SerializeObject(OsztalyCsoportLogic.GetIdsBySelectedOktatasiNevelesiFeladat((int)OktatasiNevelesiFeladatEnum.gimnazium));
omodel.KepzesiForma = (int)TanterviJellegEnum.nappali_rendszeru_iskolai_oktatas;
omodel.KepzesList = OsztalyCsoportLogic.GetKepzesList();
omodel.IsFeladatellatasiHelySzures = true;
omodel.FeladatellatasiHelyIsNkt = OsztalyCsoportLogic.GetFeladatellatasiHelyIsNktDictionary();
pm = new PopUpModel(omodel, "OsztalyAdd_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.cancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.save");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenDeleteOsztalyPopup(List<int> osztalyIdLista)
{
var pm = new PopUpModel(osztalyIdLista, "OsztalyDelete");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.deleteCancel");
pm = pm.AddBtn(pm, "btnSave", OsztalyCsoportResource.TorlesACsoportjaivalEgyutt, "OsztalyHelper.deleteOsztalyCsoportokkal");
pm = pm.AddBtn(pm, "btnSaveWithout", OsztalyCsoportResource.TorlesCsakAzOsztaly, "OsztalyHelper.deleteOsztalyCsoportokNelkul");
return PartialView(Constants.General.PopupView, pm);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult GetOsztalyBaseProperties(int id)
{
var omodel = EGYMIOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi(osztalyId: id);
AlapkepzesOsztalyCsoportLogic.SetOsztalyKepzesiJellemzokVisibility(omodel, id);
omodel.IsSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsSzakkepzeses];
omodel.IsGimnazium = helper.IsGimnazium(omodel.ID, (int)OktatasiNevelesiFeladatEnum.gimnazium);
return PartialView("Info_Alapadatok_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult GetOsztalyTanuloi(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_Osztalytanuloi_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult GetOsztalyBontascsoportjai(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalybontasCsoportjai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult GetOsztalyFoglalkozasai(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalyFoglalkozasai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult GetOsztalyOrarendiOrai(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalyOrarendiOrai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult GetOsztalyTanmenetei(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalyTanmenetei_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult GetOsztalyErtekelesei(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalyErtekelesei_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult GetOsztalyIgazolasai(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalyIgazolasai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult GetOsztalyTanuloinakKepzesiJellemzoi(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.OsztalyId = id;
AlapkepzesOsztalyCsoportLogic.SetOsztalyKepzesiJellemzokVisibility(omodel, id);
return PartialView("Info_OsztalyKepzesiJellemzok_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult GetOsztalyTanuloinakMunkarendje(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = id;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsOsztaly = true;
OsztalyCsoportLogic.SetOsztalyMunkarendVisibility(omodel, id);
return PartialView("Info_OsztalyMunkarend_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.EGYMIModul.ClaimValue)]
public ActionResult OpenOsztalyPropertiesTab(int osztalyID, bool fromAdd = false)
{
var omodel = new AlapkepzesOsztalyModel() { ID = osztalyID };
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi(osztalyId: osztalyID);
omodel.IsNKTSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses];
omodel.TabList = GetTabItems(omodel);
PopUpModel pm = new PopUpModel(omodel, "OsztalyProperties_Info");
pm = pm.AddCancelBtn(pm, fromAdd ? "OsztalyHelper.cancel" : "OsztalyHelper.propertiesCancel");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenModPopUp(List<ModOsztalyModel> osztalyList)
{
var model = OsztalyCsoportLogic.SetModPopUpModel(osztalyList);
model.TabList = GetGroupModifytabItems(model);
model.GimnaziumIdsJSON = JsonConvert.SerializeObject(OsztalyCsoportLogic.GetIdsBySelectedOktatasiNevelesiFeladat((int)OktatasiNevelesiFeladatEnum.gimnazium));
model.FeladatellatasiHelyIsSzakkepzeses = OsztalyCsoportLogic.GetFeladatellatasiHelyIsSzakkepzesesDictionary();
model.FeladatellatasiHelyIsNkt = OsztalyCsoportLogic.GetFeladatellatasiHelyIsNktDictionary();
PopUpModel pm = new PopUpModel(model, "OsztalyGroupModify_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.modCancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.confirmCsopModWindow");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult GetPartialView(string dataType, int osztalyid)
{
return PartialView("_TanuloSorolasPartialRowFunction", OsztalyCsoportLogic.GetModelForPartialViewOsztaly(dataType, osztalyid));
}
public ActionResult OpenBesorolasModDatum(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForBesorolasModDatumOsztaly(tanuloid, osztalyid));
}
public ActionResult OpenKisorolasModDatum(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasModDatumOsztaly(tanuloid, osztalyid));
}
public ActionResult OpenKisorolas(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasOsztaly(tanuloid, osztalyid));
}
public List<TabStripItemModel> GetTabItems(AlapkepzesOsztalyModel model)
{
const string OsztalyController = Constants.Controllers.EGYMIOsztaly;
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = StringResourcesUtil.GetString(161), Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyBaseProperties", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = StringResourcesUtil.GetString(332)/*Tanulók*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanuloi", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "3", ItemName = StringResourcesUtil.GetString(472)/*Csoportok*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyBontascsoportjai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "4", ItemName = StringResourcesUtil.GetString(164)/*Foglalkozások*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyFoglalkozasai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
if (!ClaimData.IsSzirIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = "5", ItemName = StringResourcesUtil.GetString(165)/*Órarendi órák*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyOrarendiOrai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "6", ItemName = StringResourcesUtil.GetString(166)/*Tanmenetek*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanmenetei", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "7", ItemName = StringResourcesUtil.GetString(1701)/*Értékelések*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyErtekelesei", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "8", ItemName = StringResourcesUtil.GetString(658)/*Igazolások*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyIgazolasai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
}
if (ClaimData.IsSelectedTanev21_22OrLater && model.IsNKTSzakkepzeses)
{
items.Add(new TabStripItemModel { ItemId = ClaimData.IsSzirIntezmeny ? "5" : "9", ItemName = CommonResource.KepzesiJellemzok, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanuloinakKepzesiJellemzoi", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
}
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = ClaimData.IsSzirIntezmeny ? "6" : "10", ItemName = CommonResource.Munkarend, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanuloinakMunkarendje", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
}
return items;
}
public List<TabStripItemModel> GetModifytabItems(AlapkepzesOsztalyModel model)
{
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = CommonResource.Alapadatok, PartialViewName = "OsztalyModify_Alapadatok_Tab", Model = model, IsActive = true });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = CommonResource.AzOsztalybaJaroTanulokListaja, PartialViewName = "OsztalyModify_Tanulok_Tab", Model = model });
items.Add(new TabStripItemModel { ItemId = "3", ItemName = CommonResource.NaplosorszamEsTorzslapszamBeallitasai, PartialViewName = "OsztalyModify_NaplosorszamEsTorzslapszamBeallitasai_Tab", Model = model });
if (ClaimData.IsSelectedTanev21_22OrLater && model.IsNKTSzakkepzeses)
{
items.Add(new TabStripItemModel { ItemId = "OsztalyKepzesiJellemzok_TabStripId", ItemName = CommonResource.KepzesiJellemzok, PartialViewName = "Info_OsztalyKepzesiJellemzok_Tab", Model = model });
}
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = "OsztalyMunkarend_TabStripId", ItemName = CommonResource.Munkarend, PartialViewName = "Info_OsztalyMunkarend_Tab", Model = model });
}
return items;
}
public List<TabStripItemModel> GetGroupModifytabItems(ModOsztalyModel model)
{
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = CommonResource.Alapadatok, PartialViewName = "OsztalyGroupModify_Alapadatok_Tab", Model = model, IsActive = true });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = CommonResource.AutomatikusSorszamozas, PartialViewName = "OsztalyGroupModify_NaplosorszamEsTorzslapszamBeallitasai_Tab", Model = model });
return items;
}
#region Export
public ActionResult ExportEvfolyamAktualisLetszamadatai([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportEvfolyamAktualisLetszamadataiForOsztaly(OktNevelesiKategoriaEnum.EGYMI, data);
}
public ActionResult ExportOsztalyokMindenAdata([FromUri] OsztalySearchModel model)
{
return OsztalyCsoportLogic.ExportOsztalyokMindenAdata(OktNevelesiKategoriaEnum.EGYMI, model);
}
public ActionResult ExportOsztalybaJaroTanulok([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportOsztalybaJaroTanulok(OktNevelesiKategoriaEnum.EGYMI, data);
}
public ActionResult ExportOsztalyokAktualisLetszamadatai([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportOsztalyokAktualisLetszamadatai(OktNevelesiKategoriaEnum.EGYMI, data);
}
#endregion
}
}

View file

@ -0,0 +1,264 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses.OsztalyCsoportbaSorolas;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumAktTanevSorolasController : Controller
{
public ActionResult OsztalyBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyBesorolasElsoAlkalomModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = StringResourcesUtil.GetString(4012),
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyBesorolasElsoAlkalomHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumAktivTanevBesorolhatoTanulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumAktTanevSorolasApi", action = "OsztalyBesorolasElsoAlkalom" })
};
return View(model);
}
public ActionResult OsztalyKisorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyKisorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevOsztalyKisorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
ToChangeEvent = "",
ToPlaceholder = "",
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
GetTanulokListToUrl = string.Empty,
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumAktTanevSorolasApi", action = "OsztalyKisorolas" })
};
return View(model);
}
public ActionResult OsztalyTevesBesorolasJavitas()
{
var model = new AktTanevOsztalyTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevOsztalyTevesBesorolasJavitasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyTevesBesorolasJavitasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumAktTanevSorolasApi", action = "OsztalyTevesBesorolasJavitas" })
};
return View(model);
}
public ActionResult OsztalyAtsorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyAtsorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevOsztalyAtsorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyAtsorolasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumAktTanevSorolasApi", action = "OsztalyAtsorolas" })
};
return View(model);
}
public ActionResult OsztalyVisszairatkoztatas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevOsztalyVisszairatkoztatasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetTanevekKovetkezoNelkul" }),
FromChangeEvent = "AktTanevOsztalyVisszairatkoztatasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiATanevet,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
ToChangeEvent = "AktTanevOsztalyVisszairatkoztatasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumAktivTanevKiiratkoztatottTanulokList" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumAktTanevSorolasApi", action = "OsztalyVisszairatkoztatas" })
};
return View(model);
}
public ActionResult CsoportAtsorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportAtsorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportAtsorolasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumCsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportAtsorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumAktTanevSorolasApi", action = "CsoportAtsorolas" })
};
model.Zaradek.IsZaradekKotelezo = false;
return View(model);
}
public ActionResult CsoportBesorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportBesorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "AktTanevCsoportBesorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumCsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportBesorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyAktivTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumAktTanevSorolasApi", action = "CsoportBesorolas" })
};
return View(model);
}
public ActionResult CsoportKisorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new AktTanevCsoportKisorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportKisorolasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
ToChangeEvent = "",
ToPlaceholder = "",
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
TanevElsoNapja = data.KezdoNap.Date,
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = string.Empty,
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumAktTanevSorolasApi", action = "CsoportKisorolas" })
};
model.Zaradek.IsZaradekKotelezo = false;
return View(model);
}
public ActionResult CsoportTevesBesorolasJavitas()
{
var model = new AktTanevCsoportTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "AktTanevCsoportTevesBesorolasJavitasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumCsoportokListByEvfolyamForBesorolasokAktTanev" }),
ToChangeEvent = "AktTanevCsoportTevesBesorolasJavitasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumAktTanevSorolasApi", action = "CsoportTevesBesorolasJavitas" })
};
return View(model);
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumBesorolasModCsoportListaController : BaseBesorolasController<KollegiumBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new KollegiumBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumBesorolasModCsoportbolbolKiirtTanulokController : BaseBesorolasController<KollegiumBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new KollegiumBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumBesorolasModOsztalyListaController : BaseBesorolasController<KollegiumBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new KollegiumBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

@ -0,0 +1,18 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumBesorolasModOsztalybolKiirtTanulokController : BaseBesorolasController<KollegiumBesorolasSearchModel>
{
public ActionResult Index()
{
return View("Index", new KollegiumBesorolasSearchModel(RouteData.Values["controller"].ToString()));
}
}
}

View file

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

View file

@ -0,0 +1,270 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.HelperClasses.OsztalyCsoportbaSorolas;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums.ManualEnums;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(TanevEnum.KovTanev, KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumKovTanevSorolasController : Controller
{
public ActionResult CsoportAtleptetes()
{
TanevCO aktData;
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
aktData = helper.GetTanevInfo();
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
TanevCO kovData = tanevHelper.GetTanevInfo();
var model = new KovTanevCsoportAtleptetesModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "KovTanevCsoportAtleptetesHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumCsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportAtleptetesHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = kovData.KezdoNap.ToString(),
MaxDatum = aktData.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloiCsoportLepteteshez" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumKovTanevSorolasApi", action = "CsoportLeptetes" }),
DropKovTanevAlert = tanevHelper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult CsoportBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevCsoportBesorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
FromChangeEvent = "KovTanevCsoportBesorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumCsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportBesorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumKovTanevSorolasApi", action = "CsoportBesorolas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult CsoportBesorolasTorles()
{
return View(new KovTanevCsoportBesorolasTorlesModel());
}
public ActionResult CsoportTevesBesorolasJavitas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var model = new KovTanevCsoportTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumCsoportokListByEvfolyamForBesorolasokKovTanev" }),
FromChangeEvent = "KovTanevCsoportTevesBesorolasJavitasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumCsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportTevesBesorolasJavitasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumKovTanevSorolasApi", action = "CsoportTevesBesorolasJavitas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
[MvcRoleClaimsAuthorize(false)]
public ActionResult NebuloBesorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevNebuloBesorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = OsztalyCsoportResource.NebulokBesorolasa,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevNebuloBesorolasHelper.changeToOsztaly",
ToPlaceholder = OsztalyCsoportResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetFelvettNebulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumKovTanevSorolasApi", action = "NebuloBesorolas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult OsztalyAtleptetes()
{
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var aktData = tanevHelper.GetTanevInfo();
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var kovData = helper.GetTanevInfo();
var model = new KovTanevOsztalyAtleptetesModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokWOAllClass" }),
FromChangeEvent = "KovTanevOsztalyAtleptetesHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyAtleptetesHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = kovData.KezdoNap.ToString(),
MaxDatum = aktData.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloiOsztalyLepteteshez" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumKovTanevSorolasApi", action = "OsztalyLeptetes" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult OsztalyBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevOsztalyBesorolasElsoAlkalomModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = StringResourcesUtil.GetString(4012),
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyBesorolasElsoAlkalomHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumKovTanevBesorolhatoTanulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumKovTanevSorolasApi", action = "OsztalyBesorolasElsoAlkalom" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult OsztalyBesorolasTorles()
{
return View(new KovTanevOsztalyBesorolasTorlesModel());
}
public ActionResult OsztalyTevesBesorolasJavitas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var model = new KovTanevOsztalyTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
FromChangeEvent = "KovTanevOsztalyTevesBesorolasJavitasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyTevesBesorolasJavitasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumKovTanevSorolasApi", action = "OsztalyTevesBesorolasJavitas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult Visszairatkoztatas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevVisszairatkoztatasModel
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetTanevek" }),
FromChangeEvent = "KovTanevVisszairatkoztatasHelper.changeFromTanev",
FromPlaceholder = BesorolasResource.ValasszaKiATanevet,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKollegiumOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevVisszairatkoztatasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevKiiratkoztatottTanulokList" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KollegiumKovTanevSorolasApi", action = "OsztalyVisszairatkoztatas" }),
Datum = data.KezdoNap,
JogviszonyKezdete = data.KezdoNap,
MaxDatum = data.KezdoNap.ToString()
};
return View(model);
}
}
}

View file

@ -0,0 +1,291 @@
using System.Collections.Generic;
using System.Web.Http;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Controllers;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.KollegiumModul.ClaimValue)]
public class KollegiumOsztalyController : Controller
{
public ActionResult Index()
{
var model = new OsztalySearchModel();
model.TanevList = new ComboBoxHelperApiController().GetTanevListDropDown();
return View("Index", model);
}
public ActionResult OpenOsztalyModifyPopup(int osztalyId)
{
var omodel = KollegiumOsztalyCsoportLogic.GetOsztalyBasicProperties(osztalyId);
KollegiumOsztalyCsoportLogic.SetOsztalySzakkepzesesBasicProperties(omodel);
omodel.GimnaziumIdsJSON = JsonConvert.SerializeObject(OsztalyCsoportLogic.GetIdsBySelectedOktatasiNevelesiFeladat((int)OktatasiNevelesiFeladatEnum.gimnazium));
omodel.GimnaziumiEvfolyamTipusId = omodel.GimnaziumiEvfolyamTipusId.HasValue ? omodel.GimnaziumiEvfolyamTipusId : (int)GimnaziumiEvfolyamTipusEnum.Na;
omodel.FeladatellatasiHelyIsSzakkepzeses = OsztalyCsoportLogic.GetFeladatellatasiHelyIsSzakkepzesesDictionary();
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.OsztalyId = osztalyId;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = osztalyId;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsOsztaly = true;
AlapkepzesOsztalyCsoportLogic.SetOsztalyKepzesiJellemzokVisibility(omodel, osztalyId);
OsztalyCsoportLogic.SetOsztalyMunkarendVisibility(omodel, osztalyId);
omodel.KepzesList = OsztalyCsoportLogic.GetKepzesList();
omodel.TabList = GetModifytabItems(omodel);
var pm = new PopUpModel(omodel, "OsztalyModify_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.cancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.save");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenOsztalyAddPopup()
{
PopUpModel pm;
var omodel = KollegiumOsztalyCsoportLogic.GetOsztalyBasicProperties();
KollegiumOsztalyCsoportLogic.SetOsztalySzakkepzesesBasicProperties(omodel);
//oModel.EvfolyamList = GetEvfolyamList(null/*oModel.FeladatEllatasiHelyid*/);
omodel.FeladatellatasiHelyIsSzakkepzeses = OsztalyCsoportLogic.GetFeladatellatasiHelyIsSzakkepzesesDictionary();
omodel.GimnaziumIdsJSON = JsonConvert.SerializeObject(OsztalyCsoportLogic.GetIdsBySelectedOktatasiNevelesiFeladat((int)OktatasiNevelesiFeladatEnum.gimnazium));
omodel.KepzesiForma = (int)TanterviJellegEnum.nappali_rendszeru_iskolai_oktatas;
omodel.KepzesList = OsztalyCsoportLogic.GetKepzesList();
omodel.IsFeladatellatasiHelySzures = true;
pm = new PopUpModel(omodel, "OsztalyAdd_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.cancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.save");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenDeleteOsztalyPopup(List<int> osztalyIdLista)
{
var pm = new PopUpModel(osztalyIdLista, "OsztalyDelete");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.deleteCancel");
pm = pm.AddBtn(pm, "btnSave", OsztalyCsoportResource.TorlesACsoportjaivalEgyutt, "OsztalyHelper.deleteOsztalyCsoportokkal");
pm = pm.AddBtn(pm, "btnSaveWithout", OsztalyCsoportResource.TorlesCsakAzOsztaly, "OsztalyHelper.deleteOsztalyCsoportokNelkul");
return PartialView(Constants.General.PopupView, pm);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult GetOsztalyBaseProperties(int id)
{
var omodel = KollegiumOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi(osztalyId: id);
omodel.IsSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsSzakkepzeses];
omodel.IsGimnazium = helper.IsGimnazium(omodel.ID, (int)OktatasiNevelesiFeladatEnum.gimnazium);
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.OsztalyId = id;
AlapkepzesOsztalyCsoportLogic.SetOsztalyKepzesiJellemzokVisibility(omodel, id);
return PartialView("Info_Alapadatok_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult GetOsztalyTanuloi(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_Osztalytanuloi_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult GetOsztalyBontascsoportjai(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalybontasCsoportjai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult GetOsztalyFoglalkozasai(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalyFoglalkozasai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult GetOsztalyOrarendiOrai(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalyOrarendiOrai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult GetOsztalyTanmenetei(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalyTanmenetei_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult GetOsztalyErtekelesei(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalyErtekelesei_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult GetOsztalyIgazolasai(int id)
{
var omodel = new AlapkepzesOsztalyModel() { ID = id };
return PartialView("Info_OsztalyIgazolasai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult GetOsztalyTanuloinakKepzesiJellemzoi(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.OsztalyId = id;
AlapkepzesOsztalyCsoportLogic.SetOsztalyKepzesiJellemzokVisibility(omodel, id);
return PartialView("Info_OsztalyKepzesiJellemzok_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult GetOsztalyTanuloinakMunkarendje(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = id;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsOsztaly = true;
OsztalyCsoportLogic.SetOsztalyMunkarendVisibility(omodel, id);
return PartialView("Info_OsztalyMunkarend_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.KollegiumModul.ClaimValue)]
public ActionResult OpenOsztalyPropertiesTab(int osztalyID, bool fromAdd = false)
{
var omodel = new AlapkepzesOsztalyModel() { ID = osztalyID };
omodel.TabList = GetTabItems(omodel);
PopUpModel pm = new PopUpModel(omodel, "OsztalyProperties_Info");
pm = pm.AddCancelBtn(pm, fromAdd ? "OsztalyHelper.cancel" : "OsztalyHelper.propertiesCancel");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenModPopUp(List<ModOsztalyModel> osztalyList)
{
var model = OsztalyCsoportLogic.SetModPopUpModel(osztalyList);
model.TabList = GetGroupModifytabItems(model);
model.GimnaziumIdsJSON = JsonConvert.SerializeObject(OsztalyCsoportLogic.GetIdsBySelectedOktatasiNevelesiFeladat((int)OktatasiNevelesiFeladatEnum.gimnazium));
model.FeladatellatasiHelyIsSzakkepzeses = OsztalyCsoportLogic.GetFeladatellatasiHelyIsSzakkepzesesDictionary();
PopUpModel pm = new PopUpModel(model, "OsztalyGroupModify_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.modCancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.confirmCsopModWindow");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult GetPartialView(string dataType, int osztalyid)
{
return PartialView("_TanuloSorolasPartialRowFunction", OsztalyCsoportLogic.GetModelForPartialViewOsztaly(dataType, osztalyid));
}
public ActionResult OpenBesorolasModDatum(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForBesorolasModDatumOsztaly(tanuloid, osztalyid));
}
public ActionResult OpenKisorolasModDatum(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasModDatumOsztaly(tanuloid, osztalyid));
}
public ActionResult OpenKisorolas(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasOsztaly(tanuloid, osztalyid));
}
public List<TabStripItemModel> GetTabItems(AlapkepzesOsztalyModel model)
{
const string OsztalyController = Constants.Controllers.KollegiumOsztaly;
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = StringResourcesUtil.GetString(161), Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyBaseProperties", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = StringResourcesUtil.GetString(332)/*Tanulók*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanuloi", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "3", ItemName = StringResourcesUtil.GetString(472)/*Csoportok*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyBontascsoportjai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "4", ItemName = StringResourcesUtil.GetString(164)/*Foglalkozások*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyFoglalkozasai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
if (!ClaimData.IsSzirIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = "5", ItemName = StringResourcesUtil.GetString(165)/*Órarendi órák*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyOrarendiOrai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "6", ItemName = StringResourcesUtil.GetString(166)/*Tanmenetek*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanmenetei", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "7", ItemName = StringResourcesUtil.GetString(1701)/*Értékelések*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyErtekelesei", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "8", ItemName = StringResourcesUtil.GetString(658)/*Igazolások*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyIgazolasai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
}
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = ClaimData.IsSzirIntezmeny ? "5" : "9", ItemName = CommonResource.Munkarend, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanuloinakMunkarendje", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
}
return items;
}
public List<TabStripItemModel> GetModifytabItems(AlapkepzesOsztalyModel model)
{
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = CommonResource.Alapadatok, PartialViewName = "OsztalyModify_Alapadatok_Tab", Model = model, IsActive = true });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = CommonResource.AzOsztalybaJaroTanulokListaja, PartialViewName = "OsztalyModify_Tanulok_Tab", Model = model });
items.Add(new TabStripItemModel { ItemId = "3", ItemName = CommonResource.NaplosorszamEsTorzslapszamBeallitasai, PartialViewName = "OsztalyModify_NaplosorszamEsTorzslapszamBeallitasai_Tab", Model = model });
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = "4", ItemName = CommonResource.Munkarend, PartialViewName = "Info_OsztalyMunkarend_Tab", Model = model });
}
return items;
}
public List<TabStripItemModel> GetGroupModifytabItems(ModOsztalyModel model)
{
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = CommonResource.Alapadatok, PartialViewName = "OsztalyGroupModify_Alapadatok_Tab", Model = model, IsActive = true });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = CommonResource.AutomatikusSorszamozas, PartialViewName = "OsztalyGroupModify_NaplosorszamEsTorzslapszamBeallitasai_Tab", Model = model });
return items;
}
#region Export
public ActionResult ExportEvfolyamAktualisLetszamadatai([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportEvfolyamAktualisLetszamadataiForOsztaly(OktNevelesiKategoriaEnum.Kollegium, data);
}
public ActionResult ExportOsztalyokMindenAdata([FromUri] OsztalySearchModel model)
{
return OsztalyCsoportLogic.ExportOsztalyokMindenAdata(OktNevelesiKategoriaEnum.Kollegium, model);
}
public ActionResult ExportOsztalybaJaroTanulok([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportOsztalybaJaroTanulok(OktNevelesiKategoriaEnum.Kollegium, data);
}
public ActionResult ExportOsztalyokAktualisLetszamadatai([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportOsztalyokAktualisLetszamadatai(OktNevelesiKategoriaEnum.Kollegium, data);
}
#endregion
}
}

View file

@ -0,0 +1,270 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.HelperClasses.OsztalyCsoportbaSorolas;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums.ManualEnums;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(TanevEnum.KovTanev, KretaClaimPackages.Adminisztrator.ClaimValue)]
public class KovTanevSorolasController : Controller
{
public ActionResult CsoportAtleptetes()
{
TanevCO aktData;
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
aktData = helper.GetTanevInfo();
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
TanevCO kovData = tanevHelper.GetTanevInfo();
var model = new KovTanevCsoportAtleptetesModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportokListByEvfolyamForBesorolasokAktTanev" }),
FromChangeEvent = "KovTanevCsoportAtleptetesHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportAtleptetesHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = kovData.KezdoNap.ToString(),
MaxDatum = aktData.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevCsoportTanuloiCsoportLepteteshez" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KovTanevSorolasApi", action = "CsoportLeptetes" }),
DropKovTanevAlert = tanevHelper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult CsoportBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevCsoportBesorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
FromChangeEvent = "KovTanevCsoportBesorolasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportBesorolasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KovTanevSorolasApi", action = "CsoportBesorolas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult CsoportBesorolasTorles()
{
return View(new KovTanevCsoportBesorolasTorlesModel());
}
public ActionResult CsoportTevesBesorolasJavitas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var model = new KovTanevCsoportTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportokListByEvfolyamForBesorolasokKovTanev" }),
FromChangeEvent = "KovTanevCsoportTevesBesorolasJavitasHelper.changeFromCsoport",
FromPlaceholder = BesorolasResource.ValasszaKiAForrascsoportot,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportokListByEvfolyamForBesorolasokKovTanev" }),
ToChangeEvent = "KovTanevCsoportTevesBesorolasJavitasHelper.changeToCsoport",
ToPlaceholder = BesorolasResource.ValasszaKiACelcsoportot,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevCsoportTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KovTanevSorolasApi", action = "CsoportTevesBesorolasJavitas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
[MvcRoleClaimsAuthorize(false)]
public ActionResult NebuloBesorolas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevNebuloBesorolasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = OsztalyCsoportResource.NebulokBesorolasa,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevNebuloBesorolasHelper.changeToOsztaly",
ToPlaceholder = OsztalyCsoportResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetFelvettNebulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KovTanevSorolasApi", action = "NebuloBesorolas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult OsztalyAtleptetes()
{
TanevCO aktData;
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
aktData = helper.GetTanevInfo();
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
TanevCO kovData = tanevHelper.GetTanevInfo();
var model = new KovTanevOsztalyAtleptetesModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokWOAllClass", osztalybaNemSoroltTanulok = true }),
FromChangeEvent = "KovTanevOsztalyAtleptetesHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyAtleptetesHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), true, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = kovData.KezdoNap.ToString(),
MaxDatum = aktData.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetAktivTanevOsztalyTanuloiOsztalyLepteteshez" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KovTanevSorolasApi", action = "OsztalyLeptetes" }),
DropKovTanevAlert = tanevHelper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult OsztalyBesorolasElsoAlkalom()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevOsztalyBesorolasElsoAlkalomModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetEmptyData" }),
FromChangeEvent = "",
FromPlaceholder = StringResourcesUtil.GetString(4012),
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyBesorolasElsoAlkalomHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
MinDatum = data.KezdoNap.ToString(),
MaxDatum = data.UtolsoNap.ToString(),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevTanevNemBesoroltTanulok" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KovTanevSorolasApi", action = "OsztalyBesorolasElsoAlkalom" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult OsztalyBesorolasTorles()
{
return View(new KovTanevOsztalyBesorolasTorlesModel());
}
public ActionResult OsztalyTevesBesorolasJavitas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var model = new KovTanevOsztalyTevesBesorolasJavitasModel()
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
FromChangeEvent = "KovTanevOsztalyTevesBesorolasJavitasHelper.changeFromOsztaly",
FromPlaceholder = BesorolasResource.ValasszaKiAForrasosztalyt,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevOsztalyTevesBesorolasJavitasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KovTanevSorolasApi", action = "OsztalyTevesBesorolasJavitas" }),
DropKovTanevAlert = helper.GetKovetkezoTanev().Key <= 0
};
return View(model);
}
public ActionResult Visszairatkoztatas()
{
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var data = helper.GetTanevInfo();
var model = new KovTanevVisszairatkoztatasModel
{
FromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetTanevek" }),
FromChangeEvent = "KovTanevVisszairatkoztatasHelper.changeFromTanev",
FromPlaceholder = BesorolasResource.ValasszaKiATanevet,
ToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyListByEvfolyamForBesorolasokKovTanevWOAllClass" }),
ToChangeEvent = "KovTanevVisszairatkoztatasHelper.changeToOsztaly",
ToPlaceholder = BesorolasResource.ValasszaKiACelosztalyt,
Zaradek = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevZaradekList" })),
GetTanulokListFromUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevKiiratkoztatottTanulokList" }),
GetTanulokListToUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKovTanevOsztalyTanuloi" }),
SaveUrl = Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KovTanevSorolasApi", action = "OsztalyVisszairatkoztatas" }),
Datum = data.KezdoNap,
JogviszonyKezdete = data.KezdoNap,
MaxDatum = data.KezdoNap.ToString()
};
return View(model);
}
}
}

View file

@ -0,0 +1,82 @@
using System.Collections.Generic;
using System.Web.Mvc;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums.ManualEnums;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class OraSorszamozasHalmazController : Controller
{
public ActionResult Index()
{
var model = new OraSorszamozasHalmazSearchModel();
return View("Index", model);
}
public ActionResult GetDetailGrid(int id)
{
return PartialView("DetailGrid", id);
}
public ActionResult OpenEditPopUp(int? id)
{
var model = new OraSorszamozasHalmazModel();
if (id.HasValue)
{
var helper = new OraSorszamozasHalmazHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var co = helper.Get(id.Value);
model = OraSorszamozasHalmazModel.ConvertCoToModel(co);
}
model.TipusList = GetTipusList(model.Tipus);
PopUpModel pm = new PopUpModel(model, "Edit");
pm = pm.AddCancelBtn(pm, "OraSorszamozasHalmazHelper.editCancel");
pm = pm.AddOkBtn(pm, "OraSorszamozasHalmazHelper.validate");
return PartialView(Constants.General.PopupView, pm);
}
public bool OsszerendelesExists(int osztalyCsoportId, int tantargyId, int halmazId, List<int> deletedOsszerendeslIds)
{
deletedOsszerendeslIds = deletedOsszerendeslIds ?? new List<int>();
return new OraSorszamozasHalmazHelper(ConnectionTypeExtensions.GetSessionConnectionType()).OsszerendelesExists(osztalyCsoportId, tantargyId, halmazId, deletedOsszerendeslIds);
}
public string GetEvesOraszamForTantargyAndOsztaly(int osztalyCsoportId, int tantargyId)
{
var sorszamok = new OraSorszamozasHalmazHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetEvesOraszamForTantargyAndOsztaly(ClaimData.IntezmenyId, osztalyCsoportId, tantargyId);
return string.Join(", ", sorszamok);
}
private List<SelectListItem> GetTipusList(int tipus)
{
var result = EnumExtensions.EnumToDictionary<SorszamozasKezdoErtekenekBeallitasa>(ClaimData.SelectedTanevID.Value, false, true).ToSelectListItemList();
foreach (var r in result)
{
if (r.Value == tipus.ToString())
{
r.Selected = true;
break;
}
}
return result;
}
}
}

View file

@ -0,0 +1,306 @@
using System.Collections.Generic;
using System.Web.Http;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Controllers;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.AMImodul.ClaimValue)]
public class OsztalyAmiController : Controller
{
public ActionResult Index()
{
var model = new OsztalySearchModel();
model.TanevList = new ComboBoxHelperApiController().GetTanevListDropDown();
return View("Index", model);
}
public ActionResult OpenOsztalyModifyPopup(int osztalyId)
{
var omodel = AmiOsztalyCsoportLogic.GetOsztalyBasicProperties(osztalyId);
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi(osztalyId: osztalyId);
omodel.KepzesList = OsztalyCsoportLogic.GetKepzesList();
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.OsztalyId = osztalyId;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = osztalyId;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsOsztaly = true;
omodel.IsNktBlockVisible = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses] && ClaimData.IsSelectedTanev20_21OrLater && !ClaimData.IsSelectedTanev21_22OrLater;
omodel.IsNKTSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses];
omodel.FeladatellatasiHelyIsNkt = OsztalyCsoportLogic.GetFeladatellatasiHelyIsNktDictionary();
AmiOsztalyCsoportLogic.SetOsztalyKepzesiJellemzokVisibility(omodel, osztalyId);
OsztalyCsoportLogic.SetOsztalyMunkarendVisibility(omodel, osztalyId);
omodel.TabList = GetModifytabItems(omodel);
var pm = new PopUpModel(omodel, "OsztalyModify_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.cancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.save");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenOsztalyAddPopup()
{
PopUpModel pm;
var omodel = AmiOsztalyCsoportLogic.GetOsztalyBasicProperties();
omodel.KepzesiForma = (int)TanterviJellegEnum.nappali_rendszeru_iskolai_oktatas;
omodel.KepzesList = OsztalyCsoportLogic.GetKepzesList();
omodel.IsFeladatellatasiHelySzures = true;
omodel.FeladatellatasiHelyIsNkt = OsztalyCsoportLogic.GetFeladatellatasiHelyIsNktDictionary();
pm = new PopUpModel(omodel, "OsztalyAdd_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.cancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.save");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenDeleteOsztalyPopup(List<int> osztalyIdLista)
{
var pm = new PopUpModel(osztalyIdLista, "OsztalyDelete");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.deleteCancel");
pm = pm.AddBtn(pm, "btnSave", OsztalyCsoportResource.TorlesACsoportjaivalEgyutt, "OsztalyHelper.deleteOsztalyCsoportokkal");
pm = pm.AddBtn(pm, "btnSaveWithout", OsztalyCsoportResource.TorlesCsakAzOsztaly, "OsztalyHelper.deleteOsztalyCsoportokNelkul");
return PartialView(Constants.General.PopupView, pm);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.AMImodul.ClaimValue)]
public ActionResult GetOsztalyBaseProperties(int id)
{
var omodel = AmiOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi(osztalyId: id);
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.OsztalyId = id;
AmiOsztalyCsoportLogic.SetOsztalyKepzesiJellemzokVisibility(omodel, id);
omodel.IsNktBlockVisible = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses] && ClaimData.IsSelectedTanev20_21OrLater && !ClaimData.IsSelectedTanev21_22OrLater;
return PartialView("Info_Alapadatok_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.AMImodul.ClaimValue)]
public ActionResult GetOsztalyTanuloi(int id)
{
var omodel = new AmiOsztalyModel() { ID = id };
return PartialView("Info_Osztalytanuloi_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.AMImodul.ClaimValue)]
public ActionResult GetOsztalyBontascsoportjai(int id)
{
var omodel = new AmiOsztalyModel() { ID = id };
return PartialView("Info_OsztalybontasCsoportjai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.AMImodul.ClaimValue)]
public ActionResult GetOsztalyFoglalkozasai(int id)
{
var omodel = new AmiOsztalyModel() { ID = id };
return PartialView("Info_OsztalyFoglalkozasai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.AMImodul.ClaimValue)]
public ActionResult GetOsztalyOrarendiOrai(int id)
{
var omodel = new AmiOsztalyModel() { ID = id };
return PartialView("Info_OsztalyOrarendiOrai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.AMImodul.ClaimValue)]
public ActionResult GetOsztalyTanmenetei(int id)
{
var omodel = new AmiOsztalyModel() { ID = id };
return PartialView("Info_OsztalyTanmenetei_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.AMImodul.ClaimValue)]
public ActionResult GetOsztalyErtekelesei(int id)
{
var omodel = new AmiOsztalyModel() { ID = id };
return PartialView("Info_OsztalyErtekelesei_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.AMImodul.ClaimValue)]
public ActionResult GetOsztalyIgazolasai(int id)
{
var omodel = new AmiOsztalyModel() { ID = id };
return PartialView("Info_OsztalyIgazolasai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.AMImodul.ClaimValue)]
public ActionResult GetOsztalyTanuloinakKepzesiJellemzoi(int id)
{
var omodel = new AmiOsztalyModel() { ID = id };
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.OsztalyId = id;
AmiOsztalyCsoportLogic.SetOsztalyKepzesiJellemzokVisibility(omodel, id);
return PartialView("Info_OsztalyKepzesiJellemzok_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.AMImodul.ClaimValue)]
public ActionResult GetOsztalyTanuloinakMunkarendje(int id)
{
var omodel = AmiOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = id;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsOsztaly = true;
OsztalyCsoportLogic.SetOsztalyMunkarendVisibility(omodel, id);
return PartialView("Info_OsztalyMunkarend_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.AMImodul.ClaimValue)]
public ActionResult OpenOsztalyPropertiesTab(int osztalyID, bool fromAdd = false)
{
var omodel = new AmiOsztalyModel()
{
ID = osztalyID,
};
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi(osztalyId: osztalyID);
omodel.IsNKTSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses];
omodel.TabList = GetTabItems(omodel);
PopUpModel pm = new PopUpModel(omodel, "OsztalyProperties_Info");
pm = pm.AddCancelBtn(pm, fromAdd ? "OsztalyHelper.cancel" : "OsztalyHelper.propertiesCancel");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenModPopUp(List<ModOsztalyModel> osztalyList)
{
var model = OsztalyCsoportLogic.SetModPopUpModel(osztalyList);
model.TabList = GetGroupModifytabItems(model);
PopUpModel pm = new PopUpModel(model, "OsztalyGroupModify_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.modCancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.confirmCsopModWindow");
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi();
model.IsNktBlockVisible = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses] && ClaimData.IsSelectedTanev20_21OrLater;
model.FeladatellatasiHelyIsNkt = OsztalyCsoportLogic.GetFeladatellatasiHelyIsNktDictionary();
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult GetPartialView(string dataType, int osztalyid)
{
return PartialView("_TanuloSorolasPartialRowFunction", OsztalyCsoportLogic.GetModelForPartialViewOsztaly(dataType, osztalyid));
}
public ActionResult OpenBesorolasModDatum(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForBesorolasModDatumOsztaly(tanuloid, osztalyid));
}
public ActionResult OpenKisorolasModDatum(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasModDatumOsztaly(tanuloid, osztalyid));
}
public ActionResult OpenKisorolas(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasOsztaly(tanuloid, osztalyid));
}
public List<TabStripItemModel> GetTabItems(AmiOsztalyModel model)
{
const string OsztalyController = Constants.Controllers.OsztalyAmi;
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = StringResourcesUtil.GetString(161), Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyBaseProperties", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = TanuloResource.Novendekek, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanuloi", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "3", ItemName = StringResourcesUtil.GetString(472)/*Csoportok*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyBontascsoportjai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "4", ItemName = StringResourcesUtil.GetString(164)/*Foglalkozások*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyFoglalkozasai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
if (!ClaimData.IsSzirIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = "5", ItemName = StringResourcesUtil.GetString(165)/*Órarendi órák*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyOrarendiOrai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "6", ItemName = StringResourcesUtil.GetString(166)/*Tanmenetek*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanmenetei", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "7", ItemName = StringResourcesUtil.GetString(1701)/*Értékelések*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyErtekelesei", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "8", ItemName = StringResourcesUtil.GetString(658)/*Igazolások*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyIgazolasai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
}
if (ClaimData.IsSelectedTanev21_22OrLater && model.IsNKTSzakkepzeses)
{
items.Add(new TabStripItemModel { ItemId = ClaimData.IsSzirIntezmeny ? "5" : "9", ItemName = CommonResource.KepzesiJellemzok, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanuloinakKepzesiJellemzoi", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
}
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = ClaimData.IsSzirIntezmeny ? "6" : "10", ItemName = CommonResource.Munkarend, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanuloinakMunkarendje", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
}
return items;
}
public List<TabStripItemModel> GetModifytabItems(AmiOsztalyModel model)
{
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = CommonResource.Alapadatok, PartialViewName = "OsztalyModify_Alapadatok_Tab", Model = model, IsActive = true });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = CommonResource.AzOsztalybaJaroNovendekekListaja, PartialViewName = "OsztalyModify_Tanulok_Tab", Model = model });
items.Add(new TabStripItemModel { ItemId = "3", ItemName = CommonResource.NaplosorszamEsTorzslapszamBeallitasai, PartialViewName = "OsztalyModify_NaplosorszamEsTorzslapszamBeallitasai_Tab", Model = model });
if (ClaimData.IsSelectedTanev21_22OrLater && model.IsNKTSzakkepzeses)
{
items.Add(new TabStripItemModel { ItemId = "OsztalyKepzesiJellemzok_TabStripId", ItemName = CommonResource.KepzesiJellemzok, PartialViewName = "Info_OsztalyKepzesiJellemzok_Tab", Model = model });
}
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = "OsztalyMunkarend_TabStripId", ItemName = CommonResource.Munkarend, PartialViewName = "Info_OsztalyMunkarend_Tab", Model = model });
}
return items;
}
public List<TabStripItemModel> GetGroupModifytabItems(ModOsztalyModel model)
{
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = CommonResource.Alapadatok, PartialViewName = "OsztalyGroupModify_Alapadatok_Tab", Model = model, IsActive = true });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = CommonResource.AutomatikusSorszamozas, PartialViewName = "OsztalyGroupModify_NaplosorszamEsTorzslapszamBeallitasai_Tab", Model = model });
return items;
}
#region Export
public ActionResult ExportEvfolyamAktualisLetszamadatai([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportEvfolyamAktualisLetszamadataiForOsztaly(OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas, data);
}
public ActionResult ExportOsztalyokMindenAdata([FromUri] OsztalySearchModel model)
{
return OsztalyCsoportLogic.ExportOsztalyokMindenAdata(OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas, model);
}
public ActionResult ExportOsztalybaJaroTanulok([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportOsztalybaJaroTanulok(OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas, data);
}
public ActionResult ExportOsztalyokAktualisLetszamadatai([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportOsztalyokAktualisLetszamadatai(OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas, data);
}
#endregion
}
}

View file

@ -0,0 +1,373 @@
using System;
using System.Collections.Generic;
using System.Web.Http;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Framework;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Logic;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Controllers;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.TabStrip;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public class OsztalyController : Controller
{
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult Index(string filter)
{
var model = OsztalySearchModel.SetFilterOsztalySearchModel(filter);
model.TanevList = new ComboBoxHelperApiController().GetTanevListDropDown();
model.FeladatEllatasiHelyID = ClaimData.FelhelySzuro;
return View("Index", model);
}
public ActionResult OpenOsztalyModifyPopup(int osztalyId)
{
bool isAmiAlapkepzesesGimnaziumkentKezelendo = false;
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
if (osztalyCsoportHelper.GetOsztalyCsoportFeladatKategoria(osztalyId) != (int)OktNevelesiKategoriaEnum.NevelesOktatas)
{
var gimnaziumAlapkepzeseskentKezelendo = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Szakgimnaziumok_Alapkezpeseskent_Tudjak_Kezelni_osztalyokat_Tanulokat);
if (!(gimnaziumAlapkepzeseskentKezelendo && osztalyCsoportHelper.GetOsztalyCsoportOktatasNevelesiFeladatTipus(osztalyId) == (int)OktatasiNevelesiFeladatEnum.MuveszetiSzakgimnazium))
{
return OpenOsztalyPropertiesTab(osztalyId, true);
}
isAmiAlapkepzesesGimnaziumkentKezelendo = true;
}
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(osztalyId);
AlapkepzesOsztalyCsoportLogic.SetOsztalySzakkepzesesBasicProperties(omodel);
AlapkepzesOsztalyCsoportLogic.SetOsztalyKepzesiJellemzokVisibility(omodel, osztalyId);
OsztalyCsoportLogic.SetOsztalyMunkarendVisibility(omodel, osztalyId);
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi(osztalyId: osztalyId);
omodel.IsNktBlockVisible = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses] && ClaimData.IsSelectedTanev20_21OrLater && !ClaimData.IsSelectedTanev21_22OrLater;
omodel.FeladatellatasiHelyIsNkt = OsztalyCsoportLogic.GetFeladatellatasiHelyIsNktDictionary();
omodel.GimnaziumIdsJSON = JsonConvert.SerializeObject(OsztalyCsoportLogic.GetIdsBySelectedOktatasiNevelesiFeladat((int)OktatasiNevelesiFeladatEnum.gimnazium));
omodel.GimnaziumiEvfolyamTipusId = omodel.GimnaziumiEvfolyamTipusId.HasValue ? omodel.GimnaziumiEvfolyamTipusId : (int)GimnaziumiEvfolyamTipusEnum.Na;
omodel.FeladatellatasiHelyIsSzakkepzeses = OsztalyCsoportLogic.GetFeladatellatasiHelyIsSzakkepzesesDictionary();
omodel.KepzesList = OsztalyCsoportLogic.GetKepzesList();
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.OsztalyId = osztalyId;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = osztalyId;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsOsztaly = true;
omodel.IsAmiAlapkepzesesGimnaziumkentKezelendo = isAmiAlapkepzesesGimnaziumkentKezelendo;
omodel.IsIntezmenySzakkepzo = osztalyJellemzoi[OsztalyJellemzoEnum.IsSzakkepzeses];
omodel.IsNKTSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses];
omodel.SzakkepzoEvfolyamIdList = OsztalyCsoportLogic.SzakkepzoEvfolyamIdList;
omodel.TabList = GetModifytabItems(omodel);
var pm = new PopUpModel(omodel, "OsztalyModify_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.cancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.save");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenOsztalyAddPopup()
{
PopUpModel pm;
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties();
AlapkepzesOsztalyCsoportLogic.SetOsztalySzakkepzesesBasicProperties(omodel);
//oModel.EvfolyamList = GetEvfolyamList(null/*oModel.FeladatEllatasiHelyid*/);
omodel.FeladatellatasiHelyIsSzakkepzeses = OsztalyCsoportLogic.GetFeladatellatasiHelyIsSzakkepzesesDictionary();
omodel.GimnaziumIdsJSON = JsonConvert.SerializeObject(OsztalyCsoportLogic.GetIdsBySelectedOktatasiNevelesiFeladat((int)OktatasiNevelesiFeladatEnum.gimnazium));
omodel.KepzesiForma = (int)TanterviJellegEnum.nappali_rendszeru_iskolai_oktatas;
omodel.KepzesList = OsztalyCsoportLogic.GetKepzesList();
omodel.IsFeladatellatasiHelySzures = false;
omodel.SzakkepzoEvfolyamIdList = OsztalyCsoportLogic.SzakkepzoEvfolyamIdList;
omodel.FeladatellatasiHelyIsNkt = OsztalyCsoportLogic.GetFeladatellatasiHelyIsNktDictionary();
omodel.IsIntezmenySzakkepzo = ClaimData.IsSzakkepzoIntezmeny;
pm = new PopUpModel(omodel, "OsztalyAdd_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.cancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.save");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenDeleteOsztalyPopup(List<int> osztalyIdLista)
{
var pm = new PopUpModel(osztalyIdLista, "OsztalyDelete");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.deleteCancel");
pm = pm.AddBtn(pm, "btnSave", OsztalyCsoportResource.TorlesACsoportjaivalEgyutt, "OsztalyHelper.deleteOsztalyCsoportokkal");
pm = pm.AddBtn(pm, "btnSaveWithout", OsztalyCsoportResource.TorlesCsakAzOsztaly, "OsztalyHelper.deleteOsztalyCsoportokNelkul");
return PartialView(Constants.General.PopupView, pm);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult GetOsztalyBaseProperties(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi(osztalyId: id);
omodel.IsSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsSzakkepzeses];
omodel.IsGimnazium = helper.IsGimnazium(omodel.ID, (int)OktatasiNevelesiFeladatEnum.gimnazium);
omodel.IsIntezmenySzakkepzo = osztalyJellemzoi[OsztalyJellemzoEnum.IsSzakkepzeses];
omodel.IsNKTSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses];
omodel.IsNktBlockVisible = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses] && ClaimData.IsSelectedTanev20_21OrLater && !ClaimData.IsSelectedTanev21_22OrLater;
return PartialView("Info_Alapadatok_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult GetOsztalyTanuloi(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
return PartialView("Info_Osztalytanuloi_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult GetOsztalyBontascsoportjai(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
return PartialView("Info_OsztalybontasCsoportjai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult GetOsztalyFoglalkozasai(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
return PartialView("Info_OsztalyFoglalkozasai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult GetOsztalyOrarendiOrai(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
return PartialView("Info_OsztalyOrarendiOrai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult GetOsztalyTanmenetei(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
return PartialView("Info_OsztalyTanmenetei_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult GetOsztalyErtekelesei(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
return PartialView("Info_OsztalyErtekelesei_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult GetOsztalyIgazolasai(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
return PartialView("Info_OsztalyIgazolasai_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult GetOsztalyTanuloinakKepzesiJellemzoi(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.OsztalyId = id;
AlapkepzesOsztalyCsoportLogic.SetOsztalyKepzesiJellemzokVisibility(omodel, id);
return PartialView("Info_OsztalyKepzesiJellemzok_Tab", omodel);
}
public ActionResult GetOsztalyTanuloinakMunkarendje(int id)
{
var omodel = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(id);
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.OsztalyCsoportId = id;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsOsztaly = true;
OsztalyCsoportLogic.SetOsztalyMunkarendVisibility(omodel, id);
return PartialView("Info_OsztalyMunkarend_Tab", omodel);
}
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
public ActionResult OpenOsztalyPropertiesTab(int osztalyID, bool fromAdd = false)
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
Enum.TryParse(osztalyCsoportHelper.GetOsztalyCsoportFeladatKategoria(osztalyID).ToString(), out OktNevelesiKategoriaEnum kategoria);
if (kategoria == OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas)
{
var gimnaziumAlapkepzeseskentKezelendo = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Szakgimnaziumok_Alapkezpeseskent_Tudjak_Kezelni_osztalyokat_Tanulokat);
if (!(gimnaziumAlapkepzeseskentKezelendo && osztalyCsoportHelper.GetOsztalyCsoportOktatasNevelesiFeladatTipus(osztalyID) == (int)OktatasiNevelesiFeladatEnum.MuveszetiSzakgimnazium))
{
return RedirectToAction("OpenOsztalyPropertiesTab", Constants.Controllers.OsztalyAmi, new { osztalyID, fromAdd });
}
}
if (kategoria == OktNevelesiKategoriaEnum.Kollegium)
{
return RedirectToAction("OpenOsztalyPropertiesTab", Constants.Controllers.KollegiumOsztaly, new { osztalyID, fromAdd });
}
if (kategoria == OktNevelesiKategoriaEnum.EGYMI)
{
return RedirectToAction("OpenOsztalyPropertiesTab", Constants.Controllers.EGYMIOsztaly, new { osztalyID, fromAdd });
}
var omodel = new AlapkepzesOsztalyModel() { ID = osztalyID };
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi(osztalyId: osztalyID);
omodel.IsIntezmenySzakkepzo = osztalyJellemzoi[OsztalyJellemzoEnum.IsSzakkepzeses];
omodel.IsNKTSzakkepzeses = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses];
omodel.TabList = GetTabItems(omodel);
PopUpModel pm = new PopUpModel(omodel, "OsztalyProperties_Info");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.propertiesCancel");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenModPopUp(List<ModOsztalyModel> osztalyList)
{
var model = OsztalyCsoportLogic.SetModPopUpModel(osztalyList);
model.TabList = GetGroupModifytabItems(model);
AlapkepzesOsztalyCsoportLogic.ValidateTobbesModFeladatKategoria(model.OsztalyIDArrayString);
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztalyJellemzoi = helper.GetOsztalyJellemzoi();
model.GimnaziumIdsJSON = JsonConvert.SerializeObject(OsztalyCsoportLogic.GetIdsBySelectedOktatasiNevelesiFeladat((int)OktatasiNevelesiFeladatEnum.gimnazium));
model.FeladatellatasiHelyIsSzakkepzeses = OsztalyCsoportLogic.GetFeladatellatasiHelyIsSzakkepzesesDictionary();
model.FeladatellatasiHelyIsNkt = OsztalyCsoportLogic.GetFeladatellatasiHelyIsNktDictionary();
model.IsIntezmenySzakkepzo = osztalyJellemzoi[OsztalyJellemzoEnum.IsSzakkepzeses];
model.SzakkepzoEvfolyamIdList = OsztalyCsoportLogic.SzakkepzoEvfolyamIdList;
model.IsNktBlockVisible = osztalyJellemzoi[OsztalyJellemzoEnum.IsNKTSzakkepzeses] && ClaimData.IsSelectedTanev20_21OrLater;
PopUpModel pm = new PopUpModel(model, "OsztalyGroupModify_Bevitel");
pm = pm.AddCancelBtn(pm, "OsztalyHelper.modCancel");
pm = pm.AddOkBtn(pm, "OsztalyHelper.confirmCsopModWindow");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult GetPartialView(string dataType, int osztalyid)
{
return PartialView("_TanuloSorolasPartialRowFunction", OsztalyCsoportLogic.GetModelForPartialViewOsztaly(dataType, osztalyid));
}
public ActionResult OpenBesorolasModDatum(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForBesorolasModDatumOsztaly(tanuloid, osztalyid));
}
public ActionResult OpenKisorolasModDatum(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasModDatumOsztaly(tanuloid, osztalyid));
}
public ActionResult OpenKisorolas(int tanuloid, int osztalyid)
{
return PartialView(Constants.General.PopupView, OsztalyCsoportLogic.GetPopUpModelForKisorolasOsztaly(tanuloid, osztalyid));
}
public List<TabStripItemModel> GetTabItems(AlapkepzesOsztalyModel model)
{
const string OsztalyController = Constants.Controllers.Osztaly;
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = StringResourcesUtil.GetString(161), Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyBaseProperties", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = StringResourcesUtil.GetString(332)/*Tanulók*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanuloi", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "3", ItemName = StringResourcesUtil.GetString(472)/*Csoportok*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyBontascsoportjai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
items.Add(new TabStripItemModel { ItemId = "4", ItemName = StringResourcesUtil.GetString(164)/*Foglalkozások*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyFoglalkozasai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
if (!ClaimData.IsSzirIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = "5", ItemName = StringResourcesUtil.GetString(165)/*Órarendi órák*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyOrarendiOrai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "6", ItemName = StringResourcesUtil.GetString(166)/*Tanmenetek*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanmenetei", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "7", ItemName = StringResourcesUtil.GetString(1701)/*Értékelések*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyErtekelesei", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
items.Add(new TabStripItemModel { ItemId = "8", ItemName = StringResourcesUtil.GetString(658)/*Igazolások*/, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyIgazolasai", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } }, IsETTFDisabled = true });
}
if (ClaimData.IsSelectedTanev21_22OrLater && model.IsNKTSzakkepzeses)
{
items.Add(new TabStripItemModel { ItemId = ClaimData.IsSzirIntezmeny ? "5" : "9", ItemName = CommonResource.KepzesiJellemzok, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanuloinakKepzesiJellemzoi", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
}
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = ClaimData.IsSzirIntezmeny ? "6" : "10", ItemName = CommonResource.Munkarend, Area = "OsztalyCsoport", Controller = OsztalyController, Action = "GetOsztalyTanuloinakMunkarendje", RouteParameters = new Dictionary<string, string>() { { "id", model.ID.ToString() } } });
}
return items;
}
public List<TabStripItemModel> GetModifytabItems(AlapkepzesOsztalyModel model)
{
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = CommonResource.Alapadatok, PartialViewName = "OsztalyModify_Alapadatok_Tab", Model = model, IsActive = true });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = CommonResource.AzOsztalybaJaroTanulokListaja, PartialViewName = "OsztalyModify_Tanulok_Tab", Model = model });
items.Add(new TabStripItemModel { ItemId = "3", ItemName = CommonResource.NaplosorszamEsTorzslapszamBeallitasai, PartialViewName = "OsztalyModify_NaplosorszamEsTorzslapszamBeallitasai_Tab", Model = model });
if (ClaimData.IsSelectedTanev21_22OrLater && model.IsNKTSzakkepzeses)
{
items.Add(new TabStripItemModel { ItemId = "OsztalyKepzesiJellemzok_TabStripId", ItemName = CommonResource.KepzesiJellemzok, PartialViewName = "Info_OsztalyKepzesiJellemzok_Tab", Model = model });
}
if (ClaimData.IsSelectedTanev21_22OrLater && ClaimData.IsSzakkepzoIntezmeny)
{
items.Add(new TabStripItemModel { ItemId = "OsztalyMunkarend_TabStripId", ItemName = CommonResource.Munkarend, PartialViewName = "Info_OsztalyMunkarend_Tab", Model = model });
}
return items;
}
public List<TabStripItemModel> GetGroupModifytabItems(ModOsztalyModel model)
{
var items = new List<TabStripItemModel>();
items.Add(new TabStripItemModel { ItemId = "1", ItemName = CommonResource.Alapadatok, PartialViewName = "OsztalyGroupModify_Alapadatok_Tab", Model = model, IsActive = true });
items.Add(new TabStripItemModel { ItemId = "2", ItemName = CommonResource.AutomatikusSorszamozas, PartialViewName = "OsztalyGroupModify_NaplosorszamEsTorzslapszamBeallitasai_Tab", Model = model });
return items;
}
public ActionResult GetOsztalyTanuloiKepzesiJellemzokAlapjanDetailGrid(OsztalyTanuloinakKepzesiJellemzoiGridModel model)
{
return PartialView("OsztalyTanuloiKepzesiJellemzokAlapjan_DetailGrid", model);
}
#region Export
public ActionResult ExportEvfolyamAktualisLetszamadatai([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportEvfolyamAktualisLetszamadataiForOsztaly(OktNevelesiKategoriaEnum.NevelesOktatas, data);
}
public ActionResult ExportOsztalyokMindenAdata([FromUri] OsztalySearchModel model)
{
return OsztalyCsoportLogic.ExportOsztalyokMindenAdata(OktNevelesiKategoriaEnum.NevelesOktatas, model);
}
public ActionResult ExportOsztalybaJaroTanulok([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportOsztalybaJaroTanulok(OktNevelesiKategoriaEnum.NevelesOktatas, data);
}
public ActionResult ExportOsztalyokAktualisLetszamadatai([FromUri] OsztalySearchModel data)
{
return OsztalyCsoportLogic.ExportOsztalyokAktualisLetszamadatai(OktNevelesiKategoriaEnum.NevelesOktatas, data);
}
#endregion
public ActionResult LoadSorolasTbJogviszonyPartialView(string json)
{
return PartialView("_TbJogviszonyGridPartial", json);
}
}
}

View file

@ -0,0 +1,72 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.HelperClasses.OsztalyCsoportbaSorolas;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
using static Kreta.Core.Constants;
namespace Kreta.Web.Areas.OsztalyCsoport.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue)]
public class ZaradekController : Controller
{
public ActionResult OpenZaradekNewPopUp(int tanuloCsoportId)
{
var model = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false);
model.TanuloCsoportId = tanuloCsoportId;
model.IsZaradekKotelezo = true;
model.IsTorolheto = true;
PopUpModel pm = new PopUpModel(model, "Edit_Zaradek_Popup");
pm = pm.AddBtn(pm, "ZaradekNewCancel", CommonResource.Megse, "ZaradekListHelper.cancel");
pm = pm.AddBtn(pm, "ZaradekNewOk", CommonResource.Mentes, "ZaradekListHelper.save");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenZaradekModPopUp(int zaradekId)
{
var model = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), new ZaradekHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetZaradekById(zaradekId));
model.IsZaradekKotelezo = true;
PopUpModel pm = new PopUpModel(model, "Edit_Zaradek_Popup");
pm = pm.AddBtn(pm, "ZaradekModCancel", CommonResource.Megse, "ZaradekListHelper.cancel");
pm = pm.AddBtn(pm, "ZaradekModOk", CommonResource.Mentes, "ZaradekListHelper.save");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenZaradekInfoPopUp(int zaradekId)
{
var model = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), new ZaradekHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetZaradekById(zaradekId));
model.UtolsoModositoNev = model.UtolsoModositoNev == SpecialUserName.KretaTechnicalUserName ? AdatszolgaltatasokResource.NincsAdat : model.UtolsoModositoNev;
model.RogzitoNev = model.RogzitoNev == SpecialUserName.KretaTechnicalUserName ? AdatszolgaltatasokResource.NincsAdat : model.RogzitoNev;
PopUpModel pm = new PopUpModel(model, "Info_Zaradek_Popup");
pm = pm.AddBtn(pm, "ZaradekInfoCancel", CommonResource.Megse, "ZaradekListHelper.cancelInfo");
return PartialView(Constants.General.PopupView, pm);
}
public ActionResult OpenZaradekTobbesModositasPopUp(ZaradekTobbesModositasaModel model)
{
model.SorolasZaradekModel = new SorolasZaradek(ConnectionTypeExtensions.GetSessionConnectionType(), false);
model.SorolasZaradekModel.IsZaradekKotelezo = true;
model.SorolasZaradekModel.IsTorolheto = true;
PopUpModel pm = new PopUpModel(model, "Zaradek_TobbesModositas_Popup");
pm = pm.AddCancelBtn(pm, "ZaradekTobbesModositasHelper.zaradekTobbesModositasCancel");
pm = pm.AddOkBtn(pm, "ZaradekTobbesModositasHelper.saveZaradekTobbesModositas");
pm = pm.AddBtn(pm, "BtnOsszesZaradekTorlese", BesorolasResource.OsszesZaradekTorlese, "ZaradekTobbesModositasHelper.osszesZaradekTorlese");
pm = pm.AddBtn(pm, "BtnLegutobbRogzitettZaradekTorlese", BesorolasResource.LegutobbRogzitettZaradekTorlese, "ZaradekTobbesModositasHelper.legutobbRogzitettZaradekTorlese");
return PartialView(Constants.General.PopupView, pm);
}
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,429 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using Kreta.BusinessLogic.Helpers;
using Kreta.Enums;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.ModelInterface;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.OsztalyCsoport.Logic
{
public class TanuloBesorolasLogic
{
public static TanuloSorolasModel GenerateTanuloSorolasModel(DataSet ds)
{
List<DateTime> belepesDatumList = new List<DateTime>();
List<TanuloSorolasItemModel> lista = new List<TanuloSorolasItemModel>();
List<TanuloSorolasDateModel> datumLista = new List<TanuloSorolasDateModel>();
foreach (DataRow row in ds.Tables[0].Rows)
{
DateTime tanuloBelepesDatum = row.Field<DateTime>("BelepesDatum");
belepesDatumList.Add(tanuloBelepesDatum);
}
if (belepesDatumList.Count > 0)
{
DateTime? legelsoBelepesDatuma = belepesDatumList.OrderBy(x => x).FirstOrDefault();
TimeSpan ts = DateTime.Now - legelsoBelepesDatuma.Value;
if (ts.Days < 6)
{
datumLista.Add(new TanuloSorolasDateModel() { Date = legelsoBelepesDatuma.Value, ColNumber = 5 });
datumLista.Add(new TanuloSorolasDateModel() { Date = DateTime.Now, ColNumber = 1 });
}
else
{
int day = ts.Days / 6;
datumLista.Add(new TanuloSorolasDateModel() { Date = legelsoBelepesDatuma.Value, ColNumber = 1 });
for (int i = 1; i < 5; i++)
{
datumLista.Add(new TanuloSorolasDateModel() { Date = legelsoBelepesDatuma.Value.AddDays(day * i), ColNumber = 1 });
}
datumLista.Add(new TanuloSorolasDateModel() { Date = DateTime.Now, ColNumber = 1 });
}
foreach (DataRow row in ds.Tables[0].Rows)
{
int tanuloId = row.Field<int>("TanuloId");
string tanuloNev = row.Field<string>("TanuloNev");
DateTime tanuloBelepesDatum = row.Field<DateTime>("BelepesDatum");
DateTime? tanuloKilepesDatum = row.Field<DateTime?>("KilepesDatum");
TanuloSorolasItemModel aktualisTanulo = lista.FirstOrDefault(i => i.Id == tanuloId);
if (aktualisTanulo != null)
{
aktualisTanulo.Intervallumok.Add(new TanuloSorolasDivModel
{
StartDate = aktualisTanulo.Intervallumok.Last().EndDate,
EndDate = tanuloBelepesDatum,
WidthPercent = 0,
Blank = true
});
aktualisTanulo.Intervallumok.Add(new TanuloSorolasDivModel
{
StartDate = tanuloBelepesDatum,
EndDate = tanuloKilepesDatum,
WidthPercent = 0,
Blank = false
});
}
else
{
lista.Add(new TanuloSorolasItemModel()
{
Id = tanuloId,
Nev = tanuloNev,
Intervallumok = new List<TanuloSorolasDivModel>
{
// Az első (üres) div tulajdonságai
new TanuloSorolasDivModel
{
StartDate = legelsoBelepesDatuma,
EndDate = tanuloBelepesDatum,
WidthPercent = 0,
Blank = true
},
// Az adattal rendelkező div tulajdonságai
new TanuloSorolasDivModel
{
StartDate = tanuloBelepesDatum,
EndDate = tanuloKilepesDatum,
WidthPercent = 0,
Blank = false
}
}
});
}
}
foreach (TanuloSorolasItemModel tanulo in lista)
{
// Az utolsó (üres) div tulajdonságai
tanulo.Intervallumok.Add(new TanuloSorolasDivModel
{
StartDate = tanulo.Intervallumok.Last().EndDate,
EndDate = DateTime.Now,
WidthPercent = 0,
Blank = true
});
foreach (TanuloSorolasDivModel div in tanulo.Intervallumok)
{
if (div.StartDate.HasValue && div.EndDate.HasValue)
{
TimeSpan difference = div.EndDate.Value - div.StartDate.Value;
div.WidthPercent = (int)(((double)difference.Days / (double)ts.Days) * 100);
}
if (div.StartDate.HasValue && div.EndDate == null)
{
div.WidthPercent = 100 - tanulo.Intervallumok.Sum(i => i.WidthPercent);
}
}
}
}
return new TanuloSorolasModel { Lista = lista, DatumLista = datumLista };
}
public static TanuloSorolasModel GenerateTanuloSorolasModelCsoportOsztaly(DataSet ds, bool isCsoportView)
{
List<DateTime> belepesDatumList = new List<DateTime>();
List<TanuloSorolasItemModel> lista = new List<TanuloSorolasItemModel>();
List<TanuloSorolasDateModel> datumLista = new List<TanuloSorolasDateModel>();
foreach (DataRow row in ds.Tables[0].Rows)
{
DateTime tanuloBelepesDatum = row.Field<DateTime>("BelepesDatum");
belepesDatumList.Add(tanuloBelepesDatum);
}
if (belepesDatumList.Count > 0)
{
DateTime legelsoBelepesDatuma = belepesDatumList.Min();
DateTime utolsoBelepesDatuma = belepesDatumList.Max();
DateTime vegertek = utolsoBelepesDatuma > DateTime.Now ? utolsoBelepesDatuma.AddDays(1) : DateTime.Now;
TimeSpan ts = vegertek - legelsoBelepesDatuma;
if (ts.Days < 3)
{
datumLista.Add(new TanuloSorolasDateModel() { Date = legelsoBelepesDatuma, ColNumber = 5 });
datumLista.Add(new TanuloSorolasDateModel() { Date = vegertek, ColNumber = 1 });
}
else
{
datumLista.Add(new TanuloSorolasDateModel() { Date = legelsoBelepesDatuma, ColNumber = 2 });
datumLista.Add(new TanuloSorolasDateModel() { Date = legelsoBelepesDatuma.AddDays(ts.Days / 2), ColNumber = 2 });
datumLista.Add(new TanuloSorolasDateModel() { Date = vegertek, ColNumber = 2 });
}
foreach (DataRow row in ds.Tables[0].Rows)
{
int tanuloId = row.Field<int>("TanuloId");
string tanuloNev = row.Field<string>("TanuloNev");
DateTime tanuloBelepesDatum = row.Field<DateTime>("BelepesDatum");
DateTime? tanuloKilepesDatum = row.Field<DateTime?>("KilepesDatum");
var tanuloOsztalyai = row.Field<string>("TanuloOsztalyai")?.TrimStart();
var isDualisCsoportbanTanuloKepzohelyEsAdoszamNelkul = row.Field<int?>("CsoportSzervezetId").HasValue
&& string.IsNullOrEmpty(row.Field<string>("DualisKepzohelyNeve"))
&& string.IsNullOrEmpty(row.Field<string>("DualisKepzohelyAdoszama"));
TanuloSorolasItemModel aktualisTanulo = lista.FirstOrDefault(i => i.Id == tanuloId);
if (aktualisTanulo != null)
{
aktualisTanulo.Intervallumok.Add(new TanuloSorolasDivModel
{
StartDate = aktualisTanulo.Intervallumok.Last().EndDate,
EndDate = tanuloBelepesDatum,
WidthPercent = 0,
Blank = true
});
aktualisTanulo.Intervallumok.Add(new TanuloSorolasDivModel
{
StartDate = tanuloBelepesDatum,
EndDate = tanuloKilepesDatum,
WidthPercent = 0,
Blank = false
});
}
else
{
var tanuloSorolasNev = tanuloNev + (isCsoportView ? $" ({tanuloOsztalyai})" : string.Empty);
lista.Add(new TanuloSorolasItemModel()
{
Id = tanuloId,
Nev = tanuloSorolasNev,
IsDualisCsoportbanTanuloKepzohelyEsAdoszamNelkul = isDualisCsoportbanTanuloKepzohelyEsAdoszamNelkul,
Intervallumok = new List<TanuloSorolasDivModel>
{
// Az első (üres) div tulajdonságai
new TanuloSorolasDivModel
{
StartDate = legelsoBelepesDatuma,
EndDate = tanuloBelepesDatum,
WidthPercent = 0,
Blank = true
},
// Az adattal rendelkező div tulajdonságai
new TanuloSorolasDivModel
{
StartDate = tanuloBelepesDatum,
EndDate = tanuloKilepesDatum,
WidthPercent = 0,
Blank = false
}
}
});
}
}
foreach (TanuloSorolasItemModel tanulo in lista)
{
// Az utolsó (üres) div tulajdonságai
tanulo.Intervallumok.Add(new TanuloSorolasDivModel
{
StartDate = tanulo.Intervallumok.Last().EndDate,
EndDate = vegertek,
WidthPercent = 0,
Blank = true
});
foreach (TanuloSorolasDivModel div in tanulo.Intervallumok)
{
if (div.StartDate.HasValue && div.EndDate.HasValue)
{
TimeSpan difference = (div.EndDate.Value > vegertek ? vegertek : div.EndDate.Value) - div.StartDate.Value;
if (difference.Ticks < 0)
{
difference = TimeSpan.Zero;
}
div.WidthPercent = (int)Math.Round((double)difference.Days / (double)ts.Days * 100);
}
if (div.StartDate.HasValue && div.EndDate == null)
{
div.WidthPercent = 100 - tanulo.Intervallumok.Sum(i => i.WidthPercent);
}
}
}
}
return new TanuloSorolasModel { Lista = lista, DatumLista = datumLista };
}
public static System.Web.Http.ModelBinding.ModelStateDictionary CustomValidation(System.Web.Http.ModelBinding.ModelStateDictionary ms, IBesorolasModValidationModel model, bool isOsztaly)
{
const string AlapadatModel = nameof(AlapadatModel);
if (model.BelepesDatum.HasValue && model.KilepesDatum.HasValue && model.BelepesDatum > model.KilepesDatum)
{
ms.AddModelError($"{AlapadatModel}.{nameof(model.KilepesDatum)}", OsztalyCsoportResource.KisorolasDatum);
}
if (model.TanuloCsoportId.HasValue)
{
var tHelper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var tanuloCsoportCo = tHelper.GetTanuloCsoportById(model.TanuloCsoportId.Value);
var osztalyCsoportbaSorolasHelper = new OsztalyCsoportbaSorolasHelper(ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.AktivTanevID, ClaimData.KovTanevID);
DateTime? kilepesDatumValidalashoz = model.KilepesDatum;
if (tanuloCsoportCo.KilepDatum.HasValue && !model.KilepesDatum.HasValue)
{
var tanevCo = new TanevHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanevInfo();
kilepesDatumValidalashoz = tanevCo.UtolsoNap;
}
if (model.BelepesDatum != tanuloCsoportCo.BelepDatum)
{
if (isOsztaly)
{
if (!osztalyCsoportbaSorolasHelper.CheckOsztalyBesorolasKezdetModositas(tanuloCsoportCo.ID.Value, model.BelepesDatum.Value, out var errorMessages))
{
errorMessages.ForEach(e => ms.AddModelError($"{AlapadatModel}.{nameof(model.BelepesDatum)}", e));
}
}
else
{
if (!osztalyCsoportbaSorolasHelper.CheckCsoportBesorolasKezdetModositas(tanuloCsoportCo.ID.Value, model.BelepesDatum.Value, out var errorMessages))
{
errorMessages.ForEach(e => ms.AddModelError($"{AlapadatModel}.{nameof(model.BelepesDatum)}", e));
}
}
}
if (kilepesDatumValidalashoz != tanuloCsoportCo.KilepDatum)
{
if (isOsztaly)
{
if (!osztalyCsoportbaSorolasHelper.CheckOsztalyBesorolasVegeModositas(tanuloCsoportCo.ID.Value, kilepesDatumValidalashoz.Value, out var errorMessages))
{
errorMessages.ForEach(e => ms.AddModelError($"{AlapadatModel}.{nameof(model.KilepesDatum)}", e));
}
}
else
{
if (!osztalyCsoportbaSorolasHelper.CheckCsoportBesorolasVegeModositas(tanuloCsoportCo.ID.Value, kilepesDatumValidalashoz.Value, out var errorMessages))
{
errorMessages.ForEach(e => ms.AddModelError($"{AlapadatModel}.{nameof(model.KilepesDatum)}", e));
}
}
}
}
return ms;
}
public static bool TobbesModBelepesDatumValidationIsOk(System.Web.Http.ModelBinding.ModelStateDictionary ms, IBesorolasTobbesModValidationModel model)
{
return !model.BelepesDatum.HasValue || !model.KilepesDatumHelperForValidation.HasValue || model.BelepesDatum <= model.KilepesDatumHelperForValidation;
}
public static void ValidateJegyzekAdatok(BesorolasModAlapadatBaseModel model, System.Web.Http.ModelBinding.ModelStateDictionary modelState)
{
const string AlapadatModel = nameof(AlapadatModel);
if ((model.IsNKTSzakkepzeses || model.IsSzakkepzeses) && model.TanuloId.HasValue && ClaimData.IsSelectedTanev21_22OrLater)
{
var isUjSzktBlokk =
model.AgazatUjSzktTipusId.HasValue && model.AgazatUjSzktTipusId != (int)AgazatUjSzktTipusEnum.na ||
model.SzakmaTipusId.HasValue && model.SzakmaTipusId != (int)SzakmaTipusEnum.na ||
model.SzakmairanyTipusId.HasValue && model.SzakmairanyTipusId != (int)SzakmairanyTipusEnum.na ? 1 : 0;
var isNktBlokk =
model.TanulmanyiTeruletNktTipusId.HasValue && model.TanulmanyiTeruletNktTipusId != (int)TanulmanyiTeruletNktTipusEnum.na ||
model.SzakkepesitesNktTipusId.HasValue && model.SzakkepesitesNktTipusId != (int)SzakkepesitesNktTipusEnum.na ||
model.SzakiranyNktTipusId.HasValue && model.SzakiranyNktTipusId != (int)SzakiranyNktTipusEnum.na ? 1 : 0;
var isRegiSzktBlokk =
model.SzakmacsoportId.HasValue && model.SzakmacsoportId != (int)SzakmacsoportTipusEnum.Na ||
model.AgazatId.HasValue && model.AgazatId != (int)AgazatTipusEnum.Na ||
model.SzakkepesitesId.HasValue && model.SzakkepesitesId != (int)SzakkepesitesTipusEnum.Na ||
model.ReszSzakkepesitesId.HasValue && model.ReszSzakkepesitesId != (int)ReszszakkepesitesTipusEnum.Na ? 1 : 0;
var isUjSzktReszszakmakBlokk = model.AgazatReszSzakmaTipusId != (int)AgazatReszSzakmaTipusEnum.na
|| model.ReszSzakmaTipusId != (int)ReszSzakmaTipusEnum.na ||
model.SzakmaReszSzakmaTipusId != (int)SzakmaReszSzakmaTipusEnum.na ? 1 : 0;
if ((isUjSzktBlokk + isNktBlokk + isRegiSzktBlokk + isUjSzktReszszakmakBlokk) > 1)
{
if (!model.IsUjSzktBlokkAlkalmaz
&& !model.IsNktBlokkAlkalmaz
&& !model.IsRegiSzktBlokkAlkalmaz
&& !model.IsUjSzktReszSzakmakBlokkAlkalmaz)
{
if (isUjSzktBlokk == 1)
{
modelState.AddModelError($"{nameof(AlapadatModel)}.{nameof(model.IsUjSzktBlokkAlkalmaz)}", ErrorResource.JegyzekAdatok1BlokkEngedelyezett);
}
else if (isNktBlokk == 1)
{
modelState.AddModelError($"{nameof(AlapadatModel)}.{nameof(model.IsNktBlokkAlkalmaz)}", ErrorResource.JegyzekAdatok1BlokkEngedelyezett);
}
else if (isRegiSzktBlokk == 1)
{
modelState.AddModelError($"{nameof(AlapadatModel)}.{nameof(model.IsRegiSzktBlokkAlkalmaz)}", ErrorResource.JegyzekAdatok1BlokkEngedelyezett);
}
else if (isUjSzktReszszakmakBlokk == 1)
{
modelState.AddModelError($"{nameof(AlapadatModel)}.{nameof(model.IsUjSzktReszSzakmakBlokkAlkalmaz)}", ErrorResource.JegyzekAdatok1BlokkEngedelyezett);
}
}
else if (model.IsUjSzktBlokkAlkalmaz)
{
SetNktBlokkNa(model);
SetRegiSzktBlokkNa(model);
SetUjSzktReszszakmakBlokkNa(model);
}
else if (model.IsNktBlokkAlkalmaz)
{
SetUjSzktBlokkNa(model);
SetRegiSzktBlokkNa(model);
SetUjSzktReszszakmakBlokkNa(model);
}
else if (model.IsRegiSzktBlokkAlkalmaz)
{
SetNktBlokkNa(model);
SetUjSzktBlokkNa(model);
SetUjSzktReszszakmakBlokkNa(model);
}
else if (model.IsUjSzktReszSzakmakBlokkAlkalmaz)
{
SetNktBlokkNa(model);
SetRegiSzktBlokkNa(model);
SetUjSzktBlokkNa(model);
}
}
}
}
private static void SetUjSzktBlokkNa(BesorolasModAlapadatBaseModel tanuloTanugyAdatok)
{
tanuloTanugyAdatok.AgazatUjSzktTipusId = (int)AgazatUjSzktTipusEnum.na;
tanuloTanugyAdatok.SzakmaTipusId = (int)SzakmaTipusEnum.na;
tanuloTanugyAdatok.SzakmairanyTipusId = (int)SzakmairanyTipusEnum.na;
}
private static void SetNktBlokkNa(BesorolasModAlapadatBaseModel tanuloTanugyAdatok)
{
tanuloTanugyAdatok.TanulmanyiTeruletNktTipusId = (int)TanulmanyiTeruletNktTipusEnum.na;
tanuloTanugyAdatok.SzakkepesitesNktTipusId = (int)SzakkepesitesNktTipusEnum.na;
tanuloTanugyAdatok.SzakiranyNktTipusId = (int)SzakiranyNktTipusEnum.na;
}
private static void SetRegiSzktBlokkNa(BesorolasModAlapadatBaseModel tanuloTanugyAdatok)
{
tanuloTanugyAdatok.SzakmacsoportId = (int)SzakmacsoportTipusEnum.Na;
tanuloTanugyAdatok.AgazatId = (int)AgazatTipusEnum.Na;
tanuloTanugyAdatok.SzakkepesitesId = (int)SzakkepesitesTipusEnum.Na;
tanuloTanugyAdatok.ReszSzakkepesitesId = (int)ReszszakkepesitesTipusEnum.Na;
}
private static void SetUjSzktReszszakmakBlokkNa(BesorolasModAlapadatBaseModel tanuloTanugyAdatok)
{
tanuloTanugyAdatok.SzakmaReszSzakmaTipusId = (int)SzakmaReszSzakmaTipusEnum.na;
tanuloTanugyAdatok.ReszSzakmaTipusId = (int)ReszSzakmaTipusEnum.na;
tanuloTanugyAdatok.AgazatReszSzakmaTipusId = (int)AgazatReszSzakmaTipusEnum.na;
}
}
}

View file

@ -0,0 +1,14 @@
using System;
namespace Kreta.Web.Areas.OsztalyCsoport.ModelInterface
{
public interface IBesorolasModValidationModel
{
DateTime? BelepesDatum { get; set; }
DateTime? KilepesDatum { get; set; }
int? TanuloId { get; set; }
int? CsoportId { get; set; }
int? OsztalyId { get; set; }
int? TanuloCsoportId { get; set; }
}
}

View file

@ -0,0 +1,11 @@
using System;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public interface IBesorolasTobbesModValidationModel
{
DateTime? BelepesDatum { get; set; }
DateTime? KilepesDatumHelperForValidation { get; set; }
DateTime? KilepesDatum { get; set; }
}
}

View file

@ -0,0 +1,29 @@
using System.ComponentModel.DataAnnotations;
using Kreta.Enums;
using Kreta.Resources;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public class AktTanevBesorolasSearchModel : BaseBesorolasSearchModel
{
/// <summary>
/// MVC default működése miatt szükség van erre.
/// </summary>
[System.Obsolete]
public AktTanevBesorolasSearchModel()
: base(null)
{
}
public AktTanevBesorolasSearchModel(string controllerName)
: base(controllerName)
{
}
// Minden kategóriát megjelenítünk/elkérünk
public override OktNevelesiKategoriaEnum? OktNevFelKategoriaId => null;
[Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))]
public override string TanuloSrc { get; set; }
}
}

View file

@ -0,0 +1,95 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public class AmiBesorolasGridModel : IKretaIdentity
{
public AmiBesorolasGridModel()
{
}
public AmiBesorolasGridModel(BesorolasModOsztalyGridItemCo itemCo)
{
ID = itemCo.ID;
TanuloId = itemCo.TanuloId;
OsztalyId = itemCo.OsztalyId;
Tanev = itemCo.Tanev;
OsztalyNev = itemCo.OsztalyNev;
TanuloNev = itemCo.TanuloNev;
NevElotagNelkul = itemCo.NevElotagNelkul;
BelepesDatum = itemCo.BelepesDatum;
KilepesDatum = itemCo.KilepesDatum;
ZaradekokSzama = itemCo.ZaradekokSzama;
NaploSorszam = itemCo.NaploSorszam;
TorzslapSzam = itemCo.TorzslapSzam;
UtolsoModositas = itemCo.UtolsoModositas;
KilepesRogzitesDatum = itemCo.KilepesRogzitesDatum;
}
public AmiBesorolasGridModel(BesorolasModCsoportGridItemCo itemCo)
{
ID = itemCo.ID;
TanuloId = itemCo.TanuloId;
Tanev = itemCo.Tanev;
CsoportNev = itemCo.CsoportNev;
TanuloNev = itemCo.TanuloNev;
NevElotagNelkul = itemCo.NevElotagNelkul;
BelepesDatum = itemCo.BelepesDatum;
KilepesDatum = itemCo.KilepesDatum;
ZaradekokSzama = itemCo.ZaradekokSzama;
NaploSorszam = itemCo.NaploSorszam;
TorzslapSzam = itemCo.TorzslapSzam;
UtolsoModositas = itemCo.UtolsoModositas;
KilepesRogzitesDatum = itemCo.KilepesRogzitesDatum;
TanuloOsztalyai = itemCo.TanuloOsztalyai;
}
public string ID { get; set; }
public int TanuloId { get; set; }
public int OsztalyId { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Tanev), ResourceType = typeof(OsztalyCsoportResource))]
public string Tanev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.OsztalyNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string OsztalyNev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.CsoportNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string CsoportNev { get; set; }
[Display(Name = nameof(TanuloResource.NovendekNeve), ResourceType = typeof(TanuloResource))]
public string TanuloNev { get; set; }
[Display(Name = nameof(TanuloResource.NovendekNeve), ResourceType = typeof(TanuloResource))]
public string NevElotagNelkul { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.BelepesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? BelepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KilepesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? KilepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.ZaradekokSzama), ResourceType = typeof(OsztalyCsoportResource))]
public int ZaradekokSzama { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.NaploSorszama), ResourceType = typeof(OsztalyCsoportResource))]
public string NaploSorszam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Torzslapszam), ResourceType = typeof(OsztalyCsoportResource))]
public string TorzslapSzam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.UtolsoModositas), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? UtolsoModositas { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KileptetesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? KilepesRogzitesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloOsztalyai), ResourceType = typeof(OsztalyCsoportResource))]
public string TanuloOsztalyai { get; set; }
}
}

View file

@ -0,0 +1,28 @@
using System.ComponentModel.DataAnnotations;
using Kreta.Enums;
using Kreta.Resources;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public class AmiBesorolasSearchModel : BaseBesorolasSearchModel
{
/// <summary>
/// MVC default működése miatt szükség van erre.
/// </summary>
[System.Obsolete]
public AmiBesorolasSearchModel()
: base(null)
{
}
public AmiBesorolasSearchModel(string controllerName)
: base(controllerName)
{
}
public override OktNevelesiKategoriaEnum? OktNevFelKategoriaId => OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas;
[Display(Name = nameof(TanuloResource.NovendekNeve), ResourceType = typeof(TanuloResource))]
public override string TanuloSrc { get; set; }
}
}

View file

@ -0,0 +1,32 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public class AmiOsztalyTanuloinakMunkarendjeModel
{
public int OsztalyId { get; set; }
public bool IsUresMegjelenik { get; set; }
public bool IsGridMegjelenik { get; set; }
public AmiOsztalyTanuloinakMunkarendjeGridModel MunkarendGridModel { get; set; }
}
public class AmiOsztalyTanuloinakMunkarendjeGridModel : IKretaIdentity
{
public string ID { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string TanuloNev { get; set; }
[Display(Name = nameof(TanuloResource.SzuletesiDatum), ResourceType = typeof(TanuloResource))]
public DateTime SzuletesiDatum { get; set; }
[Display(Name = nameof(TanuloResource.OktatasiAzonosito), ResourceType = typeof(TanuloResource))]
public string OktatasiAzonosito { get; set; }
[Display(Name = nameof(CommonResource.Munkarend), ResourceType = typeof(CommonResource))]
public string Munkarend { get; set; }
}
}

View file

@ -0,0 +1,101 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.Enums;
using Kreta.Resources;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public abstract class BaseBesorolasSearchModel
{
/// <summary>
/// Ezzel elérhető, hogy a model-ben meglegyen a controller neve.
/// </summary>
/// <param name="controllerName"></param>
protected BaseBesorolasSearchModel(string controllerName)
{
ExportControllerName = controllerName;
}
public string ExportControllerName { get; }
public int TanevId { get; set; }
public abstract OktNevelesiKategoriaEnum? OktNevFelKategoriaId { get; }
public abstract string TanuloSrc { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.OsztalyNeve), ResourceType = typeof(OsztalyCsoportResource))]
public int? OsztalyId { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.CsoportNeve), ResourceType = typeof(OsztalyCsoportResource))]
public int? CsoportId { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.BelepesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? BelepesiDatumTol { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.BelepesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? BelepesiDatumIg { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KilepesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? KilepesiDatumTol { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KilepesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? KilepesiDatumIg { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.ZaradekokSzama), ResourceType = typeof(OsztalyCsoportResource))]
public int? ZaradekokSzamaTol { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.ZaradekokSzama), ResourceType = typeof(OsztalyCsoportResource))]
public int? ZaradekokSzamaIg { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KiVagyAtSorolasiZaradek), ResourceType = typeof(OsztalyCsoportResource))]
public int? KiVagyAtSorolasiZaradek { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.NaploSorszama), ResourceType = typeof(OsztalyCsoportResource))]
public int? NaplosorszamTol { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.NaploSorszama), ResourceType = typeof(OsztalyCsoportResource))]
public int? NaplosorszamIg { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Torzslapszam), ResourceType = typeof(OsztalyCsoportResource))]
public string Torzslapszam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KileptetesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? KileptetesiDatumTol { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KileptetesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? KileptetesiDatumIg { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.UtolsoModositas), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? UtolsoModositasDatumTol { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.UtolsoModositas), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? UtolsoModositasDatumIg { get; set; }
public BesorolasSearchCO ConvertToCo(bool isKovTanev = false)
{
return new BesorolasSearchCO
{
OktNevFelKategoriaId = this.OktNevFelKategoriaId,
TanuloSrc = this.TanuloSrc,
OsztalyId = this.OsztalyId,
CsoportId = this.CsoportId,
BelepesiDatumTol = this.BelepesiDatumTol,
BelepesiDatumIg = this.BelepesiDatumIg,
KilepesiDatumTol = this.KilepesiDatumTol,
KilepesiDatumIg = this.KilepesiDatumIg,
ZaradekokSzamaTol = this.ZaradekokSzamaTol,
ZaradekokSzamaIg = this.ZaradekokSzamaIg,
KiVagyAtSorolasiZaradek = this.KiVagyAtSorolasiZaradek,
NaplosorszamTol = this.NaplosorszamTol,
NaplosorszamIg = this.NaplosorszamIg,
Torzslapszam = this.Torzslapszam,
KileptetesiDatumTol = this.KileptetesiDatumTol,
KileptetesiDatumIg = this.KileptetesiDatumIg,
UtolsoModositasDatumTol = this.UtolsoModositasDatumTol,
UtolsoModositasDatumIg = this.UtolsoModositasDatumIg,
IsKovTanev = isKovTanev
};
}
}
}

View file

@ -0,0 +1,149 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Classes;
using Kreta.Resources;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public class BesorolasModAlapadatBaseModel
{
[Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string TanuloNev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.OsztalyCsoport), ResourceType = typeof(OsztalyCsoportResource))]
public string OsztalyNev { get; set; }
[Display(Name = nameof(TanuloResource.OsszevontOsztalyEvfolyamTipus), ResourceType = typeof(TanuloResource))]
public int? TanuloEvfolyamTipusId { get; set; }
[Display(Name = nameof(TanuloResource.Tanterv), ResourceType = typeof(TanuloResource))]
public int? TantervId { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.BelepesDatum), ResourceType = typeof(OsztalyCsoportResource))]
[KretaRequired(typeof(OsztalyCsoportResource), nameof(OsztalyCsoportResource.ABelepesdatumanakMegadasaKotelezo))]
[DateRange(ErrorMessageResourceName = nameof(ErrorResource.BelepesDatumNemErvenyes), ErrorMessageResourceType = typeof(ErrorResource))]
public DateTime? BelepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KilepesDatum), ResourceType = typeof(OsztalyCsoportResource))]
[DateRange(ErrorMessageResourceName = nameof(ErrorResource.KilepesDatumNemErvenyes), ErrorMessageResourceType = typeof(ErrorResource))]
public DateTime? KilepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.OsztalyNaploSorszama), ResourceType = typeof(OsztalyCsoportResource))]
[KretaRequired(typeof(OsztalyCsoportResource), nameof(OsztalyCsoportResource.OsztalyNaploSorszamMegadasaKotelezo))]
[KretaRange(0, int.MaxValue, StringResourcesId = 2)]
public int? NaploSorszam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Torzslapszam), ResourceType = typeof(OsztalyCsoportResource))]
public string TorzslapSzam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Megjegyzes), ResourceType = typeof(OsztalyCsoportResource))]
[StringLength(maximumLength: 255, ErrorMessageResourceName = nameof(ErrorResource.AMegjegyzesMax255KarakterLehet), ErrorMessageResourceType = typeof(ErrorResource))]
public string Megjegyzes { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TavozoTanuloEsetenBefogadoIntezmeny), ResourceType = typeof(OsztalyCsoportResource))]
[StringLength(maximumLength: 255, ErrorMessageResourceName = nameof(ErrorResource.BefogadoIntezmenyMax255Karakter), ErrorMessageResourceType = typeof(ErrorResource))]
public string BefogadoIntezmeny { get; set; }
[Display(Name = nameof(TanuloResource.Agazat), ResourceType = typeof(TanuloResource))]
public int? AgazatId { get; set; }
[Display(Name = nameof(TanuloResource.Szakmacsoport), ResourceType = typeof(TanuloResource))]
public int? SzakmacsoportId { get; set; }
[Display(Name = nameof(TanuloResource.Szakkepesites), ResourceType = typeof(TanuloResource))]
public int? SzakkepesitesId { get; set; }
[Display(Name = nameof(TanuloResource.ReszSzakkepesites), ResourceType = typeof(TanuloResource))]
public int? ReszSzakkepesitesId { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Agazat), ResourceType = typeof(OsztalyCsoportResource))]
public int? AgazatUjSzktTipusId { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Szakma), ResourceType = typeof(OsztalyCsoportResource))]
public int? SzakmaTipusId { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Szakmairany), ResourceType = typeof(OsztalyCsoportResource))]
public int? SzakmairanyTipusId { get; set; }
[Display(Name = nameof(TanuloResource.Jogviszony), ResourceType = typeof(TanuloResource))]
public int? JogviszonyTipusId { get; set; }
[Display(Name = nameof(TanuloResource.SzakiranyNktTipus), ResourceType = typeof(TanuloResource))]
public int? SzakiranyNktTipusId { get; set; }
[Display(Name = nameof(TanuloResource.SzakkepesitesNktTipus), ResourceType = typeof(TanuloResource))]
public int? SzakkepesitesNktTipusId { get; set; }
[Display(Name = nameof(TanuloResource.TanulmanyiTeruletNktTipus), ResourceType = typeof(TanuloResource))]
public int? TanulmanyiTeruletNktTipusId { get; set; }
[Display(Name = nameof(TanuloResource.UjSzktReszszakmakAgazat), ResourceType = typeof(TanuloResource))]
public int? AgazatReszSzakmaTipusId { get; set; }
[Display(Name = nameof(TanuloResource.UjSzktReszszakmakSzakma), ResourceType = typeof(TanuloResource))]
public int? SzakmaReszSzakmaTipusId { get; set; }
[Display(Name = nameof(TanuloResource.UjSzktReszszakmakReszszakma), ResourceType = typeof(TanuloResource))]
public int? ReszSzakmaTipusId { get; set; }
public bool IsOsszevontOsztaly { get; set; }
public bool IsSzakkepesites { get; set; }
public bool IsNKTSzakkepzeses { get; set; }
public bool IsSzakkepzo { get; set; }
public DateTime KezdoNap { get; set; }
public DateTime UtolsoNap { get; set; }
public DateTime UtolsoTanitasiNap { get; set; }
public int? TanuloCsoportId { get; set; }
public int? TanuloId { get; set; }
public int? CsoportId { get; set; }
public int? OsztalyId { get; set; }
public bool IsSzakkepzeses { get; set; }
public bool IsMuveszetiSzakGimnazium { get; set; }
public bool IsUjSzktBlokkAlkalmaz { get; set; }
public bool IsNktBlokkAlkalmaz { get; set; }
public bool IsRegiSzktBlokkAlkalmaz { get; set; }
public bool IsUjSzktReszSzakmakBlokkAlkalmaz { get; set; }
public bool IsAgazatUjSzktTipusModificationEnabled { get; set; }
public bool IsSzakmaTipusModificationEnabled { get; set; }
public bool IsSzakmairanyTipusModificationEnabled { get; set; }
public bool IsSzakmacsoportModificationEnabled { get; set; }
public bool IsAgazatModificationEnabled { get; set; }
public bool IsSzakkepesitesModificationEnabled { get; set; }
public bool IsReszSzakkepesitesModificationEnabled { get; set; }
public bool IsTanulmanyiTeruletNktTipusModificationEnabled { get; set; }
public bool IsSzakkepesitesNktTipusModificationEnabled { get; set; }
public bool IsSzakiranyNktTipusModificationEnabled { get; set; }
public bool IsAgazatReszSzakmaTipusModificationEnabled { get; set; }
public bool IsSzakmaReszSzakmaTipusModificationEnabled { get; set; }
public bool IsReszSzakmaTipusModificationEnabled { get; set; }
}
}

View file

@ -0,0 +1,82 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public class BesorolasModCsoportGridModel : IKretaIdentity
{
public BesorolasModCsoportGridModel()
{
}
public BesorolasModCsoportGridModel(BesorolasModCsoportGridItemCo itemCo)
{
ID = itemCo.ID;
TanuloId = itemCo.TanuloId;
CsoportId = itemCo.CsoportId;
Tanev = itemCo.Tanev;
CsoportNev = itemCo.CsoportNev;
TanuloNev = itemCo.TanuloNev;
NevElotagNelkul = itemCo.NevElotagNelkul;
BelepesDatum = itemCo.BelepesDatum;
KilepesDatum = itemCo.KilepesDatum;
ZaradekokSzama = itemCo.ZaradekokSzama;
Vegzaradek = itemCo.Vegzaradek;
NaploSorszam = itemCo.NaploSorszam;
TorzslapSzam = itemCo.TorzslapSzam;
UtolsoModositas = itemCo.UtolsoModositas;
KilepesRogzitesDatum = itemCo.KilepesRogzitesDatum;
TanuloOsztalyai = itemCo.TanuloOsztalyai;
IsAutoEgyeniCsoport = itemCo.IsAutoEgyeniCsoport;
}
public string ID { get; set; }
public int TanuloId { get; set; }
public int CsoportId { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Tanev), ResourceType = typeof(OsztalyCsoportResource))]
public string Tanev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.CsoportNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string CsoportNev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string TanuloNev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string NevElotagNelkul { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.BelepesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? BelepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KilepesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? KilepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.ZaradekokSzama), ResourceType = typeof(OsztalyCsoportResource))]
public int ZaradekokSzama { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Vegzaradek), ResourceType = typeof(OsztalyCsoportResource))]
public string Vegzaradek { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.NaploSorszama), ResourceType = typeof(OsztalyCsoportResource))]
public string NaploSorszam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Torzslapszam), ResourceType = typeof(OsztalyCsoportResource))]
public string TorzslapSzam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.UtolsoModositas), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? UtolsoModositas { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KileptetesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? KilepesRogzitesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloOsztalyai), ResourceType = typeof(OsztalyCsoportResource))]
public string TanuloOsztalyai { get; set; }
public bool IsAutoEgyeniCsoport { get; set; }
}
}

View file

@ -0,0 +1,87 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.ModelInterface;
using Kreta.Web.Models;
using Kreta.Web.Models.EditorTemplates;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public class BesorolasModCsoportModel : TabStripModel
{
public BesorolasModCsoportModel(int tanuloCsoportId)
{
AlapadatModel = new BesorolasModCsoportAlapadatModel();
ZaradekModel = new ZaradekModel(tanuloCsoportId);
}
[ValidateObject]
public BesorolasModCsoportAlapadatModel AlapadatModel { get; set; }
[ValidateObject]
public ZaradekModel ZaradekModel { get; set; }
public TanuloCsoportCO ConvertModelToTanuloCsoportCo()
{
return new TanuloCsoportCO
{
ID = AlapadatModel.TanuloCsoportId.Value,
BelepDatum = AlapadatModel.BelepesDatum.Value,
KilepDatum = AlapadatModel.KilepesDatum,
NaploSorszam = AlapadatModel.NaploSorszam ?? default,
TorzslapSzam = AlapadatModel.TorzslapSzam,
Megjegyzes = AlapadatModel.Megjegyzes,
BefogadoIntezmeny = AlapadatModel.BefogadoIntezmeny
};
}
}
public class BesorolasModCsoportAlapadatModel : IBesorolasModValidationModel
{
[Display(Name = nameof(OsztalyCsoportResource.OsztalyCsoport), ResourceType = typeof(OsztalyCsoportResource))]
public string CsoportNev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string TanuloNev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.BelepesDatum), ResourceType = typeof(OsztalyCsoportResource))]
[KretaRequired(typeof(OsztalyCsoportResource), nameof(OsztalyCsoportResource.ABelepesdatumanakMegadasaKotelezo))]
[DateRange(ErrorMessageResourceName = nameof(ErrorResource.BelepesDatumNemErvenyes), ErrorMessageResourceType = typeof(ErrorResource))]
public DateTime? BelepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KilepesDatum), ResourceType = typeof(OsztalyCsoportResource))]
[DateRange(ErrorMessageResourceName = nameof(ErrorResource.KilepesDatumNemErvenyes), ErrorMessageResourceType = typeof(ErrorResource))]
public DateTime? KilepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.CsoportNaploSorszama), ResourceType = typeof(OsztalyCsoportResource))]
[KretaRange(0, int.MaxValue, StringResourcesId = 2)]
public int? NaploSorszam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Torzslapszam), ResourceType = typeof(OsztalyCsoportResource))]
public string TorzslapSzam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Megjegyzes), ResourceType = typeof(OsztalyCsoportResource))]
[StringLength(maximumLength: 255, ErrorMessageResourceName = nameof(ErrorResource.AMegjegyzesMax255KarakterLehet), ErrorMessageResourceType = typeof(ErrorResource))]
public string Megjegyzes { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TavozoTanuloEsetenBefogadoIntezmeny), ResourceType = typeof(OsztalyCsoportResource))]
[StringLength(maximumLength: 255, ErrorMessageResourceName = nameof(ErrorResource.BefogadoIntezmenyMax255Karakter), ErrorMessageResourceType = typeof(ErrorResource))]
public string BefogadoIntezmeny { get; set; }
public DateTime KezdoNap { get; set; }
public DateTime UtolsoNap { get; set; }
public DateTime UtolsoTanitasiNap { get; set; }
public int? TanuloCsoportId { get; set; }
public int? TanuloId { get; set; }
public int? CsoportId { get; set; }
public int? OsztalyId { get; set; }
}
}

View file

@ -0,0 +1,54 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public class BesorolasModCsoportbolKiirtTanulokGridModel : IKretaIdentity
{
public string ID { get; set; }
public int TanuloId { get; set; }
public int CsoportId { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Tanev), ResourceType = typeof(OsztalyCsoportResource))]
public string Tanev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.CsoportNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string CsoportNev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string TanuloNev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string NevElotagNelkul { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.BelepesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? BelepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KilepesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? KilepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.ZaradekokSzama), ResourceType = typeof(OsztalyCsoportResource))]
public int ZaradekokSzama { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Vegzaradek), ResourceType = typeof(OsztalyCsoportResource))]
public string Vegzaradek { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.NaploSorszama), ResourceType = typeof(OsztalyCsoportResource))]
public string NaploSorszam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Torzslapszam), ResourceType = typeof(OsztalyCsoportResource))]
public string TorzslapSzam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.UtolsoModositas), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? UtolsoModositas { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KileptetesDatuma), ResourceType = typeof(OsztalyCsoportResource))]
public DateTime? KilepesRogzitesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloOsztalyai), ResourceType = typeof(OsztalyCsoportResource))]
public string TanuloOsztalyai { get; set; }
}
}

View file

@ -0,0 +1,87 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.ModelInterface;
using Kreta.Web.Models;
using Kreta.Web.Models.EditorTemplates;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public class BesorolasModCsoportbolKiirtTanulokModel : TabStripModel
{
public BesorolasModCsoportbolKiirtTanulokModel(int tanuloCsoportId)
{
AlapadatModel = new BesorolasModCsoportbolKiirtTanulokAlapadatModel();
ZaradekModel = new ZaradekModel(tanuloCsoportId);
}
[ValidateObject]
public BesorolasModCsoportbolKiirtTanulokAlapadatModel AlapadatModel { get; set; }
[ValidateObject]
public ZaradekModel ZaradekModel { get; set; }
public TanuloCsoportCO ConvertModelToTanuloCsoportCo()
{
return new TanuloCsoportCO
{
ID = AlapadatModel.TanuloCsoportId.Value,
BelepDatum = AlapadatModel.BelepesDatum.Value,
KilepDatum = AlapadatModel.KilepesDatum,
NaploSorszam = AlapadatModel.NaploSorszam ?? default,
TorzslapSzam = AlapadatModel.TorzslapSzam,
Megjegyzes = AlapadatModel.Megjegyzes,
BefogadoIntezmeny = AlapadatModel.BefogadoIntezmeny
};
}
}
public class BesorolasModCsoportbolKiirtTanulokAlapadatModel : IBesorolasModValidationModel
{
[Display(Name = nameof(OsztalyCsoportResource.OsztalyCsoport), ResourceType = typeof(OsztalyCsoportResource))]
public string CsoportNev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string TanuloNev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.BelepesDatum), ResourceType = typeof(OsztalyCsoportResource))]
[KretaRequired(typeof(OsztalyCsoportResource), nameof(OsztalyCsoportResource.ABelepesdatumanakMegadasaKotelezo))]
[DateRange(ErrorMessageResourceName = nameof(ErrorResource.BelepesDatumNemErvenyes), ErrorMessageResourceType = typeof(ErrorResource))]
public DateTime? BelepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.KilepesDatum), ResourceType = typeof(OsztalyCsoportResource))]
[DateRange(ErrorMessageResourceName = nameof(ErrorResource.KilepesDatumNemErvenyes), ErrorMessageResourceType = typeof(ErrorResource))]
public DateTime? KilepesDatum { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.NaploSorszama), ResourceType = typeof(OsztalyCsoportResource))]
[KretaRange(0, int.MaxValue, StringResourcesId = 2)]
public int? NaploSorszam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Torzslapszam), ResourceType = typeof(OsztalyCsoportResource))]
public string TorzslapSzam { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.Megjegyzes), ResourceType = typeof(OsztalyCsoportResource))]
[StringLength(maximumLength: 255, ErrorMessageResourceName = nameof(ErrorResource.AMegjegyzesMax255KarakterLehet), ErrorMessageResourceType = typeof(ErrorResource))]
public string Megjegyzes { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TavozoTanuloEsetenBefogadoIntezmeny), ResourceType = typeof(OsztalyCsoportResource))]
[StringLength(maximumLength: 255, ErrorMessageResourceName = nameof(ErrorResource.BefogadoIntezmenyMax255Karakter), ErrorMessageResourceType = typeof(ErrorResource))]
public string BefogadoIntezmeny { get; set; }
public DateTime ElsoTanitasiNap { get; set; }
public DateTime UtolsoNap { get; set; }
public DateTime UtolsoTanitasiNap { get; set; }
public int? TanuloCsoportId { get; set; }
public int? TanuloId { get; set; }
public int? CsoportId { get; set; }
public int? OsztalyId { get; set; }
}
}

View file

@ -0,0 +1,27 @@
using System;
using System.ComponentModel.DataAnnotations;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Resources;
namespace Kreta.Web.Areas.OsztalyCsoport.Models
{
public class BesorolasModFelNemVettTanuloTorleseGridModel : IKretaIdentity
{
public string ID { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string TanuloNev { get; set; }
[Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))]
public string NevElotagNelkul { get; set; }
[Display(Name = nameof(FelhasznalokResource.AnyjaNeve), ResourceType = typeof(FelhasznalokResource))]
public string AnyjaNeve { get; set; }
[Display(Name = nameof(FelhasznalokResource.SzuletesiHely), ResourceType = typeof(FelhasznalokResource))]
public string SzuletesiHely { get; set; }
[Display(Name = nameof(FelhasznalokResource.SzuletesiIdo), ResourceType = typeof(FelhasznalokResource))]
public DateTime SzuletesiIdo { get; set; }
}
}

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