DROP PROCEDURE IF EXISTS [dbo].[sp_GetFelhasznaloErintettOsztalyai]
GO

CREATE PROCEDURE [dbo].[sp_GetFelhasznaloErintettOsztalyai]
	 @felhasznaloId INT
	,@feladatellatasihelyId INT = NULL
AS
BEGIN
	SET NOCOUNT ON;

	SELECT 
		 ocs.ID AS ID
		,ocs.C_NEV AS Nev
		,'1' AS Tipus
		,cs.C_TIPUSA AS CsoportTipusa
		,ocs.C_EVFOLYAMTIPUSA AS Evfolyam
		,feladatellatasiHely.C_OKTATASINEVELESIFELADATTIPUS AS EllatottFeladatTipusId
	FROM T_OSZTALYCSOPORT ocs 
	  LEFT JOIN T_OSZTALY o ON o.ID=ocs.ID AND (o.C_OSZTALYFONOKID=@felhasznaloId OR o.C_OFOHELYETTESID = @felhasznaloId)
	  LEFT JOIN T_CSOPORT cs ON cs.ID=ocs.ID AND cs.C_CSOPORTVEZETOID=@felhasznaloId
	  INNER JOIN T_FELADATELLATASIHELY feladatellatasiHely ON ocs.C_FELADATELLATASIHELYID = feladatellatasiHely.ID
	WHERE ocs.TOROLT = 'F' AND (@feladatellatasihelyId IS NULL OR ocs.C_FELADATELLATASIHELYID=@feladatellatasihelyId)
	  AND NOT (o.ID IS NULL AND cs.ID IS NULL)
	ORDER BY cs.C_TIPUSA, ocs.C_EVFOLYAMTIPUSA 
END
GO