260 lines
No EOL
6 KiB
Transact-SQL
260 lines
No EOL
6 KiB
Transact-SQL
-- =============================================
|
|
-- Author: Dőrr Tamás
|
|
-- Create date: 2017.12.14.
|
|
-- Description: -
|
|
-- =============================================
|
|
DROP PROCEDURE IF EXISTS [dbo].[sp_GetHazifeladatOrarend]
|
|
GO
|
|
|
|
CREATE PROCEDURE [dbo].[sp_GetHazifeladatOrarend]
|
|
@IntezmenyId int,
|
|
@TanevId int,
|
|
@IdoszakKezdete datetime,
|
|
@IdoszakVege datetime,
|
|
@TanarId int
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
|
|
CREATE TABLE #HaziFeladatok (
|
|
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)
|
|
,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
|
|
,HaziFeladatSzoveg nvarchar(max)
|
|
)
|
|
|
|
INSERT INTO #HaziFeladatok (
|
|
Id
|
|
,ORARENDIID
|
|
,Datum
|
|
,Bontott
|
|
,Hetirend
|
|
,HetNapja
|
|
,HetSorszam
|
|
,ErvenyessegKezdete
|
|
,ErvenyessegVege
|
|
,OraKezdete
|
|
,OraVege
|
|
,Oraszam
|
|
,TargyNev
|
|
,TargyNevForMobile
|
|
,TargykategoriaID
|
|
,Megtartott
|
|
,CsengetesiRendOraID
|
|
,CsengetesiRendID
|
|
,MaxNapiOraszam
|
|
,OsztalyNev
|
|
,TanevRendOsztalyCsoportId
|
|
,MegjelenesOka
|
|
,TanarNev
|
|
,TeremNev
|
|
,OraTipus
|
|
,Hianyzas
|
|
,Keses
|
|
,Ures
|
|
,HelyettesitoTanarID
|
|
,HelyettesitoTanarNev
|
|
,HelyettesitesId
|
|
,TanarID
|
|
,AdminAltalKiirt
|
|
,GroupId
|
|
,Tema
|
|
,TantargyId
|
|
,OsztCsopId
|
|
,HaziFeladatSzoveg
|
|
) SELECT h.ID Id
|
|
,null ORARENDIID
|
|
,h.C_FELADASDATUMA Datum
|
|
,'F' Bontott
|
|
,null Hetirend --minden héten?
|
|
,null HetNapja
|
|
,NULL HetSorszam
|
|
,h.C_FELADASDATUMA ErvenyessegKezdete
|
|
,h.C_HATARIDO ErvenyessegVege
|
|
,h.C_FELADASDATUMA OraKezdete
|
|
,h.C_FELADASDATUMA OraVege
|
|
,h.C_ORASZAM Oraszam
|
|
,ISNULL(t.C_ROVIDNEV, t.C_NEV) TargyNev
|
|
,COALESCE(t.C_ROVIDNEV, t.C_NEV) TargyNevForMobile
|
|
,NULL TargykategoriaID
|
|
,NULL Megtartott
|
|
,NULL CsengetesiRendOraID
|
|
,NULL CsengetesiRendID
|
|
,NULL MaxNapiOraszam
|
|
,ocs.C_NEV OsztalyNev
|
|
,NULL TanevRendOsztalyCsoportId
|
|
,NULL MegjelenesOka
|
|
,f.C_NYOMTATASINEV TanarNev
|
|
,NULL TeremNev
|
|
,'HaziFeladat' OraTipus
|
|
,NULL Hianyzas
|
|
,NULL Keses
|
|
,NULL Ures
|
|
,NULL HelyettesitoTanarID
|
|
,NULL HelyettesitoTanarNev
|
|
,NULL HelyettesitesId
|
|
,f.ID TanarID
|
|
,NULL AdminAltalKiirt
|
|
,NULL GroupId
|
|
,NULL Tema
|
|
,h.C_TANTARGYID TantargyId
|
|
,h.C_OSZTALYCSOPORTID OsztCsopId
|
|
,h.C_FELADATSZOVEGE HaziFeladatSzoveg
|
|
FROM T_HAZIFELADATOK h
|
|
INNER JOIN T_TANTARGY t ON t.id = h.C_TANTARGYID
|
|
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.id = h.C_OSZTALYCSOPORTID
|
|
INNER JOIN T_FELHASZNALO f ON f.id = h.C_ROGZITOID
|
|
WHERE f.id = @TanarId
|
|
|
|
CREATE TABLE #OrarendiOrakTanorak (
|
|
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)
|
|
,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
|
|
,OsztalyBontasId int
|
|
,IsEgyediNap char(1)
|
|
,TeremTobbOratLehetTartani char(1)
|
|
,KozpontiOraGroupId uniqueidentifier NULL
|
|
,KozpontilagToroltOraGroupId uniqueidentifier NULL
|
|
)
|
|
|
|
INSERT INTO #orarendiOrakTanorak (
|
|
Id
|
|
,ORARENDIID
|
|
,Datum
|
|
,Bontott
|
|
,Hetirend
|
|
,HetNapja
|
|
,HetSorszam
|
|
,ErvenyessegKezdete
|
|
,ErvenyessegVege
|
|
,OraKezdete
|
|
,OraVege
|
|
,Oraszam
|
|
,TargyNev
|
|
,TargyNevForMobile
|
|
,TargykategoriaID
|
|
,Megtartott
|
|
,CsengetesiRendOraID
|
|
,CsengetesiRendID
|
|
,MaxNapiOraszam
|
|
,OsztalyNev
|
|
,TanevRendOsztalyCsoportId
|
|
,MegjelenesOka
|
|
,TanarNev
|
|
,TeremNev
|
|
,OraTipus
|
|
,Hianyzas
|
|
,Keses
|
|
,Ures
|
|
,HelyettesitoTanarID
|
|
,HelyettesitoTanarNev
|
|
,HelyettesitesId
|
|
,TanarID
|
|
,AdminAltalKiirt
|
|
,GroupId
|
|
,Tema
|
|
,TantargyId
|
|
,OsztCsopId
|
|
,OsztalyBontasId
|
|
,IsEgyediNap
|
|
,TeremTobbOratLehetTartani
|
|
,KozpontiOraGroupId
|
|
,KozpontilagToroltOraGroupId
|
|
)
|
|
|
|
EXEC dbo.sp_GetOrarend
|
|
@pIntezmenyId = @IntezmenyId
|
|
,@pTanevId = @TanevId
|
|
,@pIdoszakKezdete = @IdoszakKezdete
|
|
,@pIdoszakVege = @IdoszakVege
|
|
,@pTanarId = @TanarId
|
|
,@pIsHelyettesitesNelkul = 0
|
|
,@pOsztalyCsoportId = NULL
|
|
,@pTanuloId = NULL
|
|
,@pTantargyId = NULL
|
|
,@pTeremId = NULL
|
|
,@pCsakOrarendiOrak = 0
|
|
,@pIsNapirend = 0 --utolsó paraméter: egyelőre csak órarendi (csengetési rendhez kötött) órák
|
|
|
|
INSERT INTO #HaziFeladatok
|
|
SELECT * ,NULL HaziFeladatSzoveg
|
|
FROM #orarendiOrakTanorak oot
|
|
WHERE NOT EXISTS (
|
|
SELECT 1
|
|
FROM #HaziFeladatok h
|
|
WHERE h.TanarID = oot.TanarID
|
|
AND h.TantargyId = oot.TantargyId
|
|
AND h.OsztCsopId = oot.OsztCsopId
|
|
AND h.Oraszam = oot.Oraszam)
|
|
|
|
SELECT * FROM #HaziFeladatok
|
|
END
|
|
GO |