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); } } }