kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20200212113611_KRETA2_2719/uspGetFelhasznaloBelepesData.sql
2024-03-13 00:33:46 +01:00

103 lines
3.8 KiB
Transact-SQL

DROP PROCEDURE IF EXISTS uspGetFelhasznaloBelepesData
GO
CREATE PROCEDURE uspGetFelhasznaloBelepesData
@pTanevId int
AS
BEGIN
SET NOCOUNT ON;
--NOTE: Alkalmazott
SELECT
fb.ID AS Id
,fb.C_BEJELENTKEZESINEV AS BejelentkezesiNev
,IIF(fb.C_JELSZO IS NULL, 'F', 'T') AS HasJelszo
,fb.C_IMPORTALT AS Importalt
,fh.C_ELOTAG AS Elotag
,fh.C_VEZETEKNEV AS Vezeteknev
,fh.C_UTONEV AS Keresztnev
,fh.C_OKTATASIAZONOSITO AS OktatasiAzonosito
,fh.C_SZULETESIDATUM AS SzuletesiIdo
,a.ID AS AlkalmazottId
,NULL AS TanuloId
,NULL AS GondviseloId
,NULL AS GondviseloNev
,NULL AS GondviseloRokonsagiFokId
FROM T_ALKALMAZOTT_OSSZES a
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = a.ID AND fh.C_TANEVID = a.C_ALTANEVID AND fh.TOROLT = 'F'
LEFT JOIN T_FELHASZNALOBELEPES_OSSZES fb ON fb.C_FELHASZNALOID = fh.ID AND fb.C_GONDVISELOID IS NULL AND fb.C_TANEVID = a.C_ALTANEVID AND fb.TOROLT = 'F'
WHERE a.C_ALTANEVID = @pTanevId
AND a.TOROLT = 'F'
UNION
--NOTE: Tanuló
SELECT
fb.ID AS Id
,fb.C_BEJELENTKEZESINEV AS BejelentkezesiNev
,IIF(fb.C_JELSZO IS NULL, 'F', 'T') AS HasJelszo
,fb.C_IMPORTALT AS Importalt
,fh.C_ELOTAG AS Elotag
,fh.C_VEZETEKNEV AS Vezeteknev
,fh.C_UTONEV AS Keresztnev
,fh.C_OKTATASIAZONOSITO AS OktatasiAzonosito
,fh.C_SZULETESIDATUM AS SzuletesiIdo
,NULL AS AlkalmazottId
,dk.ID AS TanuloId
,NULL AS GondviseloId
,NULL AS GondviseloNev
,NULL AS GondviseloRokonsagiFokId
FROM T_TANULO_OSSZES dk
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = dk.ID AND fh.C_TANEVID = dk.C_ALTANEVID AND fh.TOROLT = 'F'
LEFT JOIN T_FELHASZNALOBELEPES_OSSZES fb ON fb.C_FELHASZNALOID = fh.ID AND fb.C_GONDVISELOID IS NULL AND fb.C_TANEVID = dk.C_ALTANEVID AND fb.TOROLT = 'F'
WHERE dk.C_ALTANEVID = @pTanevId
AND dk.TOROLT = 'F'
UNION
--NOTE: Gondviselő
SELECT
fb.ID AS Id
,fb.C_BEJELENTKEZESINEV AS BejelentkezesiNev
,IIF(fb.C_JELSZO IS NULL, 'F', 'T') AS HasJelszo
,fb.C_IMPORTALT AS Importalt
,fh.C_ELOTAG AS Elotag
,fh.C_VEZETEKNEV AS Vezeteknev
,fh.C_UTONEV AS Keresztnev
,fh.C_OKTATASIAZONOSITO AS OktatasiAzonosito
,fh.C_SZULETESIDATUM AS SzuletesiIdo
,NULL AS AlkalmazottId
,dk.ID AS TanuloId
,g.ID AS GondviseloId
,g.C_NEV AS GondviseloNev
,g.C_ROKONSAGFOKA AS GondviseloRokonsagiFokId
FROM T_GONDVISELO_OSSZES g
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = g.C_TANULOID AND fh.C_TANEVID = g.C_TANEVID AND fh.TOROLT = 'F'
INNER JOIN T_TANULO_OSSZES dk ON dk.ID = g.C_TANULOID AND dk.C_ALTANEVID = g.C_TANEVID AND dk.TOROLT = 'F'
LEFT JOIN T_FELHASZNALOBELEPES_OSSZES fb ON fb.C_FELHASZNALOID = fh.ID AND fb.C_GONDVISELOID = g.ID AND fb.C_TANEVID = g.C_TANEVID AND fb.TOROLT = 'F'
WHERE g.C_TANEVID = @pTanevId
AND g.TOROLT = 'F'
UNION
--NOTE: Egyéb(fenntartó, admin, stb...)
SELECT
fb.ID AS Id
,fb.C_BEJELENTKEZESINEV AS BejelentkezesiNev
,IIF(fb.C_JELSZO IS NULL, 'F', 'T') AS HasJelszo
,fb.C_IMPORTALT AS Importalt
,fh.C_ELOTAG AS Elotag
,fh.C_VEZETEKNEV AS Vezeteknev
,fh.C_UTONEV AS Keresztnev
,fh.C_OKTATASIAZONOSITO AS OktatasiAzonosito
,fh.C_SZULETESIDATUM AS SzuletesiIdo
,NULL AS AlkalmazottId
,NULL AS TanuloId
,NULL AS GondviseloId
,NULL AS GondviseloNev
,NULL AS GondviseloRokonsagiFokId
FROM T_FELHASZNALO_OSSZES fh
LEFT JOIN T_FELHASZNALOBELEPES_OSSZES fb ON fb.C_FELHASZNALOID = fh.ID AND fb.C_GONDVISELOID IS NULL AND fb.C_TANEVID = fh.C_TANEVID AND fb.TOROLT = 'F'
WHERE NOT EXISTS (SELECT ID FROM T_TANULO_OSSZES dk WHERE dk.ID = fh.ID AND dk.C_ALTANEVID = fh.C_TANEVID AND dk.TOROLT = 'F')
AND NOT EXISTS (SELECT ID FROM T_ALKALMAZOTT_OSSZES a WHERE a.ID = fh.ID AND a.C_ALTANEVID = fh.C_TANEVID AND a.TOROLT = 'F')
AND fh.C_TANEVID = @pTanevId
AND fh.TOROLT = 'F'
END
GO