kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20190325150244_AL_809/sp_Check4TValidation.sql
2024-03-13 00:33:46 +01:00

82 lines
No EOL
3.2 KiB
Transact-SQL

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_Check4TValidation]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_Check4TValidation]
END
GO
-- =============================================
-- Description: <Ellenőrizzuk, hogy a megadott 4T alapján szerepel-e az adatbázisban>
-- =============================================
CREATE PROCEDURE [dbo].[sp_Check4TValidation]
@pCheckValidationType int,
@pElotag nvarchar(255),
@pVezeteknev nvarchar(255),
@pUtonev nvarchar(255),
@pAnyjaNeve nvarchar(255) = null,
@pAnyjaVezeteknev nvarchar(255) = null,
@pAnyjaUtonev nvarchar(255) = null,
@pSzuletesiHely nvarchar(255),
@pSzuletesiDatum datetime,
@pTanevId int = null,
@pUserId int = null,
@pFelvetelStatuszaFelveve int = null,
@pFelvetelStatuszaNemFelveve int = null
AS
BEGIN
SET NOCOUNT ON;
IF (@pCheckValidationType = 1) --Tanuló
BEGIN
IF (@pUserId IS NOT NULL)
SELECT f.ID FROM T_FELHASZNALO_OSSZES f
JOIN T_TANULO_OSSZES t on t.ID = f.ID
WHERE
f.C_VEZETEKNEV = @pVezeteknev AND f.C_UTONEV = @pUtonev AND f.C_ANYJANEVE = @pAnyjaNeve
AND f.C_SZULETESIHELY = @pSzuletesiHely AND f.C_SZULETESIDATUM = @pSzuletesiDatum AND f.ID != @pUserId
AND f.C_TANEVID = @pTanevId AND f.TOROLT = 'F' AND ISNULL(f.C_ELOTAG,'') = @pElotag
ELSE
SELECT f.ID FROM T_FELHASZNALO_OSSZES f
JOIN T_TANULO_OSSZES t on t.ID = f.ID
WHERE
f.C_VEZETEKNEV = @pVezeteknev AND f.C_UTONEV = @pUtonev AND f.C_ANYJANEVE = @pAnyjaNeve
AND f.C_SZULETESIHELY = @pSzuletesiHely AND f.C_SZULETESIDATUM = @pSzuletesiDatum
AND f.C_TANEVID = @pTanevId AND f.TOROLT = 'F' AND ISNULL(f.C_ELOTAG,'') = @pElotag
END
ELSE IF (@pCheckValidationType = 2) --Alkalmazott
BEGIN
IF (@pUserId IS NOT NULL)
SELECT f.ID FROM T_FELHASZNALO_OSSZES f
JOIN T_ALKALMAZOTT a on a.ID = f.ID
WHERE
f.C_VEZETEKNEV = @pVezeteknev AND f.C_UTONEV = @pUtonev AND f.C_ANYJANEVE = @pAnyjaNeve
AND f.C_SZULETESIHELY = @pSzuletesiHely AND f.C_SZULETESIDATUM = @pSzuletesiDatum AND f.ID != @pUserId
AND f.C_TANEVID = @pTanevId AND f.TOROLT = 'F' AND ISNULL(f.C_ELOTAG,'') = @pElotag
ELSE
SELECT f.ID FROM T_FELHASZNALO_OSSZES f
JOIN T_ALKALMAZOTT a on a.ID = f.ID
WHERE
f.C_VEZETEKNEV = @pVezeteknev AND f.C_UTONEV = @pUtonev AND f.C_ANYJANEVE = @pAnyjaNeve
AND f.C_SZULETESIHELY = @pSzuletesiHely AND f.C_SZULETESIDATUM = @pSzuletesiDatum
AND f.C_TANEVID = @pTanevId AND f.TOROLT = 'F' AND ISNULL(f.C_ELOTAG,'') = @pElotag
END
ELSE IF (@pCheckValidationType = 3) --Nebuló
BEGIN
IF EXISTS (SELECT 1 FROM T_NEBULO n
WHERE
n.C_TANULOCSALADINEVE = @pVezeteknev AND n.C_TANULOUTONEVE = @pUtonev
AND n.C_EDESANYJASZULETESICSALADINEV = @pAnyjaVezeteknev AND n.C_EDESANYJASZULETESIUTONEVE = @pAnyjaUtonev
AND n.C_SZULETESIHELY = @pSzuletesiHely AND n.C_SZULETESIIDO = @pSzuletesiDatum
AND (@pUserId IS NULL OR ID != @pUserId) AND (n.C_FELVETELSTATUSZA = @pFelvetelStatuszaFelveve OR n.C_FELVETELSTATUSZA = @pFelvetelStatuszaNemFelveve) AND n.TOROLT = 'F'
AND ISNULL(n.C_ELOTAG,'') = @pElotag
)
SELECT 1
ELSE
SELECT 0
END
END