kreta/Kreta.BusinessLogic/Helpers/OsztalyHelper.cs
2024-03-13 00:33:46 +01:00

1111 lines
50 KiB
C#

using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Exceptions;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Utils;
using Kreta.Core;
using Kreta.Core.ConnectionType;
using Kreta.Core.Exceptions;
using Kreta.DataAccess.Interfaces;
using Kreta.DataAccessManual;
using Kreta.DataAccessManual.Interfaces;
using Kreta.DataAccessManual.Util;
using Kreta.Enums;
using Kreta.Resources;
namespace Kreta.BusinessLogic.Helpers
{
public class OsztalyHelper : LogicBase
{
public OsztalyHelper(IConnectionType connectionType) : base(connectionType) { }
public DataSet GetSZMKOsztalyok(int gondviseloId)
{
return Dal.CustomConnection.Run(ConnectionType, h =>
{
var dal = h.EugyintezesDal();
return dal.GetSZMKOsztalyok(gondviseloId);
});
}
public OsztalyCO GetClassById(int id)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly();
var entity = dal.Get(id);
var co = ConvertEntityToCo(entity, h);
co.HasTanuloBesorolas = h.OsztalyCsoport().HasTanuloBesorolas(id);
return co;
});
}
public void InsertCo(OsztalyCO co)
{
Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly();
var entity = dal.Get();
ConvertToNewEntity(entity, co);
entity.TanevId = TanevId;
entity.FeladatKategoriaId = new FeladatEllatasiHelyHelper(new DalHandlerConnectionType(ConnectionType, h)).GetFeladatKategoriaId(co.FeladatEllatasiHelyId);
dal.Insert(entity);
});
}
public void UpdateCo(OsztalyCO co)
{
Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly();
var entity = dal.Get(co.Id);
if (entity.FeladatEllatasiHelyId != co.FeladatEllatasiHelyId)
{
var helper = new FeladatEllatasiHelyHelper(new DalHandlerConnectionType(ConnectionType, h));
var dictionary = helper.GetFeladatEllatasiHelyDDl(string.Empty, (int)OktNevelesiKategoriaEnum.NevelesOktatas);
var feladatEllatasiHelyIdMegtalalhato = dictionary.Keys.Any(x => x == entity.FeladatEllatasiHelyId.ToString());
if (feladatEllatasiHelyIdMegtalalhato)
{
if (!new FeladatEllatasiHelyHelper(new DalHandlerConnectionType(ConnectionType, h)).IsAzonosKategoria(entity.FeladatEllatasiHelyId, co.FeladatEllatasiHelyId) && h.OsztalyCsoport().HasTanuloBesorolas(co.Id, true))
{
throw new BlException(OsztalyCsoportResource.FeladatellatasiHelyNemModosithatoMertVanTanuloBesorolva);
}
}
}
var kapcsolodoOsztalybontottCsoportokUpdate = (
entity.EvfolyamTipusa != co.EvfolyamTipusa
|| entity.VegzosEvfolyam != co.VegzosEvfolyam
|| entity.Keresztfeleves != co.Keresztfeleves
|| entity.FeladatEllatasiHelyId != co.FeladatEllatasiHelyId
|| entity.OsztalyFonokId != co.OsztalyfonokId
|| entity.KepzesiForma != co.KepzesiForma
|| entity.IsTechnikai != co.TechnikaiOsztaly
);
var osztalyTanuloiUpdateSzakkepzesesAdatokNeeded = co.SzakmacsoportId.HasValue
|| co.AgazatId.HasValue
|| co.SzakkepesitesId.HasValue
|| co.ReszSzakkepesitesId.HasValue;
var osztalyTanuloiUpdateSzakkepzoJuttatasAdatokNeeded = new IntezmenyHelper(new DalHandlerConnectionType(ConnectionType, h)).GetIntezmenyiAdatok().IsSzakkepzoJuttatas;
var felhelyHelper = new FeladatEllatasiHelyHelper(new DalHandlerConnectionType(ConnectionType, h));
var elozoFelhelyIsSzakkepzeses = felhelyHelper.IsSzakkepzeses(entity.FeladatEllatasiHelyId);
var ujFelhelyIsSzakkepzeses = felhelyHelper.IsSzakkepzeses(co.FeladatEllatasiHelyId);
var juttatasUpdateNeeded = entity.JogviszonyTipusId != co.JogviszonyTipusId
|| entity.EvfolyamTipusa != co.EvfolyamTipusa
|| entity.IsTechnikai != co.TechnikaiOsztaly
|| entity.Keresztfeleves != co.Keresztfeleves
|| elozoFelhelyIsSzakkepzeses != ujFelhelyIsSzakkepzeses
|| entity.VegzosEvfolyam != co.VegzosEvfolyam;
var isOrarendUpdateNeeded = (entity.VegzosEvfolyam != co.VegzosEvfolyam
|| entity.Keresztfeleves != co.Keresztfeleves) && entity.OrarendiOra.Count > 0;
ConvertToUpdateEntity(h, entity, co);
if (kapcsolodoOsztalybontottCsoportokUpdate)
{
KapcsolodoOsztalybontottCsoportokUpdate(h, entity, isOrarendUpdateNeeded);
}
if (osztalyTanuloiUpdateSzakkepzesesAdatokNeeded)
{
var szakkepzeseAdatok = new SzakkepzesesAdatokCO
{
Szakmacsoport = entity.SzakmaCsoport,
Agazat = entity.Agazat,
Szakkepesites = entity.Szakkepesites,
Reszszakkepesites = entity.Reszszakkepesites
};
SetSzakkepzesesAdatokNaToNull(szakkepzeseAdatok);
dal.UpdateOsztalyTanuloiSzakkepzesesAdatok(entity.ID, szakkepzeseAdatok.ConvertToPCO());
}
if (elozoFelhelyIsSzakkepzeses && !ujFelhelyIsSzakkepzeses)
{
dal.UpdateOsztalyTanuloiReszszakepzesAdatokToNull(entity.ID, TanevId, IntezmenyId, FelhasznaloId);
}
if (osztalyTanuloiUpdateSzakkepzoJuttatasAdatokNeeded)
{
dal.FullUpdate(entity);
if (juttatasUpdateNeeded)
{
var osztalyTanuloiIdList = entity.Tanulo.Where(x => !x.Torolt && (!x.KilepesDatum.HasValue || (x.KilepesDatum.Value >= DateTime.Today))).Select(tcs => tcs.TanuloId).ToList();
var juttatasDal = h.JuttatasDAL();
juttatasDal.UpdateTanulokSzakkepzesiJuttatasok(entity.TanevId, FelhasznaloId, (int)JuttatasTipusEnum.szakkepzesi_juttatas, tanulokIdString: string.Join(",", osztalyTanuloiIdList));
juttatasDal.UpdateTanulokSzakkepzesiJuttatasok(entity.TanevId, FelhasznaloId, (int)JuttatasTipusEnum.apaczaiosztondij, tanulokIdString: string.Join(",", osztalyTanuloiIdList));
}
return;
}
dal.FullUpdate(entity);
});
}
private void KapcsolodoOsztalybontottCsoportokUpdate(IDalHandler h, IOsztaly entity, bool isOrarendUpdateNeeded)
{
var csoportDal = h.Csoport();
var orarendDal = h.OrarendiOra();
foreach (var osztalybontottcsoport in entity.CsoportBontasok)
{
osztalybontottcsoport.EvfolyamTipusa = entity.EvfolyamTipusa;
osztalybontottcsoport.VegzosEvfolyam = entity.VegzosEvfolyam;
osztalybontottcsoport.Keresztfeleves = entity.Keresztfeleves;
osztalybontottcsoport.FeladatEllatasiHelyId = entity.FeladatEllatasiHelyId;
osztalybontottcsoport.KepzesiForma = entity.KepzesiForma;
osztalybontottcsoport.FeladatKategoriaId = new FeladatEllatasiHelyHelper(new DalHandlerConnectionType(ConnectionType, h)).GetFeladatKategoriaId(entity.FeladatEllatasiHelyId);
osztalybontottcsoport.IsTechnikai = entity.IsTechnikai;
if (osztalybontottcsoport.IsAutoEgyeniCsoport)
{
osztalybontottcsoport.CsoportVezetoId = entity.OsztalyFonokId;
}
csoportDal.Update(osztalybontottcsoport);
if (isOrarendUpdateNeeded)
{
orarendDal.UpdateOrarend(IntezmenyId, TanevId, null, null, null, osztalybontottcsoport.ID);
}
}
}
private void SetSzakkepzesesAdatokNaToNull(SzakkepzesesAdatokCO szakkepzesesAdatok)
{
if (szakkepzesesAdatok.Szakmacsoport == (int)SzakmacsoportTipusEnum.Na)
{
szakkepzesesAdatok.Szakmacsoport = null;
}
if (szakkepzesesAdatok.Agazat == (int)AgazatTipusEnum.Na)
{
szakkepzesesAdatok.Agazat = null;
}
if (szakkepzesesAdatok.Szakkepesites == (int)SzakkepesitesTipusEnum.Na)
{
szakkepzesesAdatok.Szakkepesites = null;
}
if (szakkepzesesAdatok.Reszszakkepesites == (int)ReszszakkepesitesTipusEnum.Na)
{
szakkepzesesAdatok.Reszszakkepesites = null;
}
}
public string DeleteClass(int id, bool csoportokTorlese, int felhasznaloId, bool updateTanoraEvesSorszam)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var tanmenetHelper = new TanmenetHelper(new DalHandlerConnectionType(ConnectionType, h));
var dal = h.Osztaly();
var entity = dal.Get(id);
var tanuloOsztalyNev = entity.Nev;
if (h.OsztalyCsoport().HasTanuloBesorolas(id))
{
throw new CannotBeDeletedException(string.Format(ErrorResource.Az0OsztalyCsoportNemTorolthetoMertKapcsolodikVagyKapcsolodottHozzaTanulo, tanuloOsztalyNev));
}
foreach (var tanmenetId in entity.Tanmenet.Where(x => !x.Torolt).Select(x => x.ID).ToList())
{
tanmenetHelper.DeleteTanmenet(tanmenetId);
}
// TODO: Átgondolni, a Csoport entitás Osztalybontás és az Osztály CsoportBontasok, illetve az Osztaly_Csoportok kapcsolótáblát, mert redundás tárolásnak tünik és össze vissza van használva.
// Elméletileg nem lehet egy csoportnak több osztálya(felületről biztos nem lehet állítani), ezért a kapcsolótábla indokolalannak tűnik.
// https://jira.ekreta.hu/browse/KRETA-2817
var osztalyCsoport = new OsztalyCsoportHelper(new DalHandlerConnectionType(ConnectionType, h));
if (!osztalyCsoport.HasTanitasiOra(id))
{
var orarendiOraDal = h.OrarendiOra();
var orarendiOraList = entity.OrarendiOra.Where(x => !x.Torolt).ToList();
orarendiOraList.ForEach(x => orarendiOraDal.Delete(x.ID));
}
var csoportDal = h.Csoport();
var csoportHelper = new CsoportHelper(new DalHandlerConnectionType(ConnectionType, h));
var csoportbontasok = entity.CsoportBontasok.Where(cs => !cs.Torolt).ToList();
if (csoportokTorlese)
{
csoportbontasok.ForEach(x => csoportHelper.DeleteGroupById(x.ID));
}
else
{
csoportbontasok.ForEach(x => csoportDal.SetOsztalyBontasIdToNull(x.ID, felhasznaloId, TanevId));
}
dal.Delete(entity, IntezmenyId, TanevId, updateTanoraEvesSorszam);
return tanuloOsztalyNev;
});
}
public DataSet OsztalyExport(OsztalySearchCo co)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
DateTime tanevElsoTanitasiNapja = new TanevHelper(new DalHandlerConnectionType(ConnectionType, h)).GetTanevKezdete();
var dal = h.Osztaly(GridParameters);
var ds = dal.OsztalyExport(co.ConvertToPco(), TanevId, tanevElsoTanitasiNapja);
return ds;
});
}
public string UpdateOsztalyTobbes(OsztalyTobbesModCO co)
{
if (!co.ID.HasValue)
{
throw new BlException(ErrorResource.NemLetezoOsztaly);
}
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var osztalyTanuloiUpdateSzakkepzesesAdatokNeeded = false;
var dal = h.Osztaly();
var entity = dal.Get(co.ID.Value);
var kapcsolodoOsztalybontottCsoportokUpdate = (
co.Evfolyam.HasValue && entity.EvfolyamTipusa != co.Evfolyam
|| co.VegzosEvf.HasValue && entity.VegzosEvfolyam != co.VegzosEvf.ToBool()
|| co.Keresztfeleves.HasValue && entity.Keresztfeleves != co.Keresztfeleves.ToBool()
|| co.FeladatellatasiHely.HasValue && entity.FeladatEllatasiHelyId != co.FeladatellatasiHely
);
var isOrarendUpdateNeeded = (entity.VegzosEvfolyam != co.VegzosEvf.ToBool()
|| entity.Keresztfeleves != co.Keresztfeleves.ToBool()) && entity.OrarendiOra.Count > 0;
var juttatasUpdateNeeded = (co.Evfolyam.HasValue && (entity.EvfolyamTipusa != co.Evfolyam))
|| (co.JogviszonyTipusId.HasValue && (entity.JogviszonyTipusId != co.JogviszonyTipusId))
|| (co.VegzosEvf.HasValue && (entity.VegzosEvfolyam != co.VegzosEvf.ToBool()))
|| (co.Keresztfeleves.HasValue && (entity.Keresztfeleves != co.Keresztfeleves.ToBool()))
|| (co.TechnikaiOsztaly.HasValue && (entity.IsTechnikai != co.TechnikaiOsztaly.ToBool()));
if (co.FeladatellatasiHely.HasValue)
{
var felhelyHelper = new FeladatEllatasiHelyHelper(new DalHandlerConnectionType(ConnectionType, h));
var elozoFelhelyIsSzakkepzeses = felhelyHelper.IsSzakkepzeses(entity.FeladatEllatasiHelyId);
var ujFelhelyIsSzakkepzeses = felhelyHelper.IsSzakkepzeses(co.FeladatellatasiHely.Value);
juttatasUpdateNeeded = juttatasUpdateNeeded
|| (elozoFelhelyIsSzakkepzeses != ujFelhelyIsSzakkepzeses);
}
var osztalyTanuloiUpdateSzakkepzoJuttatasAdatokNeeded = new IntezmenyHelper(new DalHandlerConnectionType(ConnectionType, h)).GetIntezmenyiAdatok().IsSzakkepzoJuttatas;
if (co.Evfolyam.HasValue)
{
entity.EvfolyamTipusa = co.Evfolyam.Value;
}
if (co.FeladatellatasiHely.HasValue)
{
if (entity.FeladatEllatasiHelyId != co.FeladatellatasiHely.Value && !new FeladatEllatasiHelyHelper(new DalHandlerConnectionType(ConnectionType, h)).IsAzonosKategoria(entity.FeladatEllatasiHelyId, co.FeladatellatasiHely.Value) && h.OsztalyCsoport().HasTanuloBesorolas(co.ID.Value, true))
{
return entity.Nev;
}
entity.FeladatEllatasiHelyId = co.FeladatellatasiHely.Value;
entity.FeladatKategoriaId = new FeladatEllatasiHelyHelper(new DalHandlerConnectionType(ConnectionType, h)).GetFeladatKategoriaId(co.FeladatellatasiHely.Value);
}
if (co.KepzesiForma.HasValue)
{
entity.KepzesiForma = co.KepzesiForma.Value;
}
if (co.Tanterv.HasValue)
{
entity.TantervId = co.Tanterv.Value;
}
if (co.VegzosEvf.HasValue)
{
entity.VegzosEvfolyam = co.VegzosEvf.ToBool();
}
if (co.Keresztfeleves.HasValue)
{
entity.Keresztfeleves = co.Keresztfeleves.ToBool();
}
if (co.TechnikaiOsztaly.HasValue)
{
entity.IsTechnikai = co.TechnikaiOsztaly.ToBool();
}
if (co.TervezettLetszam.HasValue)
{
entity.TervezettLetszam = co.TervezettLetszam;
}
if (co.Nemzetisegi.HasValue)
{
entity.Nemzetisegi = co.Nemzetisegi.ToBool();
}
//if (co.Gyogypedagogiai.HasValue)
//{
// entity.Gyogypedagogiai = co.Gyogypedagogiai.ToBool();
// entity.SpecialisJellemzo = co.SpecialisJellemzo;
//}
if (co.Kettannyelvu.HasValue)
{
entity.Kettannyelvu = co.Kettannyelvu.ToBool();
}
if (co.NyelviElokeszito.HasValue)
{
entity.NyelviElokeszito = co.NyelviElokeszito.ToBool();
}
if (co.IsGyogypedagogiaiLogopediai.HasValue)
{
entity.IsGyogypedagogiaiLogopediai = co.IsGyogypedagogiaiLogopediai.ToBool();
}
if (co.AJAlProgram.HasValue)
{
entity.AranyJanosProgramTipusId = co.AJAlProgram.Value;
}
//if (co.Gyogypedagogiai.HasValue)
//{
// entity.Gyogypedagogiai = co.Gyogypedagogiai.ToBool();
// entity.SpecialisJellemzo = co.SpecialisJellemzo;
//}
if (co.SzakmacsoportId.HasValue)
{
entity.SzakmaCsoport = co.SzakmacsoportId.Value;
osztalyTanuloiUpdateSzakkepzesesAdatokNeeded = true;
}
if (co.AgazatId.HasValue)
{
entity.Agazat = co.AgazatId.Value;
osztalyTanuloiUpdateSzakkepzesesAdatokNeeded = true;
}
if (co.SzakkepesitesId.HasValue)
{
entity.Szakkepesites = co.SzakkepesitesId.Value;
osztalyTanuloiUpdateSzakkepzesesAdatokNeeded = true;
}
if (co.ReszSzakkepesitesId.HasValue)
{
entity.Reszszakkepesites = co.ReszSzakkepesitesId.Value;
osztalyTanuloiUpdateSzakkepzesesAdatokNeeded = true;
}
if (co.AgazatUjSzktTipusId.HasValue)
{
entity.AgazatUjSzktTipusId = co.AgazatUjSzktTipusId.Value;
}
if (co.SzakmaTipusId.HasValue)
{
entity.SzakmaTipusId = co.SzakmaTipusId.Value;
}
if (co.SzakmairanyTipusId.HasValue)
{
entity.SzakmairanyTipusId = co.SzakmairanyTipusId.Value;
}
if (co.SzakiranyNktTipusId.HasValue)
{
entity.SzakiranyNktTipusId = co.SzakiranyNktTipusId.Value;
}
if (co.SzakkepesitesNktTipusId.HasValue)
{
entity.SzakkepesitesNktTipusId = co.SzakkepesitesNktTipusId.Value;
}
if (co.TanulmanyiTeruletNktTipusId.HasValue)
{
entity.TanulmanyiTeruletNktTipusId = co.TanulmanyiTeruletNktTipusId.Value;
}
//if (co.AJTehettseggondozoProgram.HasValue)
//{
// entity.AJTehettseggondozoProgram = co.AJTehettseggondozoProgram.ToBool();
//}
if (co.GimnaziumiEvfolyamTipusId.HasValue)
{
entity.GimnaziumiEvfolyamTipusId = co.GimnaziumiEvfolyamTipusId.Value;
}
if (co.Sport.HasValue)
{
entity.Sport = co.Sport.ToBool();
}
if (co.AJProgram.HasValue)
{
entity.AJProgram = co.AJProgram.ToBool();
}
if (co.MuveszetiAgId.HasValue)
{
entity.MuveszetiAgId = co.MuveszetiAgId.Value;
}
if (co.MufajTipusId.HasValue)
{
entity.MufajTipusId = co.MufajTipusId.Value;
}
if (co.TanszakTipusId.HasValue)
{
entity.TanszakTipusId = co.TanszakTipusId.Value;
}
if (co.ZenemuveszetiAgTipusId.HasValue)
{
entity.ZenemuveszetiAgTipusId = co.ZenemuveszetiAgTipusId.Value;
}
if (osztalyTanuloiUpdateSzakkepzesesAdatokNeeded)
{
var szakkepzeseAdatok = new SzakkepzesesAdatokCO
{
Szakmacsoport = entity.SzakmaCsoport,
Agazat = entity.Agazat,
Szakkepesites = entity.Szakkepesites,
Reszszakkepesites = entity.Reszszakkepesites
};
SetSzakkepzesesAdatokNaToNull(szakkepzeseAdatok);
dal.UpdateOsztalyTanuloiSzakkepzesesAdatok(entity.ID, szakkepzeseAdatok.ConvertToPCO());
}
if (co.OsztalynaploMegnyitasDatuma.HasValue)
{
entity.OsztalynaploMegnyitasa = co.OsztalynaploMegnyitasDatuma.Value;
}
if (co.OsztalynaploLezarasDatuma.HasValue)
{
entity.OsztalynaploZarasa = co.OsztalynaploLezarasDatuma.Value;
}
if (kapcsolodoOsztalybontottCsoportokUpdate)
{
KapcsolodoOsztalybontottCsoportokUpdate(h, entity, isOrarendUpdateNeeded);
}
entity.JogviszonyTipusId = co.JogviszonyTipusId;
if (co.OsztalyFonok.HasValue)
{
entity.OsztalyFonokId = co.OsztalyFonok.Value;
}
if (co.OsztalyFonokHelyettes.HasValue)
{
entity.OfoHelyettesId = co.OsztalyFonokHelyettes.Value;
}
if (co.Terem.HasValue)
{
entity.TeremId = co.Terem.Value;
}
if (osztalyTanuloiUpdateSzakkepzoJuttatasAdatokNeeded)
{
dal.FullUpdate(entity);
if (juttatasUpdateNeeded)
{
var osztalyTanuloiIdList = entity.Tanulo.Where(x => !x.Torolt && (!x.KilepesDatum.HasValue || (x.KilepesDatum.Value >= DateTime.Today))).Select(tcs => tcs.TanuloId).ToList();
var juttatasDal = h.JuttatasDAL();
juttatasDal.UpdateTanulokSzakkepzesiJuttatasok(entity.TanevId, FelhasznaloId, (int)JuttatasTipusEnum.szakkepzesi_juttatas, tanulokIdString: string.Join(",", osztalyTanuloiIdList));
juttatasDal.UpdateTanulokSzakkepzesiJuttatasok(entity.TanevId, FelhasznaloId, (int)JuttatasTipusEnum.apaczaiosztondij, tanulokIdString: string.Join(",", osztalyTanuloiIdList));
}
return null;
}
dal.FullUpdate(entity);
return null;
});
}
private DataSet SearchClass(OsztalySearchCo co)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly(GridParameters);
var ds = dal.OsztalyKereses(co.ConvertToPco(), TanevId);
return ds;
});
}
public int GetOsztalyfonokByOsztalyId(int osztalyId)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly();
return dal.GetOsztalyfonokByOsztalyId(osztalyId);
});
}
public IDictionary<string, string> GetOsztalyokByTanev(string baseText, int? feladatKategoriaId = null)
{
var result = Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly();
return dal.GetOsztalyokByTanevForDDL(TanevId, feladatKategoriaId);
});
return LogicUtil.CreateDropdownContent(result, "ID", "Nev", baseText, sort: false);
}
public IDictionary<string, string> GetOnlyOsztalyok(string baseText = null, int? tanarId = null, OktNevelesiKategoriaEnum? feladatKategoriaId = null, int? customTanevId = null, bool forSzirStatTanulo = false)
{
var result = Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var tanevId = customTanevId.HasValue ? customTanevId.Value : TanevId;
var dal = h.Osztaly();
return dal.GetOnlyOsztalyokForDDL(tanevId, tanarId, feladatKategoriaId, forSzirStatTanulo);
});
return LogicUtil.CreateDropdownContent(result, "ID", "Nev", baseText, sort: false);
}
private void ConvertToUpdateEntity(IDalHandler h, IOsztaly entity, OsztalyCO co)
{
entity.Nev = co.OsztalyNev;
entity.Megjegyzes = co.Megjegyzes;
entity.VegzosEvfolyam = co.VegzosEvfolyam;
entity.EvfolyamTipusa = co.EvfolyamTipusa;
if (co.TeremID.HasValue)
{
entity.TeremId = co.TeremID.Value;
}
else
{
entity.Terem = null;
}
if (co.KepzesiForma.HasValue)
{
entity.KepzesiForma = co.KepzesiForma.Value;
}
if (co.OsztalyfonokId.HasValue && co.OsztalyfonokId > 0)
{
entity.OsztalyFonokId = co.OsztalyfonokId.Value;
}
else
{
entity.OsztalyFonok = null;
}
if (co.OsztalyfonokHelyettesId.HasValue && co.OsztalyfonokHelyettesId > 0)
{
entity.OfoHelyettesId = (int)co.OsztalyfonokHelyettesId;
}
else
{
entity.OfoHelyettes = null;
}
if (co.TantervId.HasValue && co.TantervId > 0)
{
entity.TantervId = co.TantervId.Value;
}
else
{
entity.Tanterv = null;
}
if (co.FeladatEllatasiHelyId > 0)
{
entity.FeladatEllatasiHelyId = co.FeladatEllatasiHelyId;
entity.FeladatKategoriaId = new FeladatEllatasiHelyHelper(new DalHandlerConnectionType(ConnectionType, h)).GetFeladatKategoriaId(co.FeladatEllatasiHelyId);
}
else
{
entity.FeladatEllatasiHely = null;
}
if (co.OsztalynaploMegnyitasa.HasValue)
{
entity.OsztalynaploMegnyitasa = co.OsztalynaploMegnyitasa.Value;
}
else
{
entity.OsztalynaploMegnyitasa = null;
}
if (co.OsztalynaploLezarasa.HasValue)
{
entity.OsztalynaploZarasa = co.OsztalynaploLezarasa.Value;
}
else
{
entity.OsztalynaploZarasa = null;
}
if (co.SzuloiMunkakozossegKepviseloId.HasValue && co.SzuloiMunkakozossegKepviseloId > 0)
{
entity.SZMKKepviseloId = co.SzuloiMunkakozossegKepviseloId.Value;
}
else
{
entity.SZMKKepviselo = null;
}
if (co.SzuloiMunkakozossegKepviseloHelyettesId.HasValue && co.SzuloiMunkakozossegKepviseloHelyettesId > 0)
{
entity.SZMKKepviseloHelyettesId = co.SzuloiMunkakozossegKepviseloHelyettesId.Value;
}
else
{
entity.SZMKKepviseloHelyettes = null;
}
if (co.SzuloiMunkakozossegKepviseloHelyettesId.HasValue && co.SzuloiMunkakozossegKepviseloHelyettesId > 0)
{
entity.SZMKKepviseloHelyettesId = co.SzuloiMunkakozossegKepviseloHelyettesId.Value;
}
else
{
entity.SZMKKepviseloHelyettes = null;
}
if (co.AJAlProgram.HasValue && co.AJAlProgram > 0)
{
entity.AranyJanosProgramTipusId = co.AJAlProgram.Value;
}
else
{
entity.AranyJanosProgramTipusId = null;
}
entity.OsztalypenzBankszamlaszama = co.OsztalypenzBankszamlaszama;
entity.OsztalypenzBankszamlaszamKedvezmenyezettNeve = co.OsztalypenzBankszamlaszamKedvezmenyezett;
entity.GimnaziumiEvfolyamTipusId = co.GimnaziumiEvfolyamTipusId.HasValue ? co.GimnaziumiEvfolyamTipusId : null;
entity.OsztalynaploLeirasa = co.OsztalynaploLeirasa;
entity.Naploszam = co.Naploszam;
entity.Keresztfeleves = co.Keresztfeleves;
entity.IsTechnikai = co.TechnikaiOsztaly;
entity.TervezettLetszam = co.TervezettLetszam;
entity.Nemzetisegi = co.Nemzetisegi;
entity.Kettannyelvu = co.Kettannyelvu;
entity.NyelviElokeszito = co.NyelviElokeszito;
entity.IsGyogypedagogiaiLogopediai = co.IsGyogypedagogiaiLogopediai;
entity.Sport = co.Sport;
entity.SzakmaCsoport = co.SzakmacsoportId ?? (int)SzakmacsoportTipusEnum.Na;
entity.Agazat = co.AgazatId ?? (int)AgazatTipusEnum.Na;
entity.Szakkepesites = co.SzakkepesitesId ?? (int)SzakkepesitesTipusEnum.Na;
entity.Reszszakkepesites = co.ReszSzakkepesitesId ?? (int)ReszszakkepesitesTipusEnum.Na;
entity.AgazatUjSzktTipusId = co.AgazatUjSzktTipusId ?? (int)AgazatUjSzktTipusEnum.na;
entity.SzakmaTipusId = co.SzakmaTipusId ?? (int)SzakmaTipusEnum.na;
entity.SzakmairanyTipusId = co.SzakmairanyTipusId ?? (int)SzakmairanyTipusEnum.na;
entity.SzakiranyNktTipusId = co.SzakiranyNktTipusId ?? (int)SzakiranyNktTipusEnum.na;
entity.SzakkepesitesNktTipusId = co.SzakkepesitesNktTipusId ?? (int)SzakkepesitesNktTipusEnum.na;
entity.TanulmanyiTeruletNktTipusId = co.TanulmanyiTeruletNktTipusId ?? (int)TanulmanyiTeruletNktTipusEnum.na;
entity.JogviszonyTipusId = co.JogviszonyTipusId;
entity.AJProgram = co.AJProgram;
//entity.AJTehettseggondozoProgram = co.AJTehettseggondozoProgram;
entity.SpecialisJellemzo = co.SpecialisJellemzo;
entity.MuveszetiAgId = co.MuveszetiAgId;
entity.TanszakTipusId = co.TanszakTipusId;
entity.MufajTipusId = co.MufajTipusId;
}
private void ConvertToNewEntity(IOsztaly entity, OsztalyCO co)
{
entity.Nev = co.OsztalyNev;
entity.Megjegyzes = co.Megjegyzes;
entity.VegzosEvfolyam = co.VegzosEvfolyam;
if (co.TeremID.HasValue)
entity.TeremId = co.TeremID.Value;
if (co.KepzesiForma.HasValue)
entity.KepzesiForma = co.KepzesiForma.Value;
entity.EvfolyamTipusa = co.EvfolyamTipusa;
if (co.OsztalyfonokId.HasValue && co.OsztalyfonokId > 0)
entity.OsztalyFonokId = co.OsztalyfonokId.Value;
if (co.OsztalyfonokHelyettesId != null && co.OsztalyfonokHelyettesId > 0)
entity.OfoHelyettesId = co.OsztalyfonokHelyettesId.Value;
if (co.TantervId.HasValue && co.TantervId > 0)
entity.TantervId = co.TantervId.Value;
if (co.FeladatEllatasiHelyId > 0)
entity.FeladatEllatasiHelyId = co.FeladatEllatasiHelyId;
if (co.OsztalynaploMegnyitasa.HasValue)
entity.OsztalynaploMegnyitasa = co.OsztalynaploMegnyitasa.Value;
if (co.OsztalynaploLezarasa.HasValue)
entity.OsztalynaploZarasa = co.OsztalynaploLezarasa.Value;
if (!string.IsNullOrWhiteSpace(co.OsztalynaploLeirasa))
entity.OsztalynaploLeirasa = co.OsztalynaploLeirasa;
entity.Naploszam = co.Naploszam;
entity.Keresztfeleves = co.Keresztfeleves;
entity.IsTechnikai = co.TechnikaiOsztaly;
entity.TervezettLetszam = co.TervezettLetszam;
entity.Nemzetisegi = co.Nemzetisegi;
entity.Kettannyelvu = co.Kettannyelvu;
entity.NyelviElokeszito = co.NyelviElokeszito;
entity.IsGyogypedagogiaiLogopediai = co.IsGyogypedagogiaiLogopediai;
entity.Sport = co.Sport;
entity.AJProgram = co.AJProgram;
//entity.AJTehettseggondozoProgram = co.AJTehettseggondozoProgram;
entity.SpecialisJellemzo = co.SpecialisJellemzo;
entity.MuveszetiAgId = co.MuveszetiAgId;
if (co.GimnaziumiEvfolyamTipusId.HasValue)
{
entity.GimnaziumiEvfolyamTipusId = co.GimnaziumiEvfolyamTipusId;
}
entity.SzakmaCsoport = co.SzakmacsoportId ?? (int)SzakmacsoportTipusEnum.Na;
entity.Agazat = co.AgazatId ?? (int)AgazatTipusEnum.Na;
entity.Szakkepesites = co.SzakkepesitesId ?? (int)SzakkepesitesTipusEnum.Na;
entity.Reszszakkepesites = co.ReszSzakkepesitesId ?? (int)ReszszakkepesitesTipusEnum.Na;
entity.AgazatUjSzktTipusId = co.AgazatUjSzktTipusId ?? (int)AgazatUjSzktTipusEnum.na;
entity.SzakmaTipusId = co.SzakmaTipusId ?? (int)SzakmaTipusEnum.na;
entity.SzakmairanyTipusId = co.SzakmairanyTipusId ?? (int)SzakmairanyTipusEnum.na;
entity.SzakiranyNktTipusId = co.SzakiranyNktTipusId ?? (int)SzakiranyNktTipusEnum.na;
entity.SzakkepesitesNktTipusId = co.SzakkepesitesNktTipusId ?? (int)SzakkepesitesNktTipusEnum.na;
entity.TanulmanyiTeruletNktTipusId = co.TanulmanyiTeruletNktTipusId ?? (int)TanulmanyiTeruletNktTipusEnum.na;
entity.JogviszonyTipusId = co.JogviszonyTipusId;
if (co.AJAlProgram.HasValue)
{
entity.AranyJanosProgramTipusId = co.AJAlProgram.Value;
}
entity.MuveszetiAgId = co.MuveszetiAgId;
entity.MufajTipusId = co.MufajTipusId;
entity.TanszakTipusId = co.TanszakTipusId;
}
/// INFO @DevKornel: Mobil használja
public OsztalyCO ConvertEntityToCo(IOsztaly entity, IDalHandler h)
{
var co = new OsztalyCO();
co.Id = entity.ID;
co.OsztalyNev = entity.Nev;
co.Megjegyzes = entity.Megjegyzes;
co.VegzosEvfolyam = entity.VegzosEvfolyam;
co.KepzesiForma = entity.KepzesiForma;
co.EvfolyamTipusa = entity.EvfolyamTipusa > 0 ? entity.EvfolyamTipusa : (int)EvfolyamTipusEnum.na;
co.OsztalyfonokId = entity.OsztalyFonokId > 0 ? entity.OsztalyFonokId : -1;
co.OsztalyfonokHelyettesId = entity.OfoHelyettesId > 0 ? entity.OfoHelyettesId : -1;
co.TantervId = entity.TantervId > 0 ? entity.TantervId : new int?();
co.FeladatEllatasiHelyId = entity.FeladatEllatasiHelyId > 0 ? entity.FeladatEllatasiHelyId : 0;
co.TeremID = entity.TeremId > 0 ? entity.TeremId : (int?)null;
co.OsztalyfonokNev = entity.OsztalyFonokId > 0 ? entity.OsztalyFonok.NyomtatasiNev : "";
co.OfoHelyettesNev = entity.OfoHelyettesId > 0 ? entity.OfoHelyettes.NyomtatasiNev : "";
co.TanevNeve = entity.Tanev.Nev;
co.TeremNev = entity.Terem != null ? entity.Terem.Nev : "";
co.TantervNev = entity.TantervId > 0 ? entity.Tanterv.Nev : "";
co.FeladatellatasiHelyNev = entity.FeladatEllatasiHely.MukodesiHely.Nev + " - " + entity.FeladatEllatasiHely.OktatasiNevelesiFeladatTipus.GetDisplayName<OktatasiNevelesiFeladatEnum>(TanevId);
co.Keresztfeleves = entity.Keresztfeleves;
co.SzakmacsoportId = entity.SzakmaCsoport;
co.AgazatId = entity.Agazat;
co.SzakkepesitesId = entity.Szakkepesites;
co.ReszSzakkepesitesId = entity.Reszszakkepesites;
co.AgazatUjSzktTipusId = entity.AgazatUjSzktTipusId;
co.SzakmaTipusId = entity.SzakmaTipusId;
co.SzakmairanyTipusId = entity.SzakmairanyTipusId;
co.SzakiranyNktTipusId = entity.SzakiranyNktTipusId;
co.SzakkepesitesNktTipusId = entity.SzakkepesitesNktTipusId;
co.TanulmanyiTeruletNktTipusId = entity.TanulmanyiTeruletNktTipusId;
co.TechnikaiOsztaly = entity.IsTechnikai;
co.TervezettLetszam = entity.TervezettLetszam;
co.Nemzetisegi = entity.Nemzetisegi;
co.Kettannyelvu = entity.Kettannyelvu;
co.NyelviElokeszito = entity.NyelviElokeszito;
co.IsGyogypedagogiaiLogopediai = entity.IsGyogypedagogiaiLogopediai;
co.GimnaziumiEvfolyamTipusId = entity.GimnaziumiEvfolyamTipusId;
co.Sport = entity.Sport;
co.AJProgram = entity.AJProgram;
//co.AJTehettseggondozoProgram = entity.AJTehettseggondozoProgram;
co.SpecialisJellemzo = entity.SpecialisJellemzo;
co.MuveszetiAgId = entity.MuveszetiAgId;
co.MufajTipusId = entity.MufajTipusId;
co.TanszakTipusId = entity.TanszakTipusId;
co.SzuloiMunkakozossegKepviseloId = entity.SZMKKepviseloId > 0 ? entity.SZMKKepviseloId : (int?)null;
co.SzuloiMunkakozossegKepviselo = entity.SZMKKepviseloId > 0 ? entity.SZMKKepviselo.Nev : string.Empty;
co.SzuloiMunkakozossegKepviseloHelyettesId = entity.SZMKKepviseloHelyettesId > 0 ? entity.SZMKKepviseloHelyettesId : (int?)null;
co.SzuloiMunkakozossegKepviseloHelyettes = entity.SZMKKepviseloHelyettesId > 0 ? entity.SZMKKepviseloHelyettes.Nev : string.Empty;
co.OsztalypenzBankszamlaszama = entity.OsztalypenzBankszamlaszama;
co.OsztalypenzBankszamlaszamKedvezmenyezett = entity.OsztalypenzBankszamlaszamKedvezmenyezettNeve;
co.JogviszonyTipusId = entity.JogviszonyTipusId;
//Azok a tanulók, akiknél nincs kilépésdátuma, vagy az nagyobb, mint a jelenlegi dátum
DateTime date = DateTime.Now;
TanevHelper thelper = new TanevHelper(new DalHandlerConnectionType(ConnectionType, h));
var tanev = thelper.GetTanevInfo();
co.TanulokSzama = entity.Tanulo.Count(x => x.Torolt == false &&
(!tanev.IsAktiv || (x.BelepesDatum != null && x.BelepesDatum <= date && (x.KilepesDatum == null || x.KilepesDatum > date))));
if (entity.OsztalynaploMegnyitasa != null)
{ co.OsztalynaploMegnyitasa = entity.OsztalynaploMegnyitasa; }
if (entity.OsztalynaploZarasa != null)
{ co.OsztalynaploLezarasa = entity.OsztalynaploZarasa; }
if (entity.OsztalynaploLeirasa != null)
{ co.OsztalynaploLeirasa = entity.OsztalynaploLeirasa; }
if (!string.IsNullOrWhiteSpace(entity.Naploszam))
{ co.Naploszam = entity.Naploszam; }
co.AJAlProgram = entity.AranyJanosProgramTipusId;
return co;
}
public SzakkepzesesAdatokCO GetOsztalyNKTesSZKTSzakkepzesesAdatok(int osztalyId)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly();
var szakkepzesesAdatok = new SzakkepzesesAdatokCO();
var ds = dal.GetOsztalyNKTesSZKTSzakkepzesesAdatok(osztalyId);
if (ds.Tables[0].Rows.Count > 0)
{
var row = ds.Tables[0].Rows[0];
szakkepzesesAdatok.Szakmacsoport = row["Szakmacsoport"] == DBNull.Value ? null : (int?)row["Szakmacsoport"];
szakkepzesesAdatok.Agazat = row["Agazat"] == DBNull.Value ? null : (int?)row["Agazat"];
szakkepzesesAdatok.Szakkepesites = row["Szakkepesites"] == DBNull.Value ? null : (int?)row["Szakkepesites"];
szakkepzesesAdatok.Reszszakkepesites = row["Reszszakkepesites"] == DBNull.Value ? null : (int?)row["Reszszakkepesites"];
szakkepzesesAdatok.SzakiranyNKTTipusId = row["SzakiranyNKTTipus"] == DBNull.Value ? null : (int?)row["SzakiranyNKTTipus"];
szakkepzesesAdatok.SzakkepesitesNKTTipusId = row["SzakkepesitesNKTTipus"] == DBNull.Value ? null : (int?)row["SzakkepesitesNKTTipus"];
szakkepzesesAdatok.TanulmanyiTeruletNKTTipusId = row["TanulmanyiTeruletNKTTipus"] == DBNull.Value ? null : (int?)row["TanulmanyiTeruletNKTTipus"];
}
return szakkepzesesAdatok;
});
}
public SzakkepzoAdatokCO GetOsztalySzakkepzoAdatok(int osztalyId)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly();
var szakkepzoAdatok = new SzakkepzoAdatokCO();
var ds = dal.GetOsztalySzakkepzoAdatok(osztalyId);
if (ds.Tables[0].Rows.Count > 0)
{
var row = ds.Tables[0].Rows[0];
szakkepzoAdatok.JogviszonyTipus = row["Jogviszony"] == DBNull.Value ? null : (int?)row["Jogviszony"];
}
return szakkepzoAdatok;
});
}
public List<OsztalyItemCo> GetOsztalyCoList()
{
DataSet dataSet = Dal.CustomConnection.Run(ConnectionType, dalHandler => dalHandler.Osztaly().GetOsztalyDataSet(TanevId));
var result = new List<OsztalyItemCo>();
foreach (DataRow dataRow in dataSet.Tables[0].Rows)
{
var item = new OsztalyItemCo(dataRow);
result.Add(item);
}
return result;
}
public IDictionary<string, string> GetOsztalyokForDDL(string baseText = null, int? tanarId = null, bool? szuperOsztalyfonok = null, OktNevelesiKategoriaEnum? feladatKategoriaId = null)
{
var result = Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly();
return dal.GetOsztalyokForDDL(TanevId, tanarId, szuperOsztalyfonok, feladatKategoriaId);
});
return LogicUtil.CreateDropdownContent(result, "ID", "Nev", baseText, sort: false);
}
public IDictionary<string, string> GetOsztalyokCsoportokForDDL(string baseText = null, int? tanarId = null, bool szuperOsztalyfonok = false)
{
var result = Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly();
return dal.GetOsztalyokCsoportokForDDL(TanevId, tanarId, szuperOsztalyfonok);
});
return LogicUtil.CreateDropdownContent(result, "ID", "Nev", baseText, sort: false);
}
public List<OsztalyItemCo> GetOsztalyCoList(OsztalySearchCo osztalySearchCo)
{
var coList = new List<OsztalyItemCo>();
var ds = SearchClass(osztalySearchCo);
foreach (var row in ds.Tables[0].AsEnumerable())
{
coList.Add(new OsztalyItemCo(row));
}
return FilterOsztalyItemCoList(coList, osztalySearchCo);
}
private List<OsztalyItemCo> FilterOsztalyItemCoList(List<OsztalyItemCo> coList, OsztalySearchCo osztalySearchCo)
{
if (osztalySearchCo == null)
{
return coList;
}
IEnumerable<OsztalyItemCo> result = coList;
if (osztalySearchCo.NincsEvfolyamJellmezo.HasValue && osztalySearchCo.NincsEvfolyamJellmezo.Value)
{
result = result.Where(x => x.EvfolyamId == (int)EvfolyamTipusEnum.na);
}
if (osztalySearchCo.NincsOsztalyfonok.HasValue && osztalySearchCo.NincsOsztalyfonok.Value)
{
result = result.Where(x => string.IsNullOrWhiteSpace(x.Osztalyfonok));
}
if (osztalySearchCo.UresOsztaly.HasValue)
{
// Note: TanulokSzamaOrder = TanulokSzama * 1000 + ArchivTanulokSzama DB-ben igy kerul kiszamitasra!
result = result.Where(x => x.TanulokSzamaOrder < 1000);
}
if (osztalySearchCo.FeladatKategoriaId.IsEntityId())
{
result = result.Where(x => x.FeladatKategoriaId == osztalySearchCo.FeladatKategoriaId.Value);
}
if (!string.IsNullOrWhiteSpace(osztalySearchCo.OsztalyNev))
{
result = result.Where(x => x.Nev.ToComparableString().Contains(osztalySearchCo.OsztalyNev.ToComparableString()));
}
if (osztalySearchCo.EvfolyamId.HasValue)
{
result = result.Where(x => x.EvfolyamId == osztalySearchCo.EvfolyamId.Value);
}
if (osztalySearchCo.OsztalyfonokId.HasValue)
{
result = result.Where(x => x.OsztalyfonokId == osztalySearchCo.OsztalyfonokId.Value);
}
if (osztalySearchCo.OsztalyfonokHelyettesId.HasValue)
{
result = result.Where(x => x.OsztalyfonokHelyettesId == osztalySearchCo.OsztalyfonokHelyettesId.Value);
}
if (osztalySearchCo.TeremId.HasValue)
{
result = result.Where(x => x.TeremId == osztalySearchCo.TeremId.Value);
}
if (osztalySearchCo.Vegzos.HasValue)
{
result = result.Where(x => x.VegzosEvfolyam_BNAME == (osztalySearchCo.Vegzos.Value == 1).GetDisplayName());
}
if (osztalySearchCo.KepzesId.HasValue)
{
result = result.Where(x => x.KepzesId == osztalySearchCo.KepzesId.Value);
}
if (osztalySearchCo.TantervId.HasValue)
{
result = result.Where(x => x.TantervId == osztalySearchCo.TantervId.Value);
}
/// TODO: ezt a szűrést át kell beszélni
if (osztalySearchCo.NaploMegnyitasDatum.HasValue)
{
result = result.Where(x => x.NaploMegnyitasDatum >= osztalySearchCo.NaploMegnyitasDatum.Value);
}
if (osztalySearchCo.NaploLezarasDatum.HasValue)
{
result = result.Where(x => x.NaploLezarasDatum <= osztalySearchCo.NaploLezarasDatum.Value);
}
if (osztalySearchCo.FeladatEllatasiHelyId.HasValue)
{
result = result.Where(x => x.FeladatEllatasiHelyId == osztalySearchCo.FeladatEllatasiHelyId.Value);
}
if (osztalySearchCo.SearchMuveszetiAgId.HasValue)
{
result = result.Where(x => x.MuveszetiAgId == osztalySearchCo.SearchMuveszetiAgId.Value);
}
return result.ToList();
}
public List<OsztalyTanuloinakKepzesiJellemzoiItemCo> GetOsztalyTanuloinakKepzesiJellemzoi(int osztalyId, int jegyzekTipus, bool isAktivTanev)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly(GridParameters);
var dataSet = dal.GetOsztalyTanuloinakKepzesiJellemzoi(TanevId, IntezmenyId, osztalyId, jegyzekTipus, isAktivTanev);
var result = new List<OsztalyTanuloinakKepzesiJellemzoiItemCo>();
foreach (DataRow dataRow in dataSet.Tables[0].Rows)
{
var item = new OsztalyTanuloinakKepzesiJellemzoiItemCo(dataRow);
result.Add(item);
}
return result;
});
}
public List<TanuloKepzesiJellemzoiItemCo> GetOsztalyTanuloiByKepzesiJellemzok(TanuloKepzesiJellemzoSearchCo co, bool isAktivTanev)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly(GridParameters);
var dataSet = dal.GetOsztalyTanuloiByKepzesiJellemzok(co.ConvertToPco(), TanevId, IntezmenyId, isAktivTanev);
var result = new List<TanuloKepzesiJellemzoiItemCo>();
foreach (DataRow dataRow in dataSet.Tables[0].Rows)
{
var item = new TanuloKepzesiJellemzoiItemCo(dataRow);
result.Add(item);
}
return result;
});
}
public List<OsztalyCsoportTanuloMunkarendItemCo> GetOsztalyTanuloiByMunkarend(int osztalycsoportId, bool hasMunkarend, bool isAktivTanev)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly(GridParameters);
var dataSet = dal.GetOsztalyTanuloiByMunkarend(osztalycsoportId, hasMunkarend, isAktivTanev);
var result = new List<OsztalyCsoportTanuloMunkarendItemCo>();
foreach (DataRow dataRow in dataSet.Tables[0].Rows)
{
var item = new OsztalyCsoportTanuloMunkarendItemCo(dataRow);
result.Add(item);
}
return result;
});
}
public (int SzktCount, int OkjCount, int NktCount, int UresCount, int ReszszakmaCount) GetOsztalyTanuloinakSzamaKepzesiJellemzokSzerint(int osztalyId, bool isAktivTanev)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly(GridParameters);
var dataSet = dal.GetOsztalyTanuloinakSzamaKepzesiJellemzokSzerint(osztalyId, TanevId, IntezmenyId, isAktivTanev);
var dataRow = dataSet.Tables[0].Rows[0];
return (SzktCount: (int)dataRow[0], OkjCount: (int)dataRow[1], NktCount: (int)dataRow[2], UresCount: (int)dataRow[3], ReszszakmaCount: (int)dataRow[4]);
});
}
public (int munkarenddelNemRendelkezo, int munkarenddelRendelkezo) GetOsztalyMunkarendSzama(int osztalyCsoportId, bool isAktivTanev)
{
return Dal.CustomConnection.Run(ConnectionType, (h) =>
{
var dal = h.Osztaly(GridParameters);
var dataSet = dal.GetOsztalyMunkarendSzama(osztalyCsoportId, isAktivTanev);
var dataRow = dataSet.Tables[0].Rows[0];
return (munkarenddelNemRendelkezo: (int)dataRow[0], munkarenddelRendelkezo: (int)dataRow[1]);
});
}
}
}