kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20170327110702_Init/Stored procedures/sp_GetUserRoles.sql
2024-03-13 00:33:46 +01:00

67 lines
3.1 KiB
Transact-SQL

-- ================================================
-- Template generated from Template Explorer using:
-- Create Procedure (New Menu).SQL
--
-- Use the Specify Values for Template Parameters
-- command (Ctrl-Shift-M) to fill in the parameter
-- values below.
--
-- This block of comments will not be included in
-- the definition of the procedure.
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Sólyom Péter
-- Create date: 2016.04.21.
-- Description: Lehetséges szerepkörök lekérdezése felhasználóhoz.
-- =============================================
CREATE PROCEDURE sp_GetUserRoles
-- Add the parameters for the stored procedure here
@FELHASZNALOID int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- lekérdezi a felhasználói szerepköröket: Adminisztrator, Fenntarto, Penzugy
SELECT SZEREPKOR.C_SZEREPKORTIPUS SZEREPKOR
FROM T_FELHASZNALO_SZEREPKOR FSZ
JOIN T_SZEREPKOR SZEREPKOR on SZEREPKOR.ID = FSZ.C_SZEREPKORID
/* LEFT JOIN T_MUNKAUGYIADATOK MUNKAUGY ON MUNKAUGY.C_ALKALMAZOTTID = FSZ.C_FELHASZNALOID
AND MUNKAUGY.C_ALKALMAZASKEZDETE <= GETDATE() AND (MUNKAUGY.C_ALKALMAZASMEGSZUNESE IS NULL OR MUNKAUGY.C_ALKALMAZASMEGSZUNESE >= GETDATE()) AND MUNKAUGY.TOROLT='F'*/
WHERE FSZ.C_FELHASZNALOID = @FELHASZNALOID
UNION
SELECT SZEREPKOR.C_SZEREPKORTIPUS SZEREPKOR
FROM T_FELHASZNALO_SZEREPKOR FSZ
JOIN T_SZEREPKOR SZEREPKOR on SZEREPKOR.ID = FSZ.C_SZEREPKORID
WHERE FSZ.C_FELHASZNALOID = @FELHASZNALOID AND SZEREPKOR.C_SZEREPKORTIPUS = 1757 -- CSAK FENNTARTÓNÁL NEM KELL MUNKAÜGYI ADAT
UNION
SELECT 1758 -- IGAZGATÓ VAGY IGAZGATÓ HELYETTES AUTOMATIKUS ADMIN JOGOT KAP
FROM T_MUNKAUGYIADATOK MUNKAUGY
WHERE MUNKAUGY.C_ALKALMAZOTTID = @FELHASZNALOID
AND MUNKAUGY.C_ALKALMAZASKEZDETE <= GETDATE() AND (MUNKAUGY.C_ALKALMAZASMEGSZUNESE IS NULL OR MUNKAUGY.C_ALKALMAZASMEGSZUNESE >= GETDATE())
AND MUNKAUGY.TOROLT='F'
AND MUNKAUGY.C_MUNKAKORTIPUSA IN (1762,1763) -- IGAZGATÓ VAGY IGAZGATÓ HELYETTES
UNION
-- lekérdezi a felhasználót, hogy diák-e (ellenõrzõ könyvbe beléphet)
SELECT 1761 FROM T_TANULO tt WHERE ID=@FELHASZNALOID AND tt.TOROLT='F'
/* UNION -- Csak akkor léphet be az elektronikus naplóba, ha jogot kapott rá
-- LEKÉRDEZI HOGY A NAPLÓBA BELÉPHET (ALKALMAZOTTNAK VAN TANÁRI TÁRGYA VAGY TANTÁRGYFELOSZTÁSA VAGY TANÓRÁN KÍVÜLI FOGLALKOZÁSA)
SELECT DISTINCT 1760
FROM T_MUNKAUGYIADATOK MUNKAUGY
WHERE MUNKAUGY.C_ALKALMAZOTTID = @FELHASZNALOID
AND (MUNKAUGY.C_ALKALMAZASMEGSZUNESE IS NULL OR MUNKAUGY.C_ALKALMAZASKEZDETE <= GETDATE())
AND (MUNKAUGY.C_ALKALMAZASMEGSZUNESE IS NULL OR MUNKAUGY.C_ALKALMAZASMEGSZUNESE >= GETDATE())
AND MUNKAUGY.TOROLT='F'
AND NOT EXISTS ( SELECT 1
FROM T_JOGOSULTSAG_FELHASZNALO JOGFELH
JOIN T_JOGOSULTSAG JOG ON JOG.ID = JOGFELH.C_JOGOSULTSAGID
WHERE JOGFELH.C_FELHASZNALOID = @FELHASZNALOID
AND JOG.C_JOG = 'Szuperadmin' ) -- Szuperadmin joggal nem lehet Elektronikus naplóba belépni
*/
END
GO