4671 lines
227 KiB
C#
4671 lines
227 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using Kreta.Core;
|
|
using Kreta.Core.Domain;
|
|
using Kreta.Core.Logic;
|
|
using Kreta.DataAccess.Interfaces;
|
|
using Kreta.DataAccessManual.Interfaces;
|
|
using Kreta.DataAccessManual.ParameterClasses;
|
|
using Kreta.DataAccessManual.Util;
|
|
using Kreta.Enums;
|
|
using Kreta.Enums.ManualEnums;
|
|
using Kreta.Framework;
|
|
using Kreta.Framework.Entities;
|
|
using Kreta.Framework.Util;
|
|
using Kreta.Resources;
|
|
using SDA.DataProvider;
|
|
using SDA.Kreta.Entities;
|
|
|
|
namespace Kreta.DataAccessManual
|
|
{
|
|
internal class TanuloDal : DataAccessBase, ITanuloDal
|
|
{
|
|
public TanuloDal(DalHandler handler, GridParameters parameters)
|
|
: base(handler, parameters)
|
|
{
|
|
|
|
}
|
|
|
|
public TanuloDal(DalHandler handler) : base(handler)
|
|
{
|
|
|
|
}
|
|
|
|
#region BaseCRUD
|
|
|
|
public ITanulo Get()
|
|
{
|
|
return Tanulo.GiveAnInstance();
|
|
}
|
|
|
|
public ITanulo Get(int id)
|
|
{
|
|
var entity = Tanulo.GiveAnInstance();
|
|
entity.LoadByID(id);
|
|
return entity;
|
|
}
|
|
|
|
public void FullUpdate(ITanulo dto)
|
|
{
|
|
var entity = dto as Tanulo;
|
|
|
|
entity.FullUpdate(true);
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void Update(ITanulo dto)
|
|
{
|
|
var entity = dto as Tanulo;
|
|
|
|
entity.FullUpdate();
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void Insert(ITanulo dto)
|
|
{
|
|
var entity = dto as Tanulo;
|
|
|
|
entity.Insert(true);
|
|
|
|
dto.ID = entity.ID;
|
|
DalHelper.Felhasznalo().UpdateAllEgyediAzonosito();
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void Delete(int id)
|
|
{
|
|
var entity = Tanulo.GiveAnInstance();
|
|
entity.LoadByID(id);
|
|
entity.Gondviselo.ToList().ForEach(g =>
|
|
{
|
|
g.Email.DeleteAll();
|
|
g.Telefon.DeleteAll();
|
|
g.FelhasznaloBelepes.DeleteAll();
|
|
g.FelhasznaloBelepesTortenet.DeleteAll();
|
|
g.Cim.DeleteAll();
|
|
g.OldalLatogatottsag.DeleteAll();
|
|
g.JelszoModositasLink.DeleteAll();
|
|
g.DashboardUzenetFelhasznalo.DeleteAll();
|
|
g.EszkozIgenyles.DeleteAll();
|
|
g.Delete();
|
|
});
|
|
|
|
entity.DashboardUzenetFelhasznalo.DeleteAll();
|
|
entity.Cim.DeleteAll();
|
|
entity.Email.DeleteAll();
|
|
entity.Telefon.DeleteAll();
|
|
entity.FelhasznaloBelepes.DeleteAll();
|
|
entity.FelhasznaloBelepesTortenet.DeleteAll();
|
|
entity.Szerepkor.RemoveAll();
|
|
entity.OldalLatogatottsag.DeleteAll();
|
|
entity.FelhasznaloBelepesTortenet.DeleteAll();
|
|
entity.eLearning.DeleteAll();
|
|
entity.ElearningFelhasznalo.DeleteAll();
|
|
entity.UserProfile.DeleteAll();
|
|
entity.JelszoModositasLink.DeleteAll();
|
|
entity.Diakolimpia.DeleteAll(logikai: true);
|
|
entity.Juttatas.DeleteAll();
|
|
entity.TanuloSni.DeleteAll();
|
|
entity.EszkozIgenyles.DeleteAll();
|
|
|
|
entity.TanuloEsemeny.ToList().ForEach(te =>
|
|
{
|
|
te.Tanulo.RemoveAll();
|
|
te.OsztalyCsoport.RemoveAll();
|
|
te.Delete();
|
|
});
|
|
|
|
entity.Hetes.DeleteAll();
|
|
entity.TanuloHaziFeladatStatusz.RemoveAll();
|
|
entity.DKT_File.DeleteAll();
|
|
entity.JogviszonySzuneteltetes.DeleteAll();
|
|
entity.TbJogviszony.DeleteAll();
|
|
|
|
entity.Delete();
|
|
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void Delete(ITanulo dto)
|
|
{
|
|
Delete(dto.ID);
|
|
}
|
|
|
|
#endregion
|
|
|
|
public string GetDiakigazolvanyszamByTanulo(int tanuloId, int tanevId)
|
|
{
|
|
using (var command = UserContext.Instance.SDAConnection.CreateCommand())
|
|
{
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandText = @"
|
|
SELECT
|
|
C_DIAKIGAZOLVANYSZAM
|
|
FROM T_TANULO_OSSZES
|
|
WHERE TOROLT = 'F'
|
|
AND C_ALTANEVID = :pTanevId
|
|
AND ID = :pTanuloId
|
|
";
|
|
|
|
command.Parameters.Add("pTanuloId", tanuloId);
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
|
|
var result = command.ExecuteScalar();
|
|
return result.ToString();
|
|
}
|
|
}
|
|
|
|
public DataSet GetTanulokByDiakigazolvanyszam(string diakigazolvanyszam, int tanevId)
|
|
{
|
|
var parameters = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pDiakigazolvanyszam", diakigazolvanyszam),
|
|
new CommandParameter("pTanevId", tanevId)
|
|
};
|
|
|
|
const string command = @"
|
|
SELECT
|
|
f.C_NYOMTATASINEV AS Nev
|
|
FROM T_TANULO_OSSZES t
|
|
JOIN T_FELHASZNALO_OSSZES f ON f.ID = t.ID AND f.TOROLT = 'F' AND f.C_TANEVID = :pTanevId
|
|
WHERE t.TOROLT = 'F'
|
|
AND t.C_ALTANEVID = :pTanevId
|
|
AND t.C_DIAKIGAZOLVANYSZAM = :pDiakigazolvanyszam
|
|
";
|
|
|
|
return GetData(command, parameters);
|
|
}
|
|
|
|
public DataSet GetTanulokForDDL(bool torolt = false)
|
|
{
|
|
var paramlist = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTorolt", torolt ? 'T' : 'F'),
|
|
new CommandParameter("OktNevKatTipus", (int)OktNevelesiKategoriaEnum.NevelesOktatas)
|
|
};
|
|
|
|
const string commandText = @"
|
|
SELECT
|
|
fel.ID
|
|
,fel.C_NYOMTATASINEV AS TanuloNeve
|
|
,fel.C_ANYJANEVE AS AnyjaNeve
|
|
,fel.C_SZULETESIHELY AS SzuletesiHely
|
|
,fel.C_SZULETESIDATUM AS SzuletesiIdo
|
|
,fel.C_OKTATASIAZONOSITO AS OktatasiAzonosito
|
|
,ISNULL(tta.C_TANKOTELEZETT, tanulo.C_TANKOTELEZETT) AS Tankotelezett
|
|
,tanterv.C_NEV Tanterv
|
|
,tta.C_SZERVEZETID SzervezetId
|
|
FROM T_FELHASZNALO fel
|
|
JOIN T_TANULO tanulo on tanulo.ID = fel.ID
|
|
LEFT JOIN (
|
|
SELECT tanulo.ID AS tid, tcso.ID AS tcsoid
|
|
FROM T_TANULO tanulo
|
|
JOIN T_TANULOCSOPORT tcso ON tcso.C_TANULOID = tanulo.ID AND tcso.TOROLT = 'F'
|
|
AND tcso.C_BELEPESDATUM <= GETDATE()
|
|
AND (tcso.C_KILEPESDATUM IS NULL OR tcso.C_KILEPESDATUM > GETDATE())
|
|
JOIN T_OSZTALY o ON o.ID = tcso.C_OSZTALYCSOPORTID AND o.TOROLT = 'F'
|
|
JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F' AND ocs.C_FELADATKATEGORIAID = @OktNevKatTipus
|
|
) AS szuro ON szuro.tid = tanulo.ID
|
|
LEFT JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = szuro.tcsoid AND tta.TOROLT = 'F'
|
|
LEFT JOIN T_TANTERV tanterv ON tanterv.id = tta.C_TANTERVID AND tanterv.TOROLT = 'F'
|
|
WHERE fel.TOROLT = :pTorolt
|
|
ORDER BY IIF(fel.C_NEVSORREND = 'T', fel.C_UTONEV + ' ' + fel.C_VEZETEKNEV, fel.C_VEZETEKNEV + ' ' + fel.C_UTONEV)";
|
|
|
|
var dataSet = GetData(commandText, paramlist, booleanColumns: "Tankotelezett");
|
|
return dataSet;
|
|
}
|
|
|
|
/*TODO (@DevKornél):kiszervezni sp-be*/
|
|
public DataSet GetTanuloDataSetByOsztalyCsoportId(
|
|
int osztalyCsoportId,
|
|
int? feladatKategoriaId,
|
|
string nev,
|
|
string anyjaSzuletesiNev,
|
|
string szuletesiHely,
|
|
DateTime? szuletesiIdoTol,
|
|
DateTime? szuletesiIdoIg,
|
|
string oktatasiAzonosito,
|
|
bool? tankotelezett,
|
|
int? tanterv,
|
|
int? feladatEllatasiHelyId,
|
|
DateTime datum)
|
|
{
|
|
List<CommandParameter> commandParameterList = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pOsztalyCsoportId", osztalyCsoportId),
|
|
new CommandParameter("pDatum", datum)
|
|
};
|
|
|
|
StringBuilder commandText = new StringBuilder(@"
|
|
SELECT
|
|
fel.ID
|
|
,fel.C_NYOMTATASINEV TanuloNeve
|
|
,IIF(fel.C_NEVSORREND = 'T',
|
|
fel.C_UTONEV + ' ' + fel.C_VEZETEKNEV,
|
|
fel.C_VEZETEKNEV + ' ' + fel.C_UTONEV) TanuloNeveElotagNelkul
|
|
,fel.C_ANYJANEVE AnyjaNeve
|
|
,fel.C_SZULETESIHELY SzuletesiHely
|
|
,fel.C_SZULETESIDATUM SzuletesiIdo
|
|
,fel.C_OKTATASIAZONOSITO OktatasiAzonosito
|
|
,tanuloTanugyiAdatok.C_TANKOTELEZETT Tankotelezett
|
|
,osztcsop.C_NEV Osztaly
|
|
,osztcsop.ID OsztalyCsoportId
|
|
,tanterv.C_NEV Tanterv
|
|
FROM T_FELHASZNALO fel
|
|
JOIN T_TANULO tanulo on tanulo.ID = fel.ID
|
|
LEFT JOIN T_TANULOCSOPORT osztTanulo on osztTanulo.C_TANULOID = tanulo.ID
|
|
LEFT JOIN T_OSZTALYCSOPORT osztcsop on osztcsop.ID = osztTanulo.C_OSZTALYCSOPORTID
|
|
LEFT JOIN T_OSZTALY oszt on oszt.ID = osztcsop.ID
|
|
LEFT JOIN [fnGetOsztalyCsoportTanuloinakTanugyiAdatai](:pOsztalyCsoportId, default) as tanuloTanugyiAdatok ON tanuloTanugyiAdatok.TanuloId = fel.ID
|
|
LEFT JOIN T_TANTERV tanterv on tanterv.ID = tanuloTanugyiAdatok.C_TANTERVID AND tanterv.TOROLT= 'F'
|
|
WHERE
|
|
fel.TOROLT = 'F'
|
|
and tanulo.TOROLT = 'F'
|
|
and osztTanulo.TOROLT = 'F'
|
|
and osztcsop.TOROLT = 'F'
|
|
and osztcsop.ID = :pOsztalyCsoportId
|
|
and (osztTanulo.C_BELEPESDATUM <= :pDatum and (osztTanulo.C_KILEPESDATUM is null or osztTanulo.C_KILEPESDATUM > :pDatum))
|
|
");
|
|
|
|
if (!string.IsNullOrWhiteSpace(nev))
|
|
{
|
|
commandText.Append($" AND LOWER(fel.C_NYOMTATASINEV) LIKE '%' + @{nameof(nev)} + '%'");
|
|
commandParameterList.Add(new CommandParameter(nameof(nev), nev.ToLowerInvariant()));
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(anyjaSzuletesiNev))
|
|
{
|
|
commandText.Append($" AND LOWER(fel.C_ANYJANEVE) LIKE '%' + @{nameof(anyjaSzuletesiNev)} + '%'");
|
|
commandParameterList.Add(new CommandParameter(nameof(anyjaSzuletesiNev), anyjaSzuletesiNev.ToLowerInvariant()));
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(szuletesiHely))
|
|
{
|
|
commandText.Append($" AND LOWER(fel.C_SZULETESIHELY) LIKE '%' + @{nameof(szuletesiHely)} + '%'");
|
|
commandParameterList.Add(new CommandParameter(nameof(szuletesiHely), szuletesiHely.ToLowerInvariant()));
|
|
}
|
|
|
|
if (szuletesiIdoTol.HasValue)
|
|
{
|
|
commandText.Append(@" AND fel.C_SZULETESIDATUM >= :pSzuletesiIdoTol");
|
|
commandParameterList.Add(new CommandParameter("pSzuletesiIdoTol", szuletesiIdoTol));
|
|
}
|
|
|
|
if (szuletesiIdoIg.HasValue)
|
|
{
|
|
commandText.Append(@" AND fel.C_SZULETESIDATUM <= :pSzuletesiIdoIg");
|
|
commandParameterList.Add(new CommandParameter("pSzuletesiIdoIg", szuletesiIdoIg));
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(oktatasiAzonosito))
|
|
{
|
|
commandText.Append($" AND LOWER(fel.C_OKTATASIAZONOSITO) LIKE '%' + @{nameof(oktatasiAzonosito)} + '%'");
|
|
commandParameterList.Add(new CommandParameter(nameof(oktatasiAzonosito), oktatasiAzonosito.ToLowerInvariant()));
|
|
}
|
|
|
|
if (tankotelezett.HasValue)
|
|
{
|
|
commandText.Append(@" AND ISNULL(tanuloTanugyiAdatok.C_TANKOTELEZETT, tanulo.C_TANKOTELEZETT) = :pTankotelezett");
|
|
string tankotelezettValue = tankotelezett.Value ? "T" : "F";
|
|
commandParameterList.Add(new CommandParameter("pTankotelezett", tankotelezettValue));
|
|
}
|
|
|
|
if (tanterv.HasValue)
|
|
{
|
|
commandText.Append(@" AND tanuloTanugyiAdatok.C_TANTERVID = :pTanterv");
|
|
commandParameterList.Add(new CommandParameter("pTanterv", tanterv.Value));
|
|
}
|
|
|
|
if (feladatKategoriaId.IsEntityId())
|
|
{
|
|
commandText.Append($" AND osztcsop.C_FELADATKATEGORIAID = @{nameof(feladatKategoriaId)}");
|
|
commandParameterList.Add(new CommandParameter(nameof(feladatKategoriaId), feladatKategoriaId.Value));
|
|
}
|
|
|
|
if (feladatEllatasiHelyId.IsEntityId())
|
|
{
|
|
commandText.Append($" AND osztcsop.C_FELADATELLATASIHELYID = @{nameof(feladatEllatasiHelyId)}");
|
|
commandParameterList.Add(new CommandParameter(nameof(feladatEllatasiHelyId), feladatEllatasiHelyId.Value));
|
|
}
|
|
|
|
DataSet dataSet = GetData(commandText.ToString(), commandParameterList, booleanColumns: "Tankotelezett");
|
|
return dataSet;
|
|
}
|
|
|
|
/// INFO @DevKornel: Mobil használja
|
|
public DataSet GetTanuloCsoportjai(int tanuloId, bool csakAktualis = true)
|
|
{
|
|
var parameters = new List<CommandParameter>(); ///TODO (@DevKornél): Obj. inittel
|
|
parameters.Add(new CommandParameter("pTanuloId", tanuloId));
|
|
parameters.Add(new CommandParameter("OktNevKatTipus", (int)OktNevelesiKategoriaEnum.NevelesOktatas));
|
|
StringBuilder commandText = new StringBuilder(@"select distinct
|
|
T_TANULOCSOPORT.C_OSZTALYCSOPORTID ID,
|
|
T_CSOPORT.C_TIPUSA CsoportTipusa
|
|
from T_TANULOCSOPORT
|
|
inner join T_CSOPORT on T_CSOPORT.ID = T_TANULOCSOPORT.C_OSZTALYCSOPORTID
|
|
INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_CSOPORT.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = @OktNevKatTipus
|
|
where
|
|
T_TANULOCSOPORT.TOROLT = 'F'
|
|
and T_TANULOCSOPORT.C_TANULOID = :pTanuloId");
|
|
|
|
if (csakAktualis)
|
|
{
|
|
commandText.Append(" and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE() and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())");
|
|
}
|
|
|
|
DataSet ds = this.GetData(commandText.ToString(), parameters);
|
|
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetGondviselok(int userId, int tanevId)
|
|
{
|
|
const string commandText = @"SELECT
|
|
g.ID AS ID
|
|
,g.C_IDPEGYEDIAZONOSITO AS IdpEgyediAzonosito
|
|
,g.C_NEV AS Nev
|
|
,g.C_ROKONSAGFOKA AS RokonsagFoka
|
|
,t.C_TELEFONSZAM AS TelefonSzam
|
|
,e.C_EMAILCIM AS EmailCim
|
|
,fb.C_BEJELENTKEZESINEV AS BelepesiNev
|
|
,g.C_ISTORVENYESKEPVISELO AS IsTorvenyesKepviselo
|
|
,IIF(g.C_ISCSOKKENTETTGONDVISELO = 'T', 'F', 'T') AS BovitettJog
|
|
,IIF(ISNULL(fb.C_UTOLSOBELEPES, '1900-01-01') > ISNULL(fb_elo.C_UTOLSOBELEPES, '1900-01-01'), fb.C_UTOLSOBELEPES, fb_elo.C_UTOLSOBELEPES) AS UtolsoBelepes
|
|
,IIF(ISNULL(fb.C_UTOLSOBELEPESMOBIL, '1900-01-01') > ISNULL(fb_elo.C_UTOLSOBELEPESMOBIL, '1900-01-01'), fb.C_UTOLSOBELEPESMOBIL, fb_elo.C_UTOLSOBELEPESMOBIL) AS UtolsoBelepesMobil
|
|
,e.C_ISHIBASANMEGADVA AS IsHibasanMegadva
|
|
FROM T_GONDVISELO_OSSZES g
|
|
LEFT JOIN T_GONDVISELO_OSSZES g_elo ON g_elo.ID = g.ELOZOTANEVIREKORDID
|
|
LEFT JOIN T_TELEFON_OSSZES t ON t.TOROLT = 'F' AND t.C_GONDVISELOID = g.ID AND t.C_TANEVID = g.C_TANEVID AND t.C_FELHASZNALOID = g.C_TANULOID AND t.C_ALAPERTELMEZETT = 'T'
|
|
LEFT JOIN T_EMAIL_OSSZES e ON e.TOROLT = 'F' AND e.C_GONDVISELOID = g.ID AND e.C_TANEVID = g.C_TANEVID AND e.C_FELHASZNALOID = g.C_TANULOID AND e.C_ALAPERTELMEZETT = 'T'
|
|
LEFT JOIN (
|
|
SELECT *, ROW_NUMBER() OVER(PARTITION BY C_GONDVISELOID, C_FELHASZNALOID ORDER BY Utolso DESC) AS Rn
|
|
FROM (
|
|
SELECT *, IIF(ISNULL(C_UTOLSOBELEPES, '1900-01-01') > ISNULL(C_UTOLSOBELEPESMOBIL, '1900-01-01'), C_UTOLSOBELEPES, C_UTOLSOBELEPESMOBIL) AS Utolso
|
|
FROM T_FELHASZNALOBELEPES_OSSZES
|
|
) u
|
|
) fb ON fb.C_GONDVISELOID = g.ID AND fb.C_FELHASZNALOID = g.C_TANULOID AND fb.C_TANEVID = g.C_TANEVID AND fb.TOROLT = 'F'
|
|
LEFT JOIN (
|
|
SELECT *, ROW_NUMBER() OVER(PARTITION BY C_GONDVISELOID, C_FELHASZNALOID ORDER BY Utolso DESC) AS Rn
|
|
FROM (
|
|
SELECT *, IIF(ISNULL(C_UTOLSOBELEPES, '1900-01-01') > ISNULL(C_UTOLSOBELEPESMOBIL, '1900-01-01'), C_UTOLSOBELEPES, C_UTOLSOBELEPESMOBIL) AS Utolso
|
|
FROM T_FELHASZNALOBELEPES_OSSZES
|
|
) u
|
|
) fb_elo ON fb_elo.C_GONDVISELOID = g_elo.ID AND fb_elo.C_FELHASZNALOID = g_elo.C_TANULOID AND fb_elo.C_TANEVID = g_elo.C_TANEVID AND fb_elo.TOROLT = 'F'
|
|
WHERE g.TOROLT = 'F'
|
|
AND g.C_TANULOID = :pUserId
|
|
AND g.C_TANEVID = :pTanevId";
|
|
|
|
var prams = new List<CommandParameter> { new CommandParameter("pUserId", userId), new CommandParameter("pTanevId", tanevId) };
|
|
var ds = this.GetData(commandText, prams, "RokonsagFoka", "IsTorvenyesKepviselo,BovitettJog,IsHibasanMegadva");
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetGondviseloAlapertelmezettAdatok(int tanuloId, int tanevId)
|
|
{
|
|
string commandText = $@"
|
|
SELECT
|
|
g.ID AS ID
|
|
,g.C_IDPEGYEDIAZONOSITO AS IdpEgyediAzonosito
|
|
,g.C_NEV AS Nev
|
|
,t.C_TELEFONSZAM AS Telefonszam
|
|
,e.C_EMAILCIM AS EmailCim
|
|
,g.C_ISTORVENYESKEPVISELO AS IsTorvenyesKepviselo
|
|
FROM
|
|
T_GONDVISELO_OSSZES g
|
|
LEFT JOIN
|
|
T_TELEFON_OSSZES t ON t.C_GONDVISELOID = g.ID AND t.C_ALAPERTELMEZETT = 'T' AND t.TOROLT = 'F'
|
|
LEFT JOIN
|
|
T_EMAIL_OSSZES e ON e.C_GONDVISELOID = g.ID AND e.C_ALAPERTELMEZETT = 'T' AND e.TOROLT = 'F'
|
|
WHERE
|
|
g.C_TANULOID = {tanuloId}
|
|
AND g.C_TANEVID = {tanevId}
|
|
AND g.TOROLT = 'F'
|
|
";
|
|
|
|
return GetData(commandText, booleanColumns: "IsTorvenyesKepviselo");
|
|
}
|
|
|
|
public DataSet GetGondviseloCimekByTanulo(int tanuloId, int tanevId)
|
|
{
|
|
List<CommandParameter> p = new List<CommandParameter>(); ///TODO (@DevKornél): Obj. inittel
|
|
p.Add(new CommandParameter("pTanuloId", tanuloId));
|
|
p.Add(new CommandParameter("pTanevId", tanevId));
|
|
|
|
var command = @"
|
|
select
|
|
T_CIM_OSSZES.ID,
|
|
T_CIM_OSSZES.C_GONDVISELOID GondviseloId,
|
|
T_GONDVISELO_OSSZES.C_NEV GondviseloNev,
|
|
T_CIM_OSSZES.C_CIMTIPUSA CimTipus,
|
|
T_CIM_OSSZES.C_ORSZAG Orszag,
|
|
T_CIM_OSSZES.C_IRANYITOSZAM Iranyitoszam,
|
|
T_CIM_OSSZES.C_VAROS HelysegNev,
|
|
T_CIM_OSSZES.C_KOZTERULET KozteruletNev,
|
|
T_CIM_OSSZES.C_KOZTERULETJELLEGENEV KozteruletTipusNev,
|
|
T_CIM_OSSZES.C_HAZSZAM HazSzam,
|
|
T_CIM_OSSZES.C_EPULET Epulet,
|
|
T_CIM_OSSZES.C_LEPCSOHAZ LepcsoHaz,
|
|
T_CIM_OSSZES.C_EMELET Emelet,
|
|
T_CIM_OSSZES.C_AJTO Ajto,
|
|
T_CIM_OSSZES.C_ALAPERTELMEZETT Alapertelmezett
|
|
from T_CIM_OSSZES
|
|
left join T_GONDVISELO_OSSZES on T_GONDVISELO_OSSZES.ID = T_CIM_OSSZES.C_GONDVISELOID and T_GONDVISELO_OSSZES.TOROLT = 'F' and T_CIM_OSSZES.C_TANEVID = T_GONDVISELO_OSSZES.C_TANEVID
|
|
inner join T_FELHASZNALO_OSSZES on T_FELHASZNALO_OSSZES.ID = T_GONDVISELO_OSSZES.C_TANULOID and T_FELHASZNALO_OSSZES.TOROLT = 'F' and T_FELHASZNALO_OSSZES.C_TANEVID = T_GONDVISELO_OSSZES.C_TANEVID
|
|
inner join T_TANULO_OSSZES on T_TANULO_OSSZES.ID = T_FELHASZNALO_OSSZES.ID and T_TANULO_OSSZES.TOROLT = 'F' and T_TANULO_OSSZES.C_ALTANEVID = T_GONDVISELO_OSSZES.C_TANEVID
|
|
where
|
|
T_CIM_OSSZES.TOROLT = 'F' and
|
|
T_CIM_OSSZES.C_TANEVID = :pTanevId and
|
|
T_TANULO_OSSZES.ID = :pTanuloId
|
|
";
|
|
|
|
return this.GetData(command, p, "Orszag,CimTipus", "Alapertelmezett");
|
|
}
|
|
|
|
public DataSet GetGondviseloCimekByGondviselo(int gondviseloId)
|
|
{
|
|
var p = new List<CommandParameter>(); ///TODO (@DevKornél): Obj. inittel
|
|
p.Add(new CommandParameter("pGondvId", gondviseloId));
|
|
|
|
var command = @"select
|
|
T_CIM_OSSZES.ID,
|
|
T_CIM_OSSZES.C_GONDVISELOID GondviseloId,
|
|
T_CIM_OSSZES.C_CIMTIPUSA CimTipus,
|
|
T_CIM_OSSZES.C_ORSZAG Orszag,
|
|
T_CIM_OSSZES.C_IRANYITOSZAM Iranyitoszam,
|
|
T_CIM_OSSZES.C_VAROS HelysegNev,
|
|
T_CIM_OSSZES.C_KOZTERULET KozteruletNev,
|
|
T_CIM_OSSZES.C_KOZTERULETJELLEGENEV KozteruletTipusNev,
|
|
T_CIM_OSSZES.C_HAZSZAM HazSzam,
|
|
T_CIM_OSSZES.C_EPULET Epulet,
|
|
T_CIM_OSSZES.C_LEPCSOHAZ LepcsoHaz,
|
|
T_CIM_OSSZES.C_EMELET Emelet,
|
|
T_CIM_OSSZES.C_AJTO Ajto,
|
|
T_CIM_OSSZES.C_ALAPERTELMEZETT Alapertelmezett
|
|
from T_CIM_OSSZES
|
|
where
|
|
T_CIM_OSSZES.TOROLT = 'F' and
|
|
T_CIM_OSSZES.C_GONDVISELOID = :pGondvId";
|
|
|
|
return this.GetData(command, p, "CimTipus", "Alapertelmezett");
|
|
}
|
|
|
|
public DataSet GetTantargyak(int userId)
|
|
{
|
|
const string commandText = @"
|
|
Select min(f.ID) as id
|
|
,t.ID as TantargyID
|
|
,t.C_NEV as Tantargy
|
|
,u.ID as TanarID
|
|
,u.C_NYOMTATASINEV as Tanar
|
|
From(
|
|
SELECT ID
|
|
,C_OSZTALYCSOPORTID
|
|
FROM T_TANULOCSOPORT_OSSZES where TOROLT = 'F'
|
|
and C_BELEPESDATUM < GETDATE()
|
|
and (C_KILEPESDATUM is null or C_KILEPESDATUM >= GETDATE())
|
|
and C_TANULOID = :pUserId
|
|
) as tcs
|
|
Inner Join (Select T_FOGLALKOZAS_OSSZES.ID
|
|
,T_FOGLALKOZAS_OSSZES.C_TANTARGYID
|
|
,T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
|
,T_FOGLALKOZAS_OSSZES.C_TANEVID
|
|
,T_FOGLALKOZAS_OSSZES.C_TANARID
|
|
FROM T_FOGLALKOZAS_OSSZES
|
|
Where TOROLT = 'F') as f
|
|
On f.C_OSZTALYCSOPORTID = tcs.C_OSZTALYCSOPORTID
|
|
Inner Join (SELECT ID
|
|
,C_NYOMTATASINEV
|
|
FROM T_FELHASZNALO_OSSZES Where TOROLT = 'F') as u
|
|
On f.C_TANARID = u.ID
|
|
Inner Join (SELECT ID
|
|
,C_NEV
|
|
FROM T_TANTARGY_OSSZES Where TOROLT = 'F') as t
|
|
On f.C_TANTARGYID = t.ID
|
|
Group by t.ID
|
|
,t.C_NEV
|
|
,u.ID
|
|
,u.C_NYOMTATASINEV
|
|
";
|
|
var prams = new List<CommandParameter> { new CommandParameter("pUserId", userId) };
|
|
var ds = this.GetData(commandText, prams);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetOrarend(int userId)
|
|
{
|
|
const string commandText = @"
|
|
Select o.ID
|
|
,o.C_HETIREND as Hetirend
|
|
,o.C_HETNAPJA as Hetnapja
|
|
,o.C_ORASZAM as Oraszam
|
|
,t.C_NEV as Tantargy
|
|
,ocs.C_NEV as OsztalyCsoport
|
|
,p.C_NYOMTATASINEV as Pedagogus
|
|
,h.C_NEV as Terem
|
|
,o.C_ORAERVENYESSEGKEZDETE as OrarendErvenyessegKezdete
|
|
,o.C_ORAERVENYESSEGVEGE as OrarendErvenyessegVege
|
|
From(
|
|
SELECT ID
|
|
,C_OSZTALYCSOPORTID
|
|
FROM T_TANULOCSOPORT_OSSZES where TOROLT = 'F'
|
|
and C_BELEPESDATUM < GETDATE()
|
|
and (C_KILEPESDATUM is null or C_KILEPESDATUM >= GETDATE())
|
|
and C_TANULOID = :pUserId
|
|
) as tcs
|
|
Inner Join (Select T_FOGLALKOZAS_OSSZES.ID
|
|
,T_FOGLALKOZAS_OSSZES.C_TANTARGYID
|
|
,T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
|
,T_FOGLALKOZAS_OSSZES.C_TANARID
|
|
FROM T_FOGLALKOZAS_OSSZES
|
|
Where T_FOGLALKOZAS_OSSZES.TOROLT = 'F') as f
|
|
On f.C_OSZTALYCSOPORTID = tcs.C_OSZTALYCSOPORTID
|
|
Inner Join (SELECT ID
|
|
,C_HETIREND
|
|
,C_HETNAPJA
|
|
,C_ORASZAM
|
|
,C_ORAERVENYESSEGKEZDETE
|
|
,C_ORAERVENYESSEGVEGE
|
|
,C_TEREMID
|
|
,C_FOGLALKOZASID
|
|
FROM T_ORARENDIORA_OSSZES Where TOROLT = 'F') as o
|
|
On o.C_FOGLALKOZASID = f.ID
|
|
Left Join (SELECT ID
|
|
,C_Nev
|
|
FROM T_OSZTALYCSOPORT_OSSZES Where TOROLT = 'F') as ocs
|
|
On f.C_OSZTALYCSOPORTID = ocs.ID
|
|
Left Join (SELECT ID
|
|
,C_NYOMTATASINEV
|
|
FROM T_FELHASZNALO_OSSZES Where TOROLT = 'F') as p
|
|
On f.C_TANARID = p.ID
|
|
Left Join (SELECT ID
|
|
,C_NEV
|
|
FROM [T_TANTARGY_OSSZES] Where [TOROLT] = 'F') as t
|
|
On f.[C_TANTARGYID] = t.[ID]
|
|
Left Join (SELECT [ID]
|
|
,[C_NEV]
|
|
FROM [T_TEREM_OSSZES] Where [TOROLT] = 'F') as h
|
|
on o.C_TEREMID = h.ID
|
|
";
|
|
var prams = new List<CommandParameter> {
|
|
new CommandParameter("pUserId", userId)
|
|
};
|
|
var ds = this.GetData(commandText, prams, "Hetirend,Hetnapja");
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetErtekeles(int tanuloId, int? feladatKategoriaId)
|
|
{
|
|
const string commandText = @"
|
|
SELECT
|
|
tanuluErtekeles.ID ID
|
|
,tanuluErtekeles.C_DATUM ErtekelesDatuma
|
|
,tanuluErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
|
|
,tanuluErtekeles.C_ERTEKELESOSZTALYZATID Erdemjegy
|
|
,tanuluErtekeles.C_ERTEKELESMODID ErtekelesModja
|
|
,tanuluErtekeles.C_ERTEKELESTEMA Tema
|
|
,tanarFehasznalo.C_NYOMTATASINEV Pedagogus
|
|
,tantargy.C_NEV Tantargy
|
|
,osztalyCsoport.C_NEV OsztalyCsoport
|
|
FROM
|
|
T_TANULOERTEKELES_OSSZES tanuluErtekeles
|
|
LEFT JOIN
|
|
T_FELHASZNALO_OSSZES tanarFehasznalo ON
|
|
tanarFehasznalo.ID = tanuluErtekeles.C_ERTEKELOID
|
|
AND tanarFehasznalo.TOROLT = 'F'
|
|
LEFT JOIN
|
|
T_TANTARGY_OSSZES tantargy ON
|
|
tantargy.ID = tanuluErtekeles.C_TANTARGYID
|
|
AND tantargy.TOROLT = 'F'
|
|
LEFT JOIN
|
|
T_OSZTALYCSOPORT_OSSZES osztalyCsoport ON
|
|
osztalyCsoport.ID = tanuluErtekeles.C_OSZTALYCSOPORTID
|
|
AND osztalyCsoport.TOROLT = 'F'
|
|
AND (osztalyCsoport.C_FELADATKATEGORIAID = :pFeladatKategoriaId OR :pFeladatKategoriaId IS NULL)
|
|
WHERE
|
|
tanuluErtekeles.C_TANULOID = :pTanuloId
|
|
AND tanuluErtekeles.TOROLT = 'F'";
|
|
|
|
var commandParameterList = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTanuloId", tanuloId),
|
|
feladatKategoriaId.IsEntityId() ?
|
|
new CommandParameter("pFeladatKategoriaId", feladatKategoriaId) :
|
|
new CommandParameter("pFeladatKategoriaId", DBNull.Value)
|
|
};
|
|
|
|
var dataSet = GetData(commandText, commandParameterList, "ErtekelesModja,Erdemjegy");
|
|
return dataSet;
|
|
}
|
|
|
|
public bool HasErtekelesekForTanuloInTanuloCsoport(int tanuloId, int tanuloCsoportId)
|
|
{
|
|
using (var command = UserContext.Instance.SDAConnection.CreateCommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.Text;
|
|
|
|
command.Parameters.Add("pTanuloId", tanuloId);
|
|
command.Parameters.Add("pTanuloCsoportId", tanuloCsoportId);
|
|
|
|
command.CommandText = @"
|
|
SELECT
|
|
COUNT(te.ID)
|
|
FROM T_TANULOERTEKELES_OSSZES te
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON te.C_OSZTALYCSOPORTID = tcs.C_OSZTALYCSOPORTID AND te.C_TANULOID = tcs.C_TANULOID AND tcs.TOROLT = 'F' AND tcs.C_TANEVID = te.C_TANEVID
|
|
WHERE te.TOROLT = 'F'
|
|
AND te.C_TANULOID = :pTanuloId
|
|
AND tcs.ID = :pTanuloCsoportId";
|
|
|
|
var cmdResult = command.ExecuteScalar();
|
|
|
|
return (cmdResult.ToString() != "0");
|
|
}
|
|
}
|
|
|
|
public DataSet GetMulasztasok(int userId, int? feladatKategoriaId)
|
|
{
|
|
string commandText = string.Format(@"
|
|
Select tm.ID
|
|
,tm.[C_IGAZOLT] as IsIgazolt
|
|
,tm.[C_KESESPERCBEN] as KesesPercben
|
|
,tm.[C_TIPUS] as MulasztasTipusa
|
|
,tm.[C_IGAZOLASTIPUSA] as IgazolasTipusa
|
|
,ocs.[C_Nev] as OsztalyCsoport
|
|
,t.[C_NEV] as Tantargy
|
|
,tano.C_ORASZAM as Oraszam
|
|
,tano.C_DATUM as Datum
|
|
From (
|
|
SELECT [ID]
|
|
,[C_IGAZOLT]
|
|
,[C_KESESPERCBEN]
|
|
,[C_MEGJEGYZES]
|
|
,[C_TIPUS]
|
|
,[C_IGAZOLASTIPUSA]
|
|
,[C_ORATANULOIID]
|
|
,[C_TANITASIORAKID]
|
|
FROM [T_TANULOMULASZTAS_OSSZES] Where [TOROLT] = 'F' And [C_ORATANULOIID] = :pUserId And [C_TIPUS] NOT IN ({0}, {1})) as tm
|
|
Left join (SELECT [ID]
|
|
,[C_ORASZAM]
|
|
,[C_DATUM]
|
|
,[C_TANTARGYID]
|
|
,[C_OSZTALYCSOPORTID]
|
|
FROM [T_TANITASIORA_OSSZES] where [TOROLT] = 'F') as tano
|
|
on tano.ID = tm.C_TANITASIORAKID
|
|
Left Join (SELECT [ID]
|
|
,[C_NEV]
|
|
FROM [T_TANTARGY_OSSZES] Where [TOROLT] = 'F') as t
|
|
On t.ID = tano.[C_TANTARGYID]
|
|
Inner Join (SELECT [ID]
|
|
,[C_Nev]
|
|
,[C_FELADATKATEGORIAID]
|
|
,[C_TANEVID]
|
|
FROM [T_OSZTALYCSOPORT_OSSZES] Where [TOROLT] = 'F') as ocs
|
|
On tano.[C_OSZTALYCSOPORTID] = ocs.[ID] AND (ocs.C_FELADATKATEGORIAID = :pFeladatKategoriaId OR :pFeladatKategoriaId IS NULL)
|
|
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = tano.C_OSZTALYCSOPORTID
|
|
AND tm.C_ORATANULOIID = tcs.C_TANULOID
|
|
AND tcs.TOROLT = 'F'
|
|
WHERE
|
|
tcs.C_BELEPESDATUM <= tano.C_DATUM
|
|
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > tano.C_DATUM)
|
|
|
|
", (int)Enums.MulasztasTipusEnum.jelenlet, (int)Enums.MulasztasTipusEnum.ures);
|
|
|
|
var prams = new List<CommandParameter> { new CommandParameter("pUserId", userId) };
|
|
if (feladatKategoriaId.IsEntityId())
|
|
{ prams.Add(new CommandParameter("pFeladatKategoriaId", feladatKategoriaId)); }
|
|
else
|
|
{ prams.Add(new CommandParameter("pFeladatKategoriaId", DBNull.Value)); }
|
|
|
|
var ds = this.GetData(commandText, prams, "MulasztasTipusa,IgazolasTipusa", "IsIgazolt");
|
|
return ds;
|
|
}
|
|
|
|
public bool HasMulasztasokForTanuloInTanuloCsoport(int tanuloId, int tanuloCsoportId)
|
|
{
|
|
using (var command = UserContext.Instance.SDAConnection.CreateCommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.Text;
|
|
|
|
command.Parameters.Add("pTanuloId", tanuloId);
|
|
command.Parameters.Add("pTanuloCsoportId", tanuloCsoportId);
|
|
|
|
command.CommandText = string.Format(@"
|
|
SELECT
|
|
COUNT(tm.ID)
|
|
FROM T_TANULOMULASZTAS_OSSZES tm
|
|
INNER JOIN T_TANITASIORA_OSSZES tOra ON tm.C_TANITASIORAKID = tOra.ID AND tora.TOROLT = 'F' AND tm.C_TANEVID = tOra.C_TANEVID
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tOra.C_OSZTALYCSOPORTID = tcs.C_OSZTALYCSOPORTID AND tm.C_ORATANULOIID = tcs.C_TANULOID AND tcs.TOROLT = 'F' AND tcs.C_TANEVID = tm.C_TANEVID
|
|
WHERE tm.TOROLT = 'F'
|
|
AND tm.C_TIPUS NOT IN ({0}, {1})
|
|
AND tm.C_ORATANULOIID = :pTanuloId
|
|
AND tcs.ID = :pTanuloCsoportId",
|
|
(int)MulasztasTipusEnum.jelenlet, (int)MulasztasTipusEnum.ures);
|
|
|
|
var cmdResult = command.ExecuteScalar();
|
|
|
|
return (cmdResult.ToString() != "0");
|
|
}
|
|
}
|
|
|
|
public bool VanMasOsztalya(int tanuloId, int osztalyId, OktNevelesiKategoriaEnum? kategoria)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
|
|
command.Parameters.Add(nameof(tanuloId), tanuloId);
|
|
command.Parameters.Add(nameof(osztalyId), osztalyId);
|
|
|
|
if (kategoria.HasValue)
|
|
{
|
|
command.Parameters.Add(nameof(kategoria), (int)kategoria);
|
|
}
|
|
else
|
|
{
|
|
command.Parameters.Add(nameof(kategoria), DBNull.Value);
|
|
}
|
|
|
|
command.CommandText = $@"
|
|
IF EXISTS
|
|
(
|
|
SELECT 1
|
|
FROM T_TANULOCSOPORT tcs
|
|
INNER JOIN T_OSZTALYCSOPORT ocs ON tcs.C_OSZTALYCSOPORTID = ocs.ID
|
|
AND (ocs.C_FELADATKATEGORIAID = @{nameof(kategoria)} OR @{nameof(kategoria)} IS NULL)
|
|
INNER JOIN T_OSZTALY o ON ocs.ID = o.ID AND o.ID <> @{nameof(osztalyId)}
|
|
WHERE tcs.C_TANULOID = @{nameof(tanuloId)}
|
|
AND tcs.C_BELEPESDATUM <= GETDATE() AND (tcs.C_KILEPESDATUM > GETDATE() OR tcs.C_KILEPESDATUM IS NULL)
|
|
)
|
|
SELECT 1
|
|
ELSE
|
|
SELECT 0
|
|
";
|
|
|
|
return Convert.ToBoolean(command.ExecuteScalar());
|
|
}
|
|
}
|
|
|
|
public DataSet GetIgazolasok(int userId, int? feladatKategoriaId)
|
|
{
|
|
const string commandText = @"
|
|
Select i.ID
|
|
,i.C_KEZDETE as IgazolasKezdete
|
|
,i.C_VEGE as IgazolasVege
|
|
,i.C_IGAZOLASTIPUSA as Tipusa
|
|
,p.[C_NYOMTATASINEV] as Pedagogus
|
|
,i.C_UGYIRATSZAM as Ugyiratszam
|
|
,i.C_MEGJEGYZES AS Megjegyzes
|
|
From (
|
|
SELECT [ID]
|
|
,[C_IGAZOLASTIPUSA]
|
|
,[C_KEZDETE]
|
|
,[C_MEGJEGYZES]
|
|
,[C_ROGZITESDATUMA]
|
|
,[C_VEGE]
|
|
,[C_TANULOID]
|
|
,[C_ROGZITOID]
|
|
,C_UGYIRATSZAM
|
|
FROM [T_IGAZOLAS_OSSZES] where [TOROLT] = 'F' And [C_TANULOID] = :pUserId) as i
|
|
Left Join (SELECT [ID]
|
|
,[C_NYOMTATASINEV]
|
|
FROM [T_FELHASZNALO_OSSZES] Where [TOROLT] = 'F') as p
|
|
On i.[C_ROGZITOID] = p.[ID]
|
|
";
|
|
var prams = new List<CommandParameter> { new CommandParameter("pUserId", userId) };
|
|
if (feladatKategoriaId.IsEntityId())
|
|
{ prams.Add(new CommandParameter("pFeladatKategoriaId", feladatKategoriaId)); }
|
|
else
|
|
{ prams.Add(new CommandParameter("pFeladatKategoriaId", DBNull.Value)); }
|
|
|
|
var ds = this.GetData(commandText, prams, "Tipusa");
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetJogviszonySzuneteltetes(int userId, int? kategoria)
|
|
{
|
|
var prams = new List<CommandParameter> { new CommandParameter("pUserId", userId) };
|
|
|
|
string commandText = @"
|
|
SELECT
|
|
jvsz.ID AS ID
|
|
,jvsz.C_KEZDETE as Kezdete
|
|
,jvsz.C_VEGE as Vege
|
|
,ocs.C_NEV as OsztalyNev
|
|
FROM T_JOGVISZONYSZUNETELTETES jvsz
|
|
LEFT JOIN T_TANULOTANUGYIADATOK ta on ta.ID = jvsz.C_TANULOTANUGYIADATOKID
|
|
LEFT JOIN T_TANULOCSOPORT tcs on tcs.ID = ta.C_TANULOCSOPORTID
|
|
LEFT JOIN T_OSZTALYCSOPORT ocs on ocs.ID = tcs.C_OSZTALYCSOPORTID
|
|
WHERE
|
|
jvsz.TOROLT = 'F' AND jvsz.C_TANULOID = :pUserId
|
|
";
|
|
|
|
if (kategoria.HasValue)
|
|
{
|
|
prams.Add(new CommandParameter("pKategoria", kategoria));
|
|
commandText += " AND ocs.C_FELADATKATEGORIAID = :pKategoria";
|
|
}
|
|
else
|
|
{
|
|
prams.Add(new CommandParameter("pKategoria", (int)OktNevelesiKategoriaEnum.NevelesOktatas));
|
|
commandText += " AND (ocs.C_FELADATKATEGORIAID = :pKategoria OR ocs.C_FELADATKATEGORIAID IS NULL)";
|
|
}
|
|
|
|
var ds = this.GetData(commandText, prams);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetFeljegyzesekHavi(int tanuloId, int tanevId, int osztalyId)
|
|
{
|
|
List<CommandParameter> p = new List<CommandParameter>(); ///TODO (@DevKornél): Obj. inittel
|
|
p.Add(new CommandParameter("pTanuloId", tanuloId));
|
|
p.Add(new CommandParameter("pTanevId", tanevId));
|
|
p.Add(new CommandParameter("pOsztalyId", osztalyId));
|
|
|
|
var command = @"
|
|
SELECT
|
|
tte.C_TANULOID AS TanuloId
|
|
,d.C_NAME AS Tipus
|
|
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 9 THEN 1 ELSE 0 END) AS Szeptember
|
|
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 10 THEN 1 ELSE 0 END) AS Oktober
|
|
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 11 THEN 1 ELSE 0 END) AS November
|
|
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 12 THEN 1 ELSE 0 END) AS December
|
|
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 1 THEN 1 ELSE 0 END) AS Januar
|
|
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 2 THEN 1 ELSE 0 END) AS Februar
|
|
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 3 THEN 1 ELSE 0 END) AS Marcius
|
|
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 4 THEN 1 ELSE 0 END) AS Aprilis
|
|
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 5 THEN 1 ELSE 0 END) AS Majus
|
|
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 6 THEN 1 ELSE 0 END) AS Junius
|
|
,SUM(CASE WHEN te.C_ESEMENYDATUMA <= tr.C_DATUM THEN 1 ELSE 0 END) AS Felev
|
|
,SUM(1) AS Ossz
|
|
FROM T_TANULO_TANULOESEMENY tte
|
|
INNER JOIN T_TANULOESEMENY_OSSZES te ON te.ID = tte.C_TANULOESEMENYID AND te.TOROLT = 'F'
|
|
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.ID = te.C_TIPUS AND d.TOROLT = 'F' AND d.C_TANEVID = :pTanevId
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_TANULOID=:pTanuloId AND tcs.C_OSZTALYCSOPORTID=:pOsztalyId AND tcs.TOROLT='F'
|
|
LEFT JOIN T_TANEVRENDJE tr ON tr.C_TANEVID=te.C_TANEVID AND tr.C_NAPTIPUSA=1400 AND tr.TOROLT='F'--aggregált oszlopban nem lehet subselect
|
|
WHERE tte.C_TANULOID = :pTanuloId AND te.TOROLT = 'F' AND tcs.C_BELEPESDATUM <= te.C_ESEMENYDATUMA AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= te.C_ESEMENYDATUMA)
|
|
GROUP BY tte.C_TANULOID, d.C_NAME";
|
|
|
|
return this.GetData(command, p);
|
|
}
|
|
|
|
public DataSet GetUtkozoOsztalyok(int tanuloId, DateTime belepesDatum, int tanuloCsoportId, int atsorolasOsztalyId, OktNevelesiKategoriaEnum? kategoria)
|
|
{
|
|
List<CommandParameter> p = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTanuloId", tanuloId),
|
|
new CommandParameter("pBelepesDatum", belepesDatum),
|
|
new CommandParameter("pTanuloCsoportId", tanuloCsoportId),
|
|
new CommandParameter("pAtsorolasOsztalyId", atsorolasOsztalyId)
|
|
};
|
|
|
|
if (kategoria.HasValue)
|
|
{
|
|
p.Add(new CommandParameter(nameof(kategoria), (int)kategoria));
|
|
}
|
|
else
|
|
{
|
|
p.Add(new CommandParameter(nameof(kategoria), DBNull.Value));
|
|
}
|
|
|
|
var commandText = $@"
|
|
SELECT
|
|
ocs.C_NEV AS OsztalyCsoport,
|
|
tcs.C_BELEPESDATUM AS BelepesDatuma,
|
|
tcs.C_KILEPESDATUM AS KilepesDatuma,
|
|
f.C_NYOMTATASINEV AS TanuloNeve
|
|
FROM T_TANULOCSOPORT_OSSZES tcs
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND ocs.TOROLT = 'F' AND (ocs.C_FELADATKATEGORIAID = @{nameof(kategoria)} OR @{nameof(kategoria)} IS NULL)
|
|
INNER JOIN T_OSZTALY_OSSZES o ON ocs.ID = o.ID AND o.TOROLT = 'F'
|
|
INNER JOIN T_FELHASZNALO_OSSZES f ON tcs.C_TANULOID = f.ID AND f.TOROLT = 'F'
|
|
WHERE tcs.TOROLT = 'F'
|
|
AND tcs.C_TANULOID = :pTanuloId
|
|
AND :pBelepesDatum >= tcs.C_BELEPESDATUM AND (tcs.C_KILEPESDATUM IS NULL OR :pBelepesDatum < tcs.C_KILEPESDATUM)
|
|
";
|
|
|
|
if (atsorolasOsztalyId == 0)
|
|
{
|
|
commandText += @"
|
|
AND tcs.ID != :pTanuloCsoportId
|
|
";
|
|
}
|
|
else
|
|
{
|
|
commandText += @"
|
|
AND o.ID != :pTanuloCsoportId AND o.ID != :pAtsorolasOsztalyId
|
|
";
|
|
}
|
|
|
|
var ds = this.GetData(commandText, p);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetHistoria(int userId, int? feladatKategoriaId = null)
|
|
{
|
|
var prams = new List<CommandParameter> { new CommandParameter("pUserId", userId) };
|
|
|
|
if (feladatKategoriaId.IsEntityId())
|
|
prams.Add(new CommandParameter("pFeladatKategoriaId", feladatKategoriaId));
|
|
else
|
|
prams.Add(new CommandParameter("pFeladatKategoriaId", DBNull.Value));
|
|
|
|
const string commandText = @"
|
|
SELECT tcs.ID
|
|
,tcs.C_BELEPESDATUM AS BelepesDatuma
|
|
,tcs.C_KILEPESDATUM AS KilepesDatuma
|
|
,ocs.C_NEV AS OsztalyCsoport
|
|
,tanev.C_NEV AS Tanev
|
|
,STUFF((
|
|
SELECT CAST(', ' + C_SZOVEG AS NVARCHAR(MAX)) FROM T_ZARADEK_OSSZES z
|
|
WHERE
|
|
z.C_TANULOCSOPORTID = tcs.ID
|
|
AND C_ISKIVAGYATSOROLASIZARADEK = 'F'
|
|
AND TOROLT = 'F'
|
|
AND C_TANEVID = tcs.C_TANEVID
|
|
FOR XML PATH(''), TYPE).value('.','NVARCHAR(MAX)'),1,2,'') AS Zaradek
|
|
FROM T_TANULOCSOPORT_OSSZES tcs
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND ocs.TOROLT = 'F' AND (ocs.C_FELADATKATEGORIAID = :pFeladatKategoriaId OR :pFeladatKategoriaId IS NULL)
|
|
INNER JOIN T_TANEV_OSSZES tanev ON tanev.ID = ocs.C_TANEVID AND tanev.TOROLT = 'F'
|
|
WHERE tcs.TOROLT = 'F'
|
|
AND tcs.C_TANULOID = :pUserId
|
|
";
|
|
var ds = this.GetData(commandText, prams);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet KIRTanulokImport(string tanuloiAdatokXml, int intezmenyId, int tanevId, int userId)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "sp_KIRImportTanulok";
|
|
command.Parameters.Add("TanulokXML", tanuloiAdatokXml);
|
|
command.Parameters.Add("intezmenyID", intezmenyId);
|
|
command.Parameters.Add("tanevID", tanevId);
|
|
command.Parameters.Add("userId", userId);
|
|
|
|
var dts = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(dts);
|
|
}
|
|
|
|
DalHelper.Commit();
|
|
return dts;
|
|
}
|
|
}
|
|
|
|
/// INFO @DevKornel: Mobil használja
|
|
public DataSet GetTanuloOsztaly(int tanuloId, DateTime? datum = null, OktNevelesiKategoriaEnum? feladatKategoria = OktNevelesiKategoriaEnum.NevelesOktatas, bool csakAktualis = true, bool feladatKategoriaval = false)
|
|
{
|
|
var commandParameterList = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTanuloId", tanuloId)
|
|
};
|
|
|
|
if (feladatKategoria.HasValue)
|
|
{ commandParameterList.Add(new CommandParameter("pFeladatKategoriaId", (int)feladatKategoria)); }
|
|
else
|
|
{ commandParameterList.Add(new CommandParameter("pFeladatKategoriaId", DBNull.Value)); }
|
|
|
|
var datumParameter = "DEFAULT";
|
|
if (datum.HasValue)
|
|
{
|
|
datumParameter = ":pDatum";
|
|
commandParameterList.Add(new CommandParameter("pDatum", datum.Value));
|
|
}
|
|
|
|
commandParameterList.Add(new CommandParameter("pKiiratkozottNeJelenjenMeg", csakAktualis ? 1 : 0));
|
|
|
|
string commandText = $@"SELECT * FROM fnGetTanuloOsztaly(:pTanuloId, {datumParameter}, :pFeladatKategoriaId, :pKiiratkozottNeJelenjenMeg, DEFAULT)";
|
|
if (feladatKategoriaval)
|
|
{
|
|
commandText += "AS o\r\nINNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'";
|
|
commandText = commandText.Replace("*", "o.*, ocs.C_FELADATKATEGORIAID");
|
|
}
|
|
|
|
return GetData(commandText, commandParameterList);
|
|
}
|
|
|
|
public DataSet GetTanuloCsoportId(int userId, int? osztalyCsoportId, DateTime? tanevElsoNapja)
|
|
{
|
|
var prams = new List<CommandParameter> { new CommandParameter("pUserId", userId) };
|
|
if (osztalyCsoportId.HasValue)
|
|
prams.Add(new CommandParameter("pOsztalycsoportId", osztalyCsoportId));
|
|
else
|
|
prams.Add(new CommandParameter("pOsztalycsoportId", DBNull.Value));
|
|
|
|
prams.Add(tanevElsoNapja.HasValue ? new CommandParameter("pDatum", tanevElsoNapja.Value) : new CommandParameter("pDatum", DateTime.Now));
|
|
|
|
const string commandText = @"
|
|
Select tcs.ID
|
|
From(
|
|
SELECT [ID]
|
|
,[C_OSZTALYCSOPORTID]
|
|
,[C_TANULOID]
|
|
FROM [T_TANULOCSOPORT_OSSZES] where [TOROLT] = 'F'
|
|
and C_BELEPESDATUM <= @pDatum
|
|
and (C_KILEPESDATUM is null or C_KILEPESDATUM > @pDatum)
|
|
and C_TANULOID = @pUserId
|
|
) tcs
|
|
Inner Join (SELECT [ID]
|
|
FROM [T_OSZTALY_OSSZES] where [TOROLT] = 'F') as o
|
|
On tcs.C_OSZTALYCSOPORTID = o.ID
|
|
where
|
|
o.ID = @pOsztalycsoportId OR @pOsztalycsoportId IS NULL
|
|
";
|
|
|
|
var ds = this.GetData(commandText, prams);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetTanuloOraAdatai(int? orarendiOraId, int? tanitasiOraId, DateTime datum)
|
|
{
|
|
string commandText = string.Empty;
|
|
List<CommandParameter> parameters = new List<CommandParameter>();
|
|
|
|
if (orarendiOraId.HasValue)
|
|
{
|
|
commandText = $@"
|
|
SELECT
|
|
T_TANTARGY.C_NEV TargyNev,
|
|
'F' Megtartott,
|
|
osztaly.C_NEV OsztalyNev,
|
|
tanar.C_NYOMTATASINEV TanarNev,
|
|
T_TEREM.C_NEV TeremNev,
|
|
'' Tema,
|
|
hTanar.C_NYOMTATASINEV Helyettesito,
|
|
T_ORARENDIORA.C_ORASZAM Oraszam,
|
|
T_ORARENDIORA.C_ORAKEZDETE OraKezdet,
|
|
T_ORARENDIORA.C_ORAVEGE OraVege,
|
|
'' HaziFeladat
|
|
FROM T_ORARENDIORA
|
|
LEFT JOIN T_TANTARGY ON T_TANTARGY.ID = T_ORARENDIORA.C_TANTARGYID
|
|
LEFT JOIN T_FELHASZNALO tanar ON T_ORARENDIORA.C_TANARID = tanar.ID
|
|
LEFT JOIN T_OSZTALYCSOPORT osztaly ON T_ORARENDIORA.C_OSZTALYCSOPORTID = osztaly.ID
|
|
LEFT JOIN T_TEREM ON T_TEREM.ID = T_ORARENDIORA.C_TEREMID
|
|
LEFT JOIN T_HELYETTESITESIIDOSZAK h ON h.C_HELYETTESITETTORARENDID = T_ORARENDIORA.ID AND h.C_HELYETTESITESNAPJA = @{nameof(datum)} AND h.TOROLT = 'F'
|
|
LEFT JOIN T_FELHASZNALO hTanar ON hTanar.ID = h.C_HELYETTESTANAROKID
|
|
WHERE
|
|
T_ORARENDIORA.TOROLT='F' AND T_ORARENDIORA.ID = @{nameof(orarendiOraId)}";
|
|
|
|
parameters.Add(new CommandParameter(nameof(orarendiOraId), orarendiOraId.Value));
|
|
parameters.Add(new CommandParameter(nameof(datum), datum.Date));
|
|
}
|
|
else
|
|
{
|
|
commandText = $@"
|
|
SELECT T_TANTARGY.C_NEV TargyNev,
|
|
T_TANITASIORA.C_MEGTARTOTT Megtartott,
|
|
osztaly.C_NEV OsztalyNev,
|
|
tanar.C_NYOMTATASINEV TanarNev,
|
|
T_TEREM.c_nev TeremNev,
|
|
T_TANITASIORA.C_TEMA Tema,
|
|
helyettesito.C_NYOMTATASINEV Helyettesito,
|
|
T_TANITASIORA.C_ORASZAM Oraszam,
|
|
T_TANITASIORA.C_ORAKEZDETE OraKezdet,
|
|
T_TANITASIORA.C_ORAVEGE OraVege,
|
|
T_TANITASIORA.C_HAZIFELADAT HaziFeladat
|
|
|
|
FROM T_TANITASIORA
|
|
|
|
LEFT JOIN T_TANTARGY ON T_TANTARGY.ID = T_TANITASIORA.C_TANTARGYID
|
|
LEFT JOIN T_FELHASZNALO tanar ON tanar.ID = T_TANITASIORA.C_TANARID
|
|
LEFT JOIN T_FELHASZNALO helyettesito ON T_TANITASIORA.C_HELYETTESITOTANARID = helyettesito.ID
|
|
LEFT JOIN T_OSZTALYCSOPORT osztaly ON T_TANITASIORA.C_OSZTALYCSOPORTID = osztaly.ID
|
|
LEFT JOIN T_TEREM ON T_TEREM.ID = T_TANITASIORA.C_TEREMID
|
|
|
|
WHERE T_TANITASIORA.TOROLT = 'F'
|
|
AND T_TANITASIORA.ID = @{nameof(tanitasiOraId)}";
|
|
|
|
parameters.Add(new CommandParameter(nameof(tanitasiOraId), tanitasiOraId.Value));
|
|
}
|
|
|
|
var ds = this.GetData(commandText, parameters);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetTanuloOraSzamonkeresAdatai(int? orarendiOraId, int? tanitasiOraId, DateTime date)
|
|
{
|
|
var param = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pId", orarendiOraId.HasValue ? orarendiOraId : tanitasiOraId),
|
|
new CommandParameter("pDate", date),
|
|
new CommandParameter("pTipusId", (int)GeneratedAdatszotarTipusEnum.ErtekelesMod)
|
|
};
|
|
|
|
var commandText = @"
|
|
SELECT
|
|
sze.C_SZAMONKERESMEGNEVEZES AS SzamonkeresMegnevezes
|
|
,dib.C_NAME AS SzamonkeresMod
|
|
FROM T_SZAMONKERESELOREJELZES sze
|
|
INNER JOIN ";
|
|
commandText += orarendiOraId.HasValue ?
|
|
@" T_ORARENDIORA o ON sze.C_SZAMONKERESDATUMA between o.C_ORAERVENYESSEGKEZDETE AND o.C_ORAERVENYESSEGVEGE " :
|
|
@" T_TANITASIORA o ON sze.C_SZAMONKERESDATUMA = o.C_DATUM ";
|
|
|
|
commandText += @" AND o.ID = :pId AND sze.C_TANEVID = o.C_TANEVID AND sze.C_ORARENDIORAGROUPID = o.C_ORARENDIORAGROUPID AND o.TOROLT = 'F' ";
|
|
commandText += @"
|
|
INNER JOIN T_DICTIONARYITEMBASE dib ON dib.ID = sze.C_SZAMONKERESMODID AND dib.C_INTEZMENYID = sze.C_INTEZMENYID AND dib.C_TANEVID = sze.C_TANEVID AND dib.C_DICTIONARYTYPEID = :pTipusId
|
|
WHERE sze.C_SZAMONKERESDATUMA = :pDate AND sze.TOROLT = 'F' ";
|
|
|
|
DataSet ds = GetData(commandText, param);
|
|
return ds;
|
|
}
|
|
|
|
/// INFO @DevKornel: Mobil használja
|
|
public DataSet GetOsztalyTanuloi(int osztalyId, DateTime? date = null)
|
|
{
|
|
var pDate = !date.HasValue || date == default(DateTime) ? DateTime.Now : date.Value;
|
|
var param = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pOsztalyID", osztalyId),
|
|
new CommandParameter("pDate", pDate)
|
|
};
|
|
|
|
var commandText = @"
|
|
SELECT DISTINCT
|
|
T_FELHASZNALO_OSSZES.ID ID,
|
|
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV Nev,
|
|
T_FELHASZNALO_OSSZES.C_SZULETESIDATUM SzuletesiDatum,
|
|
T_FELHASZNALO_OSSZES.C_ANYJANEVE AnyaNev
|
|
FROM
|
|
T_TANULOCSOPORT_OSSZES
|
|
INNER JOIN
|
|
T_FELHASZNALO_OSSZES ON
|
|
T_FELHASZNALO_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_TANULOID
|
|
WHERE
|
|
T_TANULOCSOPORT_OSSZES.torolt = 'F' AND
|
|
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM <= :pDate AND
|
|
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM > :pDate)
|
|
AND T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID IN (SELECT ID FROM fnGetKapcsolodoOsztalycsoportok(:pOsztalyID))
|
|
ORDER BY
|
|
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV";
|
|
|
|
DataSet ds = GetData(commandText, param);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetCsoportTanuloi(int osztalyId, int tanevId, string osztalyLista = null)
|
|
{
|
|
var param = new List<CommandParameter>
|
|
{
|
|
osztalyLista != null ?
|
|
new CommandParameter("pOsztalyLista", osztalyLista) :
|
|
new CommandParameter("pOsztalyID", osztalyId),
|
|
new CommandParameter("pTanevId", tanevId)
|
|
};
|
|
|
|
var commandText = @"
|
|
SELECT DISTINCT
|
|
T_FELHASZNALO_OSSZES.ID ID,
|
|
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV Nev,
|
|
IIF(T_FELHASZNALO_OSSZES.C_NEVSORREND = 'T',
|
|
T_FELHASZNALO_OSSZES.C_UTONEV + ' ' + T_FELHASZNALO_OSSZES.C_VEZETEKNEV,
|
|
T_FELHASZNALO_OSSZES.C_VEZETEKNEV + ' ' + T_FELHASZNALO_OSSZES.C_UTONEV) NevElotagNelkul,
|
|
T_FELHASZNALO_OSSZES.C_SZULETESIDATUM SzuletesiDatum,
|
|
T_FELHASZNALO_OSSZES.C_ANYJANEVE AnyaNev
|
|
FROM
|
|
T_TANULOCSOPORT_OSSZES
|
|
INNER JOIN
|
|
T_FELHASZNALO_OSSZES ON
|
|
T_FELHASZNALO_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_TANULOID
|
|
WHERE
|
|
T_TANULOCSOPORT_OSSZES.TOROLT = 'F' AND T_TANULOCSOPORT_OSSZES.C_TANEVID = :pTanevId AND
|
|
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() AND
|
|
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())"
|
|
+ (osztalyLista == null ? @" AND T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID = :pOsztalyID "
|
|
: " AND T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID IN (:pOsztalyLista)");
|
|
|
|
DataSet ds = GetData(commandText, param);
|
|
return ds;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Visszaadja az osztályból már kiléptetett és majd a jövőben az osztálybasorolt tanulókat is
|
|
/// </summary>
|
|
public DataSet GetOsztalyCsoportMindenkoriTanuloi(int osztalyId, string osztalyLista = null)
|
|
{
|
|
var param = new List<CommandParameter>();
|
|
|
|
if (osztalyLista != null)
|
|
param.Add(new CommandParameter("pOsztalyLista", osztalyLista));
|
|
else
|
|
param.Add(new CommandParameter("pOsztalyID", osztalyId));
|
|
|
|
string whereClause = "";
|
|
|
|
if (osztalyLista == null)
|
|
{
|
|
whereClause += @" AND T_TANULOCSOPORT_OSSZES.c_osztalycsoportid=:pOsztalyID ";
|
|
}
|
|
else
|
|
{
|
|
whereClause += @" AND T_TANULOCSOPORT_OSSZES.c_osztalycsoportid in (:pOsztalyLista) ";
|
|
}
|
|
|
|
var commandText = @"
|
|
SELECT
|
|
T_FELHASZNALO_OSSZES.ID ID
|
|
,T_FELHASZNALO_OSSZES.C_NYOMTATASINEV Nev
|
|
,IIF(T_FELHASZNALO_OSSZES.C_NEVSORREND = 'T'
|
|
,T_FELHASZNALO_OSSZES.C_UTONEV + ' ' + T_FELHASZNALO_OSSZES.C_VEZETEKNEV
|
|
,T_FELHASZNALO_OSSZES.C_VEZETEKNEV + ' ' + T_FELHASZNALO_OSSZES.C_UTONEV) NevElotagNelkul
|
|
,T_FELHASZNALO_OSSZES.C_SZULETESIDATUM SzuletesiDatum
|
|
,T_FELHASZNALO_OSSZES.C_ANYJANEVE AnyaNev
|
|
,OSZTALY.Osztalynev OsztalyNev
|
|
,T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM BelepesDatum
|
|
,T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM KilepesDatum
|
|
FROM T_TANULOCSOPORT_OSSZES
|
|
INNER JOIN T_FELHASZNALO_OSSZES ON T_FELHASZNALO_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_TANULOID
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ON T_OSZTALYCSOPORT_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID AND T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
|
|
CROSS APPLY fnGetTanuloOsztalyString(T_FELHASZNALO_OSSZES.ID,default,T_OSZTALYCSOPORT_OSSZES.C_FELADATKATEGORIAID,default,default, NULL) OSZTALY
|
|
WHERE
|
|
T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
|
|
" + whereClause;
|
|
|
|
DataSet ds = GetData(commandText, param);
|
|
return ds;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Visszaadja az osztályból már kiléptetett és majd a jövőben az osztálybasorolt tanulókat is
|
|
/// </summary>
|
|
public DataSet GetOsztalyCsoportMindenkoriTanuloiTanuloCsoportonkent(int osztalyCsoportId)
|
|
{
|
|
var commandParameterList = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pOsztalyCsoportId", osztalyCsoportId)
|
|
};
|
|
|
|
string commandText = @"
|
|
SELECT
|
|
TanuloCsoport.ID ID
|
|
,TanuloCsoport.C_BELEPESDATUM BelepesDatum
|
|
,TanuloCsoport.C_KILEPESDATUM KilepesDatum
|
|
,TanuloTanugyiAdatok.Id TanuloTanugyiAdatokId
|
|
,TanuloTanugyiAdatok.C_NAPLOSORSZAM Naplosorszam
|
|
,TanuloTanugyiAdatok.C_TORZSLAPSZAM Torzslapszam
|
|
,Felhasznalo.C_NYOMTATASINEV Nev
|
|
,IIF(Felhasznalo.C_NEVSORREND = 'T',
|
|
Felhasznalo.C_UTONEV + ' ' + Felhasznalo.C_VEZETEKNEV,
|
|
Felhasznalo.C_VEZETEKNEV + ' ' + Felhasznalo.C_UTONEV) NevElotagNelkul
|
|
,Felhasznalo.C_SZULETESIDATUM SzuletesiDatum
|
|
,Felhasznalo.C_ANYJANEVE AnyaNev
|
|
,Felhasznalo.C_OKTATASIAZONOSITO OktatasiAzonosito
|
|
FROM
|
|
T_TANULOCSOPORT_OSSZES TanuloCsoport
|
|
INNER JOIN
|
|
T_TANULOTANUGYIADATOK_OSSZES TanuloTanugyiAdatok ON
|
|
TanuloTanugyiAdatok.TOROLT = 'F'
|
|
AND TanuloTanugyiAdatok.C_TANULOCSOPORTID = TanuloCsoport.ID
|
|
INNER JOIN
|
|
T_FELHASZNALO_OSSZES Felhasznalo ON
|
|
Felhasznalo.TOROLT = 'F'
|
|
AND Felhasznalo.ID = TanuloCsoport.C_TANULOID
|
|
WHERE
|
|
TanuloCsoport.TOROLT = 'F'
|
|
AND TanuloCsoport.C_OSZTALYCSOPORTID = :pOsztalyCsoportId
|
|
";
|
|
|
|
DataSet dataSet = GetData(commandText, commandParameterList);
|
|
return dataSet;
|
|
}
|
|
|
|
public DataSet TanuloKereses(TanuloKeresesPCO pco)
|
|
{
|
|
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 = pco.IsFromSzervezet ? "uspTanuloKeresesForSzervezet" : "uspTanuloKereses";
|
|
|
|
command.Parameters.Add("pDatum", pco.LekerdezesNapja);
|
|
if (pco.IsFromSzervezet)
|
|
{
|
|
command.Parameters.Add("pSzervezetId", pco.SzervezetId);
|
|
command.Parameters.Add("pSzervezetNev", pco.SzervezetNev);
|
|
command.Parameters.Add("pSzervezetAzonosito", pco.SzervezetAzonosito);
|
|
command.Parameters.Add("pIntezmenyId", SDADBType.Int).Value = pco.IntezmenyId;
|
|
command.Parameters.Add("pSzervezetekHalmaza", SDADBType.Int).Value = (int)SzervezetAdatokHalmazaEnum.SzervezetEsAlSzervezetek;
|
|
}
|
|
else
|
|
{
|
|
command.Parameters.Add("pTanuloBelepesNelkul", pco.TanuloBelepesNelkul.ToBit());
|
|
command.Parameters.Add("pNincsAllampolgarsag", pco.NincsAllampolgarsag.HasValue && pco.NincsAllampolgarsag.Value ? (int)AllampolgarsagEnum.na : (int?)null);
|
|
command.Parameters.Add("pNincsAnyanyelv", pco.NincsAnyanyelv.HasValue && pco.NincsAnyanyelv.Value ? (int)AnyanyelvEnum.na : (int?)null);
|
|
command.Parameters.Add("pFelvetelEve", pco.FelvetelEve);
|
|
command.Parameters.Add("pNincsOsztondijAlapAdat", pco.NincsOsztondijAlapAdat.ToBit());
|
|
command.Parameters.Add("pNincsOsztondijUtalasAdat", pco.NincsOsztondijUtalasAdat.ToBit());
|
|
command.Parameters.Add("pVanKettosOsztalybesorolas", pco.VanKettosOsztalybesorolas.ToBit());
|
|
}
|
|
command.Parameters.Add("pTanevId", pco.TanevId);
|
|
|
|
foreach (var item in pco.ExtractParameters(pco.IsFromSzervezet))
|
|
{
|
|
command.Parameters.Add(item.Name, item.Value);
|
|
}
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
}
|
|
DataTable dataTable = ds.Tables[0];
|
|
if (!pco.IsFromSzervezet)
|
|
{
|
|
SetDNAME(dataTable, "MuveszetiAgId");
|
|
SetBoolFields(dataTable, "Tankotelezett,IsArchivalt");
|
|
}
|
|
DataTable result = SortingAndPaging(dataTable, GridParameters);
|
|
return result.AsDataSet();
|
|
}
|
|
|
|
#region Export
|
|
|
|
public DataSet GetTanulokLakcimmel(int intezmenyId, int tanevId, TanuloKeresesPCO pco, bool isShowId = false)
|
|
{
|
|
string tanuloAlias = "tanulo";
|
|
string felhasznaloAlias = "felhasznalo";
|
|
string osztalycsoportAlias = "OsztalyCsoport";
|
|
string tanuloTanugyiadatokAlias = "tta";
|
|
|
|
var showId = isShowId ? $",{felhasznaloAlias}.ID AS FelhasznaloId" : string.Empty;
|
|
|
|
List<CommandParameter> paramlist = new List<CommandParameter>();
|
|
paramlist.Add(new CommandParameter(nameof(intezmenyId), intezmenyId));
|
|
paramlist.Add(new CommandParameter(nameof(tanevId), tanevId));
|
|
paramlist.Add(new CommandParameter(nameof(pco.LekerdezesNapja), pco.LekerdezesNapja));
|
|
|
|
StringBuilder CommandText = new StringBuilder($@"
|
|
SELECT DISTINCT
|
|
{felhasznaloAlias}.C_ELOTAG AS '{TanuloResource.Elotag}'
|
|
,{felhasznaloAlias}.C_VEZETEKNEV AS '{TanuloResource.Vezeteknev}'
|
|
,{felhasznaloAlias}.C_UTONEV AS '{TanuloResource.UtoNev}'
|
|
,{felhasznaloAlias}.C_OKTATASIAZONOSITO AS '{TanuloResource.OktatasiAzonosito}'
|
|
,Osztalyok.OsztalyNev AS '{TanuloResource.Osztaly}'
|
|
,CONVERT(nvarchar(25), {felhasznaloAlias}.C_SZULETESIDATUM, 102) AS 'Születési dátuma'
|
|
,{felhasznaloAlias}.C_ANYJANEVE AS '{TanuloResource.AnyjaNeve}'
|
|
,IIF({tanuloAlias}.C_KOLLEGIUMIELLATASOS = 'T', 'Igen', 'Nem') AS '{TanuloResource.KollegiumiEllatasos}'
|
|
,IIF(ISNULL({tanuloTanugyiadatokAlias}.C_BEJARO,{tanuloAlias}.C_BEJARO) = 'T', 'Igen', 'Nem') AS '{TanuloResource.Bejaro}'
|
|
,'{TanuloResource.Telefonszam}' = (
|
|
SELECT ISNULL(STUFF((
|
|
SELECT CHAR(10) + C_TELEFONSZAM
|
|
FROM T_TELEFON_OSSZES
|
|
WHERE C_FELHASZNALOID = tanulo.ID AND C_GONDVISELOID IS NULL AND TOROLT = 'F'
|
|
FOR XML PATH('')),1,1,''), '')
|
|
)
|
|
,'{TanuloResource.EmailCim}' = (
|
|
SELECT ISNULL(STUFF((
|
|
SELECT CHAR(10) + C_EMAILCIM
|
|
FROM T_EMAIL_OSSZES
|
|
WHERE C_FELHASZNALOID = tanulo.ID AND C_GONDVISELOID IS NULL AND TOROLT = 'F'
|
|
FOR XML PATH('')),1,1,''), '')
|
|
)
|
|
,ISNULL(lakcim_allando.C_IRANYITOSZAM, '') AS '{TanuloResource.AllandoLakcimIranyitoszam}'
|
|
,ISNULL(lakcim_allando.C_VAROS, '') AS '{TanuloResource.AllandoLakcimVaros}'
|
|
,ISNULL(lakcim_allando.C_KOZTERULET, '') AS '{TanuloResource.AllandoLakcimKozteruletNeve}'
|
|
,ISNULL(lakcim_allando.C_KOZTERULETJELLEGENEV, '') AS '{TanuloResource.AllandoLakcimKozteruletJellege}'
|
|
,ISNULL(lakcim_allando.C_HAZSZAM, '') AS '{TanuloResource.AllandoLakcimHazszam}'
|
|
,ISNULL(lakcim_allando.C_EMELET, '') AS '{TanuloResource.AllandoLakcimEmelet}'
|
|
,ISNULL(lakcim_allando.C_AJTO, '') AS '{TanuloResource.AllandoLakcimAjto}'
|
|
,ISNULL(lakcim_ideiglenes.C_IRANYITOSZAM, '') AS '{TanuloResource.IdeiglenesLakcimIranyitoszam}'
|
|
,ISNULL(lakcim_ideiglenes.C_VAROS, '') AS '{TanuloResource.IdeiglenesLakcimVaros}'
|
|
,ISNULL(lakcim_ideiglenes.C_KOZTERULET, '') AS '{TanuloResource.IdeiglenesLakcimKozteruletNeve}'
|
|
,ISNULL(lakcim_ideiglenes.C_KOZTERULETJELLEGENEV, '') AS '{TanuloResource.IdeiglenesLakcimKozteruletJellege}'
|
|
,ISNULL(lakcim_ideiglenes.C_HAZSZAM, '') AS '{TanuloResource.IdeiglenesLakcimHazszam}'
|
|
,ISNULL(lakcim_ideiglenes.C_EMELET, '') AS '{TanuloResource.IdeiglenesLakcimEmelet}'
|
|
,ISNULL(lakcim_ideiglenes.C_AJTO, '') AS '{TanuloResource.IdeiglenesLakcimAjto}'
|
|
,ISNULL(lakcim_tartozkodas.C_IRANYITOSZAM, '') AS '{TanuloResource.TartozkodasiHelyIranyitoszam}'
|
|
,ISNULL(lakcim_tartozkodas.C_VAROS, '') AS '{TanuloResource.TartozkodasiHelyVaros}'
|
|
,ISNULL(lakcim_tartozkodas.C_KOZTERULET, '') AS '{TanuloResource.TartozkodasiHelyKozteruletNeve}'
|
|
,ISNULL(lakcim_tartozkodas.C_KOZTERULETJELLEGENEV, '') AS '{TanuloResource.TartozkodasiHelyKozteruletJellege}'
|
|
,ISNULL(lakcim_tartozkodas.C_HAZSZAM, '') AS '{TanuloResource.TartozkodasiHelyHazszam}'
|
|
,ISNULL(lakcim_tartozkodas.C_EMELET, '') AS '{TanuloResource.TartozkodasiHelyEmelet}'
|
|
,ISNULL(lakcim_tartozkodas.C_AJTO, '') AS '{TanuloResource.TartozkodasiHelyAjto}'
|
|
,ISNULL(lakcim_intezmeny.C_IRANYITOSZAM, '') AS '{TanuloResource.IntezmenycimIranyitoszam}'
|
|
,ISNULL(lakcim_intezmeny.C_VAROS, '') AS '{TanuloResource.IntezmenycimVaros}'
|
|
,ISNULL(lakcim_intezmeny.C_KOZTERULET, '') AS '{TanuloResource.IntezmenycimKozteruletNeve}'
|
|
,ISNULL(lakcim_intezmeny.C_KOZTERULETJELLEGENEV, '') AS '{TanuloResource.IntezmenycimKozteruletJellege}'
|
|
,ISNULL(lakcim_intezmeny.C_HAZSZAM, '') AS '{TanuloResource.IntezmenycimHazszam}'
|
|
,ISNULL(lakcim_intezmeny.C_EMELET, '') AS '{TanuloResource.IntezmenycimEmelet}'
|
|
,ISNULL(lakcim_intezmeny.C_AJTO, '') AS '{TanuloResource.IntezmenycimAjto}'
|
|
,ISNULL(lakcim_na.C_IRANYITOSZAM, '') AS '{TanuloResource.IsmeretlenLakcimIranyitoszam}'
|
|
,ISNULL(lakcim_na.C_VAROS, '') AS '{TanuloResource.IsmeretlenLakcimVaros}'
|
|
,ISNULL(lakcim_na.C_KOZTERULET, '') AS '{TanuloResource.IsmeretlenLakcimKozteruletNeve}'
|
|
,ISNULL(lakcim_na.C_KOZTERULETJELLEGENEV, '') AS '{TanuloResource.IsmeretlenLakcimKozteruletJellege}'
|
|
,ISNULL(lakcim_na.C_HAZSZAM, '') AS '{TanuloResource.IsmeretlenLakcimHazszam}'
|
|
,ISNULL(lakcim_na.C_EMELET, '') AS '{TanuloResource.IsmeretlenLakcimEmelet}'
|
|
,ISNULL(lakcim_na.C_AJTO, '') AS '{TanuloResource.IsmeretlenLakcimAjto}'
|
|
{showId}
|
|
FROM T_TANULO_OSSZES {tanuloAlias}
|
|
INNER JOIN T_FELHASZNALO_OSSZES {felhasznaloAlias} ON {felhasznaloAlias}.ID = {tanuloAlias}.ID AND {tanuloAlias}.C_ALINTEZMENYID = {felhasznaloAlias}.C_INTEZMENYID AND {felhasznaloAlias}.C_TANEVID = {tanevId}
|
|
CROSS APPLY fnGetTanuloOsztalyString ({felhasznaloAlias}.ID, @{nameof(pco.LekerdezesNapja)}, @{nameof(pco.FeladatKategoriaId)}, 0, default, NULL) Osztalyok
|
|
LEFT JOIN (
|
|
SELECT
|
|
ocs.ID
|
|
,ocs.C_FELADATKATEGORIAID
|
|
,ocs.C_NEV
|
|
,tcs.C_TANULOID as TanuloId
|
|
,tcs.ID as TanuloCsoportId
|
|
,o.ID as OsztalyID
|
|
,ocs.C_EVFOLYAMTIPUSA
|
|
,ocs.C_VEGZOSEVFOLYAM
|
|
,ocs.C_FELADATELLATASIHELYID
|
|
FROM T_TANULOCSOPORT_OSSZES tcs
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND (ocs.C_FELADATKATEGORIAID = @{nameof(pco.FeladatKategoriaId)} OR @{nameof(pco.FeladatKategoriaId)} IS NULL) AND ocs.TOROLT='F'
|
|
LEFT JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID AND o.TOROLT = 'F'
|
|
WHERE tcs.TOROLT = 'F'
|
|
AND tcs.C_TANEVID = {tanevId}
|
|
AND tcs.C_BELEPESDATUM <= " + (pco.IsAktivTanev ? @"GETDATE() " : $@" CONVERT(date,@{nameof(pco.LekerdezesNapja)}) ") + @"
|
|
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > " + (pco.IsAktivTanev ? @"GETDATE() " : $@" CONVERT(date,@{nameof(pco.LekerdezesNapja)}) ") + $@")
|
|
) {osztalycsoportAlias} ON {osztalycsoportAlias}.TanuloId={tanuloAlias}.Id
|
|
LEFT JOIN T_TANULOTANUGYIADATOK_OSSZES {tanuloTanugyiadatokAlias} ON {tanuloTanugyiadatokAlias}.C_TANULOCSOPORTID = {osztalycsoportAlias}.TanuloCsoportId
|
|
LEFT JOIN T_CIM_OSSZES lakcim_allando ON lakcim_allando.TOROLT = 'F' AND lakcim_allando.C_GONDVISELOID IS NULL AND lakcim_allando.C_FELHASZNALOID = {tanuloAlias}.ID AND lakcim_allando.C_CIMTIPUSA = 907
|
|
LEFT JOIN T_CIM_OSSZES lakcim_tartozkodas ON lakcim_tartozkodas.TOROLT = 'F' AND lakcim_tartozkodas.C_GONDVISELOID IS NULL AND lakcim_tartozkodas.C_FELHASZNALOID = {tanuloAlias}.ID AND lakcim_tartozkodas.C_CIMTIPUSA = 909
|
|
LEFT JOIN T_CIM_OSSZES lakcim_ideiglenes ON lakcim_ideiglenes.TOROLT = 'F' AND lakcim_ideiglenes.C_GONDVISELOID IS NULL AND lakcim_ideiglenes.C_FELHASZNALOID = {tanuloAlias}.ID AND lakcim_ideiglenes.C_CIMTIPUSA = 908
|
|
LEFT JOIN T_CIM_OSSZES lakcim_intezmeny ON lakcim_intezmeny.TOROLT = 'F 'AND lakcim_intezmeny.C_GONDVISELOID IS NULL AND lakcim_intezmeny.C_FELHASZNALOID = {tanuloAlias}.ID AND lakcim_intezmeny.C_CIMTIPUSA = 910
|
|
LEFT JOIN T_CIM_OSSZES lakcim_na ON lakcim_na.TOROLT = 'F' AND lakcim_na.C_GONDVISELOID IS NULL AND lakcim_na.C_FELHASZNALOID = {tanuloAlias}.ID AND lakcim_na.C_CIMTIPUSA = 906
|
|
WHERE {tanuloAlias}.C_ALINTEZMENYID = {intezmenyId}
|
|
AND {felhasznaloAlias}.TOROLT = 'F'
|
|
AND {tanuloAlias}.TOROLT = 'F'
|
|
AND {tanuloAlias}.C_ALTANEVID = {tanevId}
|
|
AND (@FeladatKategoriaId IS NULL OR OsztalyCsoport.ID IS NOT NULL)
|
|
");
|
|
|
|
if (!pco.OsztalyId.HasValue)
|
|
{
|
|
CommandText.Append(" AND (OsztalyCsoport.TanuloCsoportId IS NULL OR OsztalyCsoport.OsztalyID IS NOT NULL)");
|
|
}
|
|
|
|
// whereClause kifejtése:
|
|
CommandText.Append(pco.ToWhereClause(paramlist, osztalycsoportAlias, tanuloAlias, felhasznaloAlias, tanuloTanugyiadatokAlias));
|
|
|
|
//order csatolása
|
|
CommandText.Append($" ORDER BY {felhasznaloAlias}.C_VEZETEKNEV, {felhasznaloAlias}.C_UTONEV");
|
|
|
|
DataSet ds = GetData(CommandText.ToString(), paramlist);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetGondviselokElerhetosegei(int tanevId, TanuloKeresesPCO pco, bool isShowId = false)
|
|
{
|
|
var kovetkezoTanev = pco.LekerdezesNapja > DateTime.Now;
|
|
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetGondviselokElerhetosegeiExport";
|
|
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
foreach (var item in pco.ExtractParameters())
|
|
{
|
|
command.Parameters.Add(item.Name, item.Value);
|
|
}
|
|
if (kovetkezoTanev)
|
|
{
|
|
command.Parameters.Add("pDatum", pco.LekerdezesNapja);
|
|
}
|
|
if (isShowId)
|
|
{
|
|
command.Parameters.Add("pShowId", true);
|
|
}
|
|
|
|
var dts = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(dts);
|
|
}
|
|
return dts;
|
|
}
|
|
}
|
|
|
|
public DataSet GetTanulokTanugyiAdatai(int tanevId, TanuloKeresesPCO pco, DateTime datum)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetTanulokTanugyiAdatai";
|
|
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
command.Parameters.Add("pTorolt", pco.Torolt ? 'T' : 'F');
|
|
if (pco.FeladatKategoriaId.HasValue)
|
|
{
|
|
command.Parameters.Add("pFeladatKategoriaId", pco.FeladatKategoriaId.Value);
|
|
}
|
|
if (pco.TanterviJellegSearchId.HasValue)
|
|
{
|
|
command.Parameters.Add("pTanterviJellegId", pco.TanterviJellegSearchId.Value);
|
|
}
|
|
|
|
command.Parameters.Add("pDatum", datum);
|
|
command.Parameters.Add("pOsztalyId", pco.OsztalyId);
|
|
|
|
var dataSet = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(dataSet);
|
|
}
|
|
|
|
var dataTable = dataSet.Tables[0];
|
|
SetDNAME(dataTable, "JogviszonyTipusId");
|
|
|
|
var columnIndex = dataTable.Columns.IndexOf("JogviszonyTipusId");
|
|
dataTable.Columns.Remove("JogviszonyTipusId");
|
|
dataTable.Columns["JogviszonyTipusId_DNAME"].SetOrdinal(columnIndex);
|
|
dataTable.Columns["JogviszonyTipusId_DNAME"].ColumnName = TanuloResource.TanuloJogviszonya;
|
|
|
|
return dataSet;
|
|
}
|
|
}
|
|
|
|
public DataSet GetTanulokTantargyaiEsPedagogusaiExcelExport(int tanevId, TanuloKeresesPCO pco)
|
|
{
|
|
var kovetkezoTanev = pco.LekerdezesNapja > DateTime.Now;
|
|
|
|
DateTime? datum;
|
|
|
|
if (!kovetkezoTanev)
|
|
{
|
|
datum = DateTime.Now;
|
|
}
|
|
else
|
|
{
|
|
datum = pco.LekerdezesNapja;
|
|
}
|
|
|
|
int amiKategoriaId = (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas;
|
|
|
|
var dts = new DataSet();
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetTanulokTantargyaiEsPedagogusaiExcelExport";
|
|
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
command.Parameters.Add("pAmiKategoriaId", amiKategoriaId);
|
|
|
|
if (pco.FeladatKategoriaId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pFeladatkategoriaId", pco.FeladatKategoriaId.Value);
|
|
}
|
|
|
|
command.Parameters.Add("pDatum", datum);
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(dts);
|
|
}
|
|
|
|
return dts;
|
|
}
|
|
}
|
|
|
|
public DataSet GetTanuloKirStatExport(int tanevId, TanuloKeresesPCO pco)
|
|
{
|
|
/*TODO:Tobb Osztaly*//*OM-1635*/
|
|
|
|
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 = "uspGetTanuloKirStatExport";
|
|
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
command.Parameters.Add("pForOktober", pco.ForOktober.ToSDABoolean());
|
|
command.Parameters.Add("pAktiv", pco.Aktiv.ToSDABoolean());
|
|
|
|
if (!string.IsNullOrWhiteSpace(pco.Nev))
|
|
{
|
|
command.Parameters.Add("pNev", pco.Nev);
|
|
}
|
|
|
|
if (pco.NincsNem.HasValue && pco.NincsNem.Value)
|
|
{
|
|
command.Parameters.Add("pNem", NemEnum.NA);
|
|
}
|
|
else if (pco.Neme.HasValue)
|
|
{
|
|
command.Parameters.Add("pNem", pco.Neme.Value);
|
|
}
|
|
|
|
if (pco.SzuletesiIdoKezdet.HasValue)
|
|
{
|
|
command.Parameters.Add("pSzuletesiIdoKezdet", pco.SzuletesiIdoKezdet.Value);
|
|
}
|
|
|
|
if (pco.SzuletesiIdoVeg.HasValue)
|
|
{
|
|
command.Parameters.Add("pSzuletesiIdoveg", pco.SzuletesiIdoVeg.Value);
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(pco.AnyjaNeve))
|
|
{
|
|
command.Parameters.Add("pAnyjaNeve", pco.AnyjaNeve);
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(pco.SzuletesiHely))
|
|
{
|
|
command.Parameters.Add("pSzuletesiHely", pco.SzuletesiHely);
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(pco.OktatasiAzonosito))
|
|
{
|
|
command.Parameters.Add("pOktatasiAzonosito", pco.OktatasiAzonosito);
|
|
}
|
|
|
|
if (pco.OsztalyId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pOsztalyId", pco.OsztalyId.Value);
|
|
}
|
|
|
|
if (pco.Vegzos.HasValue)
|
|
{
|
|
command.Parameters.Add("pVegzos", pco.Vegzos.Value.ToSDABoolean());
|
|
}
|
|
|
|
if (pco.SNI.HasValue)
|
|
{
|
|
command.Parameters.Add("pSNI", pco.SNI.Value.ToSDABoolean());
|
|
}
|
|
|
|
if (pco.BTM.HasValue)
|
|
{
|
|
command.Parameters.Add("pBTM", pco.BTM.Value.ToSDABoolean());
|
|
}
|
|
|
|
if (pco.FeladatellatasiHelyId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pFeladatellatasiHelyId", pco.FeladatellatasiHelyId.Value);
|
|
}
|
|
|
|
if (pco.HatranyosHelyzetId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pHatranyosHelyzetId", pco.HatranyosHelyzetId.Value);
|
|
}
|
|
|
|
if (pco.EvfolyamId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pEvfolyamId", pco.EvfolyamId.Value);
|
|
}
|
|
|
|
if (pco.OsztalybaSoroltTantervNelkul.HasValue)
|
|
{
|
|
command.Parameters.Add("pOsztalybaSoroltTantervNelkul", pco.OsztalybaSoroltTantervNelkul.Value.ToSDABoolean());
|
|
}
|
|
|
|
if (pco.FeladatKategoriaId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pFeladatKategoriaId", pco.FeladatKategoriaId.Value);
|
|
}
|
|
|
|
if (pco.SearchMuveszetiAgId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pSearchMuveszetiAgId", pco.SearchMuveszetiAgId.Value);
|
|
}
|
|
|
|
if (pco.TanterviJellegSearchId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pTanterviJellegId", pco.TanterviJellegSearchId.Value);
|
|
}
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
}
|
|
|
|
if (ds.Tables[0].AsEnumerable().Any())
|
|
{
|
|
return ds.Tables[0].AsEnumerable().OrderBy(t => t.Field<string>(TanuloResource.Vezeteknev)).ThenBy(t => t.Field<string>(TanuloResource.UtoNev)).CopyToDataTable().AsDataSet();
|
|
}
|
|
|
|
return ds;
|
|
|
|
}
|
|
|
|
public DataSet GetTanulokMulasztasaiExcelExport(MulasztasKeresesePCO pco)
|
|
{
|
|
StringBuilder clause = new StringBuilder();
|
|
List<CommandParameter> parameters = new List<CommandParameter>();
|
|
|
|
if (pco.Tol.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pTol", pco.Tol.Value));
|
|
}
|
|
|
|
if (pco.Ig.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pIg", pco.Ig.Value));
|
|
}
|
|
|
|
if (pco.TanuloId.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pTanuloId", pco.TanuloId.Value));
|
|
clause.Append(" AND fh.ID = :pTanuloId");
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(pco.TanuloNev))
|
|
{
|
|
parameters.Add(new CommandParameter("pTanulo", pco.TanuloNev));
|
|
clause.Append(" AND upper(fh.C_NYOMTATASINEV) like upper('%'+:pTanulo+'%') ");
|
|
}
|
|
|
|
if (pco.OsztCsop.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pOsztcsop", pco.OsztCsop));
|
|
}
|
|
|
|
if (pco.CsopTip.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pCsoptip", pco.CsopTip));
|
|
}
|
|
|
|
if (pco.Fogl.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pFogl", pco.Fogl));
|
|
}
|
|
|
|
if (pco.Targy.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pTargy", pco.Targy));
|
|
}
|
|
|
|
if (pco.OraId.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pOraID", pco.OraId.Value));
|
|
}
|
|
|
|
if (pco.MulTip.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pMulTip", pco.MulTip));
|
|
}
|
|
|
|
if (pco.KesIdo > 0)
|
|
{
|
|
parameters.Add(new CommandParameter("pKesIdo", pco.KesIdo));
|
|
}
|
|
|
|
if (pco.IgazolasTipus.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter(nameof(pco.IgazolasTipus), pco.IgazolasTipus));
|
|
}
|
|
|
|
if (pco.FeladatKategoriaId.IsEntityId())
|
|
{
|
|
parameters.Add(new CommandParameter(nameof(pco.FeladatKategoriaId), pco.FeladatKategoriaId.Value));
|
|
clause.Append($" AND ocs.C_FELADATKATEGORIAID = @{nameof(pco.FeladatKategoriaId)}");
|
|
}
|
|
|
|
if (pco.FeladatEllatasiHelyId.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter(nameof(pco.FeladatEllatasiHelyId), pco.FeladatEllatasiHelyId.Value));
|
|
clause.Append($" AND ocs.C_FELADATELLATASIHELYID = @{nameof(pco.FeladatEllatasiHelyId)}");
|
|
}
|
|
|
|
clause.Append(@" GROUP BY fh.ID, evfolyam.C_ORDER, tm.OsztId
|
|
ORDER BY evfolyam.C_ORDER,[Osztály/csoport neve],[Tanuló neve]
|
|
DROP TABLE #TanulokFilter");
|
|
|
|
/*TODO:Tobb Osztaly*//*OM-1636*/
|
|
var command = @"
|
|
CREATE TABLE #TanulokFilter(C_ORATANULOIID INT,C_IGAZOLT nVARCHAR(1),C_TIPUS INT,C_KESESPERCBEN INT,OsztID INT,CNT INT)
|
|
INSERT INTO #TanulokFilter (C_ORATANULOIID,C_IGAZOLT,C_TIPUS,C_KESESPERCBEN,OsztID,CNT)
|
|
SELECT
|
|
tm.C_ORATANULOIID,tm.C_IGAZOLT, tm.C_TIPUS,SUM(tm.C_KESESPERCBEN),ocs.ID AS OsztID,
|
|
COUNT(1) as CNT
|
|
FROM T_TANULOMULASZTAS tm
|
|
INNER JOIN T_TANITASIORA tora ON tora.ID = tm.C_TANITASIORAKID
|
|
INNER JOIN T_TANULOCSOPORT tcs ON tcs.C_OSZTALYCSOPORTID = tora.C_OSZTALYCSOPORTID AND tm.C_ORATANULOIID = tcs.C_TANULOID
|
|
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > tora.C_DATUM) AND (tcs.C_BELEPESDATUM <= tora.C_DATUM)
|
|
INNER JOIN T_OSZTALYCSOPORT ocs on ocs.ID = tcs.C_OSZTALYCSOPORTID
|
|
INNER JOIN T_ORATULAJDONSAGTIPUS ottOnlineOra ON ottOnlineOra.ID = 8615
|
|
LEFT JOIN T_TANITASIORATULAJDONSAG totOnlineOra ON totOnlineOra.C_ORATULAJDONSAGID = ottOnlineOra.ID AND totOnlineOra.C_TANITASIORAID = tora.ID
|
|
WHERE (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > tora.C_DATUM) AND (tcs.C_BELEPESDATUM <= tora.C_DATUM)" +
|
|
(pco.Tol.HasValue ? " AND tora.C_DATUM >= cast(:pTol as date) " : string.Empty) +
|
|
(pco.Ig.HasValue ? " AND tora.C_DATUM <= cast(:pIg as date) " : string.Empty) +
|
|
(pco.OsztCsop.HasValue ?
|
|
pco.IsKellKapcsolodoCsoportok ? " AND tora.C_OSZTALYCSOPORTID in (SELECT ID FROM fnGetKapcsolodoOsztalycsoportok(:pOsztcsop)) "
|
|
: " AND tora.C_OSZTALYCSOPORTID = :pOsztcsop "
|
|
: string.Empty) +
|
|
(pco.Fogl.HasValue ? " AND tora.C_FOGLALKOZASID = :pFogl " : string.Empty) +
|
|
(pco.Targy.HasValue ? " AND tora.C_TANTARGYID = :pTargy " : string.Empty) +
|
|
(pco.OraId.HasValue ? " AND tora.ID = :pOraID " : string.Empty) +
|
|
(pco.MulTip.HasValue ? " AND tm.C_TIPUS = :pMulTip " : string.Empty) +
|
|
(pco.KesIdo.HasValue ?
|
|
pco.KesIdo > 0 ? " AND tm.C_KESESPERCBEN <= :pKesIdo " : string.Empty
|
|
: string.Empty) +
|
|
(pco.IgazoltsagAllapota.HasValue ?
|
|
pco.IgazoltsagAllapota.Value == 0 ? " AND tm.C_IGAZOLT = 'F' "
|
|
: pco.IgazoltsagAllapota.Value == 1 ? " AND tm.C_IGAZOLT = 'T' "
|
|
: pco.IgazoltsagAllapota.Value == 2 ? " AND tm.C_IGAZOLT IS NULL "
|
|
: string.Empty
|
|
: string.Empty) +
|
|
(pco.IgazolasTipus.HasValue ? $" AND tm.C_IGAZOLASTIPUSA = @{nameof(pco.IgazolasTipus)}" : string.Empty) +
|
|
(!pco.IsNemBesoroltTanulokMulasztasainakMegjelenitese ? " AND tcs.C_BELEPESDATUM <= tora.C_DATUM AND(tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > tora.C_DATUM) " : string.Empty) +
|
|
(!pco.IsNemJelenlevoTanulokMegjelenitese ? " AND tm.C_TIPUS != 1817" : string.Empty) +
|
|
(pco.CsopTip.HasValue ?
|
|
pco.CsopTip.Value == (int)CsoportTipusEnum.iskolai_csoport_tanorai_celu_ ?
|
|
" AND EXISTS ( select 1 from T_CSOPORT " +
|
|
"INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_CSOPORT.ID " +
|
|
" where T_CSOPORT.TOROLT = 'F' and (T_CSOPORT.ID = tora.C_OSZTALYCSOPORTID OR T_CSOPORT.C_OSZTALYBONTASID = tora.C_OSZTALYCSOPORTID) and T_CSOPORT.C_TIPUSA = :pCsoptip) "
|
|
: " AND EXISTS ( select 1 from T_CSOPORT " +
|
|
"INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_CSOPORT.ID " +
|
|
" where T_CSOPORT.TOROLT = 'F' and T_CSOPORT.ID = tora.C_OSZTALYCSOPORTID and T_CSOPORT.C_TIPUSA = :pCsoptip) "
|
|
: string.Empty) +
|
|
(pco.IsOnlineOra.HasValue ? (" AND ISNULL(totOnlineOra.C_BOOLERTEK, ottOnlineOra.C_BOOLDEFAULT) = " + (pco.IsOnlineOra.ToBool() ? "'T'" : "'F'")) : string.Empty) +
|
|
@" GROUP BY tm.C_ORATANULOIID, ocs.ID,tm.C_TIPUS,tm.C_IGAZOLT
|
|
|
|
SELECT
|
|
MAX(fh.C_NYOMTATASINEV) as [Tanuló neve]
|
|
, MAX(ISNULL(tanuloOsztaly.Osztalynev,'')) as [Tanuló jelenlegi osztálya(i)]
|
|
, MAX(ISNULL(CONVERT(nvarchar(25), fh.C_SZULETESIDATUM, 102),'')) as [Születési idő]
|
|
, MAX(ISNULL(fh.C_OKTATASIAZONOSITO,'')) as [Tanuló azonosítója]
|
|
, MAX(ISNULL(ocs.C_NEV,'')) as [Osztály/csoport neve]
|
|
, ISNULL(SUM(IIF(tm.C_TIPUS = 1500,tm.CNT,0)),0) as [Összes hiányzás]
|
|
, ISNULL(SUM(IIF(tm.C_TIPUS = 1500 AND tm.C_IGAZOLT = 'T',tm.CNT,0)),0) as [Igazolt hiányzás]
|
|
, ISNULL(SUM(IIF(tm.C_TIPUS = 1500 AND tm.C_IGAZOLT = 'F',tm.CNT,0)),0) as [Igazolatlan hiányzás]
|
|
, ISNULL(SUM(IIF(tm.C_TIPUS = 1500 AND tm.C_IGAZOLT IS NULL,tm.CNT,0)),0) as [Igazolandó hiányzás]
|
|
, ISNULL(SUM(IIF(tm.C_TIPUS = 1499,tm.C_KESESPERCBEN,0)),0) as [Összes késés (perc)]
|
|
, ISNULL(SUM(IIF( tm.C_TIPUS = 1499 AND tm.C_IGAZOLT = 'T',tm.C_KESESPERCBEN,0)),0) as [Igazolt késés (perc)]
|
|
, ISNULL(SUM(IIF( tm.C_TIPUS = 1499 AND tm.C_IGAZOLT = 'F',tm.C_KESESPERCBEN,0)),0) as [Igazolatlan késés (perc)]
|
|
, ISNULL(SUM(IIF( tm.C_TIPUS = 1499 AND tm.C_IGAZOLT IS NULL,tm.C_KESESPERCBEN,0)),0) as [Igazolandó késés (perc)]
|
|
FROM T_FELHASZNALO fh
|
|
INNER JOIN #TanulokFilter tm ON fh.ID = tm.C_ORATANULOIID
|
|
CROSS APPLY fnGetTanuloOsztalyString(fh.ID, GETDATE(),default,default,default, NULL) tanuloOsztaly
|
|
LEFT JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = tm.OsztID
|
|
LEFT JOIN T_DICTIONARYITEMBASE evfolyam ON evfolyam.ID = ocs.C_EVFOLYAMTIPUSA AND evfolyam.C_INTEZMENYID = ocs.C_INTEZMENYID
|
|
WHERE fh.TOROLT = 'F'
|
|
";
|
|
|
|
command += clause;
|
|
string commandText = command;
|
|
|
|
return GetData(commandText, parameters);
|
|
}
|
|
|
|
public DataSet GetTanorakonNemJelenlevokExcelExport(MulasztasKeresesePCO pco)
|
|
{
|
|
StringBuilder clause = new StringBuilder();
|
|
List<CommandParameter> parameters = new List<CommandParameter>();
|
|
if (pco.Tol.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pTol", pco.Tol.Value));
|
|
clause.Append(" AND o.C_DATUM >= cast(:pTol as date) ");
|
|
}
|
|
|
|
if (pco.Ig.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pIg", pco.Ig.Value));
|
|
clause.Append(" AND o.C_DATUM <= cast(:pIg as date) ");
|
|
}
|
|
|
|
if (pco.TanuloId.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pTanuloId", pco.TanuloId.Value));
|
|
clause.Append(" AND f.ID = :pTanuloId");
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(pco.TanuloNev))
|
|
{
|
|
parameters.Add(new CommandParameter("pTanulo", pco.TanuloNev));
|
|
clause.Append(" AND upper(f.C_NYOMTATASINEV) like upper('%'+:pTanulo+'%') ");
|
|
}
|
|
|
|
if (pco.OsztCsop.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pOsztcsop", pco.OsztCsop));
|
|
if (pco.IsKellKapcsolodoCsoportok)
|
|
{
|
|
clause.Append(" AND o.C_OSZTALYCSOPORTID in (SELECT ID FROM fnGetKapcsolodoOsztalycsoportok(:pOsztcsop))");
|
|
}
|
|
else
|
|
{
|
|
clause.Append(" AND o.C_OSZTALYCSOPORTID = :pOsztcsop");
|
|
}
|
|
}
|
|
|
|
parameters.Add(new CommandParameter("pOktNevKatTipus", (int)OktNevelesiKategoriaEnum.NevelesOktatas));
|
|
if (pco.CsopTip.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pCsoptip", pco.CsopTip));
|
|
|
|
if (pco.CsopTip.Value == (int)CsoportTipusEnum.iskolai_csoport_tanorai_celu_)
|
|
{
|
|
clause.Append(" AND EXISTS ( select 1 from T_CSOPORT " +
|
|
"INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_CSOPORT.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = :pOktNevKatTipus " +
|
|
" where T_CSOPORT.TOROLT = 'F' and (T_CSOPORT.ID = o.C_OSZTALYCSOPORTID OR T_CSOPORT.C_OSZTALYBONTASID = o.C_OSZTALYCSOPORTID) and T_CSOPORT.C_TIPUSA = :pCsoptip) ");
|
|
}
|
|
else
|
|
{
|
|
clause.Append(" AND EXISTS ( select 1 from T_CSOPORT " +
|
|
"INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_CSOPORT.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = :pOktNevKatTipus " +
|
|
" where T_CSOPORT.TOROLT = 'F' and T_CSOPORT.ID = o.C_OSZTALYCSOPORTID and T_CSOPORT.C_TIPUSA = :pCsoptip) ");
|
|
}
|
|
}
|
|
|
|
if (pco.Fogl.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pFogl", pco.Fogl));
|
|
clause.Append(" AND o.C_FOGLALKOZASID = :pFogl");
|
|
}
|
|
|
|
if (pco.Targy.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pTargy", pco.Targy));
|
|
clause.Append(" AND o.C_TANTARGYID = :pTargy");
|
|
}
|
|
|
|
if (pco.OraId.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pOraID", pco.OraId.Value));
|
|
clause.Append(" AND o.ID = :pOraID");
|
|
}
|
|
|
|
if (pco.MulTip.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter("pMulTip", pco.MulTip));
|
|
clause.Append(" AND tm.C_TIPUS = :pMulTip");
|
|
}
|
|
|
|
if (pco.KesIdo > 0)
|
|
{
|
|
parameters.Add(new CommandParameter("pKesIdo", pco.KesIdo));
|
|
clause.Append(" AND tm.C_KESESPERCBEN <= :pKesIdo");
|
|
}
|
|
|
|
if (pco.IgazoltsagAllapota.HasValue)
|
|
{
|
|
switch (pco.IgazoltsagAllapota)
|
|
{
|
|
case 0:
|
|
clause.Append(" AND tm.C_IGAZOLT = 'F' ");
|
|
break;
|
|
case 1:
|
|
clause.Append(" AND tm.C_IGAZOLT = 'T' ");
|
|
break;
|
|
case 2:
|
|
clause.Append(" AND tm.C_IGAZOLT IS NULL");
|
|
break;
|
|
}
|
|
|
|
}
|
|
|
|
if (pco.IgazolasTipus.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter(nameof(pco.IgazolasTipus), pco.IgazolasTipus));
|
|
clause.Append($" AND tm.C_IGAZOLASTIPUSA = @{nameof(pco.IgazolasTipus)}");
|
|
}
|
|
|
|
if (pco.FeladatKategoriaId.IsEntityId())
|
|
{
|
|
parameters.Add(new CommandParameter(nameof(pco.FeladatKategoriaId), pco.FeladatKategoriaId.Value));
|
|
clause.Append($" AND ocs.C_FELADATKATEGORIAID = @{nameof(pco.FeladatKategoriaId)}");
|
|
}
|
|
|
|
if (pco.FeladatEllatasiHelyId.HasValue)
|
|
{
|
|
parameters.Add(new CommandParameter(nameof(pco.FeladatEllatasiHelyId), pco.FeladatEllatasiHelyId.Value));
|
|
clause.Append($" AND ocs.C_FELADATELLATASIHELYID = @{nameof(pco.FeladatEllatasiHelyId)}");
|
|
}
|
|
|
|
if (pco.IsOnlineOra.HasValue)
|
|
{
|
|
clause.Append($" AND ISNULL(totOnlineOra.C_BOOLERTEK, ottOnlineOra.C_BOOLDEFAULT) = {(pco.IsOnlineOra.ToBool() ? "'T'" : "'F'")}");
|
|
}
|
|
|
|
clause.Append(" ORDER BY o.C_DATUM DESC");
|
|
|
|
string command = @"
|
|
SELECT
|
|
f.C_NYOMTATASINEV AS 'Tanuló neve'
|
|
,ISNULL(tanugyiAdatok.C_NEV,'') as 'Tanuló osztálya'
|
|
,ISNULL(CONVERT(nvarchar(25), f.C_SZULETESIDATUM, 102),'') as 'Születési idő'
|
|
,ISNULL(f.C_OKTATASIAZONOSITO,'') as 'Tanuló azonosítója'
|
|
,FORMAT(o.C_DATUM, 'yyyy.MM.dd.') AS 'Dátum'
|
|
,o.C_ORASZAM AS 'Óra'
|
|
,ocs.C_NEV AS 'Osztály/csoport'
|
|
,t.C_NEV AS 'Tantárgy'
|
|
,N'' AS 'Típus'
|
|
,ISNULL(tm.C_KESESPERCBEN, N'') AS 'Késés(perc)'
|
|
,IIF(tm.C_IGAZOLT = 'T', N'Igen', IIF(tm.C_IGAZOLT = 'F', N'Nem', N'')) AS 'Igazolt?'
|
|
,ISNULL(igazolasTipus.C_NAME, N'') AS 'Igazolás típusa'
|
|
,IIF(totOnlineOra.C_BOOLERTEK IS NOT NULL, 'Igen', 'Nem') AS 'On-line óra'
|
|
from T_TANULOMULASZTAS tm
|
|
LEFT JOIN (
|
|
T_TANITASIORA o
|
|
INNER JOIN T_ORATULAJDONSAGTIPUS ottOnlineOra ON ottOnlineOra.ID = 8615
|
|
LEFT JOIN T_TANITASIORATULAJDONSAG totOnlineOra ON totOnlineOra.C_ORATULAJDONSAGID = ottOnlineOra.ID AND totOnlineOra.C_TANITASIORAID = o.ID
|
|
) ON o.ID = tm.C_TANITASIORAKID
|
|
LEFT JOIN T_FELHASZNALO f on f.ID = tm.C_ORATANULOIID
|
|
LEFT JOIN
|
|
(SELECT tanulo.ID TanuloId, tta.C_TANKOTELEZETT, tcso.C_OSZTALYCSOPORTID OsztalyId, ocs.C_NEV AS C_NEV, ocs.C_MUVESZETIAGID
|
|
FROM T_TANULO_OSSZES tanulo
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcso ON tcso.C_TANULOID = tanulo.ID AND tcso.TOROLT='F'
|
|
AND tcso.C_BELEPESDATUM <= GETDATE()
|
|
AND (tcso.C_KILEPESDATUM IS NULL OR tcso.C_KILEPESDATUM > GETDATE())
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcso.C_OSZTALYCSOPORTID AND ocs.TOROLT = 'F' AND (ocs.C_FELADATKATEGORIAID = :pOktNevKatTipus OR :pOktNevKatTipus IS NULL)
|
|
INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcso.ID AND tta.TOROLT='F'
|
|
) as tanugyiAdatok ON tanugyiAdatok.TanuloId = f.ID
|
|
LEFT JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = o.C_OSZTALYCSOPORTID
|
|
LEFT JOIN T_TANTARGY t ON t.ID = o.C_TANTARGYID
|
|
LEFT JOIN T_DICTIONARYITEMBASE igazolasTipus ON igazolasTipus.ID = tm.C_IGAZOLASTIPUSA
|
|
LEFT JOIN T_TANITASIORATULAJDONSAG_OSSZES onlineOra ON onlineOra.C_TANITASIORAID = o.ID AND onlineOra.TOROLT = 'F' AND onlineOra.C_ORATULAJDONSAGID = 8615 -- On-line óra
|
|
WHERE tm.TOROLT = 'F'
|
|
AND o.TOROLT = 'F'
|
|
AND tm.C_TIPUS = 1817
|
|
";
|
|
|
|
command += clause;
|
|
string commandText = command;
|
|
|
|
return GetData(commandText, parameters);
|
|
}
|
|
|
|
public DataSet GetTanulokJegyeiByErtekelesTipusExcelExport(int tanevId, int tipusId, TanuloErtekelesListPco tanuloErtekelesListPco)
|
|
{
|
|
|
|
var whereClause = new StringBuilder();
|
|
var commandParameterList = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTanevId", tanevId),
|
|
new CommandParameter("pTipusId", tipusId),
|
|
tanuloErtekelesListPco.FeladatKategoriaId.IsEntityId() ?
|
|
new CommandParameter("OktNevKatTipus", tanuloErtekelesListPco.FeladatKategoriaId.Value) :
|
|
new CommandParameter("OktNevKatTipus", DBNull.Value)
|
|
};
|
|
|
|
if (tanuloErtekelesListPco.TanuloIds?.Count > 0 && tanuloErtekelesListPco.TanuloIds.All(x => x.IsEntityId()))
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pTanuloIdsString", SqlLogic.ParseListToParameter(tanuloErtekelesListPco.TanuloIds)));
|
|
whereClause.Append(" AND tanuloErtekeles.C_TANULOID IN (SELECT value FROM STRING_SPLIT(@pTanuloIdsString, ',')) ");
|
|
}
|
|
|
|
if (tanuloErtekelesListPco.OsztalyCsoportId.HasValue)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pOsztalyCsoportId", tanuloErtekelesListPco.OsztalyCsoportId.Value));
|
|
if (tanuloErtekelesListPco.IsKellKapcsolodoCsoportok)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pKellKapcsolodoCsoportok", tanuloErtekelesListPco.IsKellKapcsolodoCsoportok));
|
|
whereClause.Append(@" AND tanuloErtekeles.C_OSZTALYCSOPORTID IN (SELECT ID FROM fnGetKapcsolodoOsztalycsoportok(:pOsztalyCsoportId))
|
|
AND EXISTS (SELECT 1
|
|
FROM
|
|
T_TANULOCSOPORT tanuloCsoport
|
|
WHERE
|
|
tanuloCsoport.TOROLT = 'F'
|
|
AND tanuloCsoport.C_OSZTALYCSOPORTID = :pOsztalyCsoportId
|
|
AND tanuloCsoport.C_TANULOID = tanuloErtekeles.C_TANULOID) ");
|
|
}
|
|
else
|
|
{
|
|
whereClause.Append(" AND tanuloErtekeles.C_OSZTALYCSOPORTID = :pOsztalyCsoportId");
|
|
}
|
|
}
|
|
if (tanuloErtekelesListPco.CsoportTipusId.HasValue)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pCsoportTipusId", tanuloErtekelesListPco.CsoportTipusId.Value));
|
|
whereClause.Append(" AND csoport.C_TIPUSA = :pCsoportTipusId");
|
|
}
|
|
if (tanuloErtekelesListPco.TantargyUids?.Count > 0)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pTantargyUidsString", SqlLogic.ParseListToParameter(tanuloErtekelesListPco.TantargyUids)));
|
|
whereClause.Append(" AND tantargy.ID IN (SELECT value FROM STRING_SPLIT(@pTantargyUidsString, ',')) ");
|
|
}
|
|
if (tanuloErtekelesListPco.ErtekeloId.HasValue)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pErtekeloId", tanuloErtekelesListPco.ErtekeloId.Value));
|
|
whereClause.Append(" AND tanarFelhasznalo.ID = :pErtekeloId");
|
|
}
|
|
if (tanuloErtekelesListPco.OsztalyzatId.HasValue)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pOsztalyzatId", tanuloErtekelesListPco.OsztalyzatId.Value));
|
|
whereClause.Append(" AND (tanuloErtekeles.C_ERTEKELESOSZTALYZATID = :pOsztalyzatId OR tanuloErtekeles.C_MAGATARTASOSZTALYZATID = :pOsztalyzatId OR tanuloErtekeles.C_SZORGALOMOSZTALYZATID = :pOsztalyzatId)");
|
|
}
|
|
if (tanuloErtekelesListPco.ErtekelesModId.HasValue)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pErtekelesModId", tanuloErtekelesListPco.ErtekelesModId.Value));
|
|
whereClause.Append(" AND tanuloErtekeles.C_ERTEKELESMODID = :pErtekelesModId");
|
|
}
|
|
if (tanuloErtekelesListPco.DatumTol.HasValue)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pDatumTol", tanuloErtekelesListPco.DatumTol.Value));
|
|
whereClause.Append(" AND tanuloErtekeles.C_DATUM >= :pDatumTol");
|
|
}
|
|
if (tanuloErtekelesListPco.DatumIg.HasValue)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pDatumIg", tanuloErtekelesListPco.DatumIg.Value.Date.AddDays(1).AddSeconds(-1)));
|
|
whereClause.Append(" AND tanuloErtekeles.C_DATUM <= :pDatumIg");
|
|
}
|
|
if (tanuloErtekelesListPco.RogzitesDatumTol.HasValue)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pRogzitesDatumTol", tanuloErtekelesListPco.RogzitesDatumTol.Value));
|
|
whereClause.Append(" AND tanuloErtekeles.C_ROGZITESDATUM >= :pRogzitesDatumTol");
|
|
}
|
|
if (tanuloErtekelesListPco.RogzitesDatumIg.HasValue)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pRogzitesDatumIg", tanuloErtekelesListPco.RogzitesDatumIg.Value.Date.AddDays(1).AddSeconds(-1)));
|
|
whereClause.Append(" AND tanuloErtekeles.C_ROGZITESDATUM <= :pRogzitesDatumIg");
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(tanuloErtekelesListPco.ErtekelesSzoveg))
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pErtekelesSzoveg", tanuloErtekelesListPco.ErtekelesSzoveg.ToLowerInvariant()));
|
|
whereClause.Append(" AND (tanuloErtekeles.C_ERTEKELESSZOVEG LIKE '%' + :pErtekelesSzoveg + '%' OR tanuloErtekeles.C_MAGATARTASSZOVEG LIKE '%' + :pErtekelesSzoveg + '%' OR tanuloErtekeles.C_SZORGALOMSZOVEG LIKE '%' + :pErtekelesSzoveg + '%')");
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(tanuloErtekelesListPco.ErtekelesTema))
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pErtekelesTema", tanuloErtekelesListPco.ErtekelesTema.ToLowerInvariant()));
|
|
whereClause.Append(" AND tanuloErtekeles.C_ERTEKELESTEMA LIKE '%' + :pErtekelesTema + '%'");
|
|
}
|
|
|
|
if (tanuloErtekelesListPco.SpecialisOsztalyzatId.IsEntityId())
|
|
{
|
|
var egyszerAdhatoTanuloErtekelesTipusIdListString = string.Join(",", tanuloErtekelesListPco.EgyszerAdhatoTanuloErtekelesTipusIdList);
|
|
var jelesValue = (int)OsztalyzatTipusEnum.jeles_5_;
|
|
switch (tanuloErtekelesListPco.SpecialisOsztalyzatId.Value)
|
|
{
|
|
//NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
|
// Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
|
case (int)SpecialisErtekelesOsztalyzatEnum.NemIrt:
|
|
whereClause.Append($@" AND (tanuloErtekeles.C_TIPUSID NOT IN ({egyszerAdhatoTanuloErtekelesTipusIdListString}) AND
|
|
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(tanuloErtekeles.C_ERTEKELESSZOVEG),CHAR(160),CHAR(32)),CHAR(9),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)) = LOWER('{TanuloErtekelesResource.NemIrt}') AND
|
|
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(tanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV),CHAR(160),CHAR(32)),CHAR(9),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)) = LOWER('{TanuloErtekelesResource.NemIrtRovidNev}'))");
|
|
break;
|
|
case (int)SpecialisErtekelesOsztalyzatEnum.Dicseret:
|
|
whereClause.Append($@" AND (tanuloErtekeles.C_TIPUSID IN ({egyszerAdhatoTanuloErtekelesTipusIdListString}) AND
|
|
tanuloErtekeles.C_ERTEKELESOSZTALYZATID = {jelesValue} AND
|
|
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(tanuloErtekeles.C_ERTEKELESTEMA),CHAR(160),CHAR(32)),CHAR(9),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)) = LOWER('{TanuloErtekelesResource.Dicseret}'))");
|
|
break;
|
|
case (int)SpecialisErtekelesOsztalyzatEnum.Kituno:
|
|
whereClause.Append($@" AND (tanuloErtekeles.C_TIPUSID IN ({egyszerAdhatoTanuloErtekelesTipusIdListString}) AND
|
|
tanuloErtekeles.C_ERTEKELESOSZTALYZATID = {jelesValue} AND
|
|
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(tanuloErtekeles.C_ERTEKELESTEMA),CHAR(160),CHAR(32)),CHAR(9),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)) = LOWER('{TanuloErtekelesResource.Kituno}'))");
|
|
break;
|
|
case (int)SpecialisErtekelesOsztalyzatEnum.Mentesitve:
|
|
whereClause.Append($@" AND (tanuloErtekeles.C_TIPUSID IN ({egyszerAdhatoTanuloErtekelesTipusIdListString}) AND
|
|
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(tanuloErtekeles.C_ERTEKELESSZOVEG),CHAR(160),CHAR(32)),CHAR(9),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)) = LOWER('{TanuloErtekelesResource.Mentesitve}') AND
|
|
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(tanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV),CHAR(160),CHAR(32)),CHAR(9),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)) = LOWER('{TanuloErtekelesResource.MentesitveRovidNev}'))");
|
|
break;
|
|
}
|
|
}
|
|
|
|
if (tanuloErtekelesListPco.FeladatKategoriaId.IsEntityId())
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pFeladatKategoriaId", tanuloErtekelesListPco.FeladatKategoriaId.Value));
|
|
whereClause.Append(" AND osztalyCsoport.C_FELADATKATEGORIAID = :pFeladatKategoriaId");
|
|
}
|
|
|
|
if (tanuloErtekelesListPco.FeladatEllatasiHelyId.IsEntityId())
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pFeladatEllatasiHelyId", tanuloErtekelesListPco.FeladatEllatasiHelyId.Value));
|
|
whereClause.Append(" AND osztalyCsoport.C_FELADATELLATASIHELYID = :pFeladatEllatasiHelyId");
|
|
}
|
|
|
|
whereClause.Append(" ORDER BY tanuloFelhasznalo.C_NYOMTATASINEV");
|
|
|
|
const string command = @"
|
|
SELECT
|
|
tanuloFelhasznalo.C_NYOMTATASINEV 'Tanuló név'
|
|
,ISNULL(tanugyiAdatok.C_NEV,'') as 'Tanuló osztálya'
|
|
,ISNULL(CONVERT(nvarchar(25), tanuloFelhasznalo.C_SZULETESIDATUM, 102),'') as 'Születési idő'
|
|
,ISNULL(tanuloFelhasznalo.C_OKTATASIAZONOSITO,'') as 'Tanuló azonosítója',
|
|
ISNULL(tantargykategoria.C_NAME, ' - ') 'Tárgy kategória',
|
|
ISNULL(tantargy.C_NEV, ' - ') 'Tantárgy',
|
|
osztalyCsoport.C_NEV 'Osztály/Csoport név',
|
|
tanarFelhasznalo.C_NYOMTATASINEV 'Pedagógus név',
|
|
ISNULL(tanuloErtekeles.C_ERTEKELESTEMA, ' - ') 'Téma',
|
|
ISNULL(ertekelesmod.C_NAME, ' - ') 'Értékelés módja',
|
|
ISNULL(osztalyzat.C_NAME, ' - ') 'Osztályzat',
|
|
osztalyzat.C_VALUE 'Jegy',
|
|
ISNULL(tanuloErtekeles.C_ERTEKELESSZOVEG, ' - ') 'Szöveges értékelés',
|
|
tanuloErtekeles.C_ERTEKELESSZAZALEK 'Százalékos értékelés',
|
|
ISNULL(magatartas.C_NAME, ' - ') 'Magatartás',
|
|
ISNULL(szorgalom.C_NAME, ' - ') 'Szorgalom',
|
|
FORMAT(tanuloErtekeles.C_DATUM, 'yyyy.MM.dd.') 'Bejegyzés dátuma',
|
|
FORMAT(tanuloErtekeles.C_ROGZITESDATUM, 'yyyy.MM.dd.') 'Rögzítés dátuma',
|
|
tantargy.C_TARGYKATEGORIA,
|
|
tanuloErtekeles.C_ERTEKELESOSZTALYZATID
|
|
FROM
|
|
T_TANULOERTEKELES_OSSZES tanuloErtekeles
|
|
INNER JOIN
|
|
T_FELHASZNALO_OSSZES tanuloFelhasznalo ON
|
|
tanuloFelhasznalo.ID = tanuloErtekeles.C_TANULOID
|
|
AND tanuloFelhasznalo.C_TANEVID = tanuloErtekeles.C_TANEVID
|
|
AND tanuloFelhasznalo.TOROLT = 'F'
|
|
LEFT JOIN
|
|
(SELECT tanulo.ID TanuloId, tta.C_TANKOTELEZETT, tcso.C_OSZTALYCSOPORTID OsztalyId, ocs.C_NEV AS C_NEV, ocs.C_MUVESZETIAGID
|
|
FROM T_TANULO_OSSZES tanulo
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcso ON tcso.C_TANULOID = tanulo.ID AND tcso.TOROLT='F'
|
|
AND tcso.C_BELEPESDATUM <= GETDATE()
|
|
AND (tcso.C_KILEPESDATUM IS NULL OR tcso.C_KILEPESDATUM > GETDATE())
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcso.C_OSZTALYCSOPORTID AND ocs.TOROLT = 'F' AND (ocs.C_FELADATKATEGORIAID = @OktNevKatTipus OR @OktNevKatTipus IS NULL)
|
|
INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcso.ID AND tta.TOROLT='F'
|
|
) as tanugyiAdatok ON tanugyiAdatok.TanuloId = tanuloFelhasznalo.ID and tanugyiAdatok.OsztalyId = tanuloErtekeles.C_OSZTALYCSOPORTID
|
|
LEFT JOIN
|
|
T_TANTARGY_OSSZES tantargy ON
|
|
tantargy.ID = tanuloErtekeles.C_TANTARGYID
|
|
AND tantargy.C_TANEVID = tanuloErtekeles.C_TANEVID
|
|
AND tantargy.TOROLT = 'F'
|
|
LEFT JOIN
|
|
T_DICTIONARYITEMBASE_OSSZES tantargykategoria ON
|
|
tantargykategoria.ID = tantargy.C_TARGYKATEGORIA
|
|
AND tantargykategoria.C_TANEVID = tanuloErtekeles.C_TANEVID
|
|
AND tantargykategoria.TOROLT = 'F'
|
|
INNER JOIN
|
|
T_OSZTALYCSOPORT_OSSZES osztalyCsoport ON
|
|
osztalyCsoport.ID = tanuloErtekeles.C_OSZTALYCSOPORTID
|
|
AND osztalyCsoport.C_TANEVID = tanuloErtekeles.C_TANEVID
|
|
AND osztalyCsoport.TOROLT = 'F'
|
|
AND (osztalyCsoport.C_FELADATKATEGORIAID = @OktNevKatTipus OR @OktNevKatTipus IS NULL)
|
|
LEFT JOIN T_CSOPORT_OSSZES csoport ON
|
|
csoport.C_ALTANEVID = tanuloErtekeles.C_TANEVID
|
|
AND csoport.TOROLT = 'F'
|
|
AND csoport.ID = osztalyCsoport.ID
|
|
INNER JOIN
|
|
T_FELHASZNALO_OSSZES tanarFelhasznalo ON
|
|
tanarFelhasznalo.ID = tanuloErtekeles.C_ERTEKELOID
|
|
AND tanarFelhasznalo.C_TANEVID = tanuloErtekeles.C_TANEVID
|
|
AND tanarFelhasznalo.TOROLT = 'F'
|
|
LEFT JOIN
|
|
T_DICTIONARYITEMBASE_OSSZES osztalyzat ON
|
|
osztalyzat.ID = tanuloErtekeles.C_ERTEKELESOSZTALYZATID
|
|
AND osztalyzat.C_TANEVID = tanuloErtekeles.C_TANEVID
|
|
AND osztalyzat.TOROLT = 'F'
|
|
LEFT JOIN
|
|
T_DICTIONARYITEMBASE_OSSZES ertekelesmod ON
|
|
ertekelesmod.ID = tanuloErtekeles.C_ERTEKELESMODID
|
|
AND ertekelesmod.C_TANEVID = tanuloErtekeles.C_TANEVID
|
|
AND ertekelesmod.TOROLT = 'F'
|
|
LEFT JOIN
|
|
T_DICTIONARYITEMBASE_OSSZES magatartas ON
|
|
magatartas.ID = tanuloErtekeles.C_MAGATARTASERTEKID
|
|
AND magatartas.C_TANEVID = tanuloErtekeles.C_TANEVID
|
|
AND magatartas.TOROLT = 'F'
|
|
LEFT JOIN
|
|
T_DICTIONARYITEMBASE_OSSZES szorgalom ON
|
|
szorgalom.ID = tanuloErtekeles.C_SZORGALOMERTEKID
|
|
AND szorgalom.C_TANEVID = tanuloErtekeles.C_TANEVID
|
|
AND szorgalom.TOROLT = 'F'
|
|
WHERE
|
|
tanuloErtekeles.C_TIPUSID = :pTipusId
|
|
AND tanuloErtekeles.C_TANEVID = :pTanevId
|
|
AND tanuloErtekeles.TOROLT = 'F'
|
|
";
|
|
|
|
string commandText = command + whereClause;
|
|
return GetData(commandText, commandParameterList);
|
|
}
|
|
|
|
#endregion
|
|
|
|
public List<int> GetElozoOranHianyzottTanulok(DateTime oraKezdetDatuma, int osztalyCsoportId)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "sp_GetElozoOranHianyzottTanulok";
|
|
|
|
command.Parameters.Add("Datum", oraKezdetDatuma.Date);
|
|
command.Parameters.Add("OraKezdete", oraKezdetDatuma);
|
|
command.Parameters.Add("OsztalyCsoportId", osztalyCsoportId);
|
|
command.Parameters.Add("HianyzasTipus", (int)MulasztasTipusEnum.hianyzas);
|
|
|
|
var ds = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
|
|
var list = ds.Tables[0].AsEnumerable()
|
|
.Select(r => r.Field<int>("TanuloID"))
|
|
.ToList();
|
|
|
|
return list;
|
|
}
|
|
}
|
|
|
|
public DataSet GetKozossegiSzolgalat(int userId)
|
|
{
|
|
const string commandText = @"
|
|
SELECT
|
|
tksz.ID as ID
|
|
,tksz.C_KEZDETE as Kezdete
|
|
,tksz.C_MEGJEGYZES as Megjegyzes
|
|
,tksz.C_ORASZAM as Oraszam
|
|
,tksz.C_VEGE as Vege
|
|
,felh.C_NYOMTATASINEV as Alkalmazott
|
|
FROM T_TANULOKOZOSSEGISZOLGALAT_OSSZES tksz
|
|
JOIN T_FELHASZNALO_OSSZES felh on felh.ID = tksz.C_FELJEGYZOID
|
|
WHERE
|
|
tksz.TOROLT = 'F' AND tksz.C_TANULOID = :pUserId
|
|
";
|
|
var prams = new List<CommandParameter> { new CommandParameter("pUserId", userId) };
|
|
var ds = this.GetData(commandText, prams);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetGondviseloUtolsoBelepes(int userId)
|
|
{
|
|
const string commandText = @"
|
|
SELECT DISTINCT
|
|
g.ID as ID
|
|
,g.C_NEV as GondviseloNev
|
|
,CONVERT(nvarchar(12), fb.C_UTOLSOBELEPES, 102) as UtolsoBelepes
|
|
FROM T_GONDVISELO g
|
|
LEFT JOIN T_FELHASZNALOBELEPES fb on fb.C_GONDVISELOID = g.ID AND fb.TOROLT = 'F'
|
|
WHERE
|
|
g.C_TANULOID = :pUserId
|
|
";
|
|
|
|
var prams = new List<CommandParameter> { new CommandParameter("pUserId", userId) };
|
|
var ds = this.GetData(commandText, prams);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetTanuloElerhetosegekTel(int tanuloId, int tanevId)
|
|
{
|
|
string commandText = $@"
|
|
SELECT
|
|
t.ID as Id
|
|
,t.C_TELEFONSZAM as Text
|
|
FROM T_TELEFON_OSSZES t
|
|
WHERE
|
|
t.C_FELHASZNALOID = @{nameof(tanuloId)}
|
|
AND t.TOROLT = 'F'
|
|
AND C_TANEVID = @{nameof(tanevId)}
|
|
";
|
|
var prams = new List<CommandParameter> { new CommandParameter(nameof(tanuloId), tanuloId), new CommandParameter(nameof(tanevId), tanevId) };
|
|
var ds = this.GetData(commandText, prams);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetTanuloElerhetosegekEmail(int tanuloId, int tanevId)
|
|
{
|
|
string commandText = $@"
|
|
SELECT
|
|
e.ID as Id
|
|
,e.C_EMAILCIM as Text
|
|
FROM T_EMAIL_OSSZES e
|
|
WHERE
|
|
e.C_FELHASZNALOID = @{nameof(tanuloId)}
|
|
AND e.TOROLT = 'F'
|
|
AND e.C_TANEVID = @{nameof(tanevId)}
|
|
";
|
|
var prams = new List<CommandParameter> { new CommandParameter(nameof(tanuloId), tanuloId), new CommandParameter(nameof(tanevId), tanevId) };
|
|
var ds = this.GetData(commandText, prams);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetCsoportbolMaTorlendoTanulok()
|
|
{
|
|
var command = @"select C_TANULOID ID,
|
|
C_OSZTALYCSOPORTID OsztCsopID
|
|
from T_TANULOCSOPORT
|
|
WHERE
|
|
TOROLT = 'F' and
|
|
C_KILEPESDATUM = cast(GETDATE() as date)
|
|
";
|
|
return this.GetData(command);
|
|
}
|
|
|
|
public DataSet GetTanulokByOsztalyfonokForDDL(int ofoId)
|
|
{
|
|
List<CommandParameter> p = new List<CommandParameter>(); ///TODO @DevKornél: refact Obj. inittel
|
|
p.Add(new CommandParameter("pOfoID", ofoId));
|
|
p.Add(new CommandParameter("OktNevKatTipus", (int)OktNevelesiKategoriaEnum.NevelesOktatas));
|
|
|
|
var command = @"select
|
|
T_FELHASZNALO.ID,
|
|
T_FELHASZNALO.C_NYOMTATASINEV Nev
|
|
FROM T_TANULOCSOPORT
|
|
inner join T_FELHASZNALO on T_FELHASZNALO.ID = T_TANULOCSOPORT.C_TANULOID and T_FELHASZNALO.TOROLT = 'F'
|
|
inner join T_OSZTALY on T_OSZTALY.ID = T_TANULOCSOPORT.C_OSZTALYCSOPORTID and T_OSZTALY.TOROLT = 'F'
|
|
INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_OSZTALY.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = @OktNevKatTipus
|
|
where T_TANULOCSOPORT.TOROLT = 'F'
|
|
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
|
|
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM > GETDATE())
|
|
and T_OSZTALY.C_OSZTALYFONOKID = :pOfoID
|
|
ORDER BY IIF(T_FELHASZNALO.C_NEVSORREND = 'T', T_FELHASZNALO.C_UTONEV + ' ' + T_FELHASZNALO.C_VEZETEKNEV, T_FELHASZNALO.C_VEZETEKNEV + ' ' + T_FELHASZNALO.C_UTONEV)";
|
|
|
|
return this.GetData(command, p);
|
|
}
|
|
|
|
public DataSet GetBesorolasTobbesModTanuloValidationItems(List<int> tanuloCsoportIdList = null)
|
|
{
|
|
List<CommandParameter> p = new List<CommandParameter>();
|
|
|
|
var command = @"
|
|
SELECT tcs.ID as 'Id'
|
|
,felhasznalo.C_NYOMTATASINEV as 'Nev'
|
|
,tcs.C_KILEPESDATUM as 'KilepesDatum'
|
|
,tcs.C_TANULOID as 'TanuloId'
|
|
,tcs.C_OSZTALYCSOPORTID as 'OsztalyCsoportId'
|
|
FROM T_TANULOCSOPORT tcs
|
|
join T_FELHASZNALO felhasznalo on felhasznalo.ID = tcs.C_TANULOID
|
|
WHERE tcs.ID in (" + string.Join(",", tanuloCsoportIdList.ToArray()) + ")";
|
|
|
|
return this.GetData(command, p);
|
|
}
|
|
|
|
public DataSet GetTanulokGondviseloiDDL(int tanuloId)
|
|
{
|
|
List<CommandParameter> p = new List<CommandParameter>(); ///TODO @DevKornél: refact Obj. inittel
|
|
p.Add(new CommandParameter("pTanuloId", tanuloId));
|
|
|
|
var command = @"
|
|
SELECT
|
|
ID
|
|
,C_NEV Nev
|
|
FROM
|
|
T_GONDVISELO_OSSZES
|
|
WHERE
|
|
TOROLT = 'F'
|
|
--AND C_AKTIV = 'T'
|
|
AND C_TANULOID = :pTanuloId
|
|
";
|
|
|
|
return this.GetData(command, p);
|
|
}
|
|
|
|
public DataSet GetTanulokFelmentesei(IEnumerable<int> tanuloIds, int tanevId, bool isFromSzervezet = false, int? tantargyId = null, int? dualisKepzesTantargyId = null)
|
|
{
|
|
var p = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTanevId", tanevId)
|
|
};
|
|
if (dualisKepzesTantargyId.HasValue)
|
|
{
|
|
tantargyId = dualisKepzesTantargyId;
|
|
}
|
|
if (tantargyId != null)
|
|
{
|
|
p.Add(new CommandParameter("pTantargyId", tantargyId));
|
|
}
|
|
|
|
var command = @"
|
|
SELECT
|
|
T_TANULOMENTESSEG_OSSZES.C_TANULOID TanuloId
|
|
,T_TANULOMENTESSEG_OSSZES.ID
|
|
,T_TANULOMENTESSEG_OSSZES.C_TANTARGYID AS TantargyId
|
|
,T_TANTARGY_OSSZES.C_NEV AS TantargyNev
|
|
,T_TANULOMENTESSEG_OSSZES.C_ERTEKELESMENTESITES AS ErtekelesMentesites
|
|
,T_TANULOMENTESSEG_OSSZES.C_ORAMENTESITES AS OraMentesites
|
|
,T_TANULOMENTESSEG_OSSZES.C_MENTESSEGOKA AS FelmentesOka
|
|
,T_TANULOMENTESSEG_OSSZES.C_KEZDETE AS Kezdete
|
|
,T_TANULOMENTESSEG_OSSZES.C_VEGE AS Vege
|
|
,T_TANULOMENTESSEG_OSSZES.C_SZOVEGESENERTEKELHETO AS SzovegesenErtekelheto
|
|
FROM T_TANULOMENTESSEG_OSSZES
|
|
INNER JOIN T_TANTARGY_OSSZES ON T_TANTARGY_OSSZES.ID = T_TANULOMENTESSEG_OSSZES.C_TANTARGYID and T_TANTARGY_OSSZES.TOROLT = 'F'
|
|
WHERE T_TANULOMENTESSEG_OSSZES.TOROLT = 'F'
|
|
AND T_TANULOMENTESSEG_OSSZES.C_TANEVID = :pTanevId
|
|
" + (tanuloIds.Any() ? "AND T_TANULOMENTESSEG_OSSZES.C_TANULOID IN (" + string.Join(",", tanuloIds.ToArray()) + ")" : string.Empty)
|
|
+ (tantargyId != null ? @" AND T_TANULOMENTESSEG_OSSZES.C_TANTARGYID " + (!isFromSzervezet ? "<>" : "=") + @" :pTantargyId " : "");
|
|
|
|
return GetData(command, p, "", "ErtekelesMentesites,OraMentesites,SzovegesenErtekelheto");
|
|
}
|
|
|
|
public DataSet GetTantargyFelosztasokByTanuloId(int tanuloId, int tanevId, int? tanarId = null, int? osztalyCsoportId = null, int? tantargyId = null, double? oraszam = null, DateTime? datum = null, int? feladatellatasihelyId = null, int? feladatKategoriaId = null)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetTantargyFelosztasokByTanuloId";
|
|
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
command.Parameters.Add("pTanuloId", tanuloId);
|
|
command.Parameters.Add("pDatum", datum);
|
|
command.Parameters.Add("pFeladatellatasihelyId", feladatellatasihelyId);
|
|
command.Parameters.Add("pFeladatKategoriaId", feladatKategoriaId);
|
|
command.Parameters.Add("pTanarId", tanarId);
|
|
command.Parameters.Add("pOsztalyCsoportId", osztalyCsoportId);
|
|
command.Parameters.Add("pTantargyId", tantargyId);
|
|
command.Parameters.Add("pOraszam", oraszam);
|
|
|
|
var dts = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(dts);
|
|
}
|
|
DataTable dt = SortingAndPaging(dts.Tables[0], GridParameters);
|
|
return dt.AsDataSet();
|
|
}
|
|
}
|
|
|
|
public List<int> GetTanuloMulasztasaiFelmentesRogziteshez(int tanuloId, int tantargyId, bool egeszEvre = false)
|
|
{
|
|
List<CommandParameter> p = new List<CommandParameter>(); ///TODO @DevKornél: refact Obj. inittel
|
|
|
|
p.Add(new CommandParameter("pTanuloId", tantargyId));
|
|
p.Add(new CommandParameter("pTanTargyId", tantargyId));
|
|
|
|
StringBuilder command = new StringBuilder(@"select
|
|
T_TANULOMULASZTAS.ID
|
|
from T_TANULOMULASZTAS
|
|
inner join T_TANITASIORA on T_TANITASIORA.ID = T_TANULOMULASZTAS.C_TANITASIORAKID and T_TANITASIORA.TOROLT = 'F'
|
|
inner join T_TANULOMENTESSEG on T_TANULOMENTESSEG.C_TANULOID = T_TANULOMULASZTAS.C_ORATANULOIID and
|
|
T_TANULOMENTESSEG.C_TANTARGYID = T_TANITASIORA.C_TANTARGYID and
|
|
T_TANULOMENTESSEG.TOROLT = 'F'
|
|
where T_TANULOMULASZTAS.TOROLT = 'F'
|
|
and T_TANULOMULASZTAS.C_ORATANULOIID = :pTanuloId
|
|
and T_TANITASIORA.C_TANTARGYID = :pTanTargyId ");
|
|
|
|
if (egeszEvre)
|
|
{
|
|
command.Append(@" and (T_TANULOMENTESSEG.C_KEZDETE is null and
|
|
T_TANULOMENTESSEG.C_VEGE is null and
|
|
T_TANULOMENTESSEG.C_TANEVID = T_TANITASIORA.C_TANEVID) ");
|
|
}
|
|
else
|
|
{
|
|
command.Append(@" and ((T_TANULOMENTESSEG.C_KEZDETE is not null and T_TANULOMENTESSEG.C_KEZDETE <= T_TANITASIORA.C_ORAKEZDETE) or
|
|
(T_TANULOMENTESSEG.C_VEGE is not null and T_TANULOMENTESSEG.C_VEGE >= T_TANITASIORA.C_ORAVEGE)) ");
|
|
}
|
|
|
|
var ds = this.GetData(command.ToString(), p);
|
|
|
|
return ds.Tables[0].Rows.Count > 0 ? ds.Tables[0].AsEnumerable().Select(x => x.Field<int>("ID")).ToList() : new List<int>();
|
|
}
|
|
|
|
#region Besorolás listák
|
|
|
|
public DataSet GetTanulokEsOsztalyokCsoportokGrid(BesorolasSearchPCO pco, bool isCsoport = false)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetTanulokEsOsztalyokCsoportokGrid";
|
|
|
|
command.Parameters.Add("pTanevId", pco.TanevId);
|
|
command.Parameters.Add("pTanuloSrc", pco.TanuloSrc);
|
|
if (pco.OsztalyId.HasValue)
|
|
{
|
|
command.Parameters.Add("pOsztalyId", pco.OsztalyId);
|
|
}
|
|
else
|
|
{
|
|
command.Parameters.Add("pOsztalyId", DBNull.Value);
|
|
}
|
|
if (pco.CsoportId.HasValue)
|
|
{
|
|
command.Parameters.Add("pCsoportId", pco.CsoportId);
|
|
}
|
|
else
|
|
{
|
|
command.Parameters.Add("pCsoportId", DBNull.Value);
|
|
}
|
|
if (pco.OktNevelesiKategoriaId.HasValue)
|
|
{
|
|
command.Parameters.Add("pFeladatKategoriaId", pco.OktNevelesiKategoriaId.Value);
|
|
}
|
|
else
|
|
{
|
|
command.Parameters.Add("pFeladatKategoriaId", DBNull.Value);
|
|
}
|
|
command.Parameters.Add("pBelepesiDatumTol", pco.BelepesiDatumTol);
|
|
command.Parameters.Add("pBelepesiDatumIg", pco.BelepesiDatumIg);
|
|
command.Parameters.Add("pKilepesiDatumTol", pco.KilepesiDatumTol);
|
|
command.Parameters.Add("pKilepesiDatumIg", pco.KilepesiDatumIg);
|
|
if (pco.ZaradekokSzamaTol.HasValue)
|
|
{
|
|
command.Parameters.Add("pZaradekokSzamaTol", pco.ZaradekokSzamaTol.Value);
|
|
}
|
|
else
|
|
{
|
|
command.Parameters.Add("pZaradekokSzamaTol", DBNull.Value);
|
|
}
|
|
if (pco.ZaradekokSzamaIg.HasValue)
|
|
{
|
|
command.Parameters.Add("pZaradekokSzamaIg", pco.ZaradekokSzamaIg.Value);
|
|
}
|
|
else
|
|
{
|
|
command.Parameters.Add("pZaradekokSzamaIg", DBNull.Value);
|
|
}
|
|
if (pco.KiVagyAtSorolasiZaradek.HasValue)
|
|
{
|
|
command.Parameters.Add("pKiVagyAtSorolasiZaradek", pco.KiVagyAtSorolasiZaradek.Value == 1);
|
|
}
|
|
else
|
|
{
|
|
command.Parameters.Add("pKiVagyAtSorolasiZaradek", DBNull.Value);
|
|
}
|
|
if (pco.NaplosorszamTol.HasValue)
|
|
{
|
|
command.Parameters.Add("pNaplosorszamTol", pco.NaplosorszamTol.Value);
|
|
}
|
|
else
|
|
{
|
|
command.Parameters.Add("pNaplosorszamTol", DBNull.Value);
|
|
}
|
|
if (pco.NaplosorszamIg.HasValue)
|
|
{
|
|
command.Parameters.Add("pNaplosorszamIg", pco.NaplosorszamIg.Value);
|
|
}
|
|
else
|
|
{
|
|
command.Parameters.Add("pNaplosorszamIg", DBNull.Value);
|
|
}
|
|
command.Parameters.Add("pTorzslapszam", pco.Torzslapszam);
|
|
command.Parameters.Add("pKileptetesiDatumTol", pco.KileptetesiDatumTol);
|
|
command.Parameters.Add("pKileptetesiDatumIg", pco.KileptetesiDatumIg);
|
|
command.Parameters.Add("pUtolsoModositasDatumTol", pco.UtolsoModositasDatumTol);
|
|
command.Parameters.Add("pUtolsoModositasDatumIg", pco.UtolsoModositasDatumIg);
|
|
command.Parameters.Add("pIsKiirt", pco.IsKiirt);
|
|
command.Parameters.Add("pIsZaradekBontott", pco.IsZaradekBontott);
|
|
command.Parameters.Add("pIsExport", pco.IsExport);
|
|
command.Parameters.Add("pIsImport", pco.IsImport);
|
|
command.Parameters.Add("pIsCsoport", isCsoport);
|
|
var dts = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(dts);
|
|
}
|
|
DataTable dt = SortingAndPaging(dts.Tables[0], GridParameters);
|
|
return dt.AsDataSet();
|
|
}
|
|
}
|
|
|
|
public DataSet GetNemBesoroltTanulok()
|
|
{
|
|
List<CommandParameter> parameters = new List<CommandParameter>();
|
|
|
|
var command = @"
|
|
SELECT
|
|
t.ID as ID
|
|
,f.C_NYOMTATASINEV as TanuloNev
|
|
,IIF(f.C_NEVSORREND = 'F',
|
|
f.C_VEZETEKNEV + ' ' + f.C_UTONEV,
|
|
f.C_UTONEV + ' ' + f.C_VEZETEKNEV) AS NevElotagNelkul
|
|
,f.C_SZULETESIDATUM as SzuletesiIdo
|
|
,f.C_SZULETESIHELY as SzuletesiHely
|
|
,f.C_ANYJANEVE as AnyjaNeve
|
|
FROM T_TANULO t
|
|
INNER JOIN T_FELHASZNALO f ON f.ID = t.ID AND f.TOROLT = 'F'
|
|
LEFT JOIN T_TANULOCSOPORT tcs ON tcs.C_TANULOID = t.ID AND tcs.TOROLT = 'F'
|
|
WHERE
|
|
t.TOROLT = 'F' AND tcs.ID IS NULL
|
|
";
|
|
|
|
return this.GetData(command, parameters);
|
|
}
|
|
|
|
#endregion
|
|
|
|
public void UpdateTanuloCsoportBesorolasDatum(List<string> ids, int userId/*, DateTime aktTanevOkt1Datum*/, DateTime aktTanevSzept1Datum)
|
|
{
|
|
string whereCondition = string.Empty;
|
|
bool isFirstItem = true;
|
|
foreach (var item in ids)
|
|
{
|
|
if (isFirstItem)
|
|
{
|
|
whereCondition = "ID = " + item;
|
|
isFirstItem = false;
|
|
}
|
|
else
|
|
{
|
|
whereCondition += " OR ID = " + item;
|
|
}
|
|
}
|
|
|
|
var commandText = $@"
|
|
UPDATE
|
|
T_TANULOCSOPORT
|
|
SET
|
|
C_BELEPESDATUM = :pAktTanevSzept1Datum,
|
|
SERIAL = SERIAL + 1,
|
|
LASTCHANGED = GETDATE(),
|
|
MODIFIER = :pUserId
|
|
WHERE
|
|
TOROLT = 'F' AND
|
|
/*C_BELEPESDATUM < :pAktTanevOkt1Datum AND*/
|
|
(
|
|
{whereCondition}
|
|
)";
|
|
|
|
using (SDACommand command = DAUtil.CreateCommand(commandText))
|
|
{
|
|
/*command.Parameters.Add("pAktTanevOkt1Datum", SDADBType.DateTime).Value = aktTanevOkt1Datum;*/
|
|
command.Parameters.Add("pAktTanevSzept1Datum", SDADBType.DateTime).Value = aktTanevSzept1Datum;
|
|
command.Parameters.Add("pUserId", userId);
|
|
|
|
command.ExecuteNonQuery();
|
|
}
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public DataSet GetTanulokWithOutBelepesWithGondviselo(int intezmenyId, int tanevId, List<int> tanuloIdList, bool torolt = false)
|
|
{
|
|
var paramlist = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTorolt", torolt ? 'T' : 'F'),
|
|
new CommandParameter("pIntezmenyId", intezmenyId),
|
|
new CommandParameter("pTanevId", tanevId)
|
|
,new CommandParameter("OktNevKatTipus", (int)OktNevelesiKategoriaEnum.NevelesOktatas)
|
|
};
|
|
string commandText = @"
|
|
SELECT
|
|
fh.ID C_TANULOID,
|
|
fh.C_NYOMTATASINEV C_TANULONEV,
|
|
fh.C_OKTATASIAZONOSITO C_OKTATASIAZONOSITO,
|
|
fh.C_SZULETESIDATUM C_SZULETESIDATUM,
|
|
tanuloOsztalyCsoport.C_NEV C_OSZTALYNEV,
|
|
NULL C_BEJELENTKEZESINEV,
|
|
NULL C_GONDVISELOID
|
|
FROM T_FELHASZNALO fh
|
|
INNER JOIN T_TANULO tanulo ON tanulo.ID = fh.ID
|
|
LEFT JOIN (
|
|
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_NEV
|
|
FROM T_TANULOCSOPORT tanuloCsoport
|
|
INNER JOIN T_OSZTALY osztaly ON osztaly.ID = tanuloCsoport.C_OSZTALYCSOPORTID
|
|
INNER JOIN T_OSZTALYCSOPORT osztalyCsoport ON osztalyCsoport.ID = osztaly.ID AND osztalyCsoport.C_FELADATKATEGORIAID = @OktNevKatTipus
|
|
WHERE tanuloCsoport.TOROLT = 'F' AND tanuloCsoport.C_KILEPESDATUM IS NULL
|
|
) tanuloOsztalyCsoport ON tanuloOsztalyCsoport.C_TANULOID = tanulo.ID
|
|
WHERE NOT EXISTS (SELECT 1 FROM T_FELHASZNALOBELEPES fb WHERE fb.C_FELHASZNALOID = fh.ID AND fb.C_GONDVISELOID IS NULL AND TOROLT = :pTorolt )
|
|
AND EXISTS (SELECT 1 FROM T_FELHASZNALOBELEPES fb WHERE fb.C_FELHASZNALOID = fh.ID AND fb.C_GONDVISELOID IS NOT NULL AND TOROLT = :pTorolt )
|
|
AND fh.TOROLT = :pTorolt AND fh.C_INTEZMENYID = :pIntezmenyId AND fh.C_TANEVID = :pTanevId ";
|
|
if (tanuloIdList != null && tanuloIdList.Count > 0)
|
|
{
|
|
commandText += $"AND tanulo.ID IN ( ";
|
|
commandText += string.Join(",", tanuloIdList);
|
|
commandText += $")";
|
|
}
|
|
DataSet ds = GetData(commandText, paramlist);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetTanulokForBelepesiAzonositoGeneralas(int intezmenyId, int tanevId, List<int> tanuloIdList, bool torolt = false, bool csakAkiknekNincsAzonositojuk = true, bool toroltFelhasznaloBelepes = false)
|
|
{
|
|
var paramlist = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTorolt", torolt ? 'T' : 'F'),
|
|
new CommandParameter("pIntezmenyId", intezmenyId),
|
|
new CommandParameter("pTanevId", tanevId)
|
|
};
|
|
string commandText = @"
|
|
SELECT distinct
|
|
felhasznalo.ID C_TANULOID,
|
|
felhasznalo.C_NYOMTATASINEV C_TANULONEV,
|
|
felhasznalo.C_OKTATASIAZONOSITO C_OKTATASIAZONOSITO,
|
|
felhasznalo.C_SZULETESIDATUM C_SZULETESIDATUM,
|
|
STUFF((
|
|
SELECT distinct ', ' + ocs.C_NEV
|
|
FROM T_TANULOCSOPORT tcs
|
|
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID
|
|
INNER JOIN T_OSZTALY o ON o.ID = ocs.ID
|
|
WHERE tanulo.ID = tcs.C_TANULOID
|
|
AND tcs.TOROLT = 'F'
|
|
AND tcs.C_TANEVID = @pTanevId
|
|
" + (!toroltFelhasznaloBelepes ? @" AND tcs.C_KILEPESDATUM IS NULL " : @" ") +
|
|
@"FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 2, '') AS C_OSZTALYNEV,
|
|
felhasznaloBelepes.C_BEJELENTKEZESINEV C_BEJELENTKEZESINEV,
|
|
felhasznaloBelepes.C_GONDVISELOID C_GONDVISELOID
|
|
FROM
|
|
T_FELHASZNALO felhasznalo
|
|
INNER JOIN
|
|
T_TANULO tanulo ON
|
|
tanulo.ID = felhasznalo.ID
|
|
LEFT JOIN (
|
|
SELECT
|
|
C_TANULOID,
|
|
C_OSZTALYCSOPORTID
|
|
FROM
|
|
T_TANULOCSOPORT tanuloCsoport
|
|
INNER JOIN
|
|
T_OSZTALY osztaly ON
|
|
osztaly.ID = tanuloCsoport.C_OSZTALYCSOPORTID
|
|
WHERE
|
|
tanuloCsoport.TOROLT = 'F' AND
|
|
tanuloCsoport.C_KILEPESDATUM IS NULL
|
|
) tanuloOsztalyCsoport ON
|
|
tanuloOsztalyCsoport.C_TANULOID = tanulo.ID
|
|
LEFT JOIN
|
|
T_FELHASZNALOBELEPES_OSSZES felhasznaloBelepes ON
|
|
felhasznaloBelepes.C_FELHASZNALOID = felhasznalo.ID
|
|
";
|
|
if (!toroltFelhasznaloBelepes)
|
|
commandText += " AND felhasznaloBelepes.TOROLT = 'F'";
|
|
|
|
commandText += @"WHERE
|
|
felhasznalo.C_INTEZMENYID = @pIntezmenyId AND
|
|
felhasznalo.C_TANEVID = @pTanevId AND
|
|
felhasznalo.TOROLT = @pTorolt AND
|
|
tanulo.TOROLT = @pTorolt ";
|
|
if (csakAkiknekNincsAzonositojuk)
|
|
{
|
|
commandText += $@"AND (felhasznalo.ID NOT IN (
|
|
SELECT
|
|
C_FELHASZNALOID
|
|
FROM
|
|
T_FELHASZNALOBELEPES_OSSZES belepes
|
|
WHERE
|
|
belepes.TOROLT = :pTorolt AND belepes.C_GONDVISELOID IS NULL)
|
|
OR felhasznaloBelepes.ID IS NULL)";
|
|
}
|
|
if (tanuloIdList != null && tanuloIdList.Count > 0)
|
|
{
|
|
commandText += $"AND tanulo.ID IN ( ";
|
|
foreach (var id in tanuloIdList)
|
|
{
|
|
commandText += $"{id},";
|
|
}
|
|
commandText = commandText.Substring(0, commandText.Length - 1);
|
|
commandText += $")";
|
|
}
|
|
DataSet ds = GetData(commandText, paramlist);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetTanulokGondviseloIdvalForBelepesiAzonositoGeneralas(int intezmenyId, int tanevId, List<int> tanuloIdList, bool torolt = false, bool csakAkiknekNincsAzonositojuk = true)
|
|
{
|
|
var paramlist = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTorolt", torolt ? 'T' : 'F'),
|
|
new CommandParameter("pIntezmenyId", intezmenyId),
|
|
new CommandParameter("pTanevId", tanevId)
|
|
,new CommandParameter("OktNevKatTipus", (int)OktNevelesiKategoriaEnum.NevelesOktatas)
|
|
};
|
|
|
|
string commandText = @"
|
|
SELECT
|
|
felhasznalo.ID C_TANULOID,
|
|
felhasznalo.C_NYOMTATASINEV C_TANULONEV,
|
|
felhasznalo.C_OKTATASIAZONOSITO C_OKTATASIAZONOSITO,
|
|
felhasznalo.C_SZULETESIDATUM C_SZULETESIDATUM,
|
|
gondviselo.ID C_GONDVISELOID,
|
|
gondviselo.C_NEV C_GONDVISELONEV,
|
|
felhasznaloBelepes.C_GONDVISELOID C_BELEPESGONDVISELOID,
|
|
felhasznaloBelepes.C_BEJELENTKEZESINEV C_BEJELENTKEZESINEV,
|
|
osztalyCsoport.C_NEV C_OSZTALYNEV
|
|
FROM
|
|
T_FELHASZNALO felhasznalo
|
|
INNER JOIN
|
|
T_GONDVISELO gondviselo ON
|
|
gondviselo.C_TANULOID = felhasznalo.ID
|
|
LEFT JOIN
|
|
T_FELHASZNALOBELEPES felhasznaloBelepes ON
|
|
felhasznaloBelepes.C_GONDVISELOID = gondviselo.ID
|
|
AND felhasznaloBelepes.TOROLT = :pTorolt
|
|
LEFT JOIN (
|
|
SELECT
|
|
C_TANULOID,
|
|
C_OSZTALYCSOPORTID
|
|
FROM
|
|
T_TANULOCSOPORT tanuloCsoport
|
|
INNER JOIN
|
|
T_OSZTALY osztaly ON
|
|
osztaly.ID = tanuloCsoport.C_OSZTALYCSOPORTID
|
|
WHERE
|
|
tanuloCsoport.TOROLT = 'F' AND
|
|
tanuloCsoport.C_KILEPESDATUM IS NULL
|
|
) tanuloOsztalyCsoport ON
|
|
tanuloOsztalyCsoport.C_TANULOID = felhasznalo.ID
|
|
LEFT JOIN
|
|
T_OSZTALYCSOPORT osztalyCsoport ON
|
|
osztalyCsoport.ID = tanuloOsztalyCsoport.C_OSZTALYCSOPORTID AND osztalyCsoport.C_FELADATKATEGORIAID = @OktNevKatTipus
|
|
WHERE
|
|
felhasznalo.C_INTEZMENYID = :pIntezmenyId AND
|
|
felhasznalo.C_TANEVID = :pTanevId AND
|
|
felhasznalo.TOROLT = :pTorolt AND
|
|
gondviselo.TOROLT = :pTorolt ";
|
|
if (csakAkiknekNincsAzonositojuk)
|
|
{
|
|
commandText += @"AND felhasznaloBelepes.C_BEJELENTKEZESINEV IS NULL";
|
|
}
|
|
if (tanuloIdList != null && tanuloIdList.Count > 0)
|
|
{
|
|
commandText += $"AND gondviselo.C_TANULOID IN ( ";
|
|
foreach (var id in tanuloIdList)
|
|
{
|
|
commandText += $"{id},";
|
|
}
|
|
commandText = commandText.Substring(0, commandText.Length - 1);
|
|
commandText += $")";
|
|
}
|
|
DataSet ds = GetData(commandText, paramlist);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetTanulokOktatasiAzonositoja(int intezmenyId, int tanevId, bool torolt = false)
|
|
{
|
|
var paramlist = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTorolt", torolt ? 'T' : 'F'),
|
|
new CommandParameter("pIntezmenyId", intezmenyId),
|
|
new CommandParameter("pTanevId", tanevId)
|
|
};
|
|
|
|
const string commandText = @"
|
|
SELECT
|
|
felhasznalo.ID C_TANULOID,
|
|
felhasznalo.C_OKTATASIAZONOSITO C_OKTATASIAZONOSITO,
|
|
felhasznalo.C_NYOMTATASINEV C_NYOMTATASINEV,
|
|
felhasznalo.C_ANYJANEVE C_ANYJANEVE,
|
|
felhasznalo.C_SZULETESIHELY C_SZULETESIHELY,
|
|
felhasznalo.C_SZULETESIDATUM C_SZULETESIDATUM
|
|
FROM
|
|
T_FELHASZNALO_OSSZES felhasznalo
|
|
INNER JOIN
|
|
T_TANULO_OSSZES tanulo ON
|
|
tanulo.C_ALINTEZMENYID = felhasznalo.C_INTEZMENYID AND
|
|
tanulo.C_ALTANEVID = felhasznalo.C_TANEVID AND
|
|
tanulo.TOROLT = felhasznalo.TOROLT AND
|
|
tanulo.ID = felhasznalo.ID
|
|
WHERE
|
|
felhasznalo.C_INTEZMENYID = :pIntezmenyId AND
|
|
felhasznalo.C_TANEVID = :pTanevId AND
|
|
felhasznalo.TOROLT = :pTorolt
|
|
";
|
|
DataSet ds = GetData(commandText, paramlist);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetTanulokForJelszoReset(int intezmenyId, int tanevId)
|
|
{
|
|
var paramlist = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pIntezmenyId", intezmenyId),
|
|
new CommandParameter("pTanevId", tanevId)
|
|
};
|
|
|
|
string commandText = @"
|
|
SELECT
|
|
felhasznalo.ID C_TANULOID
|
|
,belepes.C_BEJELENTKEZESINEV C_BEJELENTKEZESINEV
|
|
,felhasznalo.C_SZULETESIDATUM C_SZULETESIDATUM
|
|
FROM T_FELHASZNALO felhasznalo
|
|
INNER JOIN T_TANULO tanulo ON tanulo.ID = felhasznalo.ID
|
|
INNER JOIN T_FELHASZNALOBELEPES belepes ON belepes.C_FELHASZNALOID = felhasznalo.ID
|
|
WHERE
|
|
felhasznalo.C_INTEZMENYID = :pIntezmenyId AND
|
|
felhasznalo.C_TANEVID = :pTanevId AND
|
|
tanulo.TOROLT = 'F' and felhasznalo.TOROLT = 'F' and belepes.TOROLT = 'F' and belepes.C_GONDVISELOID is null
|
|
";
|
|
|
|
DataSet ds = GetData(commandText, paramlist);
|
|
return ds;
|
|
}
|
|
|
|
public void UpdateTanulokNKTesSZKTSzakkepzesesAdatok(string tanulokIdString, SzakkepzesesAdatokPCO szakkepzesesAdatok, bool isSzakkepzesesUpdate, bool isNKTSzakkepzesesUpdate)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspUpdateTanulokNKTesSZKTSzakkepzesesAdatok";
|
|
|
|
command.Parameters.Add(nameof(tanulokIdString), tanulokIdString);
|
|
command.Parameters.Add(nameof(isSzakkepzesesUpdate), isSzakkepzesesUpdate);
|
|
command.Parameters.Add(nameof(isNKTSzakkepzesesUpdate), isNKTSzakkepzesesUpdate);
|
|
command.Parameters.Add(nameof(szakkepzesesAdatok.SzakiranyNKTTipusId), szakkepzesesAdatok.SzakiranyNKTTipusId);
|
|
command.Parameters.Add(nameof(szakkepzesesAdatok.SzakkepesitesNKTTipusId), szakkepzesesAdatok.SzakkepesitesNKTTipusId);
|
|
command.Parameters.Add(nameof(szakkepzesesAdatok.TanulmanyiTeruletNKTTipusId), szakkepzesesAdatok.TanulmanyiTeruletNKTTipusId);
|
|
command.Parameters.Add(nameof(szakkepzesesAdatok.Szakmacsoport), szakkepzesesAdatok.Szakmacsoport);
|
|
command.Parameters.Add(nameof(szakkepzesesAdatok.Agazat), szakkepzesesAdatok.Agazat);
|
|
command.Parameters.Add(nameof(szakkepzesesAdatok.Szakkepesites), szakkepzesesAdatok.Szakkepesites);
|
|
command.Parameters.Add(nameof(szakkepzesesAdatok.Reszszakkepesites), szakkepzesesAdatok.Reszszakkepesites);
|
|
|
|
command.ExecuteNonQuery();
|
|
|
|
DalHelper.Commit();
|
|
}
|
|
}
|
|
|
|
public double GetKozossegiSzolgalatOsszesOraszam(int intezmenyId, int tanuloId)
|
|
{
|
|
double result;
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "sp_GetKozossegiSzolgalatOsszesOraszam";
|
|
|
|
command.Parameters.Add("pIntezmenyId", intezmenyId);
|
|
command.Parameters.Add("pTanuloId", tanuloId);
|
|
result = Convert.ToDouble(command.ExecuteScalar());
|
|
}
|
|
return result;
|
|
}
|
|
|
|
public DataSet GetTanuloGondviseloListData(int intezmenyId, int tanevId, int userId)
|
|
{
|
|
var parameterList = new List<CommandParameter> {
|
|
new CommandParameter("pIntezmenyId", intezmenyId),
|
|
new CommandParameter("pTanevId", tanevId),
|
|
new CommandParameter("pUserId", userId)
|
|
};
|
|
|
|
const string commandText = @"
|
|
SELECT
|
|
gondviselo.ID ID
|
|
,gondviselo.C_NEV Nev
|
|
,(SELECT --
|
|
C_BEJELENTKEZESINEV --
|
|
FROM --
|
|
T_FELHASZNALOBELEPES_OSSZES --
|
|
WHERE --
|
|
C_GONDVISELOID = gondviselo.ID --
|
|
AND C_INTEZMENYID = :pIntezmenyId --
|
|
AND C_TANEVID = :pTanevId --
|
|
AND TOROLT = 'F' --
|
|
) BelepesiNev
|
|
FROM
|
|
(SELECT
|
|
ID
|
|
,C_NEV
|
|
FROM
|
|
T_GONDVISELO_OSSZES
|
|
WHERE
|
|
C_TANULOID = :pUserId
|
|
AND C_INTEZMENYID = :pIntezmenyId
|
|
AND C_TANEVID = :pTanevId
|
|
AND TOROLT = 'F'
|
|
) gondviselo";
|
|
|
|
var ds = GetData(commandText, parameterList);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetTanuloModalHeader(int tanuloId)
|
|
{
|
|
var parameters = new List<CommandParameter> { new CommandParameter(nameof(tanuloId), tanuloId) };
|
|
|
|
var text = $@"
|
|
SELECT
|
|
C_NYOMTATASINEV AS Nev,
|
|
C_SZULETESIDATUM AS Szulido
|
|
FROM
|
|
T_FELHASZNALO_OSSZES
|
|
WHERE
|
|
ID = @{nameof(tanuloId)}
|
|
";
|
|
|
|
return GetData(text, parameters);
|
|
}
|
|
|
|
public DataSet GetGondviselokAdataiByOktatasiAzonosito(string oktatasiAzonosito)
|
|
{
|
|
var parameters = new List<CommandParameter> { new CommandParameter(nameof(oktatasiAzonosito), oktatasiAzonosito) };
|
|
|
|
var text = $@"
|
|
SELECT
|
|
g.C_NEV
|
|
,g.ID AS GondviseloId
|
|
,e.C_EMAILCIM
|
|
,t.ID AS TanuloId
|
|
,tanev.ID AS TanevId
|
|
,t.C_ALINTEZMENYID AS IntezmenyId
|
|
,e.C_GUID
|
|
FROM T_TANULO t
|
|
LEFT JOIN T_GONDVISELO g ON t.ID = g.C_TANULOID AND g.TOROLT = 'F'
|
|
INNER JOIN T_FELHASZNALO f ON f.ID = t.ID AND f.TOROLT = 'F'
|
|
INNER JOIN T_TANEV tanev ON tanev.ID = t.C_ALTANEVID AND tanev.C_INTEZMENYID = t.C_ALINTEZMENYID AND tanev.C_AKTIV = 'T' AND tanev.TOROLT = 'F'
|
|
LEFT JOIN T_EMAIL e ON e.C_GONDVISELOID = g.ID AND e.C_FELHASZNALOID = t.ID AND e.TOROLT = 'F' AND e.C_ISHIBASANMEGADVA = 'F' AND e.C_ALAPERTELMEZETT = 'T'
|
|
WHERE t.TOROLT = 'F'
|
|
AND f.C_OKTATASIAZONOSITO = @{nameof(oktatasiAzonosito)}
|
|
";
|
|
|
|
return GetData(text, parameters);
|
|
}
|
|
|
|
public void FollowUpTanulo(int intezmenyId, int tanevId, int kovTanevId, int tanuloId)
|
|
{
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "uspFollowUpTanulo";
|
|
|
|
command.Parameters.Add("intezmenyId", intezmenyId);
|
|
command.Parameters.Add("tanuloId", tanuloId);
|
|
command.Parameters.Add("kovetkezoTanevId", kovTanevId);
|
|
command.Parameters.Add("aktTanevId", tanevId);
|
|
|
|
command.ExecuteNonQuery();
|
|
}
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void FollowUpTanuloCim(int intezmenyId, int tanevId, int kovTanevId, int tanuloId)
|
|
{
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "uspFollowUpFelhasznaloCim";
|
|
|
|
command.Parameters.Add("intezmenyId", intezmenyId);
|
|
command.Parameters.Add("felhasznaloId", tanuloId);
|
|
command.Parameters.Add("kovetkezoTanevId", kovTanevId);
|
|
command.Parameters.Add("aktTanevId", tanevId);
|
|
|
|
command.ExecuteNonQuery();
|
|
}
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void FollowUpTanuloEmail(int intezmenyId, int tanevId, int kovTanevId, int tanuloId)
|
|
{
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "uspFollowUpFelhasznaloEmail";
|
|
|
|
command.Parameters.Add("intezmenyId", intezmenyId);
|
|
command.Parameters.Add("felhasznaloId", tanuloId);
|
|
command.Parameters.Add("kovetkezoTanevId", kovTanevId);
|
|
command.Parameters.Add("aktTanevId", tanevId);
|
|
|
|
command.ExecuteNonQuery();
|
|
}
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void FollowUpTanuloFelmentes(int intezmenyId, int tanevId, int kovTanevId, int felmentesId)
|
|
{
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "uspFollowUpTanuloFelmentes";
|
|
|
|
command.Parameters.Add("intezmenyId", intezmenyId);
|
|
command.Parameters.Add("felmentesId", felmentesId);
|
|
command.Parameters.Add("kovetkezoTanevId", kovTanevId);
|
|
command.Parameters.Add("aktTanevId", tanevId);
|
|
|
|
command.ExecuteNonQuery();
|
|
}
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void FollowUpTanuloSni(int intezmenyId, int tanevId, int kovTanevId, int tanuloSniId)
|
|
{
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "uspFollowUpTanuloSni";
|
|
|
|
command.Parameters.Add("intezmenyId", intezmenyId);
|
|
command.Parameters.Add("tanuloSniId", tanuloSniId);
|
|
command.Parameters.Add("kovetkezoTanevId", kovTanevId);
|
|
command.Parameters.Add("aktTanevId", tanevId);
|
|
|
|
command.ExecuteNonQuery();
|
|
}
|
|
DalHelper.Commit();
|
|
}
|
|
|
|
public void FollowUpTBJogviszony(int intezmenyId, int tanevId, int kovTanevId, int tanuloId)
|
|
{
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "uspFollowUpTBJogviszony";
|
|
|
|
command.Parameters.Add("IntezmenyId", intezmenyId);
|
|
command.Parameters.Add("AktTanevId", tanevId);
|
|
command.Parameters.Add("KovetkezoTanevId", kovTanevId);
|
|
command.Parameters.Add("FelhasznaloId", tanuloId);
|
|
|
|
command.ExecuteNonQuery();
|
|
}
|
|
DalHelper.Commit();
|
|
}
|
|
public void FollowUpTanuloTelefon(int intezmenyId, int tanevId, int kovTanevId, int tanuloId)
|
|
{
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "uspFollowUpFelhasznaloTelefon";
|
|
|
|
command.Parameters.Add("intezmenyId", intezmenyId);
|
|
command.Parameters.Add("felhasznaloId", tanuloId);
|
|
command.Parameters.Add("kovetkezoTanevId", kovTanevId);
|
|
command.Parameters.Add("aktTanevId", tanevId);
|
|
|
|
command.ExecuteNonQuery();
|
|
|
|
DalHelper.Commit();
|
|
}
|
|
}
|
|
|
|
#region OsztalyTanuloiAdatok
|
|
|
|
public DataSet GetTanuloiAlapadatokGrid(int tanuloId, int osztalyCsoportId, int intezmenyId, int tanevId)
|
|
{
|
|
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetTanuloiAlapadatok";
|
|
|
|
command.Parameters.Add("pIntezmenyId", intezmenyId);
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
command.Parameters.Add("pTanuloId", tanuloId);
|
|
command.Parameters.Add("pOsztalyCsoportId", osztalyCsoportId);
|
|
|
|
var ds = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
return ds;
|
|
}
|
|
}
|
|
|
|
public DataSet GetTanuloiEgyebAdatokGrid(int tanuloId, int intezmenyId, int tanevId, int? osztalyId)
|
|
{
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "sp_GetTanuloiEgyebAdatok";
|
|
|
|
command.Parameters.Add("pIntezmenyId", intezmenyId);
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
command.Parameters.Add("pTanuloId", tanuloId);
|
|
command.Parameters.Add("pOsztalyId", osztalyId);
|
|
|
|
var ds = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
return ds;
|
|
}
|
|
}
|
|
|
|
/// INFO @DevKornel: Mobil használja
|
|
public DataSet GetTanuloOsztalyCsoport(int tanuloId, int osztalyId, DateTime datum)
|
|
{
|
|
var commandParameterList = new Dictionary<string, object> { { "tanuloId", tanuloId }, { "osztalyId", osztalyId }, { "datum", datum } };
|
|
var result = GetTanuloOsztalyCsoport("sp_GetTanuloOsztalyCsoport", commandParameterList);
|
|
return result;
|
|
}
|
|
|
|
public DataSet GetTanuloOsztalyCsoport(string commandText, Dictionary<string, object> commandParameterList)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = commandText;
|
|
|
|
if (commandParameterList != null)
|
|
{
|
|
foreach (KeyValuePair<string, object> commandParameter in commandParameterList)
|
|
{
|
|
command.Parameters.Add(commandParameter.Key, commandParameter.Value);
|
|
}
|
|
}
|
|
|
|
var ds = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
|
|
DalHelper.Commit();
|
|
return ds;
|
|
}
|
|
}
|
|
|
|
public DataSet GetTanuloiGondviseloAdatokGrid(int tanuloId, int intezmenyId, int tanevId)
|
|
{
|
|
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "sp_GetTanuloiGondviseloAdatok";
|
|
command.Parameters.Add("pIntezmenyId", intezmenyId);
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
command.Parameters.Add("pTanuloId", tanuloId);
|
|
|
|
var ds = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
return ds;
|
|
}
|
|
}
|
|
#endregion OsztalyTanuloiAdatok
|
|
|
|
public DataSet GetUtkozoCsoportok(int tanuloId, DateTime belepesDatum, int tanuloCsoportId, int atsorolasCsoportId, OktNevelesiKategoriaEnum? kategoria)
|
|
{
|
|
List<CommandParameter> p = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTanuloId", tanuloId),
|
|
new CommandParameter("pBelepesDatum", belepesDatum),
|
|
new CommandParameter("pTanuloCsoportId", tanuloCsoportId),
|
|
new CommandParameter("pAtsorolasCsoportId", atsorolasCsoportId)
|
|
};
|
|
|
|
if (kategoria.HasValue)
|
|
{
|
|
p.Add(new CommandParameter(nameof(kategoria), (int)kategoria));
|
|
}
|
|
else
|
|
{
|
|
p.Add(new CommandParameter(nameof(kategoria), DBNull.Value));
|
|
}
|
|
|
|
var commandText = $@"
|
|
SELECT
|
|
ocs.C_NEV AS OsztalyCsoport,
|
|
tcs.C_BELEPESDATUM AS BelepesDatuma,
|
|
tcs.C_KILEPESDATUM AS KilepesDatuma,
|
|
f.C_NYOMTATASINEV AS TanuloNeve
|
|
FROM T_TANULOCSOPORT_OSSZES tcs
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND ocs.TOROLT = 'F' AND (ocs.C_FELADATKATEGORIAID = @{nameof(kategoria)} OR @{nameof(kategoria)} IS NULL)
|
|
INNER JOIN T_CSOPORT_OSSZES cs ON ocs.ID = cs.ID AND cs.TOROLT = 'F'
|
|
INNER JOIN T_FELHASZNALO_OSSZES f ON tcs.C_TANULOID = f.ID AND f.TOROLT = 'F'
|
|
WHERE tcs.TOROLT = 'F'
|
|
AND tcs.C_TANULOID = :pTanuloId
|
|
AND :pBelepesDatum >" + (atsorolasCsoportId == 0 ? "" : "=") + @" tcs.C_BELEPESDATUM AND (tcs.C_KILEPESDATUM IS NULL OR :pBelepesDatum <= tcs.C_KILEPESDATUM)
|
|
";
|
|
if (atsorolasCsoportId == 0)
|
|
{
|
|
commandText += @"
|
|
AND tcs.ID = :pTanuloCsoportId
|
|
";
|
|
}
|
|
else
|
|
{
|
|
commandText += @"
|
|
AND (cs.ID = :pTanuloCsoportId OR cs.ID = :pAtsorolasCsoportId)
|
|
";
|
|
}
|
|
var ds = this.GetData(commandText, p);
|
|
return ds;
|
|
}
|
|
|
|
public DataSet CloneTanulo(int tanuloId, int trgTanevId, int intezmenyId, int srcTanevId, int felhasznaloId)
|
|
{
|
|
var ds = new DataSet();
|
|
using (SDACommand command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
|
|
command.CommandText = "uspCloneTanulo";
|
|
|
|
command.Parameters.Add("intezmenyId", intezmenyId);
|
|
command.Parameters.Add("tanuloId", tanuloId);
|
|
command.Parameters.Add("trgTanevId", trgTanevId);
|
|
command.Parameters.Add("srcTanevId", srcTanevId);
|
|
command.Parameters.Add("felhasznaloId", felhasznaloId);
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
}
|
|
|
|
DalHelper.Commit();
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetTanuloDataSet(int tanevId)
|
|
{
|
|
using (var sdaCommand = new SDACommand())
|
|
{
|
|
sdaCommand.Connection = UserContext.Instance.SDAConnection;
|
|
sdaCommand.Transaction = UserContext.Instance.SDATransaction;
|
|
sdaCommand.CommandType = CommandType.StoredProcedure;
|
|
sdaCommand.CommandText = "uspGetTanuloData";
|
|
|
|
sdaCommand.Parameters.Add("pTanevId", SDADBType.Int).Value = tanevId;
|
|
|
|
var dataSet = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = sdaCommand;
|
|
adapter.Fill(dataSet);
|
|
}
|
|
|
|
SetDNAME(dataSet.Tables[0], "CimTipusId,EmailTipusId,MagantanulosaganakOkaId,TanuloEvfolyamTipusId,FelhasznaloSzuletesiOrszag,FelhasznaloAllampolgarsag1,FelhasznaloAllampolgarsag2,NemeId,TelefonTipusId");
|
|
return dataSet;
|
|
}
|
|
}
|
|
|
|
public int GetTanuloIdByOktatasiAzonosito(string oktatasiAzonosito, int tanevId)
|
|
{
|
|
var parameters = new List<CommandParameter> {
|
|
new CommandParameter(nameof(oktatasiAzonosito), oktatasiAzonosito),
|
|
new CommandParameter(nameof(tanevId), tanevId)
|
|
};
|
|
var text = $@"
|
|
SELECT t.ID as ID FROM T_FELHASZNALO_OSSZES f
|
|
JOIN T_TANULO_OSSZES t ON t.ID = f.ID
|
|
WHERE
|
|
f.C_OKTATASIAZONOSITO = @{nameof(oktatasiAzonosito)}
|
|
AND f.C_TANEVID = @{nameof(tanevId)}
|
|
AND f.TOROLT = 'F' AND t.TOROLT = 'F'
|
|
";
|
|
|
|
var result = GetData(text, parameters);
|
|
return result.Tables[0].Rows.Count > 0 ? result.Tables[0].Rows[0].Field<int>("ID") : -1;
|
|
}
|
|
|
|
public int GetKovTanevId(string oktatasiAzonosito, int tanevId)
|
|
{
|
|
var parameters = new List<CommandParameter> {
|
|
new CommandParameter(nameof(oktatasiAzonosito), oktatasiAzonosito),
|
|
new CommandParameter(nameof(tanevId), tanevId)
|
|
};
|
|
var text = $@"
|
|
SELECT ID as ID FROM T_FELHASZNALO_OSSZES
|
|
WHERE
|
|
C_OKTATASIAZONOSITO = @{nameof(oktatasiAzonosito)}
|
|
AND C_TANEVID = @{nameof(tanevId)}
|
|
AND TOROLT = 'F'
|
|
";
|
|
|
|
var result = GetData(text, parameters);
|
|
return result.Tables[0].Rows.Count > 0 ? result.Tables[0].Rows[0].Field<int>("ID") : -1;
|
|
}
|
|
|
|
//TODO: CSAK MÁSOLTAM AZ ALKALMAZOTTRÓL TANULÓHOZ ÁTÍRNI
|
|
public List<KirTanulo> SearchTanuloForKir(FelhasznaloKirSearchPco tanuloKirSearchCo, int tanevId, int tanuloId)
|
|
{
|
|
var commandText = new StringBuilder($@"
|
|
SELECT
|
|
Felhasznalo.ID AS Id
|
|
,Felhasznalo.C_OKTATASIAZONOSITO AS OktatasiAzonosito
|
|
,Felhasznalo.C_ELOTAG AS NevElotag
|
|
,Felhasznalo.C_VEZETEKNEV AS Vezeteknev
|
|
,Felhasznalo.C_UTONEV AS Utonev
|
|
,IIF(Felhasznalo.C_NEVSORREND = 'F',
|
|
Felhasznalo.C_VEZETEKNEV + ' ' + Felhasznalo.C_UTONEV,
|
|
Felhasznalo.C_UTONEV + ' ' + Felhasznalo.C_VEZETEKNEV) AS NevElotagNelkul
|
|
,Felhasznalo.C_NYOMTATASINEV AS NyomtatasiNev
|
|
,Felhasznalo.C_NEVSORREND AS NevSorrend
|
|
,IIF(Felhasznalo.C_SZULETESINEVSORREND = 'F', Felhasznalo.C_SZULETESIVEZETEKNEV, Felhasznalo.C_SZULETESIUTONEV) AS SzuletesiVezeteknev
|
|
,IIF(Felhasznalo.C_SZULETESINEVSORREND = 'F', Felhasznalo.C_SZULETESIUTONEV, Felhasznalo.C_SZULETESIVEZETEKNEV) AS SzuletesiUtonev
|
|
IIF(Felhasznalo.C_SZULETESINEVSORREND = 'F'
|
|
,Felhasznalo.C_SZULETESIVEZETEKNEV +' '+ Felhasznalo.C_SZULETESIUTONEV
|
|
,Felhasznalo.C_SZULETESIUTONEV +' '+ Felhasznalo.C_SZULETESIVEZETEKNEV) AS SzuletesiNevSorrenddel
|
|
,Felhasznalo.C_SZULETESINEV AS SzuletesiNev
|
|
,Felhasznalo.C_SZULETESINEVSORREND AS SzuletesiNevSorrend
|
|
,IIF(Felhasznalo.C_ANYJANEVESORREND = 'F', Felhasznalo.C_ANYJAVEZETEKNEVE, Felhasznalo.C_ANYJAUTONEVE) AS AnyjaNeveVezeteknev
|
|
,IIF(Felhasznalo.C_ANYJANEVESORREND = 'F', Felhasznalo.C_ANYJAUTONEVE, Felhasznalo.C_ANYJAVEZETEKNEVE) AS AnyjaNeveUtonev
|
|
IIF(Felhasznalo.C_ANYJANEVESORREND = 'F'
|
|
,Felhasznalo.C_ANYJAVEZETEKNEVE +' '+ Felhasznalo.C_ANYJAUTONEVE
|
|
,Felhasznalo.C_ANYJAUTONEVE +' '+ Felhasznalo.C_ANYJAVEZETEKNEVE) AS AnyjaNeveSorrenddel
|
|
|
|
,IIF(Felhasznalo.C_ANYJANEVESORREND = 'F', Felhasznalo.C_ANYJAVEZETEKNEVE, Felhasznalo.C_ANYJAUTONEVE) AS AnyjaVezetekNeve
|
|
,IIF(Felhasznalo.C_ANYJANEVESORREND = 'F', Felhasznalo.C_ANYJAUTONEVE, Felhasznalo.C_ANYJAVEZETEKNEVE) AS AnyjaUtoneve
|
|
,Felhasznalo.C_ANYJANEVE AS AnyjaNeve
|
|
,Felhasznalo.C_ANYJANEVESORREND AS AnyjaNeveSorrend
|
|
,Felhasznalo.C_SZULETESIDATUM AS SzuletesiDatum
|
|
,Felhasznalo.C_SZULETESIHELY AS SzuletesiHely
|
|
,SzuletesiOrszagDictionary.C_NAME AS SzuletesiOrszag
|
|
,AllampolgarsagaDictionary.C_NAME AS Allampolgarsag
|
|
,Allampolgarsaga2Dictionary.C_NAME AS Allampolgarsag2
|
|
,NemDictionary.C_NAME AS Nem
|
|
,Email.C_EMAILCIM AS Email
|
|
,Telefon.C_TELEFONSZAM AS Telefonszam
|
|
,Felhasznalo.C_TAJSZAM AS TajSzam
|
|
,Tanulo.C_SAJATOSNEVELESU AS SajatosNevelesIgenyu
|
|
,tanulo.C_BEILLESZKEDESINEHEZSEG AS BeilleszkedesselKuzd
|
|
--innentől
|
|
,tanugyiadatok.C_NYILVANTARTASKEZDETE AS JogviszonyKezdete
|
|
,tanugyiadatok.C_TANKOTELEZETTSEGVEGE AS TankotelezettsegVege
|
|
,tanugyiadatok.C_TANKOTELEZETT AS TankotelezettsegetTeljesito
|
|
,tanugyiadatok.C_JOGVISZONYATSZUNETELTETO AS JogviszonyStatusza
|
|
,tanugyiadatok.C_JOGVISZONYVARHATOBEFEJEZESE AS JogviszonyVarBefejezese
|
|
,tanugyiadatok.C_MAGANTANULO AS Magantanulo
|
|
,tanugyiadatok.C_VENDEG AS Vendegtanulo
|
|
,'LEKÉRDEZÉST JAVÍTANI' AS JogviszonyJellege
|
|
|
|
FROM [fnGetTanuloTanugyiAdatai] ( @{nameof(tanevId)}, 0, @{nameof(tanuloId)}) tanugyiadatok
|
|
LEFT JOIN T_FELHASZNALO felhasznalo ON Felhasznalo.ID = tanugyiadatok.tanuloId
|
|
LEFT JOIN T_DICTIONARYITEMBASE SzuletesiOrszagDictionary ON SzuletesiOrszagDictionary.ID = Felhasznalo.C_SZULETESIORSZAG
|
|
AND SzuletesiOrszagDictionary.TOROLT = 'F'
|
|
AND SzuletesiOrszagDictionary.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND SzuletesiOrszagDictionary.C_TANEVID = Felhasznalo.C_TANEVID
|
|
LEFT JOIN T_DICTIONARYITEMBASE AllampolgarsagaDictionary ON AllampolgarsagaDictionary.ID = Felhasznalo.C_ALLAMPOLGARSAGA
|
|
AND AllampolgarsagaDictionary.TOROLT = 'F'
|
|
AND AllampolgarsagaDictionary.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND AllampolgarsagaDictionary.C_TANEVID = Felhasznalo.C_TANEVID
|
|
LEFT JOIN T_DICTIONARYITEMBASE Allampolgarsaga2Dictionary ON Allampolgarsaga2Dictionary.ID = Felhasznalo.C_ALLAMPOLGARSAGA2
|
|
AND Allampolgarsaga2Dictionary.TOROLT = 'F'
|
|
AND Allampolgarsaga2Dictionary.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND Allampolgarsaga2Dictionary.C_TANEVID = Felhasznalo.C_TANEVID
|
|
LEFT JOIN T_EMAIL Email ON Email.C_FELHASZNALOID = Felhasznalo.ID
|
|
AND Email.C_ALAPERTELMEZETT = 'T'
|
|
AND Email.TOROLT = 'F'
|
|
AND Email.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND Email.C_TANEVID = Felhasznalo.C_TANEVID
|
|
AND Email.C_EMAILTIPUSA = 1026
|
|
LEFT JOIN T_TELEFON Telefon ON Telefon.C_FELHASZNALOID = Felhasznalo.ID
|
|
AND Telefon.C_ALAPERTELMEZETT = 'T'
|
|
AND Telefon.TOROLT = 'F'
|
|
AND Telefon.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND Telefon.C_TANEVID = Felhasznalo.C_TANEVID
|
|
AND Telefon.C_TELEFONTIPUSA = 1021
|
|
LEFT JOIN T_DICTIONARYITEMBASE NemDictionary ON NemDictionary.ID = Felhasznalo.C_NEME
|
|
AND NemDictionary.TOROLT = 'F'
|
|
AND NemDictionary.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND NemDictionary.C_TANEVID = Felhasznalo.C_TANEVID
|
|
INNER JOIN T_TANULO Tanulo ON Tanulo.Id = Felhasznalo.ID
|
|
AND Tanulo.TOROLT = 'F'
|
|
AND Tanulo.C_ALINTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND Tanulo.C_ALTANEVID = Felhasznalo.C_TANEVID
|
|
WHERE Felhasznalo.TOROLT = 'F'
|
|
AND Felhasznalo.C_TANEVID = @{nameof(tanevId)}
|
|
AND EXISTS (SELECT 1
|
|
FROM T_TANULO Tanulo
|
|
WHERE Tanulo.C_ALTANEVID = Felhasznalo.C_TANEVID
|
|
AND Tanulo.C_ALINTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND Tanulo.ID = Felhasznalo.ID)");
|
|
|
|
var commandParameterList = new List<CommandParameter>
|
|
{
|
|
new CommandParameter(nameof(tanevId), tanevId),
|
|
new CommandParameter(nameof(tanuloId), tanuloId)
|
|
};
|
|
|
|
if (!string.IsNullOrWhiteSpace(tanuloKirSearchCo.Nev))
|
|
{
|
|
commandText.Append($@" AND LOWER(Felhasznalo.C_NYOMTATASINEV) LIKE '%' + :pNev + '%'");
|
|
commandParameterList.Add(new CommandParameter("pNev", tanuloKirSearchCo.Nev.ToLowerInvariant().Replace("[", "[[]")));
|
|
}
|
|
|
|
if (tanuloKirSearchCo.SzuletesiDatumTol.HasValue)
|
|
{
|
|
commandText.Append($@" AND Felhasznalo.C_SZULETESIDATUM >= :pSzuletesiDatumTol");
|
|
commandParameterList.Add(new CommandParameter("pSzuletesiDatumTol", tanuloKirSearchCo.SzuletesiDatumTol.Value));
|
|
}
|
|
|
|
if (tanuloKirSearchCo.SzuletesiDatumIg.HasValue)
|
|
{
|
|
commandText.Append($@" AND Felhasznalo.C_SZULETESIDATUM <= :pSzuletesiDatumIg");
|
|
commandParameterList.Add(new CommandParameter("pSzuletesiDatumIg", tanuloKirSearchCo.SzuletesiDatumIg.Value));
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(tanuloKirSearchCo.OktatasiAzonosito))
|
|
{
|
|
commandText.Append($@" AND Felhasznalo.C_OKTATASIAZONOSITO LIKE :pOktatasiAzonosito + '%'");
|
|
commandParameterList.Add(new CommandParameter("pOktatasiAzonosito", tanuloKirSearchCo.OktatasiAzonosito));
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(tanuloKirSearchCo.SzuletesiHely))
|
|
{
|
|
commandText.Append($@" AND Felhasznalo.C_SZULETESIHELY LIKE :pSzuletesiHely + '%'");
|
|
commandParameterList.Add(new CommandParameter("pSzuletesiHely", tanuloKirSearchCo.SzuletesiHely));
|
|
}
|
|
|
|
return GetData(commandText.ToString(), commandParameterList)
|
|
.ToDaoList<KirTanulo>();
|
|
}
|
|
|
|
public KirTanuloAlapadatok GetTanuloAlapadatok(int tanuloId, int tanevId)
|
|
{
|
|
var commandText = new StringBuilder($@"
|
|
SELECT
|
|
Felhasznalo.C_OKTATASIAZONOSITO AS OktatasiAzonosito
|
|
,Felhasznalo.C_ELOTAG AS NevElotag
|
|
,Felhasznalo.C_VEZETEKNEV AS Vezeteknev
|
|
,Felhasznalo.C_UTONEV AS Utonev
|
|
,IIF(Felhasznalo.C_SZULETESINEVSORREND = 'F', Felhasznalo.C_SZULETESIVEZETEKNEV, Felhasznalo.C_SZULETESIUTONEV) AS SzuletesiVezeteknev
|
|
,IIF(Felhasznalo.C_SZULETESINEVSORREND = 'F', Felhasznalo.C_SZULETESIUTONEV, Felhasznalo.C_SZULETESIVEZETEKNEV) AS SzuletesiUtonev
|
|
,Felhasznalo.C_SZULETESINEV AS SzuletesiNev
|
|
,IIF(Felhasznalo.C_ANYJANEVESORREND = 'F', Felhasznalo.C_ANYJAVEZETEKNEVE, Felhasznalo.C_ANYJAUTONEVE) AS AnyjaNeveVezeteknev
|
|
,IIF(Felhasznalo.C_ANYJANEVESORREND = 'F', Felhasznalo.C_ANYJAUTONEVE, Felhasznalo.C_ANYJAVEZETEKNEVE) AS AnyjaNeveUtonev
|
|
,Felhasznalo.C_ANYJANEVE AS AnyjaNeve
|
|
,Felhasznalo.C_SZULETESIDATUM AS SzuletesiDatum
|
|
,Felhasznalo.C_SZULETESIHELY AS SzuletesiHely
|
|
,SzuletesiOrszagDictionary.C_NAME AS SzuletesiOrszag
|
|
,AllampolgarsagaDictionary.C_NAME AS Allampolgarsag
|
|
,Allampolgarsaga2Dictionary.C_NAME AS Allampolgarsag2
|
|
,NemDictionary.C_NAME AS Nem
|
|
FROM T_FELHASZNALO Felhasznalo
|
|
LEFT JOIN T_DICTIONARYITEMBASE SzuletesiOrszagDictionary ON SzuletesiOrszagDictionary.ID = Felhasznalo.C_SZULETESIORSZAG
|
|
AND SzuletesiOrszagDictionary.TOROLT = 'F'
|
|
AND SzuletesiOrszagDictionary.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND SzuletesiOrszagDictionary.C_TANEVID = Felhasznalo.C_TANEVID
|
|
LEFT JOIN T_DICTIONARYITEMBASE AllampolgarsagaDictionary ON AllampolgarsagaDictionary.ID = Felhasznalo.C_ALLAMPOLGARSAGA
|
|
AND AllampolgarsagaDictionary.TOROLT = 'F'
|
|
AND AllampolgarsagaDictionary.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND AllampolgarsagaDictionary.C_TANEVID = Felhasznalo.C_TANEVID
|
|
LEFT JOIN T_DICTIONARYITEMBASE Allampolgarsaga2Dictionary ON Allampolgarsaga2Dictionary.ID = Felhasznalo.C_ALLAMPOLGARSAGA2
|
|
AND Allampolgarsaga2Dictionary.TOROLT = 'F'
|
|
AND Allampolgarsaga2Dictionary.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND Allampolgarsaga2Dictionary.C_TANEVID = Felhasznalo.C_TANEVID
|
|
LEFT JOIN T_DICTIONARYITEMBASE NemDictionary ON NemDictionary.ID = Felhasznalo.C_NEME
|
|
AND NemDictionary.TOROLT = 'F'
|
|
AND NemDictionary.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND NemDictionary.C_TANEVID = Felhasznalo.C_TANEVID
|
|
WHERE Felhasznalo.TOROLT = 'F'
|
|
AND Felhasznalo.C_TANEVID = @{nameof(tanevId)}
|
|
AND Felhasznalo.ID = @{nameof(tanuloId)}
|
|
AND EXISTS (SELECT 1
|
|
FROM T_TANULO Tanulo
|
|
WHERE Tanulo.C_ALTANEVID = Felhasznalo.C_TANEVID
|
|
AND Tanulo.C_ALINTEZMENYID = Felhasznalo.C_INTEZMENYID
|
|
AND Tanulo.ID = Felhasznalo.ID)");
|
|
|
|
var commandParameterList = new List<CommandParameter>
|
|
{
|
|
new CommandParameter(nameof(tanevId), tanevId),
|
|
new CommandParameter(nameof(tanuloId), tanuloId)
|
|
};
|
|
|
|
return GetData(commandText.ToString(), commandParameterList)
|
|
.ToDaoList<KirTanuloAlapadatok>()
|
|
.FirstOrDefault();
|
|
|
|
}
|
|
|
|
public bool CheckOktatasiAzonosito(string oktatasiAzonosito, int tanevId, int? felhasznaloId = 0)
|
|
{
|
|
using (SDA.DataProvider.SDACommand command = new SDA.DataProvider.SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.Parameters.Add("pOktatasiAzonosito", oktatasiAzonosito);
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
command.Parameters.Add("pID", felhasznaloId);
|
|
|
|
if (felhasznaloId > 0)
|
|
{
|
|
command.CommandText = @"SELECT 1 FROM T_FELHASZNALO_OSSZES f INNER JOIN T_TANULO_OSSZES t ON t.ID = f.ID AND t.TOROLT = 'F' WHERE f.C_OKTATASIAZONOSITO = :pOktatasiAzonosito AND f.C_TANEVID = :pTanevId AND f.ID != :pID AND f.TOROLT='F'";
|
|
}
|
|
else
|
|
{
|
|
command.CommandText = @"SELECT 1 FROM T_FELHASZNALO_OSSZES f INNER JOIN T_TANULO_OSSZES t ON t.ID = f.ID AND t.TOROLT = 'F' WHERE f.C_OKTATASIAZONOSITO = :pOktatasiAzonosito AND f.C_TANEVID = :pTanevId AND f.TOROLT='F'";
|
|
}
|
|
var result = command.ExecuteScalar();
|
|
if (result != null)
|
|
return true;
|
|
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public List<int> GetTanuloOktatasiNevelesiFeladatIdList(int intezmenyId, int tanevId, int tanuloId, OktNevelesiKategoriaEnum? oktatasiNevelesiKategoria = null)
|
|
{
|
|
var parameters = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pIntezmenyId", intezmenyId),
|
|
new CommandParameter("pTanevId", tanevId),
|
|
new CommandParameter("pTanuloId", tanuloId),
|
|
new CommandParameter("pOktatasiNevelesiKategoriaId", oktatasiNevelesiKategoria != null ? (int)oktatasiNevelesiKategoria : (object)DBNull.Value)
|
|
};
|
|
|
|
const string query = @"
|
|
SELECT DISTINCT
|
|
feh.C_OKTATASINEVELESIFELADATTIPUS
|
|
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND tcs.C_BELEPESDATUM <= GETDATE()
|
|
AND tcs.C_TANEVID = ocs.C_TANEVID AND tcs.C_INTEZMENYID = ocs.C_INTEZMENYID AND tcs.TOROLT = 'F' AND tcs.C_TANULOID = :pTanuloId
|
|
INNER JOIN T_FELADATELLATASIHELY_OSSZES feh ON feh.ID = ocs.C_FELADATELLATASIHELYID
|
|
INNER JOIN T_OKTATASINEVELESIFELADAT_OSSZES onf ON onf.C_ALTANEVID = feh.C_TANEVID
|
|
AND onf.ID = feh.C_OKTATASINEVELESIFELADATTIPUS
|
|
WHERE ocs.C_TANEVID = :pTanevId
|
|
AND ocs.C_INTEZMENYID = :pIntezmenyId
|
|
AND ocs.TOROLT = 'F'
|
|
AND onf.C_FELADATKATEGORIAID = :pOktatasiNevelesiKategoriaId OR :pOktatasiNevelesiKategoriaId IS NULL
|
|
ORDER BY feh.C_OKTATASINEVELESIFELADATTIPUS";
|
|
|
|
var ds = GetData(query, parameters);
|
|
|
|
return ds.Tables[0]
|
|
.AsEnumerable()
|
|
.Select(x => x.Field<int>("C_OKTATASINEVELESIFELADATTIPUS"))
|
|
.ToList();
|
|
}
|
|
|
|
public List<KirCim> GetKirTanuloCim(int intezmenyId, int tanevId, IEnumerable<int> felhasznaloId, CimTipusEnum cimTipusEnum)
|
|
{
|
|
var inParameters = new List<string>(felhasznaloId.Count());
|
|
|
|
var commandParameterList = new List<CommandParameter>
|
|
{
|
|
new CommandParameter(nameof(intezmenyId), intezmenyId),
|
|
new CommandParameter(nameof(tanevId), tanevId)
|
|
};
|
|
|
|
foreach (int item in felhasznaloId)
|
|
{
|
|
var name = $"felhasznaloId{item}";
|
|
|
|
commandParameterList.Add(new CommandParameter(name, item));
|
|
inParameters.Add("@" + name);
|
|
}
|
|
|
|
var commandText = $@"
|
|
SELECT
|
|
Cim.C_IRANYITOSZAM AS Iranyitoszam
|
|
,Cim.C_VAROS AS Varos
|
|
,Cim.C_KOZTERULET AS KozteruletNev
|
|
,Cim.C_KOZTERULETJELLEGENEV AS KozteruletJellege
|
|
,Cim.C_HAZSZAM AS Hazszam
|
|
,Cim.C_FELHASZNALOID AS FelhasznaloId
|
|
FROM T_CIM Cim
|
|
WHERE C_FELHASZNALOID IN ({ (inParameters.Count == 0 ? "NULL" : string.Join(",", inParameters)) })
|
|
AND Cim.C_ALAPERTELMEZETT = 'T'
|
|
AND Cim.TOROLT = 'F'
|
|
AND Cim.C_INTEZMENYID = @{nameof(intezmenyId)}
|
|
AND Cim.C_TANEVID = @{nameof(tanevId)}
|
|
AND Cim.C_CIMTIPUSA = {(int)cimTipusEnum}";
|
|
|
|
return GetData(commandText, commandParameterList)
|
|
.ToDaoList<KirCim>();
|
|
}
|
|
|
|
public DataSet GetAllTanuloDataSet(int tanevId)
|
|
{
|
|
using (var sdaCommand = new SDACommand())
|
|
{
|
|
string commandText = @"
|
|
SELECT
|
|
felhasznalo.ID Id
|
|
,felhasznalo.C_NYOMTATASINEV Nev
|
|
,felhasznalo.C_ELOTAG Elotag
|
|
,felhasznalo.C_VEZETEKNEV Vezeteknev
|
|
,felhasznalo.C_UTONEV Utonev
|
|
,C_OKTATASIAZONOSITO OktatasiAzonosito
|
|
,C_SZULETESIDATUM SzuletesiDatum
|
|
,C_BEJELENTKEZESINEV FelhasznaloNev
|
|
,felhasznaloBelepes.Id FelhasznalobelepesId
|
|
,felhasznaloBelepes.C_IMPORTALT isImportalt
|
|
FROM
|
|
T_TANULO_OSSZES tanulo
|
|
INNER JOIN
|
|
T_FELHASZNALO_OSSZES felhasznalo ON tanulo.ID = felhasznalo.ID
|
|
LEFT JOIN
|
|
T_FELHASZNALOBELEPES_OSSZES felhasznaloBelepes ON felhasznaloBelepes.C_FELHASZNALOID = tanulo.ID AND felhasznaloBelepes.TOROLT = 'F' AND C_GONDVISELOID IS NULL
|
|
WHERE
|
|
tanulo.TOROLT = 'F'
|
|
AND tanulo.C_ALTANEVID = :pTanevId";
|
|
|
|
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;
|
|
|
|
var dataSet = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = sdaCommand;
|
|
adapter.Fill(dataSet);
|
|
}
|
|
|
|
DataTable dataTable = dataSet.Tables[0];
|
|
DataTable result = SortingAndPaging(dataTable, GridParameters);
|
|
|
|
return result.AsDataSet();
|
|
}
|
|
}
|
|
|
|
public DataSet GetTanuloWithBelepesselDataSet(int tanevId)
|
|
{
|
|
using (var sdaCommand = new SDACommand())
|
|
{
|
|
string commandText = @"
|
|
SELECT
|
|
felhasznalo.ID Id
|
|
,felhasznalo.C_NYOMTATASINEV Nev
|
|
,felhasznalo.C_ELOTAG Elotag
|
|
,felhasznalo.C_VEZETEKNEV Vezeteknev
|
|
,felhasznalo.C_UTONEV Utonev
|
|
,C_OKTATASIAZONOSITO OktatasiAzonosito
|
|
,C_SZULETESIDATUM SzuletesiDatum
|
|
,C_BEJELENTKEZESINEV FelhasznaloNev
|
|
,felhasznaloBelepes.C_IMPORTALT isImportalt
|
|
FROM
|
|
T_TANULO_OSSZES tanulo
|
|
INNER JOIN
|
|
T_FELHASZNALO_OSSZES felhasznalo ON tanulo.ID = felhasznalo.ID
|
|
INNER JOIN
|
|
T_FELHASZNALOBELEPES_OSSZES felhasznaloBelepes ON felhasznaloBelepes.C_FELHASZNALOID = tanulo.ID AND felhasznaloBelepes.TOROLT = 'F' AND C_GONDVISELOID IS NULL
|
|
WHERE
|
|
tanulo.TOROLT = 'F'
|
|
AND tanulo.C_ALTANEVID = :pTanevId";
|
|
|
|
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;
|
|
|
|
var dataSet = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = sdaCommand;
|
|
adapter.Fill(dataSet);
|
|
}
|
|
|
|
DataTable dataTable = dataSet.Tables[0];
|
|
DataTable result = SortingAndPaging(dataTable, GridParameters);
|
|
|
|
return result.AsDataSet();
|
|
}
|
|
}
|
|
|
|
public DataSet GetAllGondviseloDataSet(int tanevId)
|
|
{
|
|
using (var sdaCommand = new SDACommand())
|
|
{
|
|
string commandText = @"
|
|
SELECT
|
|
felhasznalo.ID Id
|
|
,felhasznalo.C_NYOMTATASINEV Nev
|
|
,felhasznalo.C_ELOTAG Elotag
|
|
,felhasznalo.C_VEZETEKNEV Vezeteknev
|
|
,felhasznalo.C_UTONEV Utonev
|
|
,C_OKTATASIAZONOSITO OktatasiAzonosito
|
|
,C_SZULETESIDATUM SzuletesiDatum
|
|
,C_BEJELENTKEZESINEV FelhasznaloNev
|
|
,felhasznaloBelepes.Id FelhasznalobelepesId
|
|
,felhasznaloBelepes.C_IMPORTALT isImportalt
|
|
,gondviselo.C_NEV GondviseloNev
|
|
FROM
|
|
T_TANULO_OSSZES tanulo
|
|
INNER JOIN
|
|
T_GONDVISELO_OSSZES gondviselo ON gondviselo.C_TANULOID = tanulo.ID AND gondviselo.TOROLT = 'F'
|
|
INNER JOIN
|
|
T_FELHASZNALO_OSSZES felhasznalo ON tanulo.ID = felhasznalo.ID
|
|
LEFT JOIN
|
|
T_FELHASZNALOBELEPES_OSSZES felhasznaloBelepes ON felhasznaloBelepes.C_FELHASZNALOID = gondviselo.ID AND felhasznaloBelepes.TOROLT = 'F' AND C_GONDVISELOID IS NULL
|
|
WHERE
|
|
tanulo.TOROLT = 'F'
|
|
AND tanulo.C_ALTANEVID = :pTanevId";
|
|
|
|
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;
|
|
|
|
var dataSet = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = sdaCommand;
|
|
adapter.Fill(dataSet);
|
|
}
|
|
|
|
DataTable dataTable = dataSet.Tables[0];
|
|
DataTable result = SortingAndPaging(dataTable, GridParameters);
|
|
|
|
return result.AsDataSet();
|
|
}
|
|
}
|
|
|
|
public DataSet GetGondviseloWithBelepesselDataSet(int tanevId)
|
|
{
|
|
using (var sdaCommand = new SDACommand())
|
|
{
|
|
string commandText = @"
|
|
SELECT
|
|
felhasznalo.ID Id
|
|
,felhasznalo.C_NYOMTATASINEV Nev
|
|
,felhasznalo.C_ELOTAG Elotag
|
|
,felhasznalo.C_VEZETEKNEV Vezeteknev
|
|
,felhasznalo.C_UTONEV Utonev
|
|
,C_OKTATASIAZONOSITO OktatasiAzonosito
|
|
,C_SZULETESIDATUM SzuletesiDatum
|
|
,C_BEJELENTKEZESINEV FelhasznaloNev
|
|
,felhasznaloBelepes.Id FelhasznalobelepesId
|
|
,felhasznaloBelepes.C_IMPORTALT isImportalt
|
|
,gondviselo.C_NEV GondviseloNev
|
|
FROM
|
|
T_TANULO_OSSZES tanulo
|
|
INNER JOIN
|
|
T_GONDVISELO_OSSZES gondviselo ON gondviselo.C_TANULOID = tanulo.ID AND gondviselo.TOROLT = 'F'
|
|
INNER JOIN
|
|
T_FELHASZNALO_OSSZES felhasznalo ON tanulo.ID = felhasznalo.ID
|
|
INNER JOIN
|
|
T_FELHASZNALOBELEPES_OSSZES felhasznaloBelepes ON felhasznaloBelepes.C_FELHASZNALOID = gondviselo.ID AND felhasznaloBelepes.TOROLT = 'F' AND C_GONDVISELOID IS NULL
|
|
WHERE
|
|
tanulo.TOROLT = 'F'
|
|
AND tanulo.C_ALTANEVID = :pTanevId";
|
|
|
|
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;
|
|
|
|
var dataSet = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = sdaCommand;
|
|
adapter.Fill(dataSet);
|
|
}
|
|
|
|
DataTable dataTable = dataSet.Tables[0];
|
|
DataTable result = SortingAndPaging(dataTable, GridParameters);
|
|
|
|
return result.AsDataSet();
|
|
}
|
|
}
|
|
|
|
public bool CheckTanuloNevUniqueLEP(int tanevId, string nev)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
|
|
command.Parameters.Add("pNev", nev);
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
|
|
command.CommandText = @"
|
|
IF EXISTS
|
|
(
|
|
SELECT 1
|
|
FROM T_FELHASZNALO_OSSZES
|
|
WHERE C_NYOMTATASINEV = :pNev
|
|
AND C_TANEVID = :pTanevId
|
|
AND TOROLT = 'F'
|
|
)
|
|
SELECT 1
|
|
ELSE
|
|
SELECT 0
|
|
";
|
|
|
|
return Convert.ToBoolean(command.ExecuteScalar());
|
|
}
|
|
}
|
|
|
|
public bool IsTanulo(int felhasznaloId)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
|
|
command.Parameters.Add("pFelhasznaloId", felhasznaloId);
|
|
|
|
command.CommandText = @"
|
|
IF EXISTS
|
|
(
|
|
SELECT 1
|
|
FROM T_TANULO_OSSZES
|
|
WHERE ID = :pFelhasznaloId
|
|
AND TOROLT = 'F'
|
|
)
|
|
SELECT 1
|
|
ELSE
|
|
SELECT 0
|
|
";
|
|
|
|
return Convert.ToBoolean(command.ExecuteScalar());
|
|
}
|
|
}
|
|
|
|
public bool HasOsztalyBasorolas(int tanuloId)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
|
|
command.Parameters.Add("tanuloId", tanuloId);
|
|
|
|
command.CommandText = @"
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM T_TANULOCSOPORT_OSSZES TanuloCsoport
|
|
WHERE TanuloCsoport.TOROLT = 'F'
|
|
AND TanuloCsoport.C_TANULOID = @tanuloId
|
|
AND EXISTS (SELECT 1 FROM T_OSZTALY Osztaly WHERE Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID AND Osztaly.TOROLT = 'F'))
|
|
SELECT 1
|
|
ELSE
|
|
SELECT 0";
|
|
|
|
return Convert.ToBoolean(command.ExecuteScalar());
|
|
}
|
|
}
|
|
|
|
public DataSet GetSzakkepzesiJuttatasokTanulok(SzakkepzesiJuttatasokTanuloPCO pco)
|
|
{
|
|
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 = "uspGetSzakkepzesiJuttatasokTanulok";
|
|
|
|
command.Parameters.Add("pTanevId", pco.TanevId);
|
|
command.Parameters.Add("pIntezmenyId", pco.IntezmenyId);
|
|
command.Parameters.Add("pDatum", pco.LekerdezesNapja);
|
|
command.Parameters.Add("pJuttatasTipus", SDADBType.Int).Value = pco.JuttatasTipusId;
|
|
command.Parameters.Add("pOsszevonas", pco.HonapOsszevonasok);
|
|
if (!string.IsNullOrWhiteSpace(pco.TanuloNeve))
|
|
{
|
|
command.Parameters.Add("pTanuloNeve", pco.TanuloNeve);
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(pco.OktatasiAzonosito))
|
|
{
|
|
command.Parameters.Add("pOktatasiAzonosito", pco.OktatasiAzonosito);
|
|
}
|
|
if (pco.EvfolyamId.HasValue)
|
|
{
|
|
command.Parameters.Add("pEvfolyamTipusaId", pco.EvfolyamId.Value);
|
|
}
|
|
if (pco.FeladatKategoriaId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pFeladatKategoria", pco.FeladatKategoriaId.Value);
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(pco.Jogosultsag))
|
|
{
|
|
command.Parameters.Add("pJogosultsag", pco.Jogosultsag);
|
|
}
|
|
if (pco.JuttatasOsszege.HasValue)
|
|
{
|
|
command.Parameters.Add("pJuttatasOsszege", pco.JuttatasOsszege);
|
|
}
|
|
if (pco.OsztalyId.HasValue)
|
|
{
|
|
command.Parameters.Add("pOsztalyId", pco.OsztalyId.Value);
|
|
}
|
|
if (pco.TanuloTipus.HasValue)
|
|
{
|
|
command.Parameters.Add("pTanuloTipus", pco.TanuloTipus);
|
|
}
|
|
if (pco.JuttatasTipusId == (int)JuttatasTipusEnum.apaczaiosztondij)
|
|
{
|
|
command.Parameters.Add("pApaczaiJogosultEvfolyamIdList", SDADBType.String).Value = string.Join(",", Constants.ApaczaiODJogosultEvfolyamTipusIdList);
|
|
}
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
}
|
|
SetDNAME(ds.Tables[0], "Evfolyam");
|
|
SetBoolFields(ds.Tables[0], "Jogosultsag,Beszamitasos");
|
|
if (pco.JuttatasTipusId == (int)JuttatasTipusEnum.egyszeri_palyakezdesi_juttatas)
|
|
{
|
|
SetBoolFields(ds.Tables[0], "IsJavitoVizsga,IsPotloVizsga");
|
|
}
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetSzakkepzesiJuttatasokTanulokDashboardAdatok(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 = "uspGetSzakkepzesiJuttatasokTanulokDashboardAdatok";
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
}
|
|
|
|
DataTable dataTable = ds.Tables[0];
|
|
SetDNAME(ds.Tables[0], "Evfolyam");
|
|
SetBoolFields(ds.Tables[0], "IsJogosult");
|
|
DataTable result = SortingAndPaging(dataTable, GridParameters);
|
|
return result.AsDataSet();
|
|
}
|
|
|
|
public DataSet GetBankszamlaIgenylesData(int tanevId, int tanuloId)
|
|
{
|
|
using (var sdaCommand = new SDACommand())
|
|
{
|
|
sdaCommand.Connection = UserContext.Instance.SDAConnection;
|
|
sdaCommand.Transaction = UserContext.Instance.SDATransaction;
|
|
sdaCommand.CommandType = CommandType.StoredProcedure;
|
|
sdaCommand.CommandText = "uspGetBankszamlaIgenylesData";
|
|
|
|
sdaCommand.Parameters.Add("pTanevId", tanevId);
|
|
sdaCommand.Parameters.Add("pTanuloId", tanuloId);
|
|
|
|
var dataSet = new DataSet();
|
|
using (var sdaDataAdapter = new SDADataAdapter())
|
|
{
|
|
sdaDataAdapter.SelectCommand = sdaCommand;
|
|
sdaDataAdapter.Fill(dataSet);
|
|
}
|
|
|
|
return dataSet;
|
|
}
|
|
}
|
|
|
|
public IEnumerable<int> ListGondviseloByTanuloIds(IEnumerable<int> tanuloIds)
|
|
{
|
|
IEnumerable<int> result = null;
|
|
if (tanuloIds.Any())
|
|
{
|
|
var commandText = $@"
|
|
SELECT ID
|
|
FROM T_GONDVISELO_OSSZES
|
|
WHERE TOROLT = 'F'
|
|
AND C_TANULOID IN ({string.Join(",", tanuloIds)})";
|
|
|
|
var dataSet = GetData(commandText);
|
|
result = dataSet.Tables[0].AsEnumerable().Select(r => r.Field<int>("ID"));
|
|
}
|
|
return result;
|
|
}
|
|
|
|
public DataSet GetTanuloAdatok(Guid tanuloIdpUniqueId)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetTanuloAdatok";
|
|
command.Parameters.Add("pTanuloIdpUniqueId", tanuloIdpUniqueId);
|
|
|
|
var dataSet = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(dataSet);
|
|
}
|
|
|
|
return dataSet;
|
|
}
|
|
}
|
|
|
|
public DataSet GetTanuloOsztalyEvfolyam(int tanevId, int tanuloId, List<int> evfolyamTipusEnumIdList, OktNevelesiKategoriaEnum? feladatKategoria = null, DateTime? datum = null)
|
|
{
|
|
var commandParameterList = new List<CommandParameter>
|
|
{
|
|
new CommandParameter("pTanuloId", tanuloId),
|
|
new CommandParameter("pTanevId", tanevId)
|
|
};
|
|
|
|
if (feladatKategoria.HasValue)
|
|
{ commandParameterList.Add(new CommandParameter("pFeladatKategoriaId", (int)feladatKategoria)); }
|
|
else
|
|
{ commandParameterList.Add(new CommandParameter("pFeladatKategoriaId", DBNull.Value)); }
|
|
|
|
if (datum.HasValue)
|
|
{
|
|
commandParameterList.Add(new CommandParameter("pDatum", datum.Value));
|
|
}
|
|
|
|
string commandText = $@"
|
|
SELECT * FROM (
|
|
SELECT
|
|
fh.ID as TanuloId
|
|
,t.C_ALTANEVID as TanevId
|
|
,fh.C_NYOMTATASINEV as TanuloNev
|
|
,ocs.ID as OsztalycsoportId
|
|
,ocs.C_NEV as OsztalycsoportNev
|
|
,CASE WHEN evtip.C_ISOSSZEVONT = 'T'
|
|
THEN ISNULL(tta.C_TANULOEVFOLYAMTIPUSID, ocs.C_EVFOLYAMTIPUSA)
|
|
ELSE ocs.C_EVFOLYAMTIPUSA
|
|
END AS EvfolyamTipus
|
|
,t.TOROLT as Torolt
|
|
FROM T_TANULO_OSSZES t
|
|
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = t.ID
|
|
AND fh.C_TANEVID = t.C_ALTANEVID
|
|
AND fh.TOROLT = 'F'
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_TANULOID = t.ID
|
|
AND (tcs.C_BELEPESDATUM <= :pDatum AND tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > :pDatum)
|
|
AND tcs.C_TANEVID = t.C_ALTANEVID
|
|
AND tcs.TOROLT = 'F'
|
|
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = tcs.C_OSZTALYCSOPORTID
|
|
AND o.C_ALTANEVID = t.C_ALTANEVID
|
|
AND o.TOROLT = 'F'
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID
|
|
AND (:pFeladatKategoriaId IS NULL OR :pFeladatKategoriaId = ocs.C_FELADATKATEGORIAID)
|
|
AND ocs.C_TANEVID = o.C_ALTANEVID
|
|
AND ocs.TOROLT = 'F'
|
|
LEFT JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcs.ID
|
|
AND tta.C_TANEVID = tcs.C_TANEVID
|
|
AND tta.TOROLT = 'F'
|
|
LEFT JOIN T_EVFOLYAMTIPUS_OSSZES evtip ON evtip.ID = ocs.C_EVFOLYAMTIPUSA
|
|
AND evtip.C_ALTANEVID = tcs.C_TANEVID
|
|
AND evtip.TOROLT = 'F'
|
|
) as x
|
|
WHERE (:pTanuloId IS NULL OR x.TanuloId = :pTanuloId)
|
|
AND x.TanevId = :pTanevId
|
|
AND x.Torolt = 'F'
|
|
AND x.EvfolyamTipus IN (" + string.Join(",", evfolyamTipusEnumIdList) + $@")";
|
|
|
|
return GetData(commandText, commandParameterList);
|
|
}
|
|
|
|
public bool IsAllOsztalyAltalanosIskolaFeladatellatasiHely(List<int> osztalyIdList)
|
|
{
|
|
var altalanosIskolaTipus = (int)OktatasiNevelesiFeladatEnum.altalanos_iskola;
|
|
|
|
var commandText = $@"
|
|
SELECT DISTINCT
|
|
ocs.ID
|
|
FROM
|
|
T_OSZTALYCSOPORT_OSSZES ocs
|
|
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID
|
|
INNER JOIN T_FELADATELLATASIHELY_OSSZES fh ON ocs.C_FELADATELLATASIHELYID = fh.ID
|
|
WHERE
|
|
ocs.ID IN ({string.Join(",", osztalyIdList)})
|
|
AND fh.C_OKTATASINEVELESIFELADATTIPUS = {altalanosIskolaTipus}
|
|
AND ocs.TOROLT = 'F'
|
|
AND fh.TOROLT = 'F'
|
|
AND o.TOROLT = 'F'";
|
|
|
|
var dataSet = GetData(commandText);
|
|
|
|
return dataSet.Tables[0].Rows.Count == osztalyIdList.Count;
|
|
}
|
|
|
|
public DataSet GetTanulokEmailNelkulJelszoResethez(int tanevId, List<int> tanuloIds = null)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetFelhasznaloEmailNelkulJelszoResethez";
|
|
|
|
command.Parameters.Add("pTanevId", SDADBType.Int).Value = tanevId;
|
|
if (tanuloIds != null)
|
|
{
|
|
command.Parameters.Add("pTanuloIdList", SDADBType.String).Value = string.Join(",", tanuloIds);
|
|
}
|
|
|
|
var ds = new DataSet();
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
|
|
return ds;
|
|
}
|
|
}
|
|
|
|
public DataSet GetOsztalyTanuloiGondviselokDataSet(int felhasznaloId, int intezmenyId, int tanevId, int? osztalyId, int? ellatottKoznevelesiFeladatId, bool isSzuperOsztalyfonok, bool isEvfolyamfelelos)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetOsztalyTanulokGondviselok";
|
|
|
|
command.Parameters.Add("pIntezmenyId", intezmenyId);
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
command.Parameters.Add("pFelhasznaloId", SDADBType.Int).Value = felhasznaloId;
|
|
command.Parameters.Add("pDatum", DateTime.Today);
|
|
|
|
if (osztalyId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pOsztalyId", SDADBType.Int).Value = osztalyId;
|
|
}
|
|
|
|
if (ellatottKoznevelesiFeladatId.IsEntityId())
|
|
{
|
|
command.Parameters.Add("pEllatottKoznevelesiFeladatId", SDADBType.Int).Value = ellatottKoznevelesiFeladatId;
|
|
}
|
|
command.Parameters.Add("pIsSzuperOsztalyfonok", SDADBType.Boolean).Value = isSzuperOsztalyfonok;
|
|
command.Parameters.Add("pIsEvfolyamfelelos", SDADBType.Boolean).Value = isEvfolyamfelelos;
|
|
|
|
var ds = new DataSet();
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
|
|
SetBoolFields(ds.Tables[0], "IsTorvenyesKepviselo,IsBovitettJogosultsag,IsAlapertelmezettEmail,IsAlapertelmezettTelefonSzam");
|
|
|
|
return ds;
|
|
}
|
|
}
|
|
|
|
public bool IsTanuloEvfolyamTipusaLetezik(int tanuloId, int intezmenyId, int tanevId, IEnumerable<int> evfolyamTipusIdList)
|
|
{
|
|
using (var sdaCommand = new SDACommand())
|
|
{
|
|
sdaCommand.Connection = UserContext.Instance.SDAConnection;
|
|
sdaCommand.Transaction = UserContext.Instance.SDATransaction;
|
|
sdaCommand.CommandType = CommandType.StoredProcedure;
|
|
|
|
sdaCommand.CommandText = "uspTanuloEvfolyamTipusaLetezik";
|
|
|
|
sdaCommand.Parameters.Add("pIntezmenyId", intezmenyId);
|
|
sdaCommand.Parameters.Add("pTanevId", tanevId);
|
|
sdaCommand.Parameters.Add("pTanuloId", tanuloId);
|
|
sdaCommand.Parameters.Add("pEvfolyamtipusIdList", SqlLogic.ParseListToParameter(evfolyamTipusIdList.ToList()));
|
|
|
|
int cnt = Convert.ToInt32(sdaCommand.ExecuteScalar());
|
|
return cnt > 0;
|
|
}
|
|
}
|
|
|
|
public DataSet GetTanulokDigitalisOktatasEgyenloHozzaferes(int tanevId, int intezmenyId, List<int> evfolyamtipusIds, bool? isGondviseloLetezik = null, bool? isGondviseloBelepesLetezik = null, bool? isGondviseloTorvenyesKepviselo = null, bool? isGondviseloEszkozIgenylesElfogadottASZF = null)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetEszkozIgenylesGondviseloRiportExportData";
|
|
|
|
command.Parameters.Add("pTanevId", SDADBType.Int).Value = tanevId;
|
|
command.Parameters.Add("pIntezmenyId", SDADBType.Int).Value = intezmenyId;
|
|
command.Parameters.Add("pEvfolyamtipusIds", SDADBType.String).Value = string.Join(",", evfolyamtipusIds);
|
|
|
|
if (isGondviseloLetezik.HasValue)
|
|
{
|
|
command.Parameters.Add("pGondviseloLetezik", SDADBType.Boolean).Value = isGondviseloLetezik;
|
|
}
|
|
|
|
if (isGondviseloBelepesLetezik.HasValue)
|
|
{
|
|
command.Parameters.Add("pGondviseloBelepesLetezik", SDADBType.Boolean).Value = isGondviseloBelepesLetezik;
|
|
}
|
|
|
|
if (isGondviseloTorvenyesKepviselo.HasValue)
|
|
{
|
|
command.Parameters.Add("pGondviseloTorvenyesKepviselo", SDADBType.Boolean).Value = isGondviseloTorvenyesKepviselo;
|
|
}
|
|
|
|
if (isGondviseloEszkozIgenylesElfogadottASZF.HasValue)
|
|
{
|
|
command.Parameters.Add("pGondviseloEszkozIgenylesElfogadottASZF", SDADBType.Boolean).Value = isGondviseloEszkozIgenylesElfogadottASZF;
|
|
}
|
|
|
|
var ds = new DataSet();
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
|
|
return ds;
|
|
}
|
|
}
|
|
|
|
public DataSet GetJogviszonyByTanulo(int tanuloId, int tanevId, int intezmenyId)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetJogviszonyByTanulo";
|
|
|
|
command.Parameters.Add("pTanevId", SDADBType.Int).Value = tanevId;
|
|
command.Parameters.Add("pIntezmenyId", SDADBType.Int).Value = intezmenyId;
|
|
command.Parameters.Add("pTanuloId", SDADBType.Int).Value = tanuloId;
|
|
|
|
var ds = new DataSet();
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
|
|
return ds;
|
|
}
|
|
}
|
|
|
|
public DataSet GetJogviszonyByTanuloIds(List<int> tanuloIdList, int tanevId, int intezmenyId)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetJogviszonyByTanuloIdsAndJogvTipusId";
|
|
|
|
command.Parameters.Add("pTanevId", SDADBType.Int).Value = tanevId;
|
|
command.Parameters.Add("pIntezmenyId", SDADBType.Int).Value = intezmenyId;
|
|
command.Parameters.Add("pTanuloIds", SDADBType.LongString).Value = string.Join(",", tanuloIdList);
|
|
|
|
var ds = new DataSet();
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
|
|
return ds;
|
|
}
|
|
}
|
|
|
|
public DataSet GetTanuloJogviszonyAdatok(int tanevId, int intezmenyId)
|
|
{
|
|
using (var command = new SDACommand())
|
|
{
|
|
command.Connection = UserContext.Instance.SDAConnection;
|
|
command.Transaction = UserContext.Instance.SDATransaction;
|
|
command.CommandType = CommandType.StoredProcedure;
|
|
command.CommandText = "uspGetTanuloJogviszonyAdatok";
|
|
|
|
command.Parameters.Add("pTanevId", SDADBType.Int).Value = tanevId;
|
|
command.Parameters.Add("pIntezmenyId", SDADBType.Int).Value = intezmenyId;
|
|
|
|
var ds = new DataSet();
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
|
|
SetBoolFields(ds.Tables[0], "JogviszonnyalRendelkezik");
|
|
|
|
return ds;
|
|
}
|
|
}
|
|
|
|
public DataSet GetTanuloSzirBeallitasokExport(int tanevId, int intezmenyId, List<int> tanuloIds)
|
|
{
|
|
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 = "uspGetTanuloSzirBeallitasokExport";
|
|
|
|
command.Parameters.Add("pTanevId", tanevId);
|
|
command.Parameters.Add("pIntezmenyId", intezmenyId);
|
|
command.Parameters.Add("pTanuloIds", SqlLogic.ParseListToParameter(tanuloIds));
|
|
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = command;
|
|
adapter.Fill(ds);
|
|
}
|
|
}
|
|
|
|
SetBoolFields(ds.Tables[0], "KuldhetoErettsegiSzRnek,KuldhetoMeresiSzRnek,KuldhetoKozepFelveteliSzRnek,DiakigazolvanyAtadhatoSzRnek");
|
|
|
|
if (ds.Tables[0].AsEnumerable().Any())
|
|
{
|
|
return ds.Tables[0].AsEnumerable().OrderBy(t => t.Field<string>(nameof(TanuloResource.Vezeteknev))).ThenBy(t => t.Field<string>(nameof(TanuloResource.UtoNev))).CopyToDataTable().AsDataSet();
|
|
}
|
|
|
|
return ds;
|
|
}
|
|
|
|
public DataSet GetMentessegDataSet(int tantargyId, int? tanuloId, DateTime datum)
|
|
{
|
|
var commandText = $@"
|
|
SELECT
|
|
tm.C_TANULOID AS TanuloId
|
|
,tm.C_ERTEKELESMENTESITES AS ErtekelesMentesites
|
|
,tm.C_ORAMENTESITES AS OraMentesites
|
|
,tm.C_SZOVEGESENERTEKELHETO AS SzovegesenErtekelheto
|
|
,tm.C_MENTESSEGOKA AS FelmentesOka
|
|
,tm.C_KEZDETE AS Kezdete
|
|
,tm.C_VEGE AS Vege
|
|
FROM
|
|
T_TANULOMENTESSEG tm
|
|
WHERE tm.TOROLT = 'F'
|
|
AND tm.C_TANTARGYID = @{nameof(tantargyId)}
|
|
AND (tm.C_TANULOID = @{nameof(tanuloId)} OR @{nameof(tanuloId)} IS NULL)
|
|
AND ((tm.C_KEZDETE IS NULL OR tm.C_KEZDETE <= @{nameof(datum)}) AND (tm.C_VEGE IS NULL OR tm.C_VEGE >= @{nameof(datum)}))
|
|
ORDER BY tm.C_KEZDETE DESC, tm.CREATED DESC
|
|
";
|
|
|
|
var commandParameterList = new List<CommandParameter>
|
|
{
|
|
new CommandParameter(nameof(tantargyId), tantargyId),
|
|
new CommandParameter(nameof(datum), datum)
|
|
};
|
|
|
|
if (tanuloId.HasValue)
|
|
{
|
|
commandParameterList.Add(new CommandParameter(nameof(tanuloId), tanuloId.Value));
|
|
}
|
|
else
|
|
{
|
|
commandParameterList.Add(new CommandParameter(nameof(tanuloId), DBNull.Value));
|
|
}
|
|
|
|
return GetData(commandText, commandParameterList, booleanColumns: "ErtekelesMentesites,OraMentesites,SzovegesenErtekelheto");
|
|
}
|
|
|
|
public DataSet GetOsztalyCsoportTanuloAdatokDataSet(int tanuloId)
|
|
{
|
|
using (var sdaCommand = new SDACommand())
|
|
{
|
|
sdaCommand.Connection = UserContext.Instance.SDAConnection;
|
|
sdaCommand.Transaction = UserContext.Instance.SDATransaction;
|
|
sdaCommand.CommandType = CommandType.StoredProcedure;
|
|
sdaCommand.CommandText = "uspGetOsztalyCsoportTanuloAdatok";
|
|
|
|
sdaCommand.Parameters.Add("pTanuloId", SDADBType.Int).Value = tanuloId;
|
|
|
|
var result = new DataSet();
|
|
using (var adapter = new SDADataAdapter())
|
|
{
|
|
adapter.SelectCommand = sdaCommand;
|
|
adapter.Fill(result);
|
|
}
|
|
|
|
return result;
|
|
}
|
|
}
|
|
|
|
public DataSet GetSzakkepzesiMunkaszerzodesek(int intezmenyId, int tanevId, int tanuloId)
|
|
{
|
|
var commandText = $@"
|
|
SELECT
|
|
szmsz.ID AS Id
|
|
,sz.ID AS SzervezetId
|
|
,sz.C_NEV AS DualisKepzohelyNeve
|
|
,sz.C_AZONOSITO AS DualisKepzohelyAdoszama
|
|
,szmsz.C_KEZDETE AS Kezdete
|
|
,szmsz.C_VEGE AS Vege
|
|
FROM T_SZAKMUNKASZERZODES_OSSZES szmsz
|
|
INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.ID = szmsz.C_TANULOTANUGYIADATOKID
|
|
AND tta.TOROLT = 'F'
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.ID = tta.C_TANULOCSOPORTID
|
|
AND tcs.TOROLT = 'F'
|
|
INNER JOIN T_SZERVEZET_OSSZES sz ON sz.ID = szmsz.C_SZERVEZETID
|
|
AND sz.TOROLT = 'F'
|
|
WHERE szmsz.TOROLT = 'F'
|
|
AND szmsz.C_INTEZMENYID = :pIntezmenyId
|
|
AND szmsz.C_TANEVID = :pTanevId
|
|
AND tcs.C_TANULOID = :pTanuloId
|
|
";
|
|
|
|
var parameters = new List<CommandParameter>()
|
|
{
|
|
new CommandParameter("pIntezmenyId", intezmenyId),
|
|
new CommandParameter("pTanevId", tanevId),
|
|
new CommandParameter("pTanuloId", tanuloId),
|
|
};
|
|
return GetData(commandText, parameters);
|
|
}
|
|
}
|
|
}
|