187 lines
6.4 KiB
C#
187 lines
6.4 KiB
C#
using System;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using Kreta.DataAccess.Interfaces;
|
|
using Kreta.DataAccessManual.Interfaces;
|
|
using Kreta.DataAccessManual.Util;
|
|
using Kreta.Framework;
|
|
using Kreta.Framework.Entities;
|
|
using Kreta.Framework.Util;
|
|
using SDA.DataProvider;
|
|
using SDA.Kreta.Entities;
|
|
|
|
namespace Kreta.DataAccessManual
|
|
{
|
|
internal class CimDal : DataAccessBase, ICimDal
|
|
{
|
|
[Obsolete("Tároltra kell cserélni minél hamarabb")]
|
|
public ICim GetSpecific(string condition, int tanevId)
|
|
{
|
|
var entity = Cim.LoadWithFilter(condition + $" AND C_TANEVID = {tanevId}").FirstOrDefault();
|
|
return entity;
|
|
}
|
|
|
|
public void Delete(int id)
|
|
{
|
|
var entity = Cim.GiveAnInstance();
|
|
entity.LoadByID(id);
|
|
entity.Delete();
|
|
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void FullUpdate(ICim dto)
|
|
{
|
|
var entity = dto as Cim;
|
|
entity.FullUpdate();
|
|
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void Update(ICim dto)
|
|
{
|
|
var entity = dto as Cim;
|
|
entity.Update();
|
|
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public ICim Get()
|
|
{
|
|
return Cim.GiveAnInstance();
|
|
}
|
|
|
|
public ICim Get(int id)
|
|
{
|
|
var entity = Cim.GiveAnInstance();
|
|
entity.LoadByID(id);
|
|
return entity;
|
|
}
|
|
|
|
public void Insert(ICim dto)
|
|
{
|
|
var entity = dto as Cim;
|
|
entity.Insert();
|
|
dto.ID = entity.ID;
|
|
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void Delete(ICim dto)
|
|
{
|
|
var entity = dto as Cim;
|
|
entity.Delete();
|
|
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public DataSet GetCimDataSet(int tanevId, int tanuloId, string filter = null)
|
|
{
|
|
using (var sdaCommand = new SDACommand())
|
|
{
|
|
string commandText = @"
|
|
SELECT
|
|
cim.ID Id
|
|
,cim.C_CIMTIPUSA TipusId
|
|
,cim.C_IRANYITOSZAM Iranyitoszam
|
|
,cim.C_VAROS Telepules
|
|
,cim.C_KOZTERULET Kozterulet
|
|
,cim.C_KOZTERULETJELLEGENEV KozteruletJellegNev
|
|
,cim.C_HAZSZAM Hazszam
|
|
,cim.C_EMELET Emelet
|
|
,cim.C_AJTO Ajto
|
|
,cim.C_GONDVISELOID GondviseloId
|
|
,tanulo.ID TanuloId
|
|
,cim.C_ALAPERTELMEZETT Alapertelmezett
|
|
,cim.C_ORSZAG Orszag
|
|
FROM
|
|
T_CIM_OSSZES cim
|
|
INNER JOIN
|
|
T_FELHASZNALO_OSSZES felhasznalo ON
|
|
felhasznalo.TOROLT = 'F'
|
|
AND felhasznalo.C_TANEVID = cim.C_TANEVID
|
|
AND felhasznalo.ID = cim.C_FELHASZNALOID
|
|
LEFT JOIN
|
|
T_FELHASZNALO_OSSZES tanulo ON
|
|
tanulo.TOROLT = 'F'
|
|
AND tanulo.C_TANEVID = felhasznalo.C_TANEVID
|
|
AND tanulo.ID = felhasznalo.ID
|
|
WHERE
|
|
cim.TOROLT = 'F'
|
|
AND cim.C_TANEVID = :pTanevId
|
|
AND cim.C_FELHASZNALOID = :pTanuloId";
|
|
commandText += filter ?? string.Empty;
|
|
sdaCommand.Connection = UserContext.Instance.SDAConnection;
|
|
sdaCommand.Transaction = UserContext.Instance.SDATransaction;
|
|
sdaCommand.CommandType = CommandType.Text;
|
|
sdaCommand.CommandText = commandText;
|
|
|
|
sdaCommand.Parameters.Add("pTanevId", SDADBType.Int).Value = tanevId;
|
|
sdaCommand.Parameters.Add("pTanuloId", SDADBType.Int).Value = tanuloId;
|
|
|
|
var dataSet = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = sdaCommand;
|
|
adapter.Fill(dataSet);
|
|
}
|
|
|
|
DataTable dataTable = dataSet.Tables[0];
|
|
SetDNAME(dataTable, "TipusId");
|
|
DataTable result = SortingAndPaging(dataTable, GridParameters);
|
|
|
|
return result.AsDataSet();
|
|
}
|
|
}
|
|
|
|
public CimDal(DalHandler handler) : base(handler)
|
|
{
|
|
}
|
|
|
|
public CimDal(DalHandler handler, GridParameters gridParameters) : base(handler, gridParameters)
|
|
{
|
|
}
|
|
|
|
public void AddFelhasznaloCim(IFelhasznalo felhasznalo, ICim cim)
|
|
{
|
|
((Felhasznalo)felhasznalo).Cim.Add((Cim)cim);
|
|
}
|
|
|
|
public void SetAlapertelmezett(int felhasznaloId, int userId, int tanevId, int? gondviseloId = null)
|
|
{
|
|
var commandText = @"
|
|
UPDATE
|
|
T_CIM_OSSZES
|
|
SET
|
|
C_ALAPERTELMEZETT = 'F',
|
|
SERIAL = SERIAL + 1,
|
|
LASTCHANGED = GETDATE(),
|
|
MODIFIER = :pUserId
|
|
WHERE
|
|
TOROLT = 'F'
|
|
AND C_FELHASZNALOID = :pFelhasznaloId
|
|
AND C_TANEVID = :pTanevId";
|
|
|
|
if (gondviseloId.HasValue)
|
|
{
|
|
commandText += ($" AND C_GONDVISELOID = :pGondviseloId");
|
|
}
|
|
else
|
|
{
|
|
commandText += ($" AND C_GONDVISELOID IS NULL");
|
|
}
|
|
using (SDACommand command = DAUtil.CreateCommand(commandText))
|
|
{
|
|
command.Parameters.Add("pUserId", SDADBType.Int).Value = userId;
|
|
command.Parameters.Add("pFelhasznaloId", SDADBType.Int).Value = felhasznaloId;
|
|
command.Parameters.Add("pTanevId", SDADBType.Int).Value = tanevId;
|
|
if (gondviseloId.HasValue)
|
|
{
|
|
command.Parameters.Add("pGondviseloId", SDADBType.Int).Value = gondviseloId;
|
|
}
|
|
|
|
command.ExecuteNonQuery();
|
|
}
|
|
}
|
|
}
|
|
}
|