kreta/Kreta.DataAccess.Migrations/DBScripts/Dashboard/InsertRendszeruzenetFaliujsag_Popup_20210114_1.sql
2024-03-13 00:33:46 +01:00

257 lines
11 KiB
Transact-SQL

-- Amiket át kell írni:
-- - @ervKezdete(opcionális): Az érvényesség kezdete, hogy mikortól jelenjen meg a faliújságbejegyzés. Alapból az aktuális dátum, de lehet későbbre is időzíteni.
-- - @ervVege: Az érvényesség kezdete, hogy meddig jelenjen meg a faliújságbejegyzés.
-- - @ertesitesKuldve: Ha 'F', akkor fogunk küldeni push notification-t. Ha 'T', akkor nem fogunk küldeni push notification-t.
-- - @targy: A faliújság bejegyzés tárgya.
-- - @tartalom: Az üzenet tartalma. Ide html tag-ek nélkül kell, mivel ezt a mobil jeleníti meg. A mobil megjeleníti szépen az entereket, úgyhogy a bekezdések elválasztásához azokat használjuk.
-- - @tartalomWeb: Az üzenet tartalma. Ide html tak-ekkel kell, mivel ezt web-es felület jeleníti meg. Az alábbi tegeket használjuk formázásra:
-- - <br />: Sortörés
-- - <a style="color: blue;" href="{url}" target="_blank">{az url helyett megjelenő szöveg}</a>
/* FaliUjsag */
DECLARE
@rendszeruzenetId int
,@faliujsagUzenedId int
,@intezmenyId int
,@tanevid int
,@targy nvarchar(max)
,@tartalom nvarchar(max)
,@ervKezdete datetime
,@ervVege datetime
,@ertesitesKuldve char(1)
,@tartalomWeb nvarchar(max)
SET @ervKezdete = '20210115 08:00'
SET @ervVege = '20210129 23:59:59'
SET @ertesitesKuldve = 'F'
SET @targy = 'Továbbtanulás'
SET @tartalom = N'
Kedves Szülő!
Az Ön családja is fontos döntés előtt áll, hiszen hamarosan választaniuk kell, hogy gyermekük hol és milyen területen folytassa tovább tanulmányait. A döntés nem könnyű, egy életpálya kiválasztása nagy körültekintést igényel.
Az új szakképzési rendszer ezt a választást kívánja megkönnyíteni, és számos eszközzel támogatni. A legfontosabb változás, hogy az általános iskolai tanulmányokat befejező diáknak már nem szakmát kell választania, hanem egy érdeklődésének megfelelő irányt, azaz ágazatot.
Az ehhez kapcsolódó tájékoztató levelünket az alábbi https://tudasbazis.ekreta.hu/download/attachments/2424949/Sz%C3%BCl%C5%91i_t%C3%A1j%C3%A9koztat%C3%B3_szakk%C3%A9pz%C3%A9s_20210115_v.pdf?api=v2 linken érhetik el!
'
SET @tartalomWeb = N'
<p><strong>Kedves Szülő!</strong></p>
<p style="text-align: justify;">Az Ön családja is fontos döntés előtt áll, hiszen <strong>hamarosan választaniuk kell</strong>, hogy gyermekük hol és milyen területen folytassa tovább tanulmányait. A döntés nem könnyű, egy életpálya kiválasztása nagy körültekintést igényel.</p>
<p style="text-align: justify;">Az új szakképzési rendszer ezt a választást kívánja megkönnyíteni, és számos eszközzel támogatni. A legfontosabb változás, hogy az általános iskolai tanulmányokat befejező diáknak <strong>már nem szakmát kell választania</strong>, hanem egy érdeklődésének megfelelő irányt, azaz <strong>ágazatot</strong>.</p>
<p>Az ehhez kapcsolódó tájékoztató levelünket az alábbi <a href="https://tudasbazis.ekreta.hu/download/attachments/2424949/Sz%C3%BCl%C5%91i_t%C3%A1j%C3%A9koztat%C3%B3_szakk%C3%A9pz%C3%A9s_20210115_v.pdf?api=v2" target="_blank"><strong>linken</strong></a> érhetik el!</p>
'
DECLARE IntCursor CURSOR LOCAL FOR
SELECT i.ID , tv.ID, MIN(fh.ID)
FROM T_INTEZMENY i
INNER JOIN T_TANEV tv On tv.C_INTEZMENYID = i.ID AND tv.TOROLT = 'F' AND tv.C_AKTIV = 'T'
INNER JOIN T_FELHASZNALO fh ON fh.C_TANEVID = tv.ID AND fh.TOROLT = 'F' AND fh.C_NYOMTATASINEV = N'Rendszerüzenet'
WHERE i.TOROLT = 'F'
GROUP BY i.ID , tv.ID
OPEN IntCursor
FETCH NEXT FROM IntCursor INTO @intezmenyId, @tanevid, @rendszeruzenetId
WHILE @@FETCH_STATUS = 0 BEGIN
IF NOT EXISTS (SELECT 1 FROM T_TANULOESEMENY WHERE C_TANEVID = @tanevid AND C_TARGY = @targy AND TOROLT = 'F' AND C_FELJEGYZOID = @rendszeruzenetId) BEGIN
INSERT INTO T_TANULOESEMENY (
C_KEZDETE
,C_MEGJEGYZES
,C_TARTALOM
,C_TARTALOMWEB
,C_TIPUS
,C_TARGY
,C_FALIUJSAGMEGJELENES
,C_MINDENKINEK
,C_VEGE
,C_ROGZITESDATUMA
,C_ISERTESITESELKULDVE
,C_FELJEGYZOID
,C_TANTARGYID
,C_TANITASIORAID
,C_INTEZMENYID
,C_TANEVID
,TOROLT
,SERIAL
,LASTCHANGED
,CREATED
,MODIFIER
,CREATOR
,ELOZOTANEVIREKORDID
) SELECT
@ervKezdete AS C_KEZDETE -- datetime
,'Rendszerüzenet' AS C_MEGJEGYZES -- nvarchar(255)
,@tartalom AS C_TARTALOM -- * nvarchar(max)
,@tartalomWeb AS C_TARTALOMWEB -- nvarchar(max)
,5482 AS C_TIPUS -- * int
,@targy AS C_TARGY -- * nvarchar(255)
,'T' AS C_FALIUJSAGMEGJELENES -- char(1)
,'T' AS C_MINDENKINEK -- char(1)
,@ervVege AS C_VEGE -- datetime
,GETDATE() AS C_ROGZITESDATUMA -- * datetime
,@ertesitesKuldve AS C_ISERTESITESELKULDVE -- * char(1)
,@RendszeruzenetId AS C_FELJEGYZOID -- * int
,NULL AS C_TANTARGYID -- int
,NULL AS C_TANITASIORAID -- int
,@intezmenyId AS C_INTEZMENYID -- * int
,@tanevid AS C_TANEVID -- * int
,'F' AS TOROLT -- * char(1)
,0 AS SERIAL -- * int
,GETDATE() AS LASTCHANGED -- * datetime
,GETDATE() AS CREATED -- * datetime
,NULL AS MODIFIER -- int
,NULL AS CREATOR -- int
,NULL AS ELOZOTANEVIREKORDID -- int
SET @faliujsagUzenedId = SCOPE_IDENTITY()
INSERT INTO T_OSZTALYCSOPORT_TANULOESEMENY (C_OSZTALYCSOPORTID, C_TANULOESEMENYID)
SELECT o.ID, @faliujsagUzenedId
FROM T_OSZTALY o
INNER JOIN T_OSZTALYCSOPORT ocs on ocs.ID = o.ID AND ocs.TOROLT = 'F'
WHERE o.TOROLT = 'F' AND C_ALTANEVID = @tanevid
AND ocs.C_EVFOLYAMTIPUSA IN (1310,7110)
INSERT INTO T_TANULO_TANULOESEMENY (C_TANULOID, C_TANULOESEMENYID)
SELECT DISTINCT t.ID, @faliujsagUzenedId
FROM T_TANULO t
INNER JOIN T_TANULOCSOPORT tcs ON tcs.C_TANULOID = t.ID AND tcs.TOROLT = 'F' AND tcs.C_BELEPESDATUM < GETDATE() AND (tcs.C_KILEPESDATUM > GETDATE() OR tcs.C_KILEPESDATUM IS NULL)
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND ocs.TOROLT = 'F'
INNER JOIN T_OSZTALY o ON o.ID = ocs.ID AND o.TOROLT = 'F'
WHERE t.TOROLT = 'F' AND t.C_ALTANEVID = @tanevid
AND ocs.C_EVFOLYAMTIPUSA IN (1310,7110)
END
--OPEN IntCursor
FETCH NEXT FROM IntCursor INTO @intezmenyId, @tanevid, @rendszeruzenetId
END -- while
GO
/* END FaliUjsag */
/* Popup Dashboard üzenet: insert! - 2021.01.14 - KRETA2-7213 */
-- Popup
IF NOT EXISTS (SELECT 1 FROM [dbo].[T_DASHBOARDUZENET] WHERE C_EGYEDIAZONOSITO = 'POPUP_TOVABBT0114')
INSERT INTO [dbo].[T_DASHBOARDUZENET] (C_CIM, C_EGYEDIAZONOSITO, C_ERVENYESSEGKEZDETE, C_ERVENYESSEGVEGE, C_KIEMELTIDOSZAKVEGE, C_SORREND, C_TARTALOM, C_DASHBOARDUZENETKATEGORIAID, C_ISPOPUP)
VALUES (N'Továbbtanulás',N'POPUP_TOVABBT0114',NULL,NULL,NULL,0
,N'<div>
<p><strong>Kedves Szülő!</strong></p>
<p style="text-align: justify;">Az Ön családja is fontos döntés előtt áll, hiszen <strong>hamarosan választaniuk kell</strong>, hogy gyermekük hol és milyen területen folytassa tovább tanulmányait. A döntés nem könnyű, egy életpálya kiválasztása nagy körültekintést igényel.</p>
<p style="text-align: justify;">Az új szakképzési rendszer ezt a választást kívánja megkönnyíteni, és számos eszközzel támogatni. A legfontosabb változás, hogy az általános iskolai tanulmányokat befejező diáknak <strong>már nem szakmát kell választania</strong>, hanem egy érdeklődésének megfelelő irányt, azaz <strong>ágazatot</strong>.</p>
<p>Az ehhez kapcsolódó tájékoztató levelünket az alábbi <a href="https://tudasbazis.ekreta.hu/download/attachments/2424949/Sz%C3%BCl%C5%91i_t%C3%A1j%C3%A9koztat%C3%B3_szakk%C3%A9pz%C3%A9s_20210115_v.pdf?api=v2" target="_blank"><strong>linken</strong></a> érhetik el!</p>
</div>'
,10,'T')
-- Tanulok
INSERT INTO T_DASHBOARDUZENETFELHASZNALO (
C_MEGJELENITESEKSZAMA
,C_UTOLSOMEGTEKINTESIDEJE
,C_EGYEDIMUVELET
,C_DASHBOARDUZENETID
,C_FELHASZNALOID
,C_INTEZMENYID
,C_TANEVID
,TOROLT
,SERIAL
,LASTCHANGED
,CREATED
,MODIFIER
,CREATOR
,ELOZOTANEVIREKORDID
,C_GONDVISELOID
)
SELECT
1 AS C_MEGJELENITESEKSZAMA -- * int
,NULL AS C_UTOLSOMEGTEKINTESIDEJE -- datetime
,NULL AS C_EGYEDIMUVELET -- nvarchar(255)
,d.ID AS C_DASHBOARDUZENETID -- * int
,t.ID AS C_FELHASZNALOID -- * int
,t.C_ALINTEZMENYID AS C_INTEZMENYID -- * int
,t.C_ALTANEVID AS C_TANEVID -- * int
,'F' AS TOROLT -- * char(1)
,0 AS SERIAL -- * int
,GETDATE() AS LASTCHANGED -- * datetime
,GETDATE() AS CREATED -- * datetime
,NULL AS MODIFIER -- int
,NULL AS CREATOR -- int
,NULL AS ELOZOTANEVIREKORDID -- int
,NULL AS C_GONDVISELOID -- int
FROM T_TANULO t
INNER JOIN T_INTEZMENY i ON i.ID = t.C_ALINTEZMENYID AND i.TOROLT = 'F'
--INNER JOIN #intezmenyLista il ON il.C_AZONOSITO COLLATE Hungarian_CI_AI = i.C_AZONOSITO COLLATE Hungarian_CI_AI
INNER JOIN T_TANEV tv ON tv.ID = t.C_ALTANEVID AND tv.C_INTEZMENYID = i.ID AND tv.TOROLT = 'F' AND tv.C_AKTIV = 'T'
INNER JOIN T_DASHBOARDUZENET d ON d.C_EGYEDIAZONOSITO = 'POPUP_TOVABBT0114'
INNER JOIN T_TANULOCSOPORT tcs ON tcs.C_TANULOID = t.ID AND tcs.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND ocs.TOROLT = 'F'
INNER JOIN T_OSZTALY o ON o.ID = ocs.ID AND o.TOROLT = 'F'
WHERE
t.TOROLT = 'F'
AND ocs.C_EVFOLYAMTIPUSA IN (1310,7110)
AND NOT EXISTS(
select *
from T_DASHBOARDUZENETFELHASZNALO df
where df.C_DASHBOARDUZENETID = d.ID
and df.C_INTEZMENYID = i.ID
and df.C_TANEVID = t.C_ALTANEVID
and df.C_FELHASZNALOID = t.ID
)
GO
-- Gondviselok
INSERT INTO T_DASHBOARDUZENETFELHASZNALO (
C_MEGJELENITESEKSZAMA
,C_UTOLSOMEGTEKINTESIDEJE
,C_EGYEDIMUVELET
,C_DASHBOARDUZENETID
,C_FELHASZNALOID
,C_INTEZMENYID
,C_TANEVID
,TOROLT
,SERIAL
,LASTCHANGED
,CREATED
,MODIFIER
,CREATOR
,ELOZOTANEVIREKORDID
,C_GONDVISELOID
) SELECT
1 AS C_MEGJELENITESEKSZAMA -- * int
,NULL AS C_UTOLSOMEGTEKINTESIDEJE -- datetime
,NULL AS C_EGYEDIMUVELET -- nvarchar(255)
,d.ID AS C_DASHBOARDUZENETID -- * int
,f.ID AS C_FELHASZNALOID -- * int
,f.C_INTEZMENYID AS C_INTEZMENYID -- * int
,f.C_TANEVID AS C_TANEVID -- * int
,'F' AS TOROLT -- * char(1)
,0 AS SERIAL -- * int
,GETDATE() AS LASTCHANGED -- * datetime
,GETDATE() AS CREATED -- * datetime
,NULL AS MODIFIER -- int
,NULL AS CREATOR -- int
,NULL AS ELOZOTANEVIREKORDID -- int
,g.ID AS C_GONDVISELOID -- int
FROM T_FELHASZNALO f
INNER JOIN T_INTEZMENY i ON i.ID = f.C_INTEZMENYID AND i.TOROLT = 'F'
--INNER JOIN #intezmenyLista il ON il.C_AZONOSITO COLLATE Hungarian_CI_AI = i.C_AZONOSITO COLLATE Hungarian_CI_AI
INNER JOIN T_TANEV tv ON tv.ID = f.C_TANEVID AND tv.C_INTEZMENYID = i.ID AND tv.TOROLT = 'F' AND tv.C_AKTIV = 'T'
INNER JOIN T_GONDVISELO g ON g.C_TANULOID = f.ID AND g.TOROLT = 'F'
INNER JOIN T_DASHBOARDUZENET d ON d.C_EGYEDIAZONOSITO = 'POPUP_TOVABBT0114'
INNER JOIN T_TANULOCSOPORT tcs ON tcs.C_TANULOID = f.ID AND tcs.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND ocs.TOROLT = 'F'
INNER JOIN T_OSZTALY o ON o.ID = ocs.ID AND o.TOROLT = 'F'
WHERE
f.TOROLT = 'F'
AND ocs.C_EVFOLYAMTIPUSA IN (1310,7110)
AND NOT EXISTS(
SELECT * FROM T_DASHBOARDUZENETFELHASZNALO du
WHERE du.C_INTEZMENYID = i.ID
AND du.C_TANEVID = tv.ID
AND du.C_DASHBOARDUZENETID = d.ID
AND du.C_FELHASZNALOID = f.ID
AND du.C_GONDVISELOID = g.ID
)
GO