using System; using System.Data; using Kreta.DataAccess.Interfaces; using Kreta.DataAccessManual.Interfaces; using Kreta.DataAccessManual.Util; using Kreta.Framework; using Kreta.Framework.Util; using SDA.DataProvider; using SDA.Kreta.Entities; namespace Kreta.DataAccessManual { internal class InformatikaiAdatszolgDAL : DataAccessBase, IInformatikaiAdatszolgDal { public InformatikaiAdatszolgDAL(DalHandler handler) : base(handler) { } public InformatikaiAdatszolgDAL(DalHandler handler, GridParameters gridParameters) : base(handler, gridParameters) { } public void FullUpdate(IIntezmenyEszkozAdatszolgaltatas dto) { var entity = dto as IntezmenyEszkozAdatszolgaltatas; entity.FullUpdate(); DalHelper.Commit(); } public void Update(IIntezmenyEszkozAdatszolgaltatas dto) { var entity = dto as IntezmenyEszkozAdatszolgaltatas; entity.Update(); DalHelper.Commit(); } public IIntezmenyEszkozAdatszolgaltatas Get() { return IntezmenyEszkozAdatszolgaltatas.GiveAnInstance(); } public IIntezmenyEszkozAdatszolgaltatas Get(int id) { var entity = IntezmenyEszkozAdatszolgaltatas.GiveAnInstance(); entity.LoadByID(id); return entity; } public void Insert(IIntezmenyEszkozAdatszolgaltatas dto) { var entity = dto as IntezmenyEszkozAdatszolgaltatas; entity.Insert(); dto.ID = entity.ID; DalHelper.Commit(); } public void Delete(int id) { var entity = IntezmenyEszkozAdatszolgaltatas.GiveAnInstance(); entity.LoadByID(id); entity.Delete(); DalHelper.Commit(); } public void Insert(IMukodesiHelyAdatszolgaltatas dto) { var entity = dto as MukodesiHelyAdatszolgaltatas; entity.Insert(); dto.ID = entity.ID; DalHelper.Commit(); } public void FullUpdate(IMukodesiHelyAdatszolgaltatas dto) { var entity = dto as MukodesiHelyAdatszolgaltatas; entity.FullUpdate(); DalHelper.Commit(); } public int? GetIntezmenyEszkozAdatszolgaltatasId(int intezmenyId, int tanevId) { using (var command = new SDACommand()) { command.Connection = UserContext.Instance.SDAConnection; command.Transaction = UserContext.Instance.SDATransaction; command.Parameters.Add(nameof(tanevId), tanevId); command.Parameters.Add(nameof(intezmenyId), intezmenyId); command.CommandText = $@" SELECT ID FROM T_INTEZMENYESZKOZADATSZOLGALTA_OSSZES WHERE TOROLT = 'F' AND C_TANEVID = @{nameof(tanevId)} AND C_INTEZMENYID = @{nameof(intezmenyId)} "; var result = command.ExecuteScalar(); if (result != null) { return Convert.ToInt32(result); } return null; } } public int? GetMukodesiHelyAdatszolgaltatasId(int intezmenyId, int tanevId, int mukodesiHelyId) { using (var command = new SDACommand()) { command.Connection = UserContext.Instance.SDAConnection; command.Transaction = UserContext.Instance.SDATransaction; command.Parameters.Add(nameof(intezmenyId), intezmenyId); command.Parameters.Add(nameof(tanevId), tanevId); command.Parameters.Add(nameof(mukodesiHelyId), mukodesiHelyId); command.CommandText = $@" SELECT ID FROM T_MUKODESIHELYADATSZOLGALTATAS_OSSZES WHERE TOROLT = 'F' AND C_INTEZMENYID = @{nameof(intezmenyId)} AND C_TANEVID = @{nameof(tanevId)} AND C_MUKODESIHELYID = @{nameof(mukodesiHelyId)} "; var result = command.ExecuteScalar(); if (result != null) { return Convert.ToInt32(result); } return null; } } public IMukodesiHelyAdatszolgaltatas GetMukodesiHelyAdatszolgaltatas() { return MukodesiHelyAdatszolgaltatas.GiveAnInstance(); } public IMukodesiHelyAdatszolgaltatas GetMukodesiHelyAdatszolgaltatas(int id) { var entity = MukodesiHelyAdatszolgaltatas.GiveAnInstance(); entity.LoadByID(id); return entity; } public DataSet GetInformatikaiAdatszolgaltatasGrid(int intezmenyId, int tanevId) { var ds = new DataSet(); using (var command = new SDACommand()) { command.Connection = UserContext.Instance.SDAConnection; command.Transaction = UserContext.Instance.SDATransaction; command.CommandType = CommandType.StoredProcedure; command.CommandText = "sp_GetInformatikaiAdatszolgaltatasGrid"; command.Parameters.Add("pIntezmenyId", SDADBType.Int).Value = intezmenyId; command.Parameters.Add("pTanevId", SDADBType.Int).Value = tanevId; using (var adapter = new SDADataAdapter()) { adapter.SelectCommand = command; adapter.Fill(ds); } } SetBoolFields(ds.Tables[0], "InformatikaOktatasVanNincs"); DataTable dt = SortingAndPaging(ds.Tables[0], GridParameters); return dt.AsDataSet(); } } }