kreta/KretaWeb/Areas/Tanar/ApiControllers/NemNaplozottTanorakApiController.cs
2024-03-13 00:33:46 +01:00

70 lines
3.1 KiB
C#

using System.Collections.Generic;
using System.Data;
using System.Web.Http;
using System.Web.Http.ModelBinding;
using System.Web.Http.Results;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Resources;
using Kreta.Web.Areas.Orarend.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Security;
using Newtonsoft.Json;
namespace Kreta.Web.Areas.Tanar.ApiControllers
{
[ApiRoleClaimsAuthorize(true)]
[ApiRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue)]
public class NemNaplozottTanorakApiController : ApiController
{
public DataSourceResult GetNemNaplozottTanorakGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
{
var model = JsonConvert.DeserializeObject<NemNaplozottTanorakSearchModel>(data);
var co = NemNaplozottTanorakSearchModel.ConvertModelToCo(model);
co.TanarSrc = ClaimData.FelhasznaloId;
var orarendHelper = new OrarendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
orarendHelper.GridParameters = Converter.GridParameter(request);
DataSet ds = orarendHelper.GetNemNaplozottOrarendiOrak(co);
return ds.ToDataSourceResult();
}
public DataSourceResult GetNemNaplozottTanorakExportGrid(string searchFilter, string sortColumn, string sortDir)
{
var model = JsonConvert.DeserializeObject<NemNaplozottTanorakSearchModel>(searchFilter);
var co = NemNaplozottTanorakSearchModel.ConvertModelToCo(model);
co.TanarSrc = ClaimData.FelhasznaloId;
var h = new OrarendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DataSet orak = h.GetNemNaplozottOrarendiOrak(co);
if (sortColumn != "-" && sortDir != "-")
{
DataSet result = new DataSet();
orak.Tables[0].DefaultView.Sort = (sortColumn).ToUpper() + " " + (sortDir).ToUpper();
result.Tables.Add(orak.Tables[0].DefaultView.ToTable());
return result.ToDataSourceResult();
}
return orak.ToDataSourceResult();
}
[HttpPost]
public JsonResult<List<ExportColumn>> GetExportColumns()
{
List<ExportColumn> Items = new List<ExportColumn>();
Items.Add(new ExportColumn() { Field = "OraKezdeteDateST", Title = OrarendResource.Datum });
Items.Add(new ExportColumn() { Field = "HetNapjaValos_DNAME", Title = OrarendResource.HetNapja });
Items.Add(new ExportColumn() { Field = "Oraszam", Title = OrarendResource.Oraszam });
Items.Add(new ExportColumn() { Field = "OraKezdeteTimeText", Title = OrarendResource.OraKezdete });
Items.Add(new ExportColumn() { Field = "OsztalyNev", Title = OrarendResource.OsztalyCsoport });
Items.Add(new ExportColumn() { Field = "TargyNev", Title = OrarendResource.Targy });
Items.Add(new ExportColumn() { Field = "HelyettesitoTanarNev", Title = OrarendResource.HelyettesitoTanar });
return Json(Items);
}
}
}