188 lines
6.8 KiB
C#
188 lines
6.8 KiB
C#
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Text;
|
|
using Kreta.DataAccess.Interfaces;
|
|
using Kreta.DataAccessManual.Interfaces;
|
|
using Kreta.DataAccessManual.Util;
|
|
using Kreta.Framework.Util;
|
|
using SDA.Kreta.Entities;
|
|
|
|
namespace Kreta.DataAccessManual
|
|
{
|
|
internal class MerohelyDal : DataAccessBase, IMerohelyDal
|
|
{
|
|
public MerohelyDal(DalHandler handler, GridParameters parameters) : base(handler, parameters)
|
|
{
|
|
|
|
}
|
|
|
|
public MerohelyDal(DalHandler handler) : base(handler)
|
|
{
|
|
|
|
}
|
|
|
|
public IMerohely GetMerohely()
|
|
{
|
|
return Merohely.GiveAnInstance();
|
|
}
|
|
public IMeroallas GetMeroallas()
|
|
{
|
|
return Meroallas.GiveAnInstance();
|
|
}
|
|
|
|
public void FullUpdate(IMerohely dto)
|
|
{
|
|
var entity = dto as Merohely;
|
|
entity.FullUpdate(true);
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void Update(IMerohely dto)
|
|
{
|
|
var entity = dto as Merohely;
|
|
entity.FullUpdate();
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void Insert(IMerohely dto)
|
|
{
|
|
var entity = dto as Merohely;
|
|
entity.Insert(true);
|
|
|
|
dto.ID = entity.ID;
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void Delete(int id)
|
|
{
|
|
Merohely entity = Merohely.GiveAnInstance();
|
|
entity.LoadByID(id);
|
|
|
|
entity.Delete();
|
|
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public DataSet MerohelyKereses(int tanevId, int intezmenyId, string merohelyNev, int? merohelyTipusId, int? keresesMerohelyMukodesiHelyId, int? isMeroallasFrissiteseSzukseges)
|
|
{
|
|
var paramsList = new List<CommandParameter>();
|
|
paramsList.Add(new CommandParameter("pTanevId", tanevId));
|
|
paramsList.Add(new CommandParameter("pIntezmenyId", intezmenyId));
|
|
|
|
var command = new StringBuilder(@"
|
|
SELECT merohely.ID MerohelyId
|
|
,merohely.C_NEV Nev
|
|
,merohely.C_MEROALLASFRISSITESESZUKSEGES MeroallasFrissiteseSzukseges
|
|
,merohely.C_MEROHELYTIPUSID MerohelyTipus
|
|
,merohely.C_MUKODESIHELYID MukodesiHelyId
|
|
,mukodesiHely.C_NEV MukodesihelyNev
|
|
,merohely.C_MEROORAAZONOSITO MerooraAzonosito
|
|
FROM
|
|
T_MEROHELY_OSSZES Merohely
|
|
LEFT JOIN
|
|
T_DICTIONARYITEMBASE_OSSZES Dictionary ON Dictionary.ID = Merohely.C_MEROHELYTIPUSID AND Dictionary.C_TANEVID = :pTanevId
|
|
LEFT JOIN
|
|
T_MUKODESIHELY_OSSZES MukodesiHely ON MukodesiHely.ID = Merohely.C_MUKODESIHELYID AND MukodesiHely.TOROLT = 'F'
|
|
WHERE
|
|
Mukodesihely.C_TANEVID = :pTanevId
|
|
AND Merohely.C_TANEVID = :pTanevId
|
|
AND Merohely.C_INTEZMENYID = :pIntezmenyId
|
|
AND Merohely.TOROLT='F'
|
|
");
|
|
|
|
if (!string.IsNullOrWhiteSpace(merohelyNev))
|
|
{
|
|
command.Append($" AND LOWER(Merohely.C_NEV) like '%' + @{nameof(merohelyNev)} + '%'");
|
|
paramsList.Add(new CommandParameter(nameof(merohelyNev), merohelyNev.ToLowerInvariant()));
|
|
}
|
|
if (merohelyTipusId.HasValue)
|
|
{
|
|
command.Append(@" AND Merohely.C_MEROHELYTIPUSID = :pMerohelyTipusId");
|
|
paramsList.Add(new CommandParameter("pMerohelyTipusId", merohelyTipusId));
|
|
}
|
|
if (keresesMerohelyMukodesiHelyId.HasValue)
|
|
{
|
|
command.Append(@" AND Merohely.C_MUKODESIHELYID = :pKeresesMerohelyMukodesiHelyId");
|
|
paramsList.Add(new CommandParameter("pKeresesMerohelyMukodesiHelyId", keresesMerohelyMukodesiHelyId));
|
|
}
|
|
if (isMeroallasFrissiteseSzukseges.HasValue)
|
|
{
|
|
if (isMeroallasFrissiteseSzukseges.Value == 1)
|
|
{
|
|
command.Append(@" AND Merohely.C_MEROALLASFRISSITESESZUKSEGES = 'T'");
|
|
}
|
|
|
|
if (isMeroallasFrissiteseSzukseges.Value == 0)
|
|
{
|
|
command.Append(@" AND Merohely.C_MEROALLASFRISSITESESZUKSEGES = 'F'");
|
|
}
|
|
}
|
|
|
|
var ds = this.GetData(command.ToString(), paramsList, dictionaryItemColumns: "MerohelyTipus", booleanColumns: "MeroallasFrissiteseSzukseges");
|
|
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetNemToroltMerohelyek(int tanevId, int intezmenyId)
|
|
{
|
|
var paramsList = new List<CommandParameter>();
|
|
paramsList.Add(new CommandParameter("pTanevId", tanevId));
|
|
paramsList.Add(new CommandParameter("pIntezmenyId", intezmenyId));
|
|
|
|
var command = new StringBuilder(@"
|
|
SELECT merohely.ID MerohelyId
|
|
,merohely.C_NEV Nev
|
|
FROM
|
|
T_MEROHELY_OSSZES Merohely
|
|
WHERE
|
|
Merohely.C_TANEVID = :pTanevId
|
|
AND Merohely.C_INTEZMENYID = :pIntezmenyId
|
|
AND Merohely.TOROLT = 'F'
|
|
");
|
|
|
|
var ds = this.GetData(command.ToString(), paramsList);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetMeroallasListByMerohelyId(int merohelyId)
|
|
{
|
|
var paramsList = new List<CommandParameter>();
|
|
paramsList.Add(new CommandParameter("pMerohelyId", merohelyId));
|
|
|
|
var command = new StringBuilder(@"
|
|
SELECT
|
|
meroallas.ID MeroallasId
|
|
,meroallas.C_MEROHELYID MerohelyId
|
|
,meroallas.C_ERTEK Ertek
|
|
,meroallas.C_LEOLVASASDATUMA LeolvasasDatuma
|
|
,IIF(f.C_MEROALLASID IS NOT NULL, 'T', 'F' ) KeppelRendelkezik
|
|
FROM
|
|
T_MEROALLAS_OSSZES meroallas
|
|
|
|
LEFT JOIN T_FELTOLTOTTFAJL_MEROALLAS f On f.C_MEROALLASID = meroallas.ID
|
|
WHERE
|
|
C_MEROHELYID = :pMerohelyId
|
|
AND meroallas.TOROLT = 'F'
|
|
");
|
|
DataSet ds = this.GetData(command.ToString(), paramsList, booleanColumns: "KeppelRendelkezik");
|
|
return ds;
|
|
}
|
|
|
|
public IMerohely GetMerohelyById(int id)
|
|
{
|
|
Merohely entity = Merohely.GiveAnInstance();
|
|
entity.LoadByID(id);
|
|
|
|
return entity;
|
|
}
|
|
|
|
public IMeroallas GetMeroallasById(int id)
|
|
{
|
|
Meroallas entity = Meroallas.GiveAnInstance();
|
|
entity.LoadByID(id);
|
|
|
|
return entity;
|
|
}
|
|
}
|
|
}
|
|
|