using System.Data; using System.Linq; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.HelperClasses; using Kreta.Core; using Kreta.Core.ConnectionType; using Kreta.DataAccess.Interfaces; using Kreta.DataAccessManual; using Kreta.DataAccessManual.Interfaces; namespace Kreta.BusinessLogic.Helpers { public class PedagogusIKTAdatszolgaltatasHelper : LogicBase { public PedagogusIKTAdatszolgaltatasHelper(IConnectionType connectionType) : base(connectionType) { } public DataSet GetPedagogusIKTAdatszolgaltatasGrid() { var ds = Dal.CustomConnection.Run(ConnectionType, h => h.Alkalmazott(GridParameters).GetPedagogusIKTAdatszolgaltatasForGrid(IntezmenyId, TanevId)); var dt = ds.Tables[0]; dt.Columns.Add("SzuletesiIdoFormatted"); foreach (DataRow row in dt.Rows) { row["SzuletesiIdoFormatted"] = SDAConvert.ToDateTime(row["SzuletesiIdo"]).ToShortDateString(); } return ds; } public void SavePedagogusIKTAdatszolgaltatas(PedagogusIKTAdatszolgaltatasRogzitesCO co) { Dal.CustomConnection.Run(ConnectionType, h => { IAdatszolgaltatasokDal adatszolgaltatasokDal = h.AdatszolgaltatasokDAL(); IAdatszolgaltatasENaploDal adatszolgaltatasENaploDal = h.AdatszolgaltatasENaploDal(); IPedagogusIKTAdatszolgaltatasDal pedagogusIKTAdatszolgaltatasDal = h.PedagogusIKTAdatszolgaltatasDal(); foreach (var pedagogusIKTKompetencia in co.PedagogusIKTKompetenciaList) { int? pedagogusIKTAdatszolgaltatasId = adatszolgaltatasokDal.GetPedagogusIKTAdatszolgaltatasId(IntezmenyId, TanevId, pedagogusIKTKompetencia.TanarId); bool isNewPedagogusIKTAdatszolgaltatas = !pedagogusIKTAdatszolgaltatasId.IsEntityId(); IPedagogusIKTAdatszolgaltatas pedagogusIKTAdatszolgaltatas = isNewPedagogusIKTAdatszolgaltatas ? pedagogusIKTAdatszolgaltatasDal.Get() : pedagogusIKTAdatszolgaltatasDal.Get(pedagogusIKTAdatszolgaltatasId.Value); pedagogusIKTAdatszolgaltatas.IKTEszkozhasznalatModja = pedagogusIKTKompetencia.IKTEszkozhasznalatModja.Value; pedagogusIKTAdatszolgaltatas.ElsodlegesIKTEszkoze = pedagogusIKTKompetencia.ElsodlegesIKTEszkoz; pedagogusIKTAdatszolgaltatas.IKTKompetenciaSzintje = pedagogusIKTKompetencia.IKTKompetenciaSzint.Value; pedagogusIKTAdatszolgaltatas.AlkalmazottId = pedagogusIKTKompetencia.TanarId; if (isNewPedagogusIKTAdatszolgaltatas) { pedagogusIKTAdatszolgaltatasDal.Insert(pedagogusIKTAdatszolgaltatas); } else { pedagogusIKTAdatszolgaltatasDal.FullUpdate(pedagogusIKTAdatszolgaltatas); } } if (co.ENaploHasznalat.HasValue || co.ProjektorokSzama.HasValue || co.WifiEleres.HasValue || co.MukodoProjektorokSzama.HasValue || co.TermekSzama.HasValue || co.WifiLefedettTermekSzama.HasValue) { int? adatszolgaltatasENaploId = adatszolgaltatasokDal.GetEnaploAdatszolgaltatasId(IntezmenyId, TanevId); bool isNewAdatszolgaltatasENaplo = !adatszolgaltatasENaploId.IsEntityId(); IAdatszolgaltatasENaplo adatszolgaltatasENaplo = isNewAdatszolgaltatasENaplo ? adatszolgaltatasENaploDal.Get() : adatszolgaltatasENaploDal.Get(adatszolgaltatasENaploId.Value); if (co.ENaploHasznalat.HasValue) { adatszolgaltatasENaplo.ENaploHasznalata = co.ENaploHasznalat; } if (co.ProjektorokSzama.HasValue) { adatszolgaltatasENaplo.ProjektorokSzama = co.ProjektorokSzama; } if (co.MukodoProjektorokSzama.HasValue) { adatszolgaltatasENaplo.MukodoProjektorokSzama = co.MukodoProjektorokSzama; } if (co.TermekSzama.HasValue) { adatszolgaltatasENaplo.TermekSzama = co.TermekSzama; } if (co.WifiLefedettTermekSzama.HasValue) { adatszolgaltatasENaplo.WiFiLefedettTermekSzama = co.WifiLefedettTermekSzama; } if (co.WifiEleres.HasValue) { adatszolgaltatasENaplo.WiFiEleres = co.WifiEleres; } if (isNewAdatszolgaltatasENaplo) { adatszolgaltatasENaploDal.Insert(adatszolgaltatasENaplo); } else { adatszolgaltatasENaploDal.FullUpdate(adatszolgaltatasENaplo); } } }); } public DataRow GetIKTAdatok() { return Dal.CustomConnection.Run(ConnectionType, h => { IAdatszolgaltatasokDal adatszolgaltatasokDal = h.AdatszolgaltatasokDAL(); DataRow result = adatszolgaltatasokDal.GetIKTAdatok(IntezmenyId, TanevId).Tables[0].AsEnumerable().FirstOrDefault(); return result; }); } } }