111 lines
2.9 KiB
Transact-SQL
111 lines
2.9 KiB
Transact-SQL
IF OBJECT_ID('[dbo].[sp_CheckTanarOra]') IS NOT NULL BEGIN
|
|
DROP PROCEDURE [dbo].[sp_CheckTanarOra]
|
|
END
|
|
GO
|
|
|
|
CREATE PROCEDURE [dbo].[sp_CheckTanarOra]
|
|
@tanarId int,
|
|
@start datetime,
|
|
@end datetime,
|
|
@IntezmenyId int,
|
|
@TanevId int,
|
|
@oraszam int = null
|
|
AS
|
|
BEGIN
|
|
-- SET NOCOUNT ON added to prevent extra result sets from
|
|
-- interfering with SELECT statements.
|
|
SET NOCOUNT ON;
|
|
|
|
DECLARE @CsakOrarendiOrak BIT = 0; --tanórák is
|
|
DECLARE @IsNapirend BIT = 0; --csak órarendi (csengetési rendhez kötött) óra
|
|
DECLARE @IdoszakKezdete DATETIME = CAST(@start AS DATE);
|
|
DECLARE @IdoszakVege DATETIME = CAST(DATEADD(DAY, 1, @end) AS DATE);
|
|
CREATE TABLE #OrarendTable (
|
|
Id int
|
|
,ORARENDIID int
|
|
,Datum datetime
|
|
,Bontott char(1)
|
|
,Hetirend int
|
|
,HetNapja int
|
|
,HetSorszam int
|
|
,ErvenyessegKezdete datetime
|
|
,ErvenyessegVege datetime
|
|
,OraKezdete datetime
|
|
,OraVege datetime
|
|
,Oraszam int
|
|
,TargyNev nvarchar(300)
|
|
,TargyNevForMobile nvarchar(300)
|
|
,TargykategoriaID int
|
|
,Megtartott char(1)
|
|
,CsengetesiRendOraID int
|
|
,CsengetesiRendID int
|
|
,MaxNapiOraszam int
|
|
,OsztalyNev nvarchar(255)
|
|
,TanevRendOsztalyCsoportId int
|
|
,MegjelenesOka nvarchar(300)
|
|
,TanarNev nvarchar(255)
|
|
,TeremNev nvarchar(255)
|
|
,TeremId int
|
|
,OraTipus nvarchar(200)
|
|
,Hianyzas char(1)
|
|
,Keses char(1)
|
|
,Ures char(1)
|
|
,HelyettesitoTanarID int
|
|
,HelyettesitoTanarNev nvarchar(255)
|
|
,HelyettesitesId int
|
|
,TanarID int
|
|
,AdminAltalKiirt char(1)
|
|
,GroupId int
|
|
,Tema nvarchar(max)
|
|
,TantargyId int
|
|
,OsztCsopId int
|
|
,INDEX IX01 CLUSTERED (OraTipus, OraKezdete, OraVege)
|
|
)
|
|
|
|
INSERT INTO #OrarendTable (
|
|
Id,ORARENDIID,Datum,Bontott,Hetirend,HetNapja,HetSorszam,ErvenyessegKezdete,ErvenyessegVege,OraKezdete,OraVege,Oraszam,
|
|
TargyNev,TargyNevForMobile,TargykategoriaID,Megtartott,CsengetesiRendOraID,CsengetesiRendID,MaxNapiOraszam,OsztalyNev,TanevRendOsztalyCsoportId,
|
|
MegjelenesOka,TanarNev,TeremNev,TeremId,OraTipus,Hianyzas,Keses,Ures,HelyettesitoTanarID,HelyettesitoTanarNev,HelyettesitesId,TanarID,AdminAltalKiirt,GroupId,Tema,TantargyId,OsztCsopId)
|
|
EXEC sp_GetOrarend
|
|
@pIntezmenyId = @IntezmenyId
|
|
,@pTanevId = @TanevId
|
|
,@pIdoszakKezdete = @IdoszakKezdete
|
|
,@pIdoszakVege = @IdoszakVege
|
|
,@pTanarId = @tanarId
|
|
,@pIsHelyettesitesNelkul = 0
|
|
,@pOsztalyCsoportId = NULL
|
|
,@pTanuloId = NULL
|
|
,@pTantargyId = NULL
|
|
,@pTeremId = NULL
|
|
,@pCsakOrarendiOrak = @CsakOrarendiOrak
|
|
,@pIsNapirend = @IsNapirend
|
|
|
|
IF(@oraszam IS NULL)
|
|
BEGIN
|
|
SELECT
|
|
ORARENDIID AS C_ORARENDIORAID
|
|
,TargyNev
|
|
,OsztalyNev
|
|
,TanarNev
|
|
,TeremNev
|
|
FROM #OrarendTable
|
|
WHERE
|
|
OraTipus = 'OrarendiOra'
|
|
AND OraKezdete = @start
|
|
AND OraVege = @end
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
SELECT
|
|
ORARENDIID AS C_ORARENDIORAID
|
|
,TargyNev
|
|
,OsztalyNev
|
|
,TanarNev
|
|
,TeremNev
|
|
FROM #OrarendTable
|
|
WHERE
|
|
OraTipus = 'OrarendiOra'
|
|
AND Oraszam = @oraszam
|
|
END
|
|
|
|
END
|