-- ============================================= -- Author: Sólyom Péter -- Create date: 2016.04.05. -- Description: Lekérdezi a felhasználóhoz tartozó jogokat (osztályfőnök, csoportvezető, stb.) -- ============================================= SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF OBJECT_ID('dbo.sp_GetFelhasznaloJogok') IS NOT NULL BEGIN DROP PROCEDURE dbo.sp_GetFelhasznaloJogok END GO CREATE PROCEDURE sp_GetFelhasznaloJogok @FELHASZNALOID INT, @SZEREPKORTIPUS INT AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; DECLARE @TEMPJOGOK TABLE ( JOG nvarchar(100)) -- SZEREPKÖR JOGOK IF @SZEREPKORTIPUS = 1757 BEGIN INSERT INTO @TEMPJOGOK (JOG) VALUES (N'Fenntarto') END ELSE IF @SZEREPKORTIPUS = 1758 BEGIN INSERT INTO @TEMPJOGOK (JOG) VALUES (N'Adminisztrator') END ELSE IF @SZEREPKORTIPUS = 1759 BEGIN INSERT INTO @TEMPJOGOK (JOG) VALUES (N'Penzugy') END ELSE IF @SZEREPKORTIPUS = 1760 BEGIN INSERT INTO @TEMPJOGOK (JOG) VALUES (N'Naplo') END ELSE IF @SZEREPKORTIPUS = 1761 BEGIN INSERT INTO @TEMPJOGOK (JOG) VALUES (N'Ellenorzo') END -- RENDSZERGAZDA VAGY SZUPEROSZTÁLYFŐNÖK INSERT INTO @TEMPJOGOK SELECT DISTINCT C_JOG JOG FROM T_JOGOSULTSAG JOIN T_JOGOSULTSAG_FELHASZNALO FELHASZNALOJOG ON FELHASZNALOJOG.C_JOGOSULTSAGID = T_JOGOSULTSAG.ID WHERE T_JOGOSULTSAG.TOROLT = 'F' AND FELHASZNALOJOG.C_FELHASZNALOID = @FELHASZNALOID AND T_JOGOSULTSAG.C_SZEREPKORTIPUS = @SZEREPKORTIPUS UNION -- OSZTÁLYFŐNÖK SELECT DISTINCT 'Osztalyfonok' FROM T_OSZTALY OSZT WHERE OSZT.C_OSZTALYFONOKID = @FELHASZNALOID OR OSZT.C_OFOHELYETTESID = @FELHASZNALOID AND OSZT.TOROLT ='F' -- ÉVFOLYAMFELELŐS UNION SELECT DISTINCT 'Evfolyamfelelos' FROM T_OSZTALY OSZT WHERE OSZT.C_OFOHELYETTESID = @FELHASZNALOID AND OSZT.TOROLT ='F' -- CSOPORTVEZETŐ UNION SELECT DISTINCT 'CsoportVezeto' FROM T_CSOPORT CSOP WHERE CSOP.C_CSOPORTVEZETOID = @FELHASZNALOID AND CSOP.TOROLT = 'F' -- SZUPEROSZTÁLYFŐNÖK (IGAZGATÓ, ÉVFOLYAMFELELŐS) UNION SELECT DISTINCT 'SzuperOsztalyfonok' FROM T_MUNKAUGYIADATOK MUNKAUGY WHERE MUNKAUGY.C_ALKALMAZOTTID = @FELHASZNALOID AND MUNKAUGY.TOROLT='F' AND MUNKAUGY.C_MUNKAKORTIPUSA IN (1762,1763) -- IGAZGATÓ VAGY IGAZGATÓ HELYETTES UNION -- TANÁR SELECT DISTINCT 'Tanar' FROM T_TANARITANTARGY TT WHERE TT.C_ALKALMAZOTTID = @FELHASZNALOID AND TT.TOROLT = 'F' UNION SELECT DISTINCT 'Tanar' FROM T_FOGLALKOZAS FOGL JOIN T_FOGLALKOZASOK_TANAROK FT ON FT.C_FOGLALKOZASOKID = FOGL.ID WHERE FT.C_TANAROKID = @FELHASZNALOID AND FOGL.TOROLT = 'F' UNION SELECT 'Tanulo' FROM T_TANULO tt WHERE ID= @FELHASZNALOID SELECT t.JOG FROM @TEMPJOGOK T JOIN T_JOGOSULTSAG JOGOS ON JOGOS.C_JOG = T.JOG WHERE JOGOS.C_SZEREPKORTIPUS = @SZEREPKORTIPUS END GO