38 lines
1.7 KiB
C#
38 lines
1.7 KiB
C#
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.Feljegyzes.Models;
|
|
using Kreta.Web.Helpers;
|
|
using Kreta.Web.Helpers.Grid;
|
|
using Kreta.Web.Security;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
|
{
|
|
[ApiRoleClaimsAuthorize(true)]
|
|
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public class AdminTanuloKozossegiSzolgalataiApiController : ApiController
|
|
{
|
|
public DataSourceResult GetTanuloKozossegiSzolgalataiGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
|
{
|
|
int felhasznalo = ClaimData.IsAdministrator ? -1 : ClaimData.FelhasznaloId;
|
|
|
|
bool toroltElemek = !ClaimManager.HasPackage(KretaClaimPackages.Ellenorzo.ClaimValue);
|
|
bool hasTeljesTorlesJog = toroltElemek && ClaimManager.HasPackage(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue);
|
|
|
|
var model = JsonConvert.DeserializeObject<AdminKozossegiSzolgalatokSearchModel>(data);
|
|
var co = model.ConvertModelToCo();
|
|
|
|
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
|
|
|
helper.GridParameters = Converter.GridParameter(request);
|
|
var ds = helper.GetKozossegiSzolgalatokReszletekForGrid(-1, co, felhasznalo, toroltElemek, hasTeljesTorlesJog);
|
|
|
|
DataSourceResult result = ds.ToDataSourceResult();
|
|
|
|
return result;
|
|
}
|
|
}
|
|
}
|