kreta/Kreta.DataAccess.Migrations/DBScripts/Database/dbo/Stored procedures/uspGetTanoraiCsoportGondviselokEugyintezes.sql
2024-03-13 00:33:46 +01:00

76 lines
3.2 KiB
Transact-SQL

DROP PROCEDURE IF EXISTS uspGetTanoraiCsoportGondviselokEugyintezes
GO
CREATE PROCEDURE uspGetTanoraiCsoportGondviselokEugyintezes
@pOsztalyCsoportId INT
,@pTanevId INT
AS
BEGIN
SET NOCOUNT ON;
SELECT Gondviselo.ID AS KretaAzonosito
,Gondviselo.C_NEV AS GondviseloNev
,Email.C_EMAILCIM AS EmailCim
,Felhasznalo.C_NYOMTATASINEV AS TanuloNev
,Felhasznalo.C_OKTATASIAZONOSITO AS TanuloOktatasiAzonosito
,Felhasznalo.ID AS TanuloId
,RokonsagiFokDictionary.C_NAME AS RokonsagiFok
,IIF(Gondviselo.C_ISTORVENYESKEPVISELO = 'T', 1, 0) AS IsTorvenyesKepviselo
,SZMKKepviselo.SZMKOsztaly
,SZMKKepviseloHelyettes.ID AS SZMKOsztalyHelyettesKretaAzonosito
,SZMKKepviseloHelyettes.SZMKOsztalyHelyettes
,SZMKKepviselo.ID AS SZMKOsztalyKretaAzonosito
,IIF(SZMKKepviselo.SZMKKepviseloId = Gondviselo.ID, 1, 0) AS IsSZMK
,IIF(SZMKKepviseloHelyettes.SZMKKepviseloHelyettesId = Gondviselo.ID, 1, 0) AS IsSZMKHelyettes
,Gondviselo.C_EGYEDIAZONOSITO AS EgyediAzonosito
,Gondviselo.C_IDPEGYEDIAZONOSITO AS IdpEgyediAzonosito
FROM T_TANULOCSOPORT_OSSZES TanuloCsoport
INNER JOIN T_GONDVISELO_OSSZES Gondviselo ON Gondviselo.C_TANULOID = TanuloCsoport.C_TANULOID
AND Gondviselo.TOROLT = 'F'
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES RokonsagiFokDictionary ON RokonsagiFokDictionary.ID = Gondviselo.C_ROKONSAGFOKA
AND RokonsagiFokDictionary.TOROLT = 'F'
LEFT JOIN T_EMAIL_OSSZES Email ON Email.C_GONDVISELOID = Gondviselo.ID
AND Email.TOROLT = 'F'
AND Email.C_ALAPERTELMEZETT = 'T'
INNER JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Felhasznalo.ID = TanuloCsoport.C_TANULOID
AND Felhasznalo.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = TanuloCsoport.C_OSZTALYCSOPORTID
AND OsztalyCsoport.TOROLT = 'F'
LEFT JOIN (
SELECT OsztalyCsoport.ID
,OsztalyCsoport.C_NEV AS SZMKOsztaly
,Osztaly.C_SZMKKEPVISELOID AS SZMKKepviseloId
FROM T_OSZTALYCSOPORT_OSSZES OsztalyCsoport
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = OsztalyCsoport.ID
AND Osztaly.TOROLT = 'F'
WHERE OsztalyCsoport.TOROLT = 'F'
) SZMKKepviselo ON SZMKKepviselo.SZMKKepviseloID = Gondviselo.ID
LEFT JOIN (
SELECT OsztalyCsoport.ID
,OsztalyCsoport.C_NEV AS SZMKOsztalyHelyettes
,Osztaly.C_SZMKKEPVISELOHELYETTESID AS SZMKKepviseloHelyettesId
FROM T_OSZTALYCSOPORT_OSSZES OsztalyCsoport
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = OsztalyCsoport.ID
AND Osztaly.TOROLT = 'F'
WHERE OsztalyCsoport.TOROLT = 'F'
) SZMKKepviseloHelyettes ON SZMKKepviseloHelyettes.SZMKKepviseloHelyettesId = Gondviselo.ID
INNER JOIN T_CSOPORT_OSSZES Csoport ON Csoport.ID = OsztalyCsoport.ID
AND Csoport.TOROLT = 'F'
WHERE TanuloCsoport.TOROLT = 'F'
AND TanuloCsoport.C_BELEPESDATUM <= (
SELECT IIF(GETDATE() < C_ELSOTANITASINAP, C_ELSOTANITASINAP, GETDATE())
FROM T_TANEV_OSSZES
WHERE C_AKTIV = 'T'
AND TOROLT = 'F'
AND C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID
)
AND (
TanuloCsoport.C_KILEPESDATUM IS NULL
OR TanuloCsoport.C_KILEPESDATUM > GETDATE()
)
AND OsztalyCsoport.ID = @pOsztalyCsoportId
AND RokonsagiFokDictionary.C_TANEVID = @pTanevId
END
GO