init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,114 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Web.Http;
|
||||
using Kendo.Mvc.UI;
|
||||
using Kreta.BusinessLogic.Exceptions;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.BusinessLogic.Utils;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Web.Areas.Feljegyzes.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.Feljegyzes.ApiControllers
|
||||
{
|
||||
[ApiRoleClaimsAuthorize(true)]
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
|
||||
public class BaseBeirasokApiController : ApiController
|
||||
{
|
||||
[NonAction]
|
||||
public DataSourceResult GetBeirasokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request, SzervezetTipusEnum? szervezetTipus)
|
||||
{
|
||||
var model = JsonConvert.DeserializeObject<FeljegyzesekSearchModel>(data);
|
||||
if (model?.CsoportIdSearch == null)
|
||||
{
|
||||
return new DataSourceResult();
|
||||
}
|
||||
|
||||
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
|
||||
var tanevCo = helper.GetTanevInfo();
|
||||
|
||||
var elsoTanitasiNap = tanevCo.OraFelvetelKezdete.Date;
|
||||
|
||||
var feljegyzesHelper = new FeljegyzesHelper(ConnectionTypeExtensions.GetSessionConnectionType())
|
||||
{
|
||||
GridParameters = Converter.GridParameter(request),
|
||||
};
|
||||
|
||||
var ds = feljegyzesHelper.GetBeirasokGrid(model.CsoportIdSearch.Value, elsoTanitasiNap, (int?)szervezetTipus);
|
||||
|
||||
var result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
|
||||
public DataSourceResult GetBeirasokReszletekGrid(int tanuloId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request, SzervezetTipusEnum? szervezetTipus)
|
||||
{
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType())
|
||||
{
|
||||
GridParameters = Converter.GridParameter(request),
|
||||
};
|
||||
|
||||
var ds = helper.GetBeirasokReszletekForGrid(tanuloId, (int?)szervezetTipus, true);
|
||||
|
||||
var result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage SaveBeiras(BeirasModel model)
|
||||
{
|
||||
var allowedTags = new List<string> {
|
||||
"span", "#text", "b", "blockquote",
|
||||
"code", "del", "dd", "dl", "dt",
|
||||
"em", "h1", "h2", "h3", "i", "kbd",
|
||||
"li", "ol", "p", "pre", "s", "sup",
|
||||
"sub", "strong", "strike", "ul", "br", "hr", "a", "div"
|
||||
};
|
||||
model.Tartalom = CommonUtils.RemoveNotAllowedHtmlTags(WebUtility.HtmlDecode(model.Tartalom), allowedTags);
|
||||
|
||||
ModelState.Merge(model.Validate());
|
||||
|
||||
var co = model.ToCo();
|
||||
var feljegyzesHelper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
var isTanuloTagjaOsztalynakByEsemenyDatumError = feljegyzesHelper.IsTanuloTagjaOsztalyCsoportnakByEsemenyDatum(co);
|
||||
if (!string.IsNullOrWhiteSpace(isTanuloTagjaOsztalynakByEsemenyDatumError))
|
||||
{
|
||||
ModelState.AddModelError("EsemenyDatuma", isTanuloTagjaOsztalynakByEsemenyDatumError);
|
||||
}
|
||||
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
_ = feljegyzesHelper.SaveFeljegyzes(co, isBeiras: true);
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
|
||||
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage DeleteBeiras(FeljegyzesTorlesModel model)
|
||||
{
|
||||
try
|
||||
{
|
||||
new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).DeleteBeiras(model.Id, model.TanuloId);
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
catch (CannotBeDeletedException ex)
|
||||
{
|
||||
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue