kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20190718102539_KRETA2_462/sp_GetFaliujsagBejegyzesek.sql
2024-03-13 00:33:46 +01:00

47 lines
2.1 KiB
Transact-SQL

-- ===================================================================================================
-- Description: <Felhasználóhoz tartozó faliújságbejegyzések és tanévrendje események lekérdezése>
-- ===================================================================================================
DROP PROCEDURE IF EXISTS [dbo].[sp_GetFaliujsagBejegyzesek]
GO
CREATE PROCEDURE [dbo].[sp_GetFaliujsagBejegyzesek]
@pUserId int
,@pDate datetime
,@pEsemenyTipusFaliujsagBejegyzes int
,@pFeladatKategoriaId int
AS
BEGIN
SET NOCOUNT ON;
SELECT DISTINCT
tes.ID AS ID
,tes.C_KEZDETE AS Erv_kezd
,tes.C_VEGE AS Erv_vege
,tes.C_TARGY AS Cim
,tes.C_TARTALOM AS Szoveg
,fh.C_NYOMTATASINEV AS Bejegyzo
,fh.C_PROFILKEP AS ProfilKep
,IIF(ma.C_VEZETOIORASZAMOK = 6571, ma.C_MUNKAKORTIPUSA, ma.C_VEZETOIORASZAMOK) AS Munkakor
FROM T_TANULOESEMENY tes
INNER JOIN T_FELHASZNALO fh ON tes.C_FELJEGYZOID = fh.ID AND fh.TOROLT = 'F'
LEFT JOIN T_MUNKAUGYIADATOK ma ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = 'F'
LEFT JOIN T_TANULO_TANULOESEMENY ttes ON ttes.C_TANULOID = @pUserId AND ttes.C_TANULOESEMENYID = tes.ID
LEFT JOIN T_OSZTALYCSOPORT_TANULOESEMENY ocstes ON ocstes.C_OSZTALYCSOPORTID IN (
SELECT
tcs.C_OSZTALYCSOPORTID
FROM T_TANULOCSOPORT tcs
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND (ocs.C_FELADATKATEGORIAID = @pFeladatKategoriaId OR @pFeladatKategoriaId IS NULL)
WHERE tcs.C_TANULOID = @pUserId
AND tcs.C_BELEPESDATUM <= @pDate
AND (tcs.C_KILEPESDATUM >= @pDate OR tcs.C_KILEPESDATUM IS NULL)
AND tcs.TOROLT = 'F'
)
AND ocstes.C_TANULOESEMENYID = tes.ID
WHERE (tes.C_MINDENKINEK = 'T' OR ocstes.C_OSZTALYCSOPORTID IS NOT NULL OR ttes.C_TANULOID = @pUserId)
AND tes.C_KEZDETE <= @pDate
AND (tes.C_VEGE IS NULL OR tes.C_VEGE >= @pDate)
AND tes.TOROLT = 'F'
AND (tes.C_FALIUJSAGMEGJELENES = 'T' AND ttes.C_TANULOID = @pUserId OR tes.C_TIPUS = @pEsemenyTipusFaliujsagBejegyzes)
ORDER BY tes.C_KEZDETE DESC
END
GO