kreta/KretaWeb/Areas/OsztalyCsoport/Logic/OsztalyCsoportLogic.cs
2024-03-13 00:33:46 +01:00

2098 lines
98 KiB
C#

using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Text.RegularExpressions;
using System.Web.Mvc;
using Kendo.Mvc;
using Kendo.Mvc.Infrastructure;
using Kendo.Mvc.UI;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Classes.ComboBox;
using Kreta.BusinessLogic.Exceptions;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.Core;
using Kreta.Enums;
using Kreta.Framework;
using Kreta.Framework.Entities;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.OsztalyCsoport.Models;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Helpers.Grid;
using Kreta.Web.Helpers.Modal;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
using Newtonsoft.Json;
using static Kreta.Core.Constants;
namespace Kreta.Web.Areas.OsztalyCsoport.Logic
{
public abstract class OsztalyCsoportLogic
{
protected static readonly List<int> nyelviElokeszitosOsztalyok = new List<int> { (int)EvfolyamTipusEnum._5_Ny, (int)EvfolyamTipusEnum._7_Ny, (int)EvfolyamTipusEnum._9_Ny };
const int csoportMaxLetszam = 999;
const int osztalyMaxLetszam = 40;
public static readonly List<int> AmiEvfoylamIdList = new List<int>
{
(int)EvfolyamTipusEnum.na,
(int)EvfolyamTipusEnum.Elokepzo1,
(int)EvfolyamTipusEnum.Elokepzo2,
(int)EvfolyamTipusEnum._1,
(int)EvfolyamTipusEnum._2,
(int)EvfolyamTipusEnum._3,
(int)EvfolyamTipusEnum._4,
(int)EvfolyamTipusEnum._5,
(int)EvfolyamTipusEnum._6,
(int)EvfolyamTipusEnum._7,
(int)EvfolyamTipusEnum._8,
(int)EvfolyamTipusEnum._9,
(int)EvfolyamTipusEnum._10,
(int)EvfolyamTipusEnum._11,
(int)EvfolyamTipusEnum._12,
(int)EvfolyamTipusEnum._13,
(int)EvfolyamTipusEnum._1_13,
(int)EvfolyamTipusEnum._2_14,
(int)EvfolyamTipusEnum.Osszevont_osztaly,
(int)EvfolyamTipusEnum._3_15
};
public static readonly List<int> SzakkepzoEvfolyamIdList = new List<int>
{
(int)EvfolyamTipusEnum._1_9_4_es_szintu_szakkepzo_iskola,
(int)EvfolyamTipusEnum._2_10_4_es_szintu_szakkepzo_iskola,
(int)EvfolyamTipusEnum._3_11_4_es_szintu_szakkepzo_iskola,
(int)EvfolyamTipusEnum._4_12_4_es_szintu_szakkepzo_iskola_4_eves_,
(int)EvfolyamTipusEnum.ksz_11_4_es_szintu_szakkepzo_iskola_kozismeret_nelkuli,
(int)EvfolyamTipusEnum.ksz_12_4_es_szintu_szakkepzo_iskola_kozismeret_nelkuli,
(int)EvfolyamTipusEnum._9_orientacios_evfolyam,
(int)EvfolyamTipusEnum._9_ny_technikum_nyelvi_elokeszito,
(int)EvfolyamTipusEnum._9_kny_technikum_ket_tanitasi_nyelvu_elokeszito,
(int)EvfolyamTipusEnum._9_technikum,
(int)EvfolyamTipusEnum._9_technikum_ket_tanitasi_nyelvu_,
(int)EvfolyamTipusEnum._10_technikum,
(int)EvfolyamTipusEnum._10_technikum_ket_tanitasi_nyelvu_,
(int)EvfolyamTipusEnum._11_technikum,
(int)EvfolyamTipusEnum._11_technikum_ket_tanitasi_nyelvu_,
(int)EvfolyamTipusEnum._12_technikum,
(int)EvfolyamTipusEnum._12_technikum_ket_tanitasi_nyelvu_,
(int)EvfolyamTipusEnum._13_technikum,
(int)EvfolyamTipusEnum._13_technikum_ket_tanitasi_nyelvu_,
(int)EvfolyamTipusEnum._14_technikum_6_eves_kepzes_,
(int)EvfolyamTipusEnum._14_technikum_ket_tanitasi_nyelvu_6_eves_kepzes_,
(int)EvfolyamTipusEnum._1_13_5_os_szintu_technikum,
(int)EvfolyamTipusEnum._2_14_5_os_szintu_technikum,
(int)EvfolyamTipusEnum.muhelyiskola_osztaly,
(int)EvfolyamTipusEnum.ksz_13_4_es_szintu_szakkepzo_iskola_kozismeret_nelkuli,
(int)EvfolyamTipusEnum._3_15_5_os_szintu_technikum,
(int)EvfolyamTipusEnum.dobbanto_elokeszito,
};
public static string SaveOsztalyGroup(ModOsztalyModel model)
{
var errorMessage = string.Empty;
var helper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var co = model.ConvertModelToTobbesModCO();
var sikertelenUpdateOsztalyNev = string.Empty;
if (string.IsNullOrWhiteSpace(model.OsztalyIDArrayString))
{
sikertelenUpdateOsztalyNev = helper.UpdateOsztalyTobbes(co);
if (!string.IsNullOrWhiteSpace(sikertelenUpdateOsztalyNev))
{
errorMessage += $"{Core.Constants.General.Sortores}{sikertelenUpdateOsztalyNev}";
}
}
else
{
foreach (var item in model.OsztalyIdArray)
{
co.ID = int.Parse(item);
sikertelenUpdateOsztalyNev = helper.UpdateOsztalyTobbes(co);
if (!string.IsNullOrWhiteSpace(sikertelenUpdateOsztalyNev))
{
errorMessage += $"{Core.Constants.General.Sortores}{sikertelenUpdateOsztalyNev}";
}
}
}
return errorMessage;
}
public static string DeleteOsztalyok(List<int> osztalyIdLista, bool csoportokTorlese, out bool deleteError)
{
var message = new StringBuilder();
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
var osztalyHelper = new OsztalyHelper(connectionType);
deleteError = false;
foreach (var osztalyId in osztalyIdLista)
{
try
{
message.AppendFormat(OsztalyCsoportResource.Az0NevuOsztalyTorleseSikeresenMegtortent, osztalyHelper.DeleteClass(osztalyId, csoportokTorlese, ClaimData.FelhasznaloId, updateTanoraEvesSorszam: false)).AppendLine();
}
catch (CannotBeDeletedException e)
{
deleteError = true;
message.AppendLine(e.Message);
}
catch (EntityDeleteFailedException ex)
{
deleteError = true;
message.AppendFormat(ErrorResource.Az0NemTorolhetoMertEgyVagyTobbKapcsolodasaVanKapcsolatok1, CommonResource.Osztaly, ex.ConnectionErrorMessage).AppendLine();
}
}
if (osztalyIdLista.Any())
{
new TanoraHelper(connectionType).UpdateTanitasiOraEvesSorszamTeljesTanev();
}
if (!deleteError)
{
if (osztalyIdLista.Count == 1)
{
message.Clear();
message.Append(CommonResource.ATorlesSikeresenMegtortent);
}
else if (osztalyIdLista.Count > 1)
{
message.Clear();
message.AppendFormat(OsztalyCsoportResource.XDarabOsztályTorleseSikeresenMegtortent, osztalyIdLista.Count);
}
}
return message.ToString();
}
protected static Dictionary<string, string> ValidateBaseOsztaly(OsztalyBaseModel model)
{
var customModelState = new Dictionary<string, string>();
var tanev = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanevInfo();
ValidateOsztalyCsoportNev(customModelState, model.OsztalyNev, model.ID);
if (model.OsztalynaploMegnyitasa.HasValue && !(model.OsztalynaploMegnyitasa.Value >= tanev.KezdoNap && model.OsztalynaploMegnyitasa.Value <= tanev.UtolsoNap))
{
customModelState.Add("OsztalynaploMegnyitasa", string.Format(OsztalyCsoportResource.OsztalynaploMegnyitasiDatuma0Es1KozottiIdoszakbanLehet, tanev.KezdoNap.ToShortDateString(), tanev.UtolsoNap.ToShortDateString()));
}
if (model.OsztalyfonokId.HasValue && model.OsztalyfonokHelyettesId.HasValue && model.OsztalyfonokId == model.OsztalyfonokHelyettesId)
{
customModelState.Add("OsztalyfonokHelyettesId", Framework.StringResourcesUtil.GetString(3872)); //Az osztályfőnök és a helyettes nem lehet azonos!
}
ValidateTervezettLetszam(customModelState, model.TervezettLetszam, osztalyMaxLetszam);
if (model.OsztalynaploLezarasa.HasValue && (model.OsztalynaploLezarasa.Value < tanev.KezdoNap || model.OsztalynaploLezarasa.Value > tanev.UtolsoNap))
{
//Az osztálynapló lezárásának dátuma a tanév első és utolsó napja között lehet
customModelState.Add("OsztalynaploLezarasa", StringResourcesUtil.GetString(3874));
}
if (model.OsztalynaploMegnyitasa.HasValue && model.OsztalynaploLezarasa.HasValue && model.OsztalynaploLezarasa.Value < model.OsztalynaploMegnyitasa.Value)
{
//Az osztálynapló lezárás dátuma nem lehet korábban, mint a megnyitás dátuma.
var key = customModelState.ContainsKey("OsztalynaploLezarasa") ? "OsztalynaploLezarasaEgyeb" : "OsztalynaploLezarasa";
customModelState.Add(key, StringResourcesUtil.GetString(3927));
}
if (!string.IsNullOrWhiteSpace(model.OsztalypenzBankszamlaszama))
{
var regex = new Regex(RegularExpressions.Bankszamla);
if (!regex.Match(model.OsztalypenzBankszamlaszama).Success)
{
customModelState.Add("OsztalypenzBankszamlaszama", OsztalyCsoportResource.AzOsztalypenzBankszamlaszamaHibasFormatumu);
}
}
if (!model.KepzesiForma.HasValue && !(ClaimData.IsSzakkepzoIntezmeny && ClaimData.IsSelectedTanev21_22OrLater))
{
customModelState.Add("KepzesiForma", OsztalyCsoportResource.KepzestipusMegadasaKotelezo);
}
ValidateAmiEvfolyam(customModelState, model.FeladatEllatasiHelyId.Value, model.EvfolyamTipusa.Value);
return customModelState;
}
public static Dictionary<string, string> ValidateNaplosorszamEsTorzslapszamBeallitasaiModelList(List<NaplosorszamEsTorzslapszamBeallitasaiModel> naplosorszamEsTorzslapszamBeallitasaiModelList)
{
Dictionary<string, string> customModelState = new Dictionary<string, string>();
foreach (NaplosorszamEsTorzslapszamBeallitasaiModel model in naplosorszamEsTorzslapszamBeallitasaiModelList)
{
if (model.Naplosorszam.HasValue && model.Naplosorszam < 0)
{
customModelState.Add(
$"NaplosorszamEsTorzslapszamBeallitasaiGrid_Naplosorszam_{model.Id}",
string.Format(TanuloResource.NaploSorszamaNemNullaVagyPozitivSzam, model.Nev, model.BelepesDatum.ToString(ToStringPattern.HungarianDate), model.KilepesDatum?.ToString(ToStringPattern.HungarianDate)));
}
if (model.Torzslapszam?.Length > 500)
{
customModelState.Add(
$"NaplosorszamEsTorzslapszamBeallitasaiGrid_Torzslapszam_{model.Id}",
string.Format(TanuloResource.TorzslapSzamaTobbMint500Karakter, model.Nev, model.BelepesDatum.ToString(ToStringPattern.HungarianDate), model.KilepesDatum?.ToString(ToStringPattern.HungarianDate)));
}
}
return customModelState;
}
public static Dictionary<string, string> ValidateOsztalyGroup(ModOsztalyModel model)
{
var customModelState = new Dictionary<string, string>();
if (model.Evfolyam.HasValue && nyelviElokeszitosOsztalyok.Contains(model.Evfolyam.Value) && !(model.NyelviElokeszito.HasValue && model.NyelviElokeszito.ToBool()))
{
customModelState.Add("Evfolyam", OsztalyCsoportResource.NyelviElokeszitosOsztalyt5ny7ny9nyCsakNyelviElőkészítőLenyilóListaIgenreAllitasavalLehetFelvenni);
}
ValidateOsztalynaplo(customModelState, model.OsztalynaploMegnyitasa, model.OsztalynaploLezarasa);
ValidateTervezettLetszam(customModelState, model.TervezettLetszam, osztalyMaxLetszam);
if (model.Evfolyam.HasValue)
{
ValidateAmiEvfolyamGroup(customModelState, model.OsztalyIdArray, model.Evfolyam.Value);
}
return customModelState;
}
public static void AktTanevOsztalyVisszairatkoztatasJogviszonyCustomValidation(System.Web.Http.ModelBinding.ModelStateDictionary modelState, AktTanevOsztalyVisszairatkoztatasModel model)
{
VisszairatkozasJogviszonyCustomValidation(modelState, model.JogviszonyKezdete, model.Datum, model.JogviszonyKeletkezesenekJogcimeId, model.JogviszonyTipusaId);
}
public static void KovTanevVisszairatkoztatasJogviszonyCustomValidation(System.Web.Http.ModelBinding.ModelStateDictionary modelState, KovTanevVisszairatkoztatasModel model)
{
VisszairatkozasJogviszonyCustomValidation(modelState, model.JogviszonyKezdete, model.Datum, model.JogviszonyKeletkezesenekJogcimeId, model.JogviszonyTipusaId);
}
private static void VisszairatkozasJogviszonyCustomValidation(System.Web.Http.ModelBinding.ModelStateDictionary modelState, DateTime? jogviszonyKezdete, DateTime? datum, int? jogviszonyKeletkezesenekJogcimeId, int? jogviszonyTipusaId)
{
if (!jogviszonyKezdete.HasValue)
{
modelState.AddModelError(nameof(jogviszonyKezdete), ErrorResource.JogviszonyKezdeteKitolteseKotelezo);
}
else
{
if (jogviszonyKezdete.Value > datum)
{
modelState.AddModelError(nameof(jogviszonyKezdete), ErrorResource.JogviszonyKezdeteNemLehetKesobbMintABeleptetes);
}
}
if (!jogviszonyKeletkezesenekJogcimeId.IsEntityId())
{
modelState.AddModelError(nameof(jogviszonyKeletkezesenekJogcimeId), ErrorResource.JogviszonyKeletkezesenekJogcimeKitolteseKotelezo);
}
if (!jogviszonyTipusaId.IsEntityId())
{
modelState.AddModelError(nameof(jogviszonyTipusaId), ErrorResource.JogviszonyTipusaKitolteseKotelez);
}
}
public static ModOsztalyModel SetModPopUpModel(List<ModOsztalyModel> osztalyList)
{
ModOsztalyModel model = new ModOsztalyModel();
if (osztalyList.Count == 1)
{
model = GetOsztalyModProperties(osztalyList[0].ID);
}
else
{
foreach (var item in osztalyList)
{
model.OsztalyIDArrayString += item.ID.ToString() + ",";
model.OsztalyNevArray += item.Nev.ToString() + ", ";
}
model.OsztalyIDArrayString = model.OsztalyIDArrayString.Remove(model.OsztalyIDArrayString.Length - 1);
model.OsztalyNevArray = model.OsztalyNevArray.Remove(model.OsztalyNevArray.Length - 2);
}
model.IsIntezmenySzakkepzo = new IntezmenyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetIntezmenyiAdatok().IsSzakkepzo;
model.AmiFelhelyIdsJSON = JsonConvert.SerializeObject(GetFeladatEllatasiHelyIdsBySelectedOktNevelesiKategoria((int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas));
return model;
}
public static TanuloSorolasModel GetModelForPartialViewOsztaly(string dataType, int osztalyid)
{
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanev = tanevHelper.GetTanevInfo();
var datum = dataType == "AktData" ? (DateTime?)DateTime.Now : null;
var ds = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportTanulok(osztalyid, datum, tanev.OraFelvetelKezdete, isGroupedByKilepesDatum: true);
var model = TanuloBesorolasLogic.GenerateTanuloSorolasModelCsoportOsztaly(ds, isCsoportView: false);
model.IsInfoView = true;
return model;
}
public static PopUpModel GetPopUpModelForBesorolasModDatumOsztaly(int tanuloid, int osztalyid)
{
BeSorolasModel model = new BeSorolasModel();
DataSet ds;
var helper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
ds = helper.GetTanuloSorolasData(tanuloid, osztalyid);
if (ds != null)
{
DataRow dr = ds.Tables[0].Rows[0];
model.OsztalyCsoportId = osztalyid;
model.OsztalyCsoportNev = dr.Field<string>("OsztalyCsoportNev");
model.TanuloId = tanuloid;
model.TanuloNev = dr.Field<string>("TanuloNev");
model.BesorolasDatum = dr.Field<DateTime?>("BesorolasDatum");
}
PopUpModel pm = new PopUpModel(model, "_TanuloBesorolasModPartial");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasCancel", Text = Resources.CommonResource.Megse, EventName = "OsztalyTanuloHelper.BesorolasWindowCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasOk", Text = Resources.CommonResource.Mentes, EventName = "OsztalyTanuloHelper.BesorolasWindowSave" });
return pm;
}
public static PopUpModel GetPopUpModelForKisorolasModDatumOsztaly(int tanuloid, int osztalyid)
{
KiSorolasModel model = new KiSorolasModel();
DataSet ds;
var helper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
ds = helper.GetTanuloSorolasData(tanuloid, osztalyid);
if (ds != null)
{
DataRow dr = ds.Tables[0].Rows[0];
model.OsztalyCsoportId = osztalyid;
model.OsztalyCsoportNev = dr.Field<string>("OsztalyCsoportNev");
model.TanuloId = tanuloid;
model.TanuloNev = dr.Field<string>("TanuloNev");
model.KisorolasDatum = dr.Field<DateTime?>("KisorolasDatum");
}
PopUpModel pm = new PopUpModel(model, "_TanuloKisorolasModPartial");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasCancel", Text = Resources.CommonResource.Megse, EventName = "OsztalyTanuloHelper.KisorolasWindowCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasOk", Text = Resources.CommonResource.Mentes, EventName = "OsztalyTanuloHelper.KisorolasWindowSave" });
return pm;
}
public static PopUpModel GetPopUpModelForKisorolasOsztaly(int tanuloid, int osztalyid)
{
KiSorolasModel model = new KiSorolasModel();
DataSet ds;
var helper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
ds = helper.GetTanuloSorolasData(tanuloid, osztalyid);
if (ds != null)
{
DataRow dr = ds.Tables[0].Rows[0];
model.OsztalyCsoportId = osztalyid;
model.OsztalyCsoportNev = dr.Field<string>("OsztalyCsoportNev");
model.TanuloId = tanuloid;
model.TanuloNev = dr.Field<string>("TanuloNev");
model.KisorolasDatum = dr.Field<DateTime?>("KisorolasDatum");
}
PopUpModel pm = new PopUpModel(model, "_TanuloKisorolasModPartial");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasCancel", Text = Resources.CommonResource.Megse, EventName = "OsztalyTanuloHelper.KisorolasWindowCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasOk", Text = Resources.CommonResource.Mentes, EventName = "OsztalyTanuloHelper.KisorolasWindowSave" });
return pm;
}
public static ModOsztalyModel GetOsztalyModProperties(int? osztalyID = null)
{
OsztalyCO co;
OsztalyHelper h = new OsztalyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
co = h.GetClassById(osztalyID.Value);
return ModOsztalyModel.ConvertCOToModModel(co);
}
public static Dictionary<int, bool> GetFeladatellatasiHelyIsSzakkepzesesDictionary()
{
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
return helper.GetFeladatellatasiHelyIsSzakkepzesesDictionary();
}
public static Dictionary<int, bool> GetFeladatellatasiHelyIsNktDictionary()
{
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
return helper.GetFeladatellatasiHelyIsNkt();
}
public static List<int> GetIdsBySelectedOktatasiNevelesiFeladat(int oktatasiNevelesiFeladatId)
{
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
return helper.GetIdsBySelectedOktatasiNevelesiFeladat(oktatasiNevelesiFeladatId);
}
public static List<int> GetFeladatEllatasiHelyIdsBySelectedOktNevelesiKategoria(int oktNevelesiKategoriaId)
{
return new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType())
.GetFeladatEllatasiHelyDDl(string.Empty, oktNevelesiKategoriaId).Select(x => Convert.ToInt32(x.Key)).ToList();
}
public static List<SelectListItem> GetKepzesList()
{
List<SelectListItem> list = new List<SelectListItem>();
var itemList = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.TanterviJelleg, ClaimData.SelectedTanevID.Value, true);
foreach (var item in itemList)
{
SelectListItem sli = new SelectListItem() { Text = item.Value, Value = item.Key };
if (item.Key == ((int)TanterviJellegEnum.nappali_rendszeru_iskolai_oktatas).ToString())
{
sli.Selected = true;
}
list.Add(sli);
}
return list;
}
public static DataSourceResult GetOsztalyTanuloi(string osztalyId, DataSourceRequest request)
{
var helper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
DataSet tanuloDataSet = helper.GetOsztalyCsoportMindenkoriTanuloiTanuloCsoportonkent(int.Parse(osztalyId));
return tanuloDataSet.ToDataSourceResult();
}
public static DataSourceResult GetOsztalyBontasCsoportjai(string osztalyID, DataSourceRequest request)
{
var thelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
var osztalyId = int.Parse(osztalyID);
Enum.TryParse(new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportFeladatKategoria(osztalyId).ToString(), out OktNevelesiKategoriaEnum kategoria);
var csoportok = thelper.GetGroupsOfClass(osztalyId, kategoria);
return csoportok.ToDataSourceResult();
}
public static DataSourceResult GetOsztalyFoglalkozasai(int osztalyID, DataSourceRequest request)
{
var fhelper = new FoglalkozasHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
fhelper.GridParameters = Converter.GridParameter(request);
Enum.TryParse(new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportFeladatKategoria(osztalyID).ToString(), out OktNevelesiKategoriaEnum kategoria);
var foglalkozasok = fhelper.GetOsztalyCsoportFoglalkozasai(osztalyID, kategoria);
var dataSourceResult = foglalkozasok.ToDataSourceResult();
if (dataSourceResult != null && foglalkozasok.Tables.Count == 1)
{
dataSourceResult.AggregateResults = new List<AggregateResult>
{
new AggregateResult(foglalkozasok.Tables[0].ExtendedProperties["Oraszam_SUM"], new SumFunction {SourceField = "Oraszam"})
};
}
return dataSourceResult;
}
public static DataSourceResult GetOsztalyOrarendiOrai(string osztalyID, DataSourceRequest request, bool isFromSzervezet = false)
{
var ohelper = new OrarendiOraHelper(ConnectionTypeExtensions.GetSessionConnectionType());
ohelper.GridParameters = Converter.GridParameter(request);
var tanulok = ohelper.GetOsztalyCsoportOrarendiOrai(int.Parse(osztalyID), isFromSzervezet);
return tanulok.ToDataSourceResult();
}
public static DataSourceResult GetOsztalyTanmenetei(int osztalyID, DataSourceRequest request)
{
var thelper = new TanmenetHelper(ConnectionTypeExtensions.GetSessionConnectionType());
thelper.GridParameters = Converter.GridParameter(request);
Enum.TryParse(new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCsoportFeladatKategoria(osztalyID).ToString(), out OktNevelesiKategoriaEnum kategoria);
var tanmenetek = thelper.GetOsztalyCsoportTanmenetei(osztalyID, kategoria);
return tanmenetek.ToDataSourceResult();
}
public static DataSourceResult GetOsztalyErtekelesListGrid(string osztalyId, DataSourceRequest request, int feladatKategoriaId)
{
int.TryParse(osztalyId, out int id);
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
var tanuloErtekelesListModel = new TanuloErtekelesListModel
{
OsztalyCsoportIdSearch = id,
FeladatKategoriaIdSearch = feladatKategoriaId
};
DataSet dataSet = helper.GetTanuloErtekelesListGridDataSet(tanuloErtekelesListModel.ToCo());
return dataSet.ToDataSourceResult();
}
public static DataSourceResult GetOsztalyIgazolasai(int osztalyID, DataSourceRequest request)
{
var ihelper = new IgazolasHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
ihelper.GridParameters = Converter.GridParameter(request);
Enum.TryParse(new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportFeladatKategoria(osztalyID).ToString(), out OktNevelesiKategoriaEnum kategoria);
var igazolasok = ihelper.GetOsztalyCsoportIgazolasok(osztalyID, kategoria);
return igazolasok.ToDataSourceResult();
}
public static List<ComboBoxListItem> GetEvfolyamListFilter(string cascadeFilter)
{
int? feladHelyId = null;
int temp;
if (int.TryParse(cascadeFilter, out temp))
feladHelyId = temp;
DataSet evfolyamTipusok;
var result = new List<ComboBoxListItem>();
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
evfolyamTipusok = helper.GetFeladatellatasiHelyhezTartozoEvfolyamtipusokSzama(feladHelyId.HasValue ? (int)feladHelyId : -1);
if (evfolyamTipusok != null && evfolyamTipusok.Tables.Count > 0 && evfolyamTipusok.Tables[0] != null && evfolyamTipusok.Tables[0].Rows.Count > 0)
{
foreach (DataRow iRow in evfolyamTipusok.Tables[0].Rows)
{
ComboBoxListItem sli = new ComboBoxListItem()
{
Text = iRow.Field<string>("Name").ToString(),
Value = iRow.Field<int>("ID").ToString(),
GroupName = StringResourcesUtil.GetString(3931)
};
result.Add(sli);
}
}
var evfolyamTipusList = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.EvfolyamTipus, ClaimData.SelectedTanevID.Value);
foreach (var item in evfolyamTipusList)
{
if (!result.Exists(x => x.Value == item.Key))
{
ComboBoxListItem sli = new ComboBoxListItem()
{
Text = item.Value,
Value = item.Key,
GroupName = StringResourcesUtil.GetString(3285)
};
result.Add(sli);
}
}
return result;
}
protected static Dictionary<string, string> ValidateBaseCsoport(CsoportBaseModel model, bool getOsztalyBontasEvfolyama = true, bool isAmi = false)
{
var customModelState = new Dictionary<string, string>();
var tanev = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanevInfo();
ValidateOsztalyCsoportNev(customModelState, model.CsoportNeve, model.ID);
if (model.OsztalyBontas)
{
if (model.ID.HasValue && model.OsztalyBontasId.HasValue && !ValidateOsztalybontas(model.ID.ToString().Split(','), model.OsztalyBontasId.Value))
{
customModelState.Add("OsztalyBontas", OsztalyCsoportResource.OsztalybontashozMarTartoznakDiakok);
}
if (model.OsztalyBontasId == null)
{
customModelState.Add("OsztalyBontasId", OsztalyCsoportResource.HaACsoportOsztalybontasosOsztalyMegadasaKotelezo);
}
else
{
if (getOsztalyBontasEvfolyama)
{
if (int.TryParse(((VegzosOsztalyModel)GetOsztalyEvfolyama(model.OsztalyBontasId.ToString())).EvfolyamTipusa.ToString(), out int evfolyamId))
{
model.EvfolyamTipusa = evfolyamId;
}
else
{
model.EvfolyamTipusa = (int)EvfolyamTipusEnum.na;
}
}
model.FeladatEllatasiHelyId = GetOsztalyFeladatEllatasiHelye(model.OsztalyBontasId.Value);
}
}
else
{
model.OsztalyBontasId = null;
}
ValidateCsoportNaplo(customModelState, model.CsoportNaploMegnyitasa, model.CsoportNaploLezarasa);
ValidateTervezettLetszam(customModelState, model.TervezettLetszam, csoportMaxLetszam);
if (model.EvfolyamTipusa.HasValue)
{
ValidateAmiEvfolyam(customModelState, model.FeladatEllatasiHelyId.Value, model.EvfolyamTipusa.Value);
}
if (model.CsoportTipusId == (int)CsoportTipusEnum.apaczai_mentorcsoport)
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var csoportok = osztalyCsoportHelper.GetCsoportokByCsoportvezeto(model.CsoportvezetoId.Value, false);
if (csoportok.Any(x => x.CsoportTipus == model.CsoportTipusId
&& (
(model.ID.HasValue && x.Id != model.ID)
|| !model.ID.HasValue
)
))
{
customModelState.Add("CsoportvezetoId", OsztalyCsoportResource.MarVanMentorCsoportja);
}
}
return customModelState;
}
public static Dictionary<string, string> ValidateCsoportGroup(CsoportModModel model)
{
var customModelState = new Dictionary<string, string>();
if (model.OsztalyBontas.HasValueAndPositive())
{
if (model.OsztalyBontasId == null)
{
customModelState.Add("OsztalyBontasId", OsztalyCsoportResource.HaACsoportOsztalybontasosOsztalyMegadasaKotelezo);
}
else
{
if (!ValidateOsztalybontas(model.CsoportIdArray, model.OsztalyBontasId.Value))
{
customModelState.Add("OsztalyBontas", OsztalyCsoportResource.OsztalybontashozMarTartoznakDiakok);
}
}
if (int.TryParse(((VegzosOsztalyModel)GetOsztalyEvfolyama(model.OsztalyBontasId?.ToString()))?.EvfolyamTipusa.ToString(), out int evfolyamId))
{
model.EvfolyamTipusa = evfolyamId;
}
else
{
model.EvfolyamTipusa = (int)EvfolyamTipusEnum.na;
}
if (model.OsztalyBontasId.HasValue)
{
model.FeladatEllatasiHelyId = GetOsztalyFeladatEllatasiHelye(model.OsztalyBontasId.Value);
}
}
ValidateCsoportNaplo(customModelState, model.CsoportNaploMegnyitasa, model.CsoportNaploLezarasa);
ValidateTervezettLetszam(customModelState, model.TervezettLetszam, csoportMaxLetszam);
if (model.EvfolyamTipusa.HasValue)
{
ValidateAmiEvfolyamGroup(customModelState, model.CsoportIdArray, model.EvfolyamTipusa.Value);
if (!model.OsztalyBontas.HasValue || (model.OsztalyBontas.HasValue && model.OsztalyBontas.Value != 0))
{
ValidateOsztalybontasEvfolyam(customModelState, model.CsoportIDArrayString, model.EvfolyamTipusa.Value);
}
}
if (model.FeladatEllatasiHelyId.HasValue)
{
ValidateOsztalybontasFeladatellatasiHely(customModelState, model.CsoportIDArrayString, model.FeladatEllatasiHelyId.Value);
}
if (model.IsGyogypedagogiaiLogopediai.HasValue)
{
ValidateOsztalybontasGyogypedagogiaiLogopediai(customModelState, model.CsoportIDArrayString, model.IsGyogypedagogiaiLogopediai.ToBool());
}
if (model.TechnikaiCsoport.HasValue)
{
ValidateOsztalybontasTechnikai(customModelState, model.CsoportIDArrayString, model.TechnikaiCsoport.ToBool());
}
if (model.Vegzos.HasValue)
{
ValidateOsztalybontasVegzosEvfolyam(customModelState, model.CsoportIDArrayString);
}
return customModelState;
}
public static string SaveCsoportGroup(CsoportModModel model)
{
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
var errorMessage = string.Empty;
var csoportHelper = new CsoportHelper(connectionType);
var sikertelenUpdateCsoportNev = string.Empty;
if (string.IsNullOrWhiteSpace(model.CsoportIDArrayString))
{
sikertelenUpdateCsoportNev = csoportHelper.CsoportTobbesModify(model.ConvertToCo());
if (!string.IsNullOrWhiteSpace(sikertelenUpdateCsoportNev))
{
errorMessage += $"{Core.Constants.General.Sortores}{sikertelenUpdateCsoportNev}";
}
}
else
{
foreach (var item in model.CsoportIdArray)
{
model.ID = int.Parse(item);
sikertelenUpdateCsoportNev = csoportHelper.CsoportTobbesModify(model.ConvertToCo(), updateTanoraEvesSorszam: false);
if (!string.IsNullOrWhiteSpace(sikertelenUpdateCsoportNev))
{
errorMessage += $"{Core.Constants.General.Sortores}{sikertelenUpdateCsoportNev}";
}
}
if (model.CsoportIdArray.Length > 0)
{
new TanoraHelper(connectionType).UpdateTanitasiOraEvesSorszamTeljesTanev();
}
}
return errorMessage;
}
public static void SaveNewEgyeniCsoport(EgyeniCsoportModel model)
{
CsoportHelper csHelper = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
model.CsoportNeve = model.CsoportNeve.ReplaceMultipleSpacesAndTrim();
csHelper.InsertCo(model.ConvertToCsoportCo());
}
public static string DeleteCsoportGroup(List<int> csoportLista, out bool deleteError)
{
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
var h = new CsoportHelper(connectionType);
string errorMsg = string.Empty, entityName = string.Empty;
var counter = 0;
foreach (var csoportId in csoportLista)
{
try
{
h.DeleteGroupById(csoportId, updateTanoraEvesSorszam: false);
counter++;
}
catch (CannotBeDeletedException ex)
{
errorMsg += $"{ex.Message}{Environment.NewLine}";
continue;
}
catch (EntityDeleteFailedException ex)
{
var csoportCO = h.GetGroupByID(csoportId);
entityName = csoportCO.CsoportNeve;
errorMsg += string.Format(ErrorResource.CsoportNemTorolhetoKapcsolatMiatt, entityName, ex.ConnectionErrorMessage) + Environment.NewLine + Environment.NewLine;
continue;
}
}
if (csoportLista.Any())
{
new TanoraHelper(connectionType).UpdateTanitasiOraEvesSorszamTeljesTanev();
}
if (string.IsNullOrWhiteSpace(errorMsg))
{
deleteError = false;
return string.Format(ErrorResource.NSorTorlesSikeres, counter);
}
if (counter > 0)
{
errorMsg += Environment.NewLine + string.Format(ErrorResource.NSorTorlesSikeres, counter);
}
deleteError = true;
return errorMsg;
}
public static DataSourceResult GetCsoportTanuloi(string csoportId, DataSourceRequest request)
{
var thelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
thelper.GridParameters = Converter.GridParameter(request);
var tanulok = thelper.GetOsztalyCsoportMindenkoriTanuloi(int.Parse(csoportId));
return tanulok.ToDataSourceResult();
}
public static DataSourceResult GetCsoportFoglalkozasai(int csoportId, DataSourceRequest request)
{
var fhelper = new FoglalkozasHelper(ConnectionTypeExtensions.GetSessionConnectionType());
fhelper.GridParameters = Converter.GridParameter(request);
Enum.TryParse(new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportFeladatKategoria(csoportId).ToString(), out OktNevelesiKategoriaEnum kategoria);
var foglalkozasok = fhelper.GetOsztalyCsoportFoglalkozasai(csoportId, kategoria);
var dataSourceResult = foglalkozasok.ToDataSourceResult();
if (dataSourceResult != null && foglalkozasok.Tables.Count == 1)
{
dataSourceResult.AggregateResults = new List<AggregateResult>
{
new AggregateResult(foglalkozasok.Tables[0].ExtendedProperties["Oraszam_SUM"], new SumFunction {SourceField = "Oraszam"})
};
}
return dataSourceResult;
}
public static DataSourceResult GetCsoportOrarendiOrai(string csoportId, DataSourceRequest request, bool isFromSzervezet = false)
{
var ohelper = new OrarendiOraHelper(ConnectionTypeExtensions.GetSessionConnectionType());
ohelper.GridParameters = Converter.GridParameter(request);
var orarendiorak = ohelper.GetOsztalyCsoportOrarendiOrai(int.Parse(csoportId), isFromSzervezet);
return orarendiorak.ToDataSourceResult();
}
public static DataSourceResult GetCsoportTanmenetei(int csoportId, DataSourceRequest request)
{
var thelper = new TanmenetHelper(ConnectionTypeExtensions.GetSessionConnectionType());
thelper.GridParameters = Converter.GridParameter(request);
Enum.TryParse(new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportFeladatKategoria(csoportId).ToString(), out OktNevelesiKategoriaEnum kategoria);
var tanmenetek = thelper.GetOsztalyCsoportTanmenetei(csoportId, kategoria);
return tanmenetek.ToDataSourceResult();
}
public static DataSourceResult GetCsoportMegtartottTanorai(string csoportId, DataSourceRequest request)
{
var ohelper = new OrarendiOraHelper(ConnectionTypeExtensions.GetSessionConnectionType());
ohelper.GridParameters = Converter.GridParameter(request);
DataSet ds = ohelper.GetOsztalyCsoportMegtartottOrai(int.Parse(csoportId));
return ds.ToDataSourceResult();
}
public static DataSourceResult GetCsoportErtekelesListGrid(string csoportId, DataSourceRequest request, int feladatKategoriaId)
{
int.TryParse(csoportId, out int id);
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = Converter.GridParameter(request)
};
var tanuloErtekelesListModel = new TanuloErtekelesListModel
{
OsztalyCsoportIdSearch = id,
FeladatKategoriaIdSearch = feladatKategoriaId
};
DataSet dataSet = helper.GetTanuloErtekelesListGridDataSet(tanuloErtekelesListModel.ToCo());
return dataSet.ToDataSourceResult();
}
public static int GetOsztalyFeladatEllatasiHelye(int osztalyId)
{
return new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetFeladatEllatasiHelyByOsztalyId(osztalyId);
}
public static VegzosOsztalyModel GetOsztalyEvfolyama(string osztalyId)
{
if (int.TryParse(osztalyId, out int oID))
{
OsztalyCsoportHelper h = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var lista = h.GetOsztalyCsoportEvfolyama(oID);
VegzosOsztalyModel model = new VegzosOsztalyModel();
model.EvfolyamTipusa = (int?)lista[0];
model.VegzosEvfolyam = (bool)lista[1];
return model;
}
return null;
}
public static string GetEgyeniCsoportAlapertelmezettNev()
{
var helper = new CsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var csoportList = helper.GetCsoportok();
var egyeniCsoportokSzama = csoportList.Count(x => x.Value.IndexOf(CommonResource.EgyeniCsoportAlapertelmezettNev, StringComparison.OrdinalIgnoreCase) >= 0);
return $"{CommonResource.EgyeniCsoportAlapertelmezettNev} {egyeniCsoportokSzama + 1}";
}
public static CsoportModModel GetCsoportBasePropertiesMod(int? csoportID)
{
CsoportCO co = new CsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetGroupByID(csoportID.Value);
return new CsoportModModel()
{
ID = co.Id,
CsoportNeve = co.CsoportNeve,
CsoportTipus = co.CsoportTipus,
FeladatEllatasiHelyId = co.FeladatEllatasiHelyId,
OsztalyBontas = co.OsztalyBontas.ToNullableInt(),
OsztalyBontasId = co.OsztalyBontasId,
EvfolyamTipusa = co.EvfolyamTipusa,
Vegzos = co.VegzosEvfolyamCsoport.ToNullableInt(),
TervezettLetszam = co.TervezettLetszam,
Keresztfeleves = co.KeresztfelevesCsoport.ToNullableInt(),
CsoportNaploMegnyitasa = co.CsoportNaploMegnyitasa,
CsoportNaploLezarasa = co.CsoportNaploLezarasa,
MuveszetiAgId = co.MuveszetiAgId,
ZenemuveszetiAgTipusId = co.ZenemuveszetiAgTipusId
};
}
public static TanuloSorolasModel GetModelForPartialViewCsoport(string dataType, int csoportId)
{
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanev = tanevHelper.GetTanevInfo();
var datum = dataType == "AktData" ? (DateTime?)DateTime.Now : null;
var ds = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyCsoportTanulok(csoportId, datum, tanev.OraFelvetelKezdete, isGroupedByKilepesDatum: true);
var model = TanuloBesorolasLogic.GenerateTanuloSorolasModelCsoportOsztaly(ds, isCsoportView: true);
model.IsInfoView = true;
return model;
}
public static PopUpModel GetPopUpModelForBesorolasModDatumCsoport(int tanuloId, int csoportId)
{
BeSorolasModel model = new BeSorolasModel();
var ds = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloSorolasData(tanuloId, csoportId);
if (ds != null)
{
DataRow dr = ds.Tables[0].Rows[0];
model.OsztalyCsoportId = csoportId;
model.OsztalyCsoportNev = dr.Field<string>("OsztalyCsoportNev");
model.TanuloId = tanuloId;
model.TanuloNev = dr.Field<string>("TanuloNev");
model.BesorolasDatum = dr.Field<DateTime?>("BesorolasDatum");
}
PopUpModel pm = new PopUpModel(model, "_TanuloBesorolasModPartial");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasCancel", Text = Resources.CommonResource.Megse, EventName = "CsoportTanuloHelper.BesorolasWindowCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasOk", Text = Resources.CommonResource.Mentes, EventName = "CsoportTanuloHelper.BesorolasWindowSave" });
return pm;
}
public static PopUpModel GetPopUpModelForKisorolasModDatumCsoport(int tanuloId, int csoportId)
{
KiSorolasModel model = new KiSorolasModel();
var ds = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloSorolasData(tanuloId, csoportId);
if (ds != null)
{
DataRow dr = ds.Tables[0].Rows[0];
model.OsztalyCsoportId = csoportId;
model.OsztalyCsoportNev = dr.Field<string>("OsztalyCsoportNev");
model.TanuloId = tanuloId;
model.TanuloNev = dr.Field<string>("TanuloNev");
model.KisorolasDatum = dr.Field<DateTime?>("KisorolasDatum");
}
PopUpModel pm = new PopUpModel(model, "_TanuloKisorolasModPartial");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasCancel", Text = Resources.CommonResource.Megse, EventName = "CsoportTanuloHelper.KisorolasWindowCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasOk", Text = Resources.CommonResource.Mentes, EventName = "CsoportTanuloHelper.KisorolasWindowSave" });
return pm;
}
public static PopUpModel GetPopUpModelForKisorolasCsoport(int tanuloId, int csoportId)
{
KiSorolasModel model = new KiSorolasModel();
DataSet ds;
var helper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
ds = helper.GetTanuloSorolasData(tanuloId, csoportId);
if (ds != null)
{
DataRow dr = ds.Tables[0].Rows[0];
model.OsztalyCsoportId = csoportId;
model.OsztalyCsoportNev = dr.Field<string>("OsztalyCsoportNev");
model.TanuloId = tanuloId;
model.TanuloNev = dr.Field<string>("TanuloNev");
model.KisorolasDatum = dr.Field<DateTime?>("KisorolasDatum");
}
PopUpModel pm = new PopUpModel(model, "_TanuloKisorolasModPartial");
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasCancel", Text = Resources.CommonResource.Megse, EventName = "CsoportTanuloHelper.KisorolasWindowCancel" });
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnSorolasOk", Text = Resources.CommonResource.Mentes, EventName = "CsoportTanuloHelper.KisorolasWindowSave" });
return pm;
}
public static DateTime GetSearchDate()
{
var tanevData = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanevInfo();
DateTime searchDate = DateTime.Now.Date;
if (searchDate < tanevData.KezdoNap)
{
searchDate = tanevData.KezdoNap;
}
return searchDate;
}
public static void SaveNaplosorszamEsTorzslapszamBeallitasai(List<NaplosorszamEsTorzslapszamBeallitasaiModel> naplosorszamEsTorzslapszamBeallitasaiModelList)
{
var helper = new TanuloTanugyiAdatokHelper(ConnectionTypeExtensions.GetSessionConnectionType());
foreach (var model in naplosorszamEsTorzslapszamBeallitasaiModelList)
{
helper.UpdateNaplosorszamEsTorzslapszam(model.TanuloTanugyiAdatokId, model.Naplosorszam, model.Torzslapszam);
}
}
public static void SaveNaplosorszamListGroup(List<int> osztalyIdList)
{
var helper = new TanuloTanugyiAdatokHelper(ConnectionTypeExtensions.GetSessionConnectionType());
helper.UpdateNaplosorszamListGroup(osztalyIdList);
}
private static void ValidateTervezettLetszam(Dictionary<string, string> customModelState, int? tervezettLetszam, int maxTervezettLetszam)
{
if (tervezettLetszam.HasValue && (tervezettLetszam < 0 || tervezettLetszam > maxTervezettLetszam))
{
customModelState.Add("TervezettLetszam", string.Format(OsztalyCsoportResource.ATervezettLetszamCsak0Es1KozottLehet, 0, maxTervezettLetszam));
}
}
private static void ValidateOsztalyCsoportNev(Dictionary<string, string> customModelState, string osztalyCsoportNev, int? id)
{
var letezoOsztalyCsoport = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCsoportNev(osztalyCsoportNev, id);
if (letezoOsztalyCsoport.Tables[0].Rows.Count > 0)
{
var osztalyVagyCsoport = letezoOsztalyCsoport.Tables[0].Rows[0].Field<int?>("OsztalyId") == null ? OsztalyCsoportResource.Csoport.ToLower() : OsztalyCsoportResource.Osztaly.ToLower();
var osztalyCsoportKategoria = string.Empty;
var oktNevKategoriaId = letezoOsztalyCsoport.Tables[0].Rows[0].Field<int?>("KategoriaId") ?? -1;
switch (oktNevKategoriaId)
{
case (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas:
osztalyCsoportKategoria = "AMI";
break;
case (int)OktNevelesiKategoriaEnum.Kollegium:
osztalyCsoportKategoria = "Kollégiumi";
break;
case (int)OktNevelesiKategoriaEnum.EGYMI:
osztalyCsoportKategoria = nameof(OktNevelesiKategoriaEnum.EGYMI);
break;
case -1:
osztalyCsoportKategoria = "duális";
break;
default:
osztalyCsoportKategoria = "";
break;
}
customModelState.Add("OsztalyCsoportNev", string.Format(OsztalyCsoportResource.ValidateLetezoOsztalyCsoport, osztalyCsoportKategoria, osztalyVagyCsoport));
}
}
private static void ValidateCsoportNaplo(Dictionary<string, string> customModelState, DateTime? csoportNaploMegnyitasa, DateTime? csoportNaploLezarasa)
{
var tanev = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanevInfo();
if (csoportNaploMegnyitasa.HasValue && (csoportNaploMegnyitasa.Value < tanev.KezdoNap /*.AddMonths(-1)*/|| csoportNaploMegnyitasa.Value > tanev.UtolsoNap))
{
customModelState.Add("CsoportNaploMegnyitasa", OsztalyCsoportResource.ACsoportnaploMegnyitasanakDatumaATanevElsoEsUtolsoNapjaKozottLehet);
}
if (csoportNaploLezarasa.HasValue && (csoportNaploLezarasa.Value < tanev.KezdoNap /*.AddMonths(-1)*/|| csoportNaploLezarasa.Value > tanev.UtolsoNap))
{
customModelState.Add("CsoportNaploLezarasa", OsztalyCsoportResource.ACsoportnaploLezarasanakDatumaATanevElsoEsUtolsoNapjaKozottLehet);
}
if (csoportNaploMegnyitasa.HasValue && csoportNaploLezarasa.HasValue && csoportNaploLezarasa.Value < csoportNaploMegnyitasa.Value)
{
var key = customModelState.ContainsKey("CsoportNaploLezarasa") ? "CsoportNaploLezarasa1" : "CsoportNaploLezarasa";
customModelState.Add(key, OsztalyCsoportResource.ACsoportnaploLezarasDatumaNemLehetKorabbanMintAMegnyitasDatuma);
}
}
private static void ValidateOsztalynaplo(Dictionary<string, string> customModelState, DateTime? osztalyNaploMegnyitasa, DateTime? osztalyNaploLezarasa)
{
var tanev = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanevInfo();
if (osztalyNaploMegnyitasa.HasValue && (osztalyNaploMegnyitasa.Value < tanev.KezdoNap /*.AddMonths(-1)*/|| osztalyNaploMegnyitasa.Value > tanev.UtolsoNap))
{
customModelState.Add("OsztalynaploMegnyitasa", OsztalyCsoportResource.AzOsztalynaploMegnyitasanakDatumaATanevElsoEsUtolsoNapjaKozottLehet);
}
if (osztalyNaploLezarasa.HasValue && (osztalyNaploLezarasa.Value < tanev.KezdoNap /*.AddMonths(-1)*/|| osztalyNaploLezarasa.Value > tanev.UtolsoNap))
{
customModelState.Add("OsztalynaploLezarasa", OsztalyCsoportResource.AzOsztalynaploLezarasanakDatumaATanevElsoEsUtolsoNapjaKozottLehet);
}
if (osztalyNaploMegnyitasa.HasValue && osztalyNaploLezarasa.HasValue && osztalyNaploLezarasa.Value < osztalyNaploMegnyitasa.Value)
{
var key = customModelState.ContainsKey("OsztalynaploLezarasa") ? "OsztalynaploLezarasa1" : "OsztalynaploLezarasa";
customModelState.Add(key, OsztalyCsoportResource.AzOsztalynaploLezarasDatumaNemLehetKorabbanMintAMegnyitasDatuma);
}
}
private static bool ValidateOsztalybontas(string[] csoportIDArray, int osztalyBontasId)
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DateTime? tanevElsoNapja = null;
if (ClaimData.KovTanevID == ClaimData.SelectedTanevID)
{
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var co = tanevHelper.GetTanevInfo();
tanevElsoNapja = co.KezdoNap;
}
foreach (var csoportId in csoportIDArray)
{
DataSet dataSet = osztalyCsoportHelper.GetOsztalyCsoportTanulok(int.Parse(csoportId), DateTime.Now, ClaimData.KovTanevID == ClaimData.SelectedTanevID ? tanevElsoNapja : null);
if (!osztalyCsoportHelper.IsTanulokOsztalyTagjai(osztalyBontasId, ClaimData.KovTanevID == ClaimData.SelectedTanevID ? tanevElsoNapja.Value : DateTime.Now,
dataSet.Tables[0].AsEnumerable().Select(x => x.Field<int>("TanuloId")).ToList()))
{
return false;
}
}
return true;
}
private static void ValidateAmiEvfolyamGroup(Dictionary<string, string> customModelState, string[] osztalyCsoportIdArray, int evfolyamTipusa)
{
var helper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
if (!AmiEvfoylamIdList.Contains(evfolyamTipusa))
{
foreach (var id in osztalyCsoportIdArray)
{
if (helper.GetOsztalyCsoportFeladatKategoria(int.Parse(id)) == (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas)
{
customModelState.Add("EvfolyamTipusa", ErrorResource.AKivalasztottOsztalyoknakNemAllithatoBeCsakAmisEvfolyamTipus);
break;
}
}
}
}
private static void ValidateAmiEvfolyam(Dictionary<string, string> customModelState, int feladatellatasiHelyId, int evfolyamTipusa)
{
var helper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
if (!AmiEvfoylamIdList.Contains(evfolyamTipusa) && helper.GetFeladatKategoriaId(feladatellatasiHelyId) == (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas)
{
customModelState.Add("EvfolyamTipusa", ErrorResource.AKivalasztottOsztalyoknakNemAllithatoBeCsakAmisEvfolyamTipus);
}
}
private static void ValidateOsztalybontasEvfolyam(Dictionary<string, string> customModelState, string csoportIdString, int evfolyamTipusa)
{
var hibasCsoportok = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalybontasosCsoportokHibasEvfolyammal(csoportIdString, evfolyamTipusa);
if (!string.IsNullOrWhiteSpace(hibasCsoportok))
{
customModelState.Add("EvfolyamTipusa", string.Format(ErrorResource.AKovetkezoCsoportoknakNemLehetBeallitaniAzEvfolyamotOsztalybontasMiatt0, hibasCsoportok));
}
}
private static void ValidateOsztalybontasGyogypedagogiaiLogopediai(Dictionary<string, string> customModelState, string csoportIdString, bool gyogypedagogiaiLogopediai)
{
var hibasCsoportok = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalybontasosCsoportokHibasGyogypedagogiaiLogopediai(csoportIdString, gyogypedagogiaiLogopediai);
if (!string.IsNullOrWhiteSpace(hibasCsoportok))
{
customModelState.Add("IsGyogypedagogiaiLogopediai", string.Format(ErrorResource.AKovetkezoCsoportoknakNemLehetBeallitaniAGyogypedagogiaiLogopediaiOsztalybontasMiatt01, hibasCsoportok));
}
}
private static void ValidateOsztalybontasTechnikai(Dictionary<string, string> customModelState, string csoportIdString, bool technikaiCsoport)
{
var hibasCsoportok = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalybontasosCsoportokHibasTechnikaiCsoport(csoportIdString, technikaiCsoport);
if (!string.IsNullOrWhiteSpace(hibasCsoportok))
{
customModelState.Add("TechnikaiCsoport", string.Format(ErrorResource.AKovetkezoCsoportoknakNemLehetBeallitaniATechnikaiOsztalybontasMiatt, hibasCsoportok));
}
}
private static void ValidateOsztalybontasFeladatellatasiHely(Dictionary<string, string> customModelState, string csoportIdString, int feladatellatasiHelyId)
{
var hibasCsoportok = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalybontasosCsoportokHibasFeladatellatasiHellyel(csoportIdString, feladatellatasiHelyId);
if (!string.IsNullOrWhiteSpace(hibasCsoportok))
{
customModelState.Add("FeladatEllatasiHelyId", string.Format(ErrorResource.AKovetkezoCsoportoknakNemLehetBeallitaniAFeladatellatasiHelyetOsztalybontasMiatt0, hibasCsoportok));
}
}
private static void ValidateOsztalybontasVegzosEvfolyam(Dictionary<string, string> customModelState, string csoportIdString)
{
var hibasCsoportok = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalybontasosCsoportokVegzos(csoportIdString);
if (!string.IsNullOrWhiteSpace(hibasCsoportok))
{
customModelState.Add("Vegzos", string.Format(ErrorResource.AKovetkezoOsztalybontottCsoportoknalVegzosJelolesNemLehetseges, hibasCsoportok));
}
}
#region Export
public static ActionResult ExportEvfolyamAktualisLetszamadataiForOsztaly(OktNevelesiKategoriaEnum feladatKategoria, OsztalySearchModel model)
{
MemoryStream stream = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetEvfolyamAktualisLetszamadataiExcelExport(feladatKategoria, model.ConvertToCo(GetSearchDate()));
var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = OsztalyCsoportResource.EvfolyamAktualisLetszamadataiExportFileName };
return result;
}
public static ActionResult ExportOsztalyokMindenAdata(OktNevelesiKategoriaEnum feladatKategoria, OsztalySearchModel model)
{
var isNszfhUjSzkt = ClaimData.IsSelectedTanev20_21OrLater && ClaimData.IsSzakkepzoIntezmeny;
MemoryStream stream = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyokMindenAdataExcelExport(feladatKategoria, model.ConvertToCo(GetSearchDate()), isNszfhUjSzkt, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.IsSzakkepzoIntezmeny);
var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = OsztalyCsoportResource.OsztalyokMindenAdataExportFileName };
return result;
}
public static ActionResult ExportOsztalybaJaroTanulok(OktNevelesiKategoriaEnum feladatKategoria, OsztalySearchModel model)
{
MemoryStream stream = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalybaJaroTanulokExcelExport(feladatKategoria, model.ConvertToCo(GetSearchDate()));
var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = feladatKategoria == OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas ? OsztalyCsoportResource.OsztalybaJaroNovendekekExportFileName : OsztalyCsoportResource.OsztalybaJaroTanulokExportFileName };
return result;
}
public static ActionResult ExportOsztalyokAktualisLetszamadatai(OktNevelesiKategoriaEnum feladatKategoria, OsztalySearchModel model)
{
MemoryStream stream = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetExportOsztalyokAktualisLetszamadataiExcelExport(feladatKategoria, model.ConvertToCo(GetSearchDate()));
var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = OsztalyCsoportResource.OsztalyokAktualisLetszamadataiExportFileName };
return result;
}
public static ActionResult ExportCsoportokMindenAdata(OktNevelesiKategoriaEnum? feladatKategoria, CsoportSearchModel model)
{
MemoryStream stream = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetCsoportokMindenAdataExcelExport(feladatKategoria, model.ConvertToCo(GetSearchDate()), ClaimData.IsSelectedTanev21_22OrLater, ClaimData.IsSzakkepzoIntezmeny);
var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = OsztalyCsoportResource.CsoportokMindenAdataExportFileName };
return result;
}
public static ActionResult ExportCsoportbaJaroTanulok(OktNevelesiKategoriaEnum? feladatKategoria, CsoportSearchModel model)
{
MemoryStream stream = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetCsoportbaJaroTanulokExcelExport(feladatKategoria, model.ConvertToCo(GetSearchDate()), ClaimData.IsActivTanev);
var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = feladatKategoria == OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas ? OsztalyCsoportResource.CsoportbaJaroNovendekekExportFileName : OsztalyCsoportResource.CsoportbaJaroTanulokExportFileName };
return result;
}
#endregion
public static int? GetOsztalyKepzesiFormaja(int osztalyId)
{
return new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyKepzesiFormajaByOsztalyId(osztalyId);
}
public static GyogypedaogiaiLogopediaiOsztalyModel GetOsztalyByOsztalyId(int osztalyId)
{
OsztalyCO co = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetOsztalyByOsztalyId(osztalyId);
return new GyogypedaogiaiLogopediaiOsztalyModel()
{
ID = co.Id,
FeladatEllatasiHelyId = co.FeladatEllatasiHelyId,
KepzesiForma = co.KepzesiForma,
EvfolyamTipusa = co.EvfolyamTipusa,
IsGyogypedagogiaiLogopediai = co.IsGyogypedagogiaiLogopediai,
TechnikaiOsztaly = co.TechnikaiOsztaly
};
}
public static DataSourceResult GetOsztalyTanuloinakKepzesiJellemzoi(int osztalyId, int jegyzekTipus, DataSourceRequest request)
{
var ohelper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
ohelper.GridParameters = Converter.GridParameter(request);
var osztalyTanuloinakKepzesiJellemzoi = ohelper.GetOsztalyTanuloinakKepzesiJellemzoi(osztalyId, jegyzekTipus, ClaimData.IsActivTanev);
return osztalyTanuloinakKepzesiJellemzoi.ToDataSourceResult(ohelper.GridParameters);
}
public static void SetCsoportMunkarendVisibility(CsoportBaseModel omodel, int? csoportId = null)
{
if (csoportId.HasValue)
{
var csoportHelper = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var (munkarenddelNemRendelkezo, munkarenddelRendelkezo) = csoportHelper.GetCsoportMunkarendSzama(csoportId.Value, ClaimData.IsActivTanev);
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsUresMegjelenik = munkarenddelNemRendelkezo > 0;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsGridMegjelenik = munkarenddelRendelkezo > 0;
}
}
public static void SetOsztalyMunkarendVisibility(OsztalyBaseModel omodel, int? osztalyId = null)
{
if (osztalyId.HasValue)
{
var osztalyHelper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var (munkarenddelNemRendelkezo, munkarenddelRendelkezo) = osztalyHelper.GetOsztalyMunkarendSzama(osztalyId.Value, ClaimData.IsActivTanev);
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsUresMegjelenik = munkarenddelNemRendelkezo > 0;
omodel.OsztalyCsoportTanuloinakMunkarendjeModel.IsGridMegjelenik = munkarenddelRendelkezo > 0;
}
}
}
public class AlapkepzesOsztalyCsoportLogic : OsztalyCsoportLogic
{
public static void SaveOsztaly(AlapkepzesOsztalyModel model)
{
model.OsztalyNev = model.OsztalyNev.ReplaceMultipleSpacesAndTrim();
if (model.ID > 0)
{
new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).UpdateCo(model.ConvertToCo());
}
else
{
if (model.OsztalynaploMegnyitasa.HasValue && !model.OsztalynaploLezarasa.HasValue)
model.OsztalynaploLezarasa = new TanevrendHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetUtolsoTanitasiNapDate();
new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertCo(model.ConvertToCo());
}
}
public static void SetOsztalySzakkepzesesBasicProperties(AlapkepzesOsztalyModel omodel)
{
if (!omodel.SzakmacsoportId.HasValue)
{
omodel.SzakmacsoportId = (int)SzakmacsoportTipusEnum.Na;
}
if (!omodel.AgazatId.HasValue)
{
omodel.AgazatId = (int)AgazatTipusEnum.Na;
}
if (!omodel.SzakkepesitesId.HasValue)
{
omodel.SzakkepesitesId = (int)SzakkepesitesTipusEnum.Na;
}
if (!omodel.ReszSzakkepesitesId.HasValue)
{
omodel.ReszSzakkepesitesId = (int)ReszszakkepesitesTipusEnum.Na;
}
if (!omodel.AgazatUjSzktTipusId.HasValue)
{
omodel.AgazatUjSzktTipusId = (int)AgazatUjSzktTipusEnum.na;
}
if (!omodel.SzakmaTipusId.HasValue)
{
omodel.SzakmaTipusId = (int)SzakmaTipusEnum.na;
}
if (!omodel.SzakmairanyTipusId.HasValue)
{
omodel.SzakmairanyTipusId = (int)SzakmairanyTipusEnum.na;
}
}
public static AlapkepzesOsztalyModel GetOsztalyBasicProperties(int? osztalyID = null)
{
OsztalyCO co;
if (osztalyID.HasValue)
{
OsztalyHelper h = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
co = h.GetClassById(osztalyID.Value);
}
else
{
co = new OsztalyCO
{
KepzesiForma = (int)TanterviJellegEnum.nappali_rendszeru_iskolai_oktatas
};
}
if (!co.OsztalynaploMegnyitasa.HasValue)
{
TanevHelper thelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanev = thelper.GetTanevInfo();
co.OsztalynaploMegnyitasa = tanev.KezdoNap.AddMonths(0);
}
return AlapkepzesOsztalyModel.ConvertToModel(co);
}
public static Dictionary<string, string> ValidateOsztaly(AlapkepzesOsztalyModel model)
{
var customModelState = ValidateBaseOsztaly(model);
ValidateNyelviElokeszito(customModelState, model);
if (ClaimData.IsSzakkepzoIntezmeny)
ValidateSzakkepzo(customModelState, model);
return customModelState;
}
public static void ValidateNyelviElokeszito(Dictionary<string, string> customModelState, AlapkepzesOsztalyModel model)
{
if (!model.IsNszfhUjSzkt && nyelviElokeszitosOsztalyok.Contains(model.EvfolyamTipusa.Value) && !model.NyelviElokeszito)
{
customModelState.Add("NyelviElokeszito", OsztalyCsoportResource.NyelviElokeszitosOsztalytCsakAJelolonegyzetKipipalasavalLehetLetrehozniModositani);
}
}
public static void ValidateSzakkepzo(Dictionary<string, string> customModelState, AlapkepzesOsztalyModel model)
{
if (SzakkepzoEvfolyamIdList.Contains(model.EvfolyamTipusa.Value) && !model.JogviszonyTipusId.HasValue)
{
customModelState.Add("JogviszonyTipus", OsztalyCsoportResource.SzakkepzoOsztalytCsakJogviszonyKijelolesevelLehetLetrehozni);
}
if (!SzakkepzoEvfolyamIdList.Contains(model.EvfolyamTipusa.Value) && model.JogviszonyTipusId.HasValue)
{
customModelState.Add("JogviszonyTipus", OsztalyCsoportResource.OsztondijraNemJogosultSzakkepzoOsztalynalJogviszonytNemKellMegadni);
}
}
public static Dictionary<string, string> ValidateCsoport(AlapkepzesCsoportModel model)
{
var customModelState = ValidateBaseCsoport(model);
return customModelState;
}
public static void SaveCsoport(AlapkepzesCsoportModel model)
{
model.CsoportNeve = model.CsoportNeve.ReplaceMultipleSpacesAndTrim();
if (model.IsFromSzervezet)
{
model.CsoportTipusId = (int)CsoportTipusEnum.dualis_kepzesi_csoport;
}
if (model.ID.IsEntityId())
{
new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).UpdateCo(model.ConvertToCo(), ClaimData.FelhasznaloId);
}
else
{
if (model.CsoportNaploMegnyitasa.HasValue && !model.CsoportNaploLezarasa.HasValue)
model.CsoportNaploLezarasa = new TanevrendHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetUtolsoTanitasiNapDate();
var newID = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertCo(model.ConvertToCo());
if (model.OsztalyBontasId.IsEntityId())
new TanevrendHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertTanevRendjeNewBontottCsoport(model.OsztalyBontasId.Value, newID);
}
}
public static AlapkepzesCsoportModel GetCsoportBaseProperties(int? csoportId)
{
CsoportCO co;
AlapkepzesCsoportModel model;
if (csoportId.HasValue)
{
CsoportHelper cshelper = new CsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
co = cshelper.GetGroupByID(csoportId.Value);
}
else
{
co = new CsoportCO();
co.CsoportTipus = (int)CsoportTipusEnum.iskolai_csoport_tanorai_celu_;
TanevHelper thelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanev = thelper.GetTanevInfo();
co.CsoportNaploMegnyitasa = tanev.KezdoNap.AddMonths(0);
}
model = AlapkepzesCsoportModel.ConvertToModel(co);
return model;
}
public static CsoportModModel GetModelForCsoportModPopup(List<AlapkepzesCsoportModel> csoportLista, bool isFromSzervezet = false)
{
CsoportModModel csmodel = new CsoportModModel();
if (csoportLista.Count == 1)
{
csmodel = GetCsoportBasePropertiesMod(csoportLista[0].ID);
if (csmodel.CsoportTipus == (int)Enums.CsoportTipusEnum.dualis_kepzesi_csoport && !isFromSzervezet)
{
throw new StatusError((int)HttpStatusCode.BadRequest, ErrorResource.DualisKepzesiCsoportNemModosithato);
}
}
else
{
foreach (var item in csoportLista)
{
csmodel.CsoportIDArrayString += item.ID.ToString() + ",";
csmodel.CsoportNevArray += item.CsoportNeve.ToString() + ", ";
}
csmodel.CsoportIDArrayString = csmodel.CsoportIDArrayString.Remove(csmodel.CsoportIDArrayString.Length - 1);
csmodel.CsoportNevArray = csmodel.CsoportNevArray.Remove(csmodel.CsoportNevArray.Length - 2);
}
return csmodel;
}
public static void ValidateTobbesModFeladatKategoria(string idArrayString)
{
if (!string.IsNullOrWhiteSpace(idArrayString))
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var gimnaziumAlapkepzeseskentKezelendo = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Szakgimnaziumok_Alapkezpeseskent_Tudjak_Kezelni_osztalyokat_Tanulokat);
if (gimnaziumAlapkepzeseskentKezelendo)
{
if (!osztalyCsoportHelper.IsOsztalyCsoportokAzonosOktatasNevelesiFeladatTipus(idArrayString, OktatasiNevelesiFeladatEnum.MuveszetiSzakgimnazium))
{
if (!osztalyCsoportHelper.IsOsztalyCsoportokAzonosKategoria(idArrayString, OktNevelesiKategoriaEnum.NevelesOktatas))
{
throw new StatusError((int)HttpStatusCode.BadRequest, ErrorResource.CsakAlapkezpesesFeladatellatasiHelyhezVagyCsakMuveszetiSzakgimnaziumhozTartozoOsztalyokCsoportokatLehetEgyuttModositani);
}
}
}
else
{
if (!osztalyCsoportHelper.IsOsztalyCsoportokAzonosKategoria(idArrayString, OktNevelesiKategoriaEnum.NevelesOktatas))
{
throw new StatusError((int)HttpStatusCode.BadRequest, ErrorResource.CsakAlapkezpesesFeladatellatasiHelyhezTartozoOsztalyokCsoportokatLehetEgyuttModositani);
}
}
}
}
public static void SetOsztalyKepzesiJellemzokVisibility(AlapkepzesOsztalyModel omodel, int? osztalyId = null)
{
if (osztalyId.HasValue)
{
var osztalyHelper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var (SzktCount, OkjCount, NktCount, UresCount, ReszszakmaCount) = osztalyHelper.GetOsztalyTanuloinakSzamaKepzesiJellemzokSzerint(osztalyId.Value, ClaimData.IsActivTanev);
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.IsUjSzktMegjelenik = SzktCount > 0;
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.IsRegiSzktMegjelenik = OkjCount > 0;
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.IsNktMegjelenik = NktCount > 0;
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.IsUresMegjelenik = UresCount > 0;
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.IsReszszakmakMegjelenik = ReszszakmaCount > 0;
}
}
}
public class AmiOsztalyCsoportLogic : OsztalyCsoportLogic
{
public static void SaveOsztaly(AmiOsztalyModel model)
{
model.OsztalyNev = model.OsztalyNev.ReplaceMultipleSpacesAndTrim();
if (model.ID > 0)
{
new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).UpdateCo(model.ConvertToCo());
}
else
{
new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertCo(model.ConvertToCo());
}
}
public static AmiOsztalyModel GetOsztalyBasicProperties(int? osztalyID = null)
{
OsztalyCO co;
if (osztalyID.HasValue)
{
OsztalyHelper h = new OsztalyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
co = h.GetClassById(osztalyID.Value);
}
else
{
co = new OsztalyCO();
co.KepzesiForma = (int)TanterviJellegEnum.nappali_rendszeru_iskolai_oktatas;
}
if (!co.OsztalynaploMegnyitasa.HasValue)
{
TanevHelper thelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanev = thelper.GetTanevInfo();
co.OsztalynaploMegnyitasa = tanev.KezdoNap.AddMonths(0);
}
return AmiOsztalyModel.ConvertToModel(co);
}
public static Dictionary<string, string> ValidateOsztaly(AmiOsztalyModel model)
{
var customModelState = ValidateBaseOsztaly(model);
return customModelState;
}
public static void ValidateZenemuveszetiAg(Dictionary<string, string> customModelState, int muveszetiAgId, int? zenemuveszetiAgTipusId)
{
if (muveszetiAgId == (int)MuveszetiAgEnum.ZenemuveszetiAg && !zenemuveszetiAgTipusId.HasValue)
{
customModelState.Add("ZenemuveszetiAgTipusId", ErrorResource.ZenemuveszetiAgTipusanakMegadasaKotelezo);
}
}
public static Dictionary<string, string> ValidateCsoport(AmiCsoportModel model)
{
var getOsztalyBontasEvfolyama = false;
if (model.OsztalyBontas && model.OsztalyBontasId.HasValue)
{
List<int> osszevontEvfolyamTipusIds = EnumExtensions.GetEvfolyamTipusDictionaryItems(ClaimData.SelectedTanevID.Value, true).Select(x => x.Id).ToList();
bool isOsszevontEvfolyamTipus = osszevontEvfolyamTipusIds.Any(x => x == GetEvfolyamTipusa(model.OsztalyBontasId.Value));
if (!isOsszevontEvfolyamTipus)
{
getOsztalyBontasEvfolyama = true;
}
}
var customModelState = ValidateBaseCsoport(model, getOsztalyBontasEvfolyama, true);
ValidateZenemuveszetiAg(customModelState, model.MuveszetiAgId.Value, model.ZenemuveszetiAgTipusId);
return customModelState;
}
private static int GetEvfolyamTipusa(int osztalyBontasId)
{
OsztalyHelper osztalyHelper = new OsztalyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
var osztaly = osztalyHelper.GetClassById(osztalyBontasId);
return osztaly.EvfolyamTipusa;
}
public static void SaveCsoport(AmiCsoportModel model)
{
model.CsoportNeve = model.CsoportNeve.ReplaceMultipleSpacesAndTrim();
if (model.ID.HasValue)
{
new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).UpdateCo(model.ConvertToCo(), ClaimData.FelhasznaloId);
}
else
{
var newID = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertCo(model.ConvertToCo());
if (model.OsztalyBontasId.HasValue && model.OsztalyBontasId.Value > 0)
new TanevrendHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertTanevRendjeNewBontottCsoport(model.OsztalyBontasId.Value, newID);
}
}
public static AmiCsoportModel GetCsoportBaseProperties(int? csoportId)
{
CsoportCO co;
AmiCsoportModel model;
if (csoportId.HasValue)
{
CsoportHelper cshelper = new CsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
co = cshelper.GetGroupByID(csoportId.Value);
}
else
{
co = new CsoportCO();
co.CsoportTipus = (int)CsoportTipusEnum.iskolai_csoport_tanorai_celu_;
TanevHelper thelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanev = thelper.GetTanevInfo();
co.CsoportNaploMegnyitasa = tanev.KezdoNap.AddMonths(0);
}
if (co.OsztalyBontas && co.OsztalyBontasId.HasValue)
{
List<int> osszevontEvfolyamTipusIds = EnumExtensions.GetEvfolyamTipusDictionaryItems(ClaimData.SelectedTanevID.Value, true).Select(x => x.Id).ToList();
bool isOsszevontEvfolyamTipus = osszevontEvfolyamTipusIds.Any(x => x == GetEvfolyamTipusa(co.OsztalyBontasId.Value));
co.OsszevontOsztaly = isOsszevontEvfolyamTipus;
}
model = AmiCsoportModel.ConvertToModel(co);
return model;
}
public static CsoportModModel GetModelForCsoportModPopup(List<AmiCsoportModel> csoportLista)
{
CsoportModModel csmodel = new CsoportModModel();
if (csoportLista.Count == 1)
{
csmodel = GetCsoportBasePropertiesMod(csoportLista[0].ID);
}
else
{
foreach (var item in csoportLista)
{
csmodel.CsoportIDArrayString += item.ID.ToString() + ",";
csmodel.CsoportNevArray += item.CsoportNeve.ToString() + ", ";
}
csmodel.CsoportIDArrayString = csmodel.CsoportIDArrayString.Remove(csmodel.CsoportIDArrayString.Length - 1);
csmodel.CsoportNevArray = csmodel.CsoportNevArray.Remove(csmodel.CsoportNevArray.Length - 2);
}
return csmodel;
}
internal static object GetOsztalyMuvesztiAgAdatok(int osztalyId)
{
var osztalyCo = new OsztalyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetClassById(osztalyId);
return new { MuveszetiAgId = osztalyCo.MuveszetiAgId };
}
internal static void ValidateTobbesModAutoEgyeniCsoport(string csoportIDArrayString)
{
var autoEgyeniCsoportok = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAutoEgyeniCsoportok(csoportIDArrayString);
if (!string.IsNullOrWhiteSpace(autoEgyeniCsoportok))
{
throw new StatusError((int)HttpStatusCode.BadRequest, string.Format(ErrorResource.AutoEgyeniCsoportotNemLehetEgyuttModositaniKijeloltCsoportok0, autoEgyeniCsoportok));
}
}
public static void SetOsztalyKepzesiJellemzokVisibility(AmiOsztalyModel omodel, int? osztalyId = null)
{
if (osztalyId.HasValue)
{
var osztalyHelper = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var (SzktCount, OkjCount, NktCount, UresCount, ReszszakmaCount) = osztalyHelper.GetOsztalyTanuloinakSzamaKepzesiJellemzokSzerint(osztalyId.Value, ClaimData.IsActivTanev);
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.IsUjSzktMegjelenik = SzktCount > 0;
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.IsRegiSzktMegjelenik = OkjCount > 0;
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.IsNktMegjelenik = NktCount > 0;
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.IsUresMegjelenik = UresCount > 0;
omodel.OsztalyTanuloinakKepzesiJellemzoiModel.IsReszszakmakMegjelenik = ReszszakmaCount > 0;
}
}
}
public class KollegiumOsztalyCsoportLogic : OsztalyCsoportLogic
{
public static void SaveOsztaly(AlapkepzesOsztalyModel model)
{
model.OsztalyNev = model.OsztalyNev.ReplaceMultipleSpacesAndTrim();
if (model.ID > 0)
{
new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).UpdateCo(model.ConvertToCo());
}
else
{
new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertCo(model.ConvertToCo());
}
}
public static void SetOsztalySzakkepzesesBasicProperties(AlapkepzesOsztalyModel omodel)
{
if (!omodel.SzakmacsoportId.HasValue)
{
omodel.SzakmacsoportId = (int)SzakmacsoportTipusEnum.Na;
}
if (!omodel.AgazatId.HasValue)
{
omodel.AgazatId = (int)AgazatTipusEnum.Na;
}
if (!omodel.SzakkepesitesId.HasValue)
{
omodel.SzakkepesitesId = (int)SzakkepesitesTipusEnum.Na;
}
if (!omodel.ReszSzakkepesitesId.HasValue)
{
omodel.ReszSzakkepesitesId = (int)ReszszakkepesitesTipusEnum.Na;
}
if (!omodel.AgazatUjSzktTipusId.HasValue)
{
omodel.AgazatUjSzktTipusId = (int)AgazatUjSzktTipusEnum.na;
}
if (!omodel.SzakmaTipusId.HasValue)
{
omodel.SzakmaTipusId = (int)SzakmaTipusEnum.na;
}
if (!omodel.SzakmairanyTipusId.HasValue)
{
omodel.SzakmairanyTipusId = (int)SzakmairanyTipusEnum.na;
}
}
public static AlapkepzesOsztalyModel GetOsztalyBasicProperties(int? osztalyID = null)
{
OsztalyCO co;
if (osztalyID.HasValue)
{
OsztalyHelper h = new OsztalyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
co = h.GetClassById(osztalyID.Value);
}
else
{
co = new OsztalyCO
{
KepzesiForma = (int)TanterviJellegEnum.nappali_rendszeru_iskolai_oktatas
};
}
if (!co.OsztalynaploMegnyitasa.HasValue)
{
TanevHelper thelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanev = thelper.GetTanevInfo();
co.OsztalynaploMegnyitasa = tanev.KezdoNap.AddMonths(0);
}
return AlapkepzesOsztalyModel.ConvertToModel(co);
}
public static Dictionary<string, string> ValidateOsztaly(AlapkepzesOsztalyModel model)
{
var customModelState = ValidateBaseOsztaly(model);
ValidateNyelviElokeszito(customModelState, model);
return customModelState;
}
public static void ValidateNyelviElokeszito(Dictionary<string, string> customModelState, AlapkepzesOsztalyModel model)
{
if (nyelviElokeszitosOsztalyok.Contains(model.EvfolyamTipusa.Value) && !model.NyelviElokeszito)
{
customModelState.Add("NyelviElokeszito", OsztalyCsoportResource.NyelviElokeszitosOsztalytCsakAJelolonegyzetKipipalasavalLehetLetrehozniModositani);
}
}
public static Dictionary<string, string> ValidateCsoport(AlapkepzesCsoportModel model)
{
var customModelState = ValidateBaseCsoport(model);
return customModelState;
}
public static void SaveCsoport(AlapkepzesCsoportModel model)
{
model.CsoportNeve = model.CsoportNeve.ReplaceMultipleSpacesAndTrim();
if (model.ID.HasValue)
{
new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).UpdateCo(model.ConvertToCo(), ClaimData.FelhasznaloId);
}
else
{
var newID = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertCo(model.ConvertToCo());
if (model.OsztalyBontasId.HasValue && model.OsztalyBontasId.Value > 0)
new TanevrendHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertTanevRendjeNewBontottCsoport(model.OsztalyBontasId.Value, newID);
}
}
public static AlapkepzesCsoportModel GetCsoportBaseProperties(int? csoportId)
{
CsoportCO co;
AlapkepzesCsoportModel model;
if (csoportId.HasValue)
{
CsoportHelper cshelper = new CsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
co = cshelper.GetGroupByID(csoportId.Value);
}
else
{
co = new CsoportCO();
co.CsoportTipus = (int)CsoportTipusEnum.iskolai_csoport_tanorai_celu_;
TanevHelper thelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanev = thelper.GetTanevInfo();
co.CsoportNaploMegnyitasa = tanev.KezdoNap.AddMonths(0);
}
model = AlapkepzesCsoportModel.ConvertToModel(co);
return model;
}
public static CsoportModModel GetModelForCsoportModPopup(List<AlapkepzesCsoportModel> csoportLista)
{
CsoportModModel csmodel = new CsoportModModel();
if (csoportLista.Count == 1)
{
csmodel = GetCsoportBasePropertiesMod(csoportLista[0].ID);
}
else
{
foreach (var item in csoportLista)
{
csmodel.CsoportIDArrayString += item.ID.ToString() + ",";
csmodel.CsoportNevArray += item.CsoportNeve.ToString() + ", ";
}
csmodel.CsoportIDArrayString = csmodel.CsoportIDArrayString.Remove(csmodel.CsoportIDArrayString.Length - 1);
csmodel.CsoportNevArray = csmodel.CsoportNevArray.Remove(csmodel.CsoportNevArray.Length - 2);
}
return csmodel;
}
}
public class EGYMIOsztalyCsoportLogic : OsztalyCsoportLogic
{
public static void SaveOsztaly(AlapkepzesOsztalyModel model)
{
model.OsztalyNev = model.OsztalyNev.ReplaceMultipleSpacesAndTrim();
if (model.ID > 0)
{
new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).UpdateCo(model.ConvertToCo());
}
else
{
new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertCo(model.ConvertToCo());
}
}
public static void SetOsztalySzakkepzesesBasicProperties(AlapkepzesOsztalyModel omodel)
{
if (!omodel.SzakmacsoportId.HasValue)
{
omodel.SzakmacsoportId = (int)SzakmacsoportTipusEnum.Na;
}
if (!omodel.AgazatId.HasValue)
{
omodel.AgazatId = (int)AgazatTipusEnum.Na;
}
if (!omodel.SzakkepesitesId.HasValue)
{
omodel.SzakkepesitesId = (int)SzakkepesitesTipusEnum.Na;
}
if (!omodel.ReszSzakkepesitesId.HasValue)
{
omodel.ReszSzakkepesitesId = (int)ReszszakkepesitesTipusEnum.Na;
}
if (!omodel.AgazatUjSzktTipusId.HasValue)
{
omodel.AgazatUjSzktTipusId = (int)AgazatUjSzktTipusEnum.na;
}
if (!omodel.SzakmaTipusId.HasValue)
{
omodel.SzakmaTipusId = (int)SzakmaTipusEnum.na;
}
if (!omodel.SzakmairanyTipusId.HasValue)
{
omodel.SzakmairanyTipusId = (int)SzakmairanyTipusEnum.na;
}
}
public static AlapkepzesOsztalyModel GetOsztalyBasicProperties(int? osztalyID = null)
{
OsztalyCO co;
if (osztalyID.HasValue)
{
OsztalyHelper h = new OsztalyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
co = h.GetClassById(osztalyID.Value);
}
else
{
co = new OsztalyCO
{
KepzesiForma = (int)TanterviJellegEnum.nappali_rendszeru_iskolai_oktatas
};
}
if (!co.OsztalynaploMegnyitasa.HasValue)
{
TanevHelper thelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanev = thelper.GetTanevInfo();
co.OsztalynaploMegnyitasa = tanev.KezdoNap.AddMonths(0);
}
return AlapkepzesOsztalyModel.ConvertToModel(co);
}
public static Dictionary<string, string> ValidateOsztaly(AlapkepzesOsztalyModel model)
{
var customModelState = ValidateBaseOsztaly(model);
ValidateNyelviElokeszito(customModelState, model);
return customModelState;
}
public static void ValidateNyelviElokeszito(Dictionary<string, string> customModelState, AlapkepzesOsztalyModel model)
{
if (nyelviElokeszitosOsztalyok.Contains(model.EvfolyamTipusa.Value) && !model.NyelviElokeszito)
{
customModelState.Add("NyelviElokeszito", OsztalyCsoportResource.NyelviElokeszitosOsztalytCsakAJelolonegyzetKipipalasavalLehetLetrehozniModositani);
}
}
public static Dictionary<string, string> ValidateCsoport(AlapkepzesCsoportModel model)
{
var customModelState = ValidateBaseCsoport(model);
return customModelState;
}
public static void SaveCsoport(AlapkepzesCsoportModel model)
{
model.CsoportNeve = model.CsoportNeve.ReplaceMultipleSpacesAndTrim();
if (model.ID.HasValue)
{
new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).UpdateCo(model.ConvertToCo(), ClaimData.FelhasznaloId);
}
else
{
var newID = new CsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertCo(model.ConvertToCo());
if (model.OsztalyBontasId.HasValue && model.OsztalyBontasId.Value > 0)
new TanevrendHelper(ConnectionTypeExtensions.GetSessionConnectionType()).InsertTanevRendjeNewBontottCsoport(model.OsztalyBontasId.Value, newID);
}
}
public static AlapkepzesCsoportModel GetCsoportBaseProperties(int? csoportId)
{
CsoportCO co;
AlapkepzesCsoportModel model;
if (csoportId.HasValue)
{
CsoportHelper cshelper = new CsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
co = cshelper.GetGroupByID(csoportId.Value);
}
else
{
co = new CsoportCO();
co.CsoportTipus = (int)CsoportTipusEnum.iskolai_csoport_tanorai_celu_;
TanevHelper thelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var tanev = thelper.GetTanevInfo();
co.CsoportNaploMegnyitasa = tanev.KezdoNap.AddMonths(0);
}
model = AlapkepzesCsoportModel.ConvertToModel(co);
return model;
}
public static CsoportModModel GetModelForCsoportModPopup(List<AlapkepzesCsoportModel> csoportLista)
{
CsoportModModel csmodel = new CsoportModModel();
if (csoportLista.Count == 1)
{
csmodel = GetCsoportBasePropertiesMod(csoportLista[0].ID);
}
else
{
foreach (var item in csoportLista)
{
csmodel.CsoportIDArrayString += item.ID.ToString() + ",";
csmodel.CsoportNevArray += item.CsoportNeve.ToString() + ", ";
}
csmodel.CsoportIDArrayString = csmodel.CsoportIDArrayString.Remove(csmodel.CsoportIDArrayString.Length - 1);
csmodel.CsoportNevArray = csmodel.CsoportNevArray.Remove(csmodel.CsoportNevArray.Length - 2);
}
return csmodel;
}
}
}