Infocenter Filter angepasst damit die korrekten Personen angezeigt

werden
This commit is contained in:
Andreas Österreicher
2018-01-12 15:52:20 +01:00
parent 937eefcf37
commit 9669360b9a
@@ -2,60 +2,75 @@
$filterWidgetArray = array(
'query' => '
SELECT *
FROM (
SELECT p.person_id AS "PersonId",
p.vorname AS "Vorname",
p.nachname AS "Nachname",
p.gebdatum AS "Gebdatum",
(SELECT zeitpunkt
FROM system.tbl_log
WHERE app = \'aufnahme\'
AND person_id = p.person_id
ORDER BY zeitpunkt DESC
LIMIT 1) AS "LastAction",
(SELECT insertvon
FROM system.tbl_log
WHERE app = \'aufnahme\'
AND person_id = p.person_id
ORDER BY zeitpunkt DESC
LIMIT 1) AS "User/Operator",
(SELECT pss.studiensemester_kurzbz
FROM public.tbl_prestudentstatus pss
INNER JOIN public.tbl_prestudent ps USING(prestudent_id)
WHERE pss.status_kurzbz = \'Interessent\'
AND pss.bestaetigtam IS NULL
AND pss.bestaetigtvon IS NULL
AND ps.person_id = p.person_id
ORDER BY pss.datum DESC, pss.insertamum DESC, pss.ext_id DESC
LIMIT 1) AS "Studiensemester",
(SELECT pss.bewerbung_abgeschicktamum
FROM public.tbl_prestudentstatus pss
INNER JOIN public.tbl_prestudent ps USING(prestudent_id)
WHERE pss.status_kurzbz = \'Interessent\'
AND pss.bestaetigtam IS NULL
AND pss.bestaetigtvon IS NULL
AND ps.person_id = p.person_id
ORDER BY pss.datum DESC, pss.insertamum DESC, pss.ext_id DESC
LIMIT 1) AS "SendDate"
FROM public.tbl_person p
WHERE p.aktiv = TRUE
AND p.person_id IN (
SELECT person_id
FROM public.tbl_prestudent
INNER JOIN public.tbl_prestudentstatus USING(prestudent_id)
WHERE status_kurzbz = \'Interessent\'
AND bestaetigtam IS NULL
AND bestaetigtvon IS NULL)
GROUP BY 1, 2, 4, 5, 6, 7
ORDER BY "LastAction" DESC
) tbl_infocenter
WHERE "Studiensemester" IN (
SELECT studiensemester_kurzbz
FROM public.tbl_studiensemester
WHERE (NOW() >= start AND NOW() <= ende)
OR start > NOW()
)
SELECT
p.person_id AS "PersonId",
p.vorname AS "Vorname",
p.nachname AS "Nachname",
p.gebdatum AS "Gebdatum",
(
SELECT zeitpunkt
FROM system.tbl_log
WHERE app = \'aufnahme\'
AND person_id = p.person_id
ORDER BY zeitpunkt DESC
LIMIT 1
) AS "LastAction",
(
SELECT insertvon
FROM system.tbl_log
WHERE app = \'aufnahme\'
AND person_id = p.person_id
ORDER BY zeitpunkt DESC
LIMIT 1
) AS "User/Operator",
(
SELECT
pss.studiensemester_kurzbz
FROM
public.tbl_prestudentstatus pss
INNER JOIN public.tbl_prestudent ps USING(prestudent_id)
WHERE pss.status_kurzbz = \'Interessent\'
AND pss.bestaetigtam IS NULL
AND pss.bestaetigtvon IS NULL
AND ps.person_id = p.person_id
ORDER BY pss.datum DESC, pss.insertamum DESC, pss.ext_id DESC
LIMIT 1
) AS "Studiensemester",
(
SELECT pss.bewerbung_abgeschicktamum
FROM
public.tbl_prestudentstatus pss
INNER JOIN public.tbl_prestudent ps USING(prestudent_id)
WHERE pss.status_kurzbz = \'Interessent\'
AND pss.bestaetigtam IS NULL
AND pss.bestaetigtvon IS NULL
AND ps.person_id = p.person_id
ORDER BY pss.datum DESC, pss.insertamum DESC, pss.ext_id DESC
LIMIT 1
) AS "SendDate"
FROM public.tbl_person p
WHERE
EXISTS(
SELECT 1
FROM public.tbl_prestudent
WHERE person_id=p.person_id
AND \'Interessent\' = (SELECT status_kurzbz FROM public.tbl_prestudentstatus
WHERE prestudent_id=tbl_prestudent.prestudent_id
ORDER BY datum DESC, insertamum DESC, ext_id DESC
LIMIT 1
)
AND EXISTS (SELECT 1 FROM public.tbl_prestudentstatus
WHERE prestudent_id=tbl_prestudent.prestudent_id
AND status_kurzbz=\'Interessent\' AND bestaetigtam IS NULL and bestaetigtvon IS NULL
AND studiensemester_kurzbz IN (
SELECT studiensemester_kurzbz
FROM public.tbl_studiensemester
WHERE (NOW() >= start AND NOW() <= ende)
OR start > NOW()
)
)
)
ORDER BY "LastAction" DESC
',
'hideHeader' => false,
'hideSave' => false,