129 lines
5.7 KiB
Transact-SQL
129 lines
5.7 KiB
Transact-SQL
DROP PROCEDURE IF EXISTS uspGetAlkalmazottAdatokEugyintezes
|
|
GO
|
|
|
|
CREATE PROCEDURE uspGetAlkalmazottAdatokEugyintezes
|
|
@pFelhasznaloId INT
|
|
,@pSzerepkorTipusEnumNaplo INT
|
|
,@pOktNevKatTipusNevOkt INT
|
|
,@pTanevId INT
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
|
|
SELECT Alkalmazott.ID AS KretaAzonosito
|
|
,Felhasznalo.C_NYOMTATASINEV AS Nev
|
|
,Felhasznalo.C_OKTATASIAZONOSITO AS OktatasiAzonosito
|
|
,Osztaly.ID AS OsztalyKretaAzonosito
|
|
,Osztaly.Osztaly
|
|
,OsztalyHelyettes.ID AS OsztalyHelyettesKretaAzonosito
|
|
,OsztalyHelyettes.Osztaly AS OsztalyHelyettes
|
|
,IIF(Osztaly.OsztalyfonokId = Alkalmazott.ID, 1, 0) AS IsOsztalyfonok
|
|
,IIF(OsztalyHelyettes.OsztalyfonokHelyettesId = Alkalmazott.ID, 1, 0) AS IsOsztalyfonokHelyettes
|
|
,IIF(MunkaugyiAdatok.C_VEZETOIORASZAMOK NOT IN (
|
|
6571 /*Nincs, DictionaryItemBase*/
|
|
,6578 /*GyakorlatiOktatasvezeto, DictionaryItemBase*/
|
|
), 1, 0) AS IsAlairo
|
|
,IIF(MunkaugyiAdatok.C_VEZETOIORASZAMOK IN (
|
|
7755
|
|
,6572
|
|
,6573
|
|
,7757
|
|
,7758
|
|
,6574
|
|
), 1, 0) AS IsIgazgato
|
|
,IIF(MunkaugyiAdatok.C_VEZETOIORASZAMOK IN (
|
|
7756
|
|
,6575
|
|
,6576
|
|
,6577
|
|
), 1, 0) AS IsIgazgatoHelyettes
|
|
,MunkaugyiAdatok.C_VEZETOIORASZAMOK AS Titulus
|
|
,IIF(Osztaly.OsztalyfonokId = Alkalmazott.ID, 1, 0) AS IsOsztalyfonok
|
|
,IIF(OsztalyHelyettes.OsztalyfonokHelyettesId = Alkalmazott.ID, 1, 0) AS IsOsztalyfonokHelyettes
|
|
,IIF(mkt.C_ALKALMAZOTTMUNKAKORTIPUSID = 8384, 1, 0) AS IsTanar
|
|
,IIF(mkt.C_ALKALMAZOTTMUNKAKORTIPUSID = 8385, 1, 0) AS IsNoks
|
|
,IIF(mkt.C_ALKALMAZOTTMUNKAKORTIPUSID = 8386, 1, 0) AS IsEgyeb
|
|
,IIF(Adminisztrator.FelhasznaloId = Alkalmazott.ID, 1, 0) AS IsAdmin
|
|
,mukodesihely.C_FUNKCIOTERULET AS FunkcioTeruletSAPKod
|
|
,Felhasznalo.C_EGYEDIAZONOSITO AS EgyediAzonosito
|
|
,Felhasznalo.C_IDPEGYEDIAZONOSITO AS IdpEgyediAzonosito
|
|
FROM T_ALKALMAZOTT_OSSZES AS Alkalmazott
|
|
INNER JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Alkalmazott.ID = Felhasznalo.ID
|
|
AND Felhasznalo.TOROLT = 'F'
|
|
AND Felhasznalo.C_TANEVID = @pTanevId
|
|
LEFT JOIN (
|
|
SELECT MunkaugyiAdatok.C_ALKALMAZOTTID
|
|
,MunkaugyiAdatok.C_MUNKAKORTIPUSA
|
|
FROM T_MUNKAUGYIADATOK_OSSZES MunkaugyiAdatok
|
|
INNER JOIN T_FELHASZNALO_SZEREPKOR FelhasznaloSzerepkor ON FelhasznaloSzerepkor.C_FELHASZNALOID = MunkaugyiAdatok.C_ALKALMAZOTTID
|
|
INNER JOIN T_SZEREPKOR_OSSZES Szerepkor ON Szerepkor.ID = FelhasznaloSzerepkor.C_SZEREPKORID
|
|
AND Szerepkor.TOROLT = 'F'
|
|
AND Szerepkor.C_SZEREPKORTIPUS = @pSzerepkorTipusEnumNaplo
|
|
AND Szerepkor.C_TANEVID = @pTanevId
|
|
WHERE MunkaugyiAdatok.C_MUNKAKORTIPUSA NOT IN (
|
|
SELECT JSON_VALUE(VALUE, '$.Value')
|
|
FROM OPENJSON((
|
|
SELECT RendszerBeallitas.C_ERTEK
|
|
FROM T_RENDSZERBEALLITAS_OSSZES RendszerBeallitas
|
|
WHERE RendszerBeallitas.C_BEALLITASTIPUS = 5441
|
|
AND RendszerBeallitas.TOROLT = 'F'
|
|
AND RendszerBeallitas.C_TANEVID = @pTanevId
|
|
), '$.Options')
|
|
WHERE JSON_VALUE(VALUE, '$.Selected') = 'true'
|
|
)
|
|
OR MunkaugyiAdatok.C_MUNKAKORTIPUSA = 6710 /*Hitoktató*/
|
|
AND MunkaugyiAdatok.TOROLT = 'F'
|
|
AND MunkaugyiAdatok.C_TANEVID = @pTanevId
|
|
) Szuro ON Szuro.C_ALKALMAZOTTID = Felhasznalo.ID
|
|
LEFT JOIN (
|
|
SELECT OsztalyCsoport.ID
|
|
,OsztalyCsoport.C_NEV AS Osztaly
|
|
,Osztaly.C_OSZTALYFONOKID AS OsztalyfonokId
|
|
FROM T_OSZTALYCSOPORT_OSSZES OsztalyCsoport
|
|
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = OsztalyCsoport.ID
|
|
AND Osztaly.TOROLT = 'F'
|
|
AND Osztaly.C_ALTANEVID = @pTanevId
|
|
WHERE OsztalyCsoport.TOROLT = 'F'
|
|
AND OsztalyCsoport.C_FELADATKATEGORIAID = @pOktNevKatTipusNevOkt
|
|
AND OsztalyCsoport.C_TANEVID = @pTanevId
|
|
) Osztaly ON Osztaly.OsztalyfonokId = Alkalmazott.ID
|
|
LEFT JOIN (
|
|
SELECT OsztalyCsoport.ID
|
|
,OsztalyCsoport.C_NEV AS Osztaly
|
|
,Osztaly.C_OFOHELYETTESID AS OsztalyfonokHelyettesId
|
|
FROM T_OSZTALYCSOPORT_OSSZES OsztalyCsoport
|
|
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = OsztalyCsoport.ID
|
|
AND Osztaly.TOROLT = 'F'
|
|
AND Osztaly.C_ALTANEVID = @pTanevId
|
|
WHERE OsztalyCsoport.TOROLT = 'F'
|
|
AND OsztalyCsoport.C_FELADATKATEGORIAID = @pOktNevKatTipusNevOkt
|
|
AND OsztalyCsoport.C_TANEVID = @pTanevId
|
|
) OsztalyHelyettes ON OsztalyHelyettes.OsztalyfonokHelyettesId = Alkalmazott.ID
|
|
LEFT JOIN (
|
|
SELECT FelhasznaloSzerepkor.C_FELHASZNALOID AS FelhasznaloId
|
|
FROM T_FELHASZNALO_SZEREPKOR FelhasznaloSzerepkor
|
|
INNER JOIN T_SZEREPKOR_OSSZES Szerepkor ON Szerepkor.ID = FelhasznaloSzerepkor.C_SZEREPKORID
|
|
AND Szerepkor.TOROLT = 'F'
|
|
AND Szerepkor.C_SZEREPKORTIPUS = 1758 /*Adminisztrátor, DictionaryItemBase*/
|
|
AND Szerepkor.C_TANEVID = @pTanevId
|
|
) Adminisztrator ON Adminisztrator.FelhasznaloId = Alkalmazott.ID
|
|
LEFT JOIN T_MUNKAUGYIADATOK_OSSZES MunkaugyiAdatok ON MunkaugyiAdatok.C_ALKALMAZOTTID = Alkalmazott.ID
|
|
AND MunkaugyiAdatok.TOROLT = 'F'
|
|
AND MunkaugyiAdatok.C_TANEVID = @pTanevId
|
|
LEFT JOIN T_MUNKAKORTIPUS_OSSZES mkt ON mkt.ID = MunkaugyiAdatok.C_MUNKAKORTIPUSA
|
|
AND mkt.C_ALINTEZMENYID = MunkaugyiAdatok.C_INTEZMENYID
|
|
AND mkt.C_ALTANEVID = MunkaugyiAdatok.C_TANEVID AND mkt.TOROLT = 'F'
|
|
LEFT JOIN T_FELADATELLATASIHELY_OSSZES feladatEllatasiHely ON feladatEllatasiHely.ID = MunkaugyiAdatok.C_FELADATELLATASIHELYID
|
|
AND feladatEllatasiHely.TOROLT = 'F'
|
|
AND feladatEllatasiHely.C_TANEVID = @pTanevId
|
|
LEFT JOIN T_MUKODESIHELY_OSSZES mukodesihely ON mukodesihely.ID = feladatEllatasiHely.C_MUKODESIHELYID
|
|
AND mukodesihely.TOROLT = 'F'
|
|
AND mukodesihely.C_TANEVID = @pTanevId
|
|
WHERE Alkalmazott.TOROLT = 'F'
|
|
AND Alkalmazott.ID = @pFelhasznaloId
|
|
AND Alkalmazott.C_ALTANEVID = @pTanevId
|
|
ORDER BY Felhasznalo.C_NYOMTATASINEV
|
|
END
|
|
GO
|
|
|
|
|