This commit is contained in:
skidoodle 2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View file

@ -0,0 +1,267 @@
using System.Data;
using System.Text.RegularExpressions;
using Kreta.Core;
using Kreta.Core.ConnectionType;
using Kreta.DataAccessManual;
using Kreta.DataAccessManual.Interfaces;
namespace Kreta.BusinessLogic.Helpers
{
public class LeptetesHelper : LogicBase
{
public LeptetesHelper(IConnectionType connectionType) : base(connectionType) { }
public DataSet GetOsztalyLeptetesGridData(int aktTanevId)
{
var kovTanevData = new TanevHelper(base.ConnectionType).GetTanevInfo();
var ds = Dal.CustomConnection.Run(ConnectionType, h =>
{
ILeptetesDal dal = h.Leptetes(GridParameters);
return dal.GetOsztalyLeptetesGridData(aktTanevId);
});
ds.Tables[0].Columns.Add("KovTanev", typeof(string));
ds.Tables[0].Columns.Add("OsztalyJavasoltNeve", typeof(string));
ds.Tables[0].Columns.Add("JavasoltEvfolyam", typeof(string));
ds.Tables[0].Columns.Add("EditOsztalyNeve", typeof(string));
ds.Tables[0].Columns.Add("EditEvfolyam", typeof(int));
foreach (DataRow row in ds.Tables[0].Rows)
{
var javOsztalyNev = GetJavasoltNev(row.Field<string>("OsztalyNeve"));
row["KovTanev"] = kovTanevData.Nev;
row["OsztalyJavasoltNeve"] = javOsztalyNev;
row["JavasoltEvfolyam"] = row["KovEvfolyam"];
row["EditOsztalyNeve"] = javOsztalyNev;
row["EditEvfolyam"] = row["KovEvfolyamId"];
}
return ds;
}
public DataSet GetCsoportLeptetesGridData(int aktTanevId)
{
var kovTanevData = new TanevHelper(base.ConnectionType).GetTanevInfo();
var ds = Dal.CustomConnection.Run(ConnectionType, h =>
{
ILeptetesDal dal = h.Leptetes(GridParameters);
return dal.GetCsoportLeptetesGridData(aktTanevId);
});
ds.Tables[0].Columns.Add("KovTanev", typeof(string));
ds.Tables[0].Columns.Add("CsoportJavasoltNeve", typeof(string));
ds.Tables[0].Columns.Add("JavasoltEvfolyam", typeof(string));
ds.Tables[0].Columns.Add("JavasoltOsztalybontas", typeof(string));
ds.Tables[0].Columns.Add("EditCsoportNeve", typeof(string));
ds.Tables[0].Columns.Add("EditEvfolyam", typeof(int));
ds.Tables[0].Columns.Add("EditOsztalybontas", typeof(int));
var helper = new OsztalyHelper(base.ConnectionType);
var osztalyok = helper.GetOsztalyokByTanev(string.Empty);
foreach (DataRow row in ds.Tables[0].Rows)
{
var javCsoportNev = GetJavasoltNev(row.Field<string>("CsoportNeve"));
var javCsoportBontas = "";
if (!string.IsNullOrWhiteSpace(row.Field<string>("Osztalybontas")))
javCsoportBontas = GetJavasoltNev(row.Field<string>("Osztalybontas"));
foreach (var item in osztalyok)
{
if (item.Value == javCsoportBontas)
{
row["JavasoltOsztalybontas"] = javCsoportBontas;
row["EditOsztalybontas"] = item.Key;
break;
}
}
row["KovTanev"] = kovTanevData.Nev;
row["CsoportJavasoltNeve"] = javCsoportNev;
row["JavasoltEvfolyam"] = row["KovEvfolyam"];
row["EditCsoportNeve"] = javCsoportNev;
row["EditEvfolyam"] = row["KovEvfolyamId"];
}
return ds;
}
public void CopyOsztalyToKovTanev(int sourceID, string targetNev, int targetEvfolyam, int kovTanevId)
{
Dal.CustomConnection.Run(ConnectionType, h =>
{
IOsztalyDal oDal = h.Osztaly();
ITanevDal tDal = h.TanevDal();
IFeladatEllatasiHelyDal fDal = h.FeladatEllatasiHelyDal();
ITantervDAL taDal = h.TantervDAL();
ITeremDal teDal = h.Terem();
IAlkalmazottDal aDal = h.Alkalmazott();
var kovTanevData = tDal.Get(kovTanevId);
var sourceEntity = oDal.Get(sourceID);
var targetEntity = oDal.Get();
var kovFeladatEllatasiHelyId = fDal.GetKovTanevIdByAktTanevId(sourceEntity.FeladatEllatasiHelyId);
var kovTantervId = taDal.GetKovTanevIdByAktTanevId(sourceEntity.TantervId);
var kovTeremId = teDal.GetKovTanevIdByAktTanevId(sourceEntity.TeremId);
var kovOsztalyFonokId = aDal.GetKovTanevIdByAktTanevId(sourceEntity.OsztalyFonokId);
var kovOfoHelyettesId = aDal.GetKovTanevIdByAktTanevId(sourceEntity.OfoHelyettesId);
if (kovTantervId != 0)
targetEntity.TantervId = kovTantervId;
targetEntity.Megjegyzes = sourceEntity.Megjegyzes;
targetEntity.Nev = targetNev.ReplaceMultipleSpacesAndTrim();
targetEntity.VegzosEvfolyam = sourceEntity.VegzosEvfolyam;
targetEntity.EvfolyamTipusa = targetEvfolyam;
targetEntity.Importalt = sourceEntity.Importalt;
targetEntity.TervezettLetszam = sourceEntity.TervezettLetszam;
targetEntity.Keresztfeleves = sourceEntity.Keresztfeleves;
targetEntity.FeladatKategoriaId = sourceEntity.FeladatKategoriaId;
targetEntity.MuveszetiAgId = sourceEntity.MuveszetiAgId;
targetEntity.TanszakTipusId = sourceEntity.TanszakTipusId;
targetEntity.MufajTipusId = sourceEntity.MufajTipusId;
targetEntity.ZenemuveszetiAgTipusId = sourceEntity.ZenemuveszetiAgTipusId;
targetEntity.KepzesiForma = sourceEntity.KepzesiForma;
targetEntity.IsGyogypedagogiaiLogopediai = sourceEntity.IsGyogypedagogiaiLogopediai;
targetEntity.IsTechnikai = sourceEntity.IsTechnikai;
targetEntity.FeladatEllatasiHelyId = kovFeladatEllatasiHelyId;
targetEntity.OsztalynaploLeirasa = sourceEntity.OsztalynaploLeirasa;
targetEntity.OsztalynaploMegnyitasa = kovTanevData.KezdoNap;
targetEntity.OsztalynaploZarasa = null;
targetEntity.Agazat = sourceEntity.Agazat;
targetEntity.Reszszakkepesites = sourceEntity.Reszszakkepesites;
targetEntity.Szakkepesites = sourceEntity.Szakkepesites;
targetEntity.SzakmaCsoport = sourceEntity.SzakmaCsoport;
targetEntity.GimnaziumiEvfolyamTipusId = sourceEntity.GimnaziumiEvfolyamTipusId;
targetEntity.Kettannyelvu = sourceEntity.Kettannyelvu;
targetEntity.Nemzetisegi = sourceEntity.Nemzetisegi;
targetEntity.NyelviElokeszito = sourceEntity.NyelviElokeszito;
targetEntity.Sport = sourceEntity.Sport;
targetEntity.AJTehettseggondozoProgram = sourceEntity.AJTehettseggondozoProgram;
targetEntity.AJProgram = sourceEntity.AJProgram;
targetEntity.VegyesEvfolyamu = sourceEntity.VegyesEvfolyamu;
targetEntity.VegyesSzakkepzesu = sourceEntity.VegyesSzakkepzesu;
targetEntity.SpecialisJellemzo = sourceEntity.SpecialisJellemzo;
targetEntity.VegyesEvfolyamuTanterv = sourceEntity.VegyesEvfolyamuTanterv;
targetEntity.OsztalypenzBankszamlaszamKedvezmenyezettNeve = sourceEntity.OsztalypenzBankszamlaszamKedvezmenyezettNeve;
targetEntity.OsztalypenzBankszamlaszama = sourceEntity.OsztalypenzBankszamlaszama;
targetEntity.VPOSEngedelyezett = sourceEntity.VPOSEngedelyezett;
targetEntity.AranyJanosProgramTipusId = sourceEntity.AranyJanosProgramTipusId;
targetEntity.JogviszonyTipusId = sourceEntity.JogviszonyTipusId;
targetEntity.AgazatUjSzktTipusId = sourceEntity.AgazatUjSzktTipusId;
targetEntity.SzakmairanyTipusId = sourceEntity.SzakmairanyTipusId;
targetEntity.SzakmaTipusId = sourceEntity.SzakmaTipusId;
targetEntity.SzakiranyNktTipusId = sourceEntity.SzakiranyNktTipusId;
targetEntity.SzakkepesitesNktTipusId = sourceEntity.SzakkepesitesNktTipusId;
targetEntity.TanulmanyiTeruletNktTipusId = sourceEntity.TanulmanyiTeruletNktTipusId;
if (kovTeremId != 0)
targetEntity.TeremId = kovTeremId;
if (kovOsztalyFonokId != 0)
targetEntity.OsztalyFonokId = kovOsztalyFonokId;
if (kovOfoHelyettesId != 0)
targetEntity.OfoHelyettesId = kovOfoHelyettesId;
targetEntity.IntezmenyId = sourceEntity.IntezmenyId;
targetEntity.TanevId = kovTanevId;
oDal.Insert(targetEntity);
});
}
public void CopyCsoportToKovTanev(int sourceID, string targetNev, int targetEvfolyam, int? targetOsztalybontas, int kovTanevId)
{
Dal.CustomConnection.Run(ConnectionType, h =>
{
ICsoportDal csDal = h.Csoport();
IOsztalyDal oDal = h.Osztaly();
ITanevDal tDal = h.TanevDal();
IFeladatEllatasiHelyDal fDal = h.FeladatEllatasiHelyDal();
ITantervDAL taDal = h.TantervDAL();
ITeremDal teDal = h.Terem();
IAlkalmazottDal aDal = h.Alkalmazott();
var kovTanevData = tDal.Get(kovTanevId);
var sourceEntity = csDal.Get(sourceID);
var targetEntity = csDal.Get();
var kovFeladatEllatasiHelyId = fDal.GetKovTanevIdByAktTanevId(sourceEntity.FeladatEllatasiHelyId);
var kovTeremId = teDal.GetKovTanevIdByAktTanevId(sourceEntity.TeremId);
var kovCsoportVezetoId = aDal.GetKovTanevIdByAktTanevId(sourceEntity.CsoportVezetoId);
targetEntity.Megjegyzes = sourceEntity.Megjegyzes;
targetEntity.Nev = targetNev.ReplaceMultipleSpacesAndTrim();
targetEntity.EvfolyamTipusa = targetEvfolyam;
targetEntity.Importalt = sourceEntity.Importalt;
targetEntity.TervezettLetszam = sourceEntity.TervezettLetszam;
targetEntity.Keresztfeleves = sourceEntity.Keresztfeleves;
targetEntity.FeladatKategoriaId = sourceEntity.FeladatKategoriaId;
targetEntity.MuveszetiAgId = sourceEntity.MuveszetiAgId;
targetEntity.ZenemuveszetiAgTipusId = sourceEntity.ZenemuveszetiAgTipusId;
targetEntity.KepzesiForma = sourceEntity.KepzesiForma;
targetEntity.IsGyogypedagogiaiLogopediai = sourceEntity.IsGyogypedagogiaiLogopediai;
targetEntity.IsTechnikai = sourceEntity.IsTechnikai;
targetEntity.FeladatEllatasiHelyId = kovFeladatEllatasiHelyId;
targetEntity.Tipusa = sourceEntity.Tipusa;
targetEntity.CsoportnaploLeiras = sourceEntity.CsoportnaploLeiras;
targetEntity.CsoportnaploMegnyitasa = kovTanevData.KezdoNap;
targetEntity.CsoportnaploZarasa = null;
targetEntity.IsAutoEgyeniCsoport = sourceEntity.IsAutoEgyeniCsoport;
if (targetOsztalybontas.HasValue && targetOsztalybontas != -1)
{
targetEntity.OsztalyBontasId = targetOsztalybontas.Value;
var bonottOsztalyData = oDal.Get(targetOsztalybontas.Value);
targetEntity.EvfolyamTipusa = bonottOsztalyData.EvfolyamTipusa;
targetEntity.VegzosEvfolyam = bonottOsztalyData.VegzosEvfolyam;
targetEntity.FeladatEllatasiHelyId = bonottOsztalyData.FeladatEllatasiHelyId;
}
else
{
targetEntity.FeladatEllatasiHelyId = kovFeladatEllatasiHelyId;
targetEntity.VegzosEvfolyam = sourceEntity.VegzosEvfolyam;
}
targetEntity.AlIntezmenyId = sourceEntity.AlIntezmenyId;
targetEntity.AlTanevId = kovTanevId;
if (kovTeremId != 0)
targetEntity.TeremId = kovTeremId;
if (kovCsoportVezetoId != 0)
targetEntity.CsoportVezetoId = kovCsoportVezetoId;
targetEntity.IntezmenyId = sourceEntity.IntezmenyId;
targetEntity.TanevId = kovTanevId;
csDal.Insert(targetEntity);
});
}
private string GetJavasoltNev(string nev)
{
var result = nev;
var pattern = @"(\d\/\d+)";
Match match = Regex.Match(nev, pattern);
if (match.Success && int.TryParse(nev.Substring(0, 1), out _))
{
var splittedStr = match.Value.Split('/');
result = (int.Parse(splittedStr[0]) + 1) + "/" + (int.Parse(splittedStr[1]) + 1) + nev.Replace(match.Value, "");
}
else
{
if (nev.Length >= 3 && int.TryParse(nev.Substring(0, 3), out _))
result = int.Parse(nev.Substring(0, 3)) + 1 + nev.Replace(nev.Substring(0, 3), "");
else if (nev.Length >= 2 && int.TryParse(nev.Substring(0, 2), out _))
result = int.Parse(nev.Substring(0, 2)) + 1 + nev.Replace(nev.Substring(0, 2), "");
else if (nev.Length >= 1 && int.TryParse(nev.Substring(0, 1), out _))
result = int.Parse(nev.Substring(0, 1)) + 1 + nev.Replace(nev.Substring(0, 1), "");
}
return result;
}
}
}