328 lines
12 KiB
C#
328 lines
12 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using Kreta.Core;
|
|
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 NemKotottMunkaidoDAL : DataAccessBase, INemKotottMunkaidoDal
|
|
{
|
|
public NemKotottMunkaidoDAL(DalHandler handler, GridParameters parameters)
|
|
: base(handler, parameters)
|
|
{
|
|
}
|
|
|
|
public NemKotottMunkaidoDAL(DalHandler handler) : base(handler)
|
|
{
|
|
}
|
|
|
|
public INemKotottMunkaido Get()
|
|
{
|
|
return NemKotottMunkaido.GiveAnInstance();
|
|
}
|
|
|
|
public INemKotottMunkaido GetNemKotottMunkaidoById(int Id)
|
|
{
|
|
var entity = NemKotottMunkaido.GiveAnInstance();
|
|
entity.LoadByID(Id);
|
|
|
|
return entity;
|
|
}
|
|
|
|
public int Insert(INemKotottMunkaido entity)
|
|
{
|
|
var nemKotottMunkaido = entity as NemKotottMunkaido;
|
|
nemKotottMunkaido.Insert();
|
|
DalHelper.Commit();
|
|
|
|
return entity.ID;
|
|
}
|
|
|
|
public void Update(int id, bool megtartott, string megjegyzes = null, DateTime? kezdet = null, DateTime? vege = null, int? tipus = null)
|
|
{
|
|
var entity = GetNemKotottMunkaidoById(id) as NemKotottMunkaido;
|
|
|
|
if (kezdet.HasValue && vege.HasValue && tipus.IsEntityId())
|
|
{
|
|
entity.Kezdete = kezdet.Value;
|
|
entity.Vege = vege.Value;
|
|
entity.TevekenysegTipusa = tipus.Value;
|
|
}
|
|
if (megtartott)
|
|
{
|
|
entity.NaplozottMegjegyzes = megjegyzes;
|
|
}
|
|
else
|
|
{
|
|
entity.NaplozottMegjegyzes = null;
|
|
}
|
|
entity.Megtartott = megtartott;
|
|
entity.IsTanarAltalTorolt = false;
|
|
|
|
entity.Update();
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void UpdateNemKotottMunkaIdoByGroupId(int pTanevId, string pGroupId, DateTime pIdoszakKezdete, DateTime pIdoszakVege,
|
|
string pNewGroupId, int pTorvenyikategoria, string pMegjegyzes, int userId)
|
|
{
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspUpdateNemKotottMunkaIdoByGroupId";
|
|
|
|
command.Parameters.Add("pTanevId", pTanevId);
|
|
command.Parameters.Add("pIdoszakKezdete", pIdoszakKezdete);
|
|
command.Parameters.Add("pIdoszakVege", pIdoszakVege);
|
|
command.Parameters.Add("pGroupId", pGroupId);
|
|
command.Parameters.Add("pNewGroupId", pNewGroupId);
|
|
command.Parameters.Add("pTorvenyikategoria", pTorvenyikategoria);
|
|
if (string.IsNullOrWhiteSpace(pMegjegyzes))
|
|
{
|
|
command.Parameters.Add("pMegjegyzes", DBNull.Value);
|
|
}
|
|
else
|
|
{
|
|
command.Parameters.Add("pMegjegyzes", pMegjegyzes);
|
|
}
|
|
|
|
command.Parameters.Add("pUserId", userId);
|
|
|
|
command.ExecuteNonQuery();
|
|
DalHelper.Commit();
|
|
}
|
|
}
|
|
|
|
public void Delete(int Id)
|
|
{
|
|
var entity = this.GetNemKotottMunkaidoById(Id) as NemKotottMunkaido;
|
|
|
|
entity.Delete();
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void AdminDelete(int Id)
|
|
{
|
|
var entity = this.GetNemKotottMunkaidoById(Id) as NemKotottMunkaido;
|
|
|
|
entity.AdminAltalTorolt = true;
|
|
|
|
entity.Torolt = true;
|
|
|
|
entity.Update();
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void TanarDelete(int Id)
|
|
{
|
|
var entity = GetNemKotottMunkaidoById(Id) as NemKotottMunkaido;
|
|
entity.IsTanarAltalTorolt = true;
|
|
entity.Megtartott = true;
|
|
|
|
entity.Update();
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public DataSet GetNapokForNemKotottMunkaidoInsert(int intezmenyId, int tanevId, DateTime start, DateTime end, DateTime selected, int hetirend)
|
|
{
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "sp_GetNemKotottMunkaIdoDateByInsert";
|
|
|
|
command.Parameters.Add("IntezmenyId", intezmenyId);
|
|
command.Parameters.Add("TanevId", tanevId);
|
|
|
|
command.Parameters.Add("IdoszakKezdete", start);
|
|
command.Parameters.Add("IdoszakVege", end);
|
|
command.Parameters.Add("KivalaszottDatum", selected);
|
|
command.Parameters.Add("HetirendId", hetirend);
|
|
|
|
var dts = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(dts);
|
|
}
|
|
|
|
return dts;
|
|
}
|
|
}
|
|
|
|
public DataSet GetNapokForNemKotottMunkaidoDelete(int intezmenyId, int tanevId, DateTime start, DateTime end, string groupId)
|
|
{
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "sp_GetNemKotottMunkaIdoIdByDelete";
|
|
|
|
command.Parameters.Add("IntezmenyId", intezmenyId);
|
|
command.Parameters.Add("TanevId", tanevId);
|
|
|
|
command.Parameters.Add("IdoszakKezdete", start);
|
|
command.Parameters.Add("IdoszakVege", end);
|
|
command.Parameters.Add("GroupId", groupId);
|
|
|
|
var dts = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(dts);
|
|
}
|
|
|
|
return dts;
|
|
}
|
|
}
|
|
|
|
public int GetNemKotottMunkaidoId(int oralatogatasId, int tanarId)
|
|
{
|
|
var oraLatogatas = Oralatogatas.GiveAnInstance();
|
|
oraLatogatas.LoadByID(oralatogatasId);
|
|
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.Parameters.Add("pTanarId", tanarId);
|
|
command.Parameters.Add("pKezdet", oraLatogatas.MegtartottOra.OraKezdete);
|
|
command.Parameters.Add("pVeg", oraLatogatas.MegtartottOra.OraVege);
|
|
|
|
command.CommandText = @"
|
|
select
|
|
nkm.ID
|
|
from T_NEMKOTOTTMUNKAIDO nkm
|
|
where
|
|
nkm.C_TANARID = :pTanarId and nkm.C_TULAJDONOSID = :pTanarId
|
|
and :pKezdet = nkm.C_KEZDETE and :pVeg = nkm.C_VEGE
|
|
and nkm.TOROLT = 'F'
|
|
";
|
|
|
|
var result = command.ExecuteScalar();
|
|
return result != null ? int.Parse(result.ToString()) : -1;
|
|
}
|
|
}
|
|
|
|
public DataSet GetNemKotottMunkaidoData(int tanevId, int? pFeladatKategoriaId = null, int? pFeladatEllatasiHelyId = null)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetNevOktLeNemKotottMunkaido";
|
|
command.Parameters.Add("pTanevId", SDADBType.Int).Value = tanevId;
|
|
|
|
if (pFeladatKategoriaId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pFeladatKategoriaId", SDADBType.Int).Value = pFeladatKategoriaId.Value;
|
|
}
|
|
|
|
if (pFeladatEllatasiHelyId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pFeladatEllatasiHelyId", SDADBType.Int).Value = pFeladatEllatasiHelyId.Value;
|
|
}
|
|
|
|
var ds = new DataSet();
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
|
|
return ds;
|
|
}
|
|
}
|
|
|
|
public bool IsElmaradtOraAndPedagogusHasNemkotottMunkaido(int tanitasioraId)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetIsElmaradtOraAndPedagogusHasNemkotottMunkaido";
|
|
|
|
command.Parameters.Add("pTanitasioraId", tanitasioraId);
|
|
|
|
var dts = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(dts);
|
|
}
|
|
return Convert.ToBoolean(dts.Tables[0].Rows[0]["HasUtkozes"].ToString());
|
|
}
|
|
}
|
|
|
|
public bool HasTanarNemKotottMunkaidoUtkozes(int tanarId, DateTime oraKezdete, DateTime oraVege, int? nemkotottId)
|
|
{
|
|
var parameters = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTanarId", tanarId),
|
|
new CommandParameter("pKezdet", oraKezdete),
|
|
new CommandParameter("pVeg", oraVege)
|
|
};
|
|
|
|
string command = @"
|
|
SELECT TOP 1
|
|
1
|
|
FROM T_NEMKOTOTTMUNKAIDO_OSSZES
|
|
WHERE
|
|
C_TANARID = @pTanarId
|
|
AND C_KEZDETE < @pVeg AND C_VEGE > @pKezdet
|
|
AND TOROLT = 'F'";
|
|
|
|
if (nemkotottId.IsEntityId())
|
|
{
|
|
parameters.Add(new CommandParameter("pId", nemkotottId.Value));
|
|
command += @"
|
|
AND ID <> @pId";
|
|
}
|
|
|
|
var ds = GetData(command, parameters);
|
|
|
|
var result = ds.Tables[0].Rows.Count > 0;
|
|
|
|
return result;
|
|
}
|
|
|
|
public DataSet GetNemKotottMunkaIdoHelyettesiteshez(int tanevId, DateTime start, DateTime end)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetNemKotottMunkaIdoHelyettesiteshez";
|
|
|
|
command.Parameters.Add("TanevId", tanevId);
|
|
command.Parameters.Add("IdoszakKezdete", start);
|
|
command.Parameters.Add("IdoszakVege", end);
|
|
|
|
var dts = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(dts);
|
|
}
|
|
|
|
return dts;
|
|
}
|
|
}
|
|
}
|
|
}
|