IF OBJECT_ID('dbo.sp_GetNemNaplozottOrarendiOrak') IS NOT NULL BEGIN
  DROP PROCEDURE dbo.sp_GetNemNaplozottOrarendiOrak
END
GO

CREATE PROCEDURE [dbo].[sp_GetNemNaplozottOrarendiOrak]
	@IntezmenyId int,
	@TanevId int,
	@IdoszakKezdete datetime,
	@IdoszakVege datetime,
	@TanarId int,
	@OsztalyCsoportId int,
	@TantargyId int
AS
BEGIN
	SET NOCOUNT ON;
	
	DECLARE @CsakOrarendiOrak bit = 0;
	DECLARE @OrarendTable TABLE  (
		Id int
		,ORARENDIID int
		,Bontott char(1)
		,Hetirend int
		,HetNapja int
		,ErvenyessegKezdete datetime
		,ErvenyessegVege datetime
		,OraKezdete datetime
		,OraVege datetime
		,Oraszam int
		,TargyNev nvarchar(300)
		,TargyNevForMobile nvarchar(300)
		,TargykategoriaID int
		,Megtartott char(1)
		,CsengetesiRendOraID int
		,MaxNapiOraszam int
		,OsztalyNev nvarchar(255)
		,TanevRendOsztalyCsoportId int
		,MegjelenesOka nvarchar(300)
		,TanarNev nvarchar(255)
		,TeremNev nvarchar(255)
		,OraTipus nvarchar(200)
		,Hianyzas char(1)
		,Keses char(1)
		,Ures char(1)
		,HelyettesitoTanarID int
		,HelyettesitoTanarNev nvarchar(255)
		,TanarID int
		,HelyettesitesId int
		,AdminAltalKiirt  char(1)
		,GroupId int
		,Tema nvarchar(max)
		,TargyId int
		,OsztCsopId int
   )
   
	insert into @OrarendTable (
		Id,ORARENDIID,Bontott,Hetirend,HetNapja,ErvenyessegKezdete,ErvenyessegVege,OraKezdete,OraVege,Oraszam,
		TargyNev,TargyNevForMobile,TargykategoriaID,Megtartott,CsengetesiRendOraID,MaxNapiOraszam,OsztalyNev,TanevRendOsztalyCsoportId,
		MegjelenesOka,TanarNev,TeremNev,OraTipus,Hianyzas,Keses,Ures,HelyettesitoTanarID,HelyettesitoTanarNev,TanarID,AdminAltalKiirt,GroupId,Tema,TargyId,OsztCsopId)
	exec sp_GetOrarend @IntezmenyId,@TanevId,@IdoszakKezdete,@IdoszakVege,@TanarId,@OsztalyCsoportId,null,@CsakOrarendiOrak
	
	insert into @OrarendTable (
		Id,ORARENDIID,Bontott,Hetirend,HetNapja,ErvenyessegKezdete,ErvenyessegVege,OraKezdete,OraVege,
		TargyNev,Megtartott,OsztalyNev,TanevRendOsztalyCsoportId,
		TanarNev,TeremNev,OraTipus,Hianyzas,Keses,Ures,HelyettesitoTanarID,HelyettesitoTanarNev,TanarID,HelyettesitesId,AdminAltalKiirt,GroupId,Tema,TargyId,OsztCsopId)
	exec sp_GetOrarendTanoranKivuli @IntezmenyId,@TanevId,@IdoszakKezdete,@IdoszakVege,@TanarId,@OsztalyCsoportId,null,@CsakOrarendiOrak
	
	select
		*, case
			when tmp.HelyettesitoTanarID is not null then tmp.TanarNev
		else null end	
			as HelyettesitettPedagogusNev
	from @OrarendTable tmp
	where
		tmp.OraTipus = 'OrarendiOra' and (@TantargyId is null or tmp.TargyId = @TantargyId)

END