fix(geplante-nachrichten): fix wrong column refs in content builders — abgesagt bool, join users for names, correct status values
This commit is contained in:
@@ -92,7 +92,7 @@ async function buildEventSummary(startDate: Date, endDate: Date): Promise<{ item
|
||||
const result = await pool.query(
|
||||
`SELECT titel, datum_von, datum_bis
|
||||
FROM veranstaltungen
|
||||
WHERE status != 'abgesagt'
|
||||
WHERE abgesagt = FALSE
|
||||
AND datum_von <= $2
|
||||
AND datum_bis >= $1
|
||||
ORDER BY datum_von ASC`,
|
||||
@@ -117,18 +117,19 @@ async function buildEventSummary(startDate: Date, endDate: Date): Promise<{ item
|
||||
async function buildBirthdayList(startDate: Date, endDate: Date): Promise<{ items: string; count: string }> {
|
||||
// Find members whose birthday (month+day) falls within the window
|
||||
const result = await pool.query(
|
||||
`SELECT vorname, nachname, geburtsdatum
|
||||
FROM mitglieder_profile
|
||||
WHERE status IN ('aktiv', 'kind', 'jugend', 'reserve')
|
||||
AND geburtsdatum IS NOT NULL
|
||||
`SELECT u.given_name AS vorname, u.family_name AS nachname, mp.geburtsdatum
|
||||
FROM mitglieder_profile mp
|
||||
JOIN users u ON u.id = mp.user_id
|
||||
WHERE mp.status IN ('aktiv', 'jugendfeuerwehr', 'ehrenmitglied')
|
||||
AND mp.geburtsdatum IS NOT NULL
|
||||
AND (
|
||||
(EXTRACT(MONTH FROM geburtsdatum), EXTRACT(DAY FROM geburtsdatum))
|
||||
(EXTRACT(MONTH FROM mp.geburtsdatum), EXTRACT(DAY FROM mp.geburtsdatum))
|
||||
IN (
|
||||
SELECT EXTRACT(MONTH FROM d::date), EXTRACT(DAY FROM d::date)
|
||||
FROM generate_series($1::date, $2::date, '1 day'::interval) AS d
|
||||
)
|
||||
)
|
||||
ORDER BY EXTRACT(MONTH FROM geburtsdatum), EXTRACT(DAY FROM geburtsdatum)`,
|
||||
ORDER BY EXTRACT(MONTH FROM mp.geburtsdatum), EXTRACT(DAY FROM mp.geburtsdatum)`,
|
||||
[startDate.toISOString().slice(0, 10), endDate.toISOString().slice(0, 10)],
|
||||
);
|
||||
|
||||
@@ -149,10 +150,11 @@ async function buildBirthdayList(startDate: Date, endDate: Date): Promise<{ item
|
||||
async function buildDienstjubilaeen(startDate: Date, endDate: Date): Promise<{ items: string; count: string }> {
|
||||
// Members hitting a 5-year milestone in the window
|
||||
const result = await pool.query(
|
||||
`SELECT vorname, nachname, eintrittsdatum
|
||||
FROM mitglieder_profile
|
||||
WHERE status IN ('aktiv', 'reserve')
|
||||
AND eintrittsdatum IS NOT NULL`,
|
||||
`SELECT u.given_name AS vorname, u.family_name AS nachname, mp.eintrittsdatum
|
||||
FROM mitglieder_profile mp
|
||||
JOIN users u ON u.id = mp.user_id
|
||||
WHERE mp.status IN ('aktiv', 'ehrenmitglied')
|
||||
AND mp.eintrittsdatum IS NOT NULL`,
|
||||
);
|
||||
|
||||
const jubilare: Array<{ name: string; years: number; date: string }> = [];
|
||||
|
||||
Reference in New Issue
Block a user