init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,129 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Web.Http;
|
||||
using System.Web.Http.ModelBinding;
|
||||
using Kendo.Mvc.UI;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Core;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Framework.Util;
|
||||
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Grid;
|
||||
using Kreta.Web.Models;
|
||||
using Kreta.Web.Security;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Kreta.Web.Areas.TanuloErtekeles.ApiControllers
|
||||
{
|
||||
[ApiRoleClaimsAuthorize(true)]
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.Ellenorzo.ClaimValue)]
|
||||
public class OsztalyzatokApiController : ApiController
|
||||
{
|
||||
public DataSourceResult GetOsztalyzatokFeleviErtesitoGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
var result = GetOsztalyzatokErtesitoGrid(data, request, (int)ErtekelesTipusEnum.felevi_jegy_ertekeles);
|
||||
return result;
|
||||
}
|
||||
|
||||
public DataSourceResult GetOsztalyzatokEvvegiErtesitoGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))]
|
||||
DataSourceRequest request)
|
||||
{
|
||||
var result = GetOsztalyzatokErtesitoGrid(data, request, (int)ErtekelesTipusEnum.evvegi_jegy_ertekeles);
|
||||
return result;
|
||||
}
|
||||
|
||||
private DataSourceResult GetOsztalyzatokErtesitoGrid(string data, DataSourceRequest request, int ertekelesTipusEnumId)
|
||||
{
|
||||
var model = JsonConvert.DeserializeObject<OsztalyzatokFeleviEvvegiErtesitoModel>(data);
|
||||
var osztalyId = model.OsztalyId;
|
||||
|
||||
if (!osztalyId.IsEntityId())
|
||||
{
|
||||
return new DataSourceResult();
|
||||
}
|
||||
|
||||
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType())
|
||||
{
|
||||
GridParameters = Converter.GridParameter(request)
|
||||
};
|
||||
var feladatKategoriaId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCsoportFeladatKategoria(osztalyId.Value);
|
||||
var tanuloErtekelesListModel = new TanuloErtekelesListModel
|
||||
{
|
||||
TanuloIdSearch = ClaimData.FelhasznaloId,
|
||||
TipusIdSearch = ertekelesTipusEnumId,
|
||||
OsztalyCsoportIdSearch = osztalyId.Value,
|
||||
FeladatKategoriaIdSearch = feladatKategoriaId,
|
||||
KellKapcsolodoCsoportokSearch = true
|
||||
};
|
||||
var dataSet = helper.GetTanuloErtekelesListGridDataSet(tanuloErtekelesListModel.ToCo(), pErtekelesTextTemaval: true);
|
||||
var dataTable = dataSet.Tables[0];
|
||||
if (feladatKategoriaId != (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas)
|
||||
{
|
||||
var datum = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetDatumInTanev();
|
||||
var tanuloOsztalyId = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloOsztalyIdByFeladatKategoria(ClaimData.FelhasznaloId, datum, (OktNevelesiKategoriaEnum)feladatKategoriaId);
|
||||
if (!tanuloOsztalyId.IsEntityId())
|
||||
{
|
||||
dataTable.Rows.Clear();
|
||||
}
|
||||
else
|
||||
{
|
||||
var tanuloOsztalyEvfolyamTipusId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCsoportEvfolyamTipusId(tanuloOsztalyId.Value);
|
||||
var tanuloIdAndFeladatKategoriaIdAndEvfolyamTipusIdList = new List<(int tanuloId, int feladatKategoriaId, int? evfolyamTipusId)>
|
||||
{
|
||||
(ClaimData.FelhasznaloId, feladatKategoriaId, tanuloOsztalyEvfolyamTipusId)
|
||||
};
|
||||
helper.RemoveMasEvfolyamTanuloErtekelesek(dataTable, tanuloIdAndFeladatKategoriaIdAndEvfolyamTipusIdList);
|
||||
}
|
||||
}
|
||||
|
||||
helper.RemoveTanuloJogosultsagMiattiErtekelesek(new List<int>() { ClaimData.FelhasznaloId }, dataTable);
|
||||
|
||||
var gridDataSet = dataSet.Tables[0].Rows.Count > 0 ? GetSortedDataSet(dataSet.Tables[0]) : dataSet;
|
||||
return gridDataSet.ToDataSourceResult();
|
||||
}
|
||||
|
||||
private DataSet GetSortedDataSet(DataTable dataTable)
|
||||
{
|
||||
var targyKategoriaTipusDictionaryItemList = ((int)GeneratedAdatszotarTipusEnum.TargyKategoriaTipus).GetItemsByType(ClaimData.SelectedTanevID.Value);
|
||||
|
||||
dataTable.Columns.Add("TantargyKategoriaOrder");
|
||||
dataTable.Columns.Add("FotargyTantargyKategoriaOrder");
|
||||
var tanuloErtekelesRows = dataTable.Rows.Cast<DataRow>().ToList();
|
||||
foreach (var dataRow in tanuloErtekelesRows)
|
||||
{
|
||||
var tantargyKategoriaId = SDAConvert.ToNullableInt32(dataRow["TantargyKategoriaId"]);
|
||||
dataRow["TantargyKategoriaOrder"] = SDAConvert.ToBooleanFromTF(dataRow["IsMagatartasSzorgalom"]) ? 0 : tantargyKategoriaId.IsEntityId() ? targyKategoriaTipusDictionaryItemList.Single(x => x.Id == tantargyKategoriaId.Value).Order : null;
|
||||
|
||||
var fotargyTantargyKategoriaId = SDAConvert.ToNullableInt32(dataRow["FotargyTantargyKategoriaId"]);
|
||||
dataRow["FotargyTantargyKategoriaOrder"] = fotargyTantargyKategoriaId.IsEntityId() ? targyKategoriaTipusDictionaryItemList.Single(x => x.Id == fotargyTantargyKategoriaId.Value).Order : null;
|
||||
}
|
||||
|
||||
var sortedDataTable = dataTable
|
||||
.AsEnumerable()
|
||||
.OrderBy(x => SDAConvert.ToBoolean(x["IsFotargy"]) ? SDAConvert.ToNullableInt32(x["TantargyKategoriaOrder"]) ?? 10000 : SDAConvert.ToNullableInt32(x["FotargyTantargyKategoriaOrder"]) ?? 10000)
|
||||
.ThenBy(x => SDAConvert.ToBoolean(x["IsFotargy"]) ? SDAConvert.ToString(x["TantargyNev"]) : SDAConvert.ToString(x["FotargyNev"]))
|
||||
.ThenBy(x => SDAConvert.ToBoolean(x["IsFotargy"]) ? 0 : 1)
|
||||
.ThenBy(x => SDAConvert.ToString(x["TantargyNev"]))
|
||||
.CopyToDataTable();
|
||||
|
||||
var gridDataSet = new DataSet();
|
||||
gridDataSet.Tables.Add(sortedDataTable);
|
||||
|
||||
return gridDataSet;
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public ZaradekModel GetTanuloZaradek(string osztalyId)
|
||||
{
|
||||
var tanuloCo = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloiAdatok(ClaimData.FelhasznaloId, kovTanevId: null, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater, int.Parse(osztalyId));
|
||||
|
||||
return tanuloCo.Zaradek.TanuloCsoportId.HasValue ? new ZaradekModel(tanuloCo.Zaradek.TanuloCsoportId.Value, tanuloCo.ID.Value) : new ZaradekModel();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue