From e6269b121bc380ca33683c9dc50596083f741a8e Mon Sep 17 00:00:00 2001 From: ma0048 Date: Mon, 6 Feb 2023 13:04:32 +0100 Subject: [PATCH] - fixed zgv uebernehmen --- application/models/crm/Prestudent_model.php | 32 +++++++++++++++++++-- public/js/infocenter/infocenterDetails.js | 8 +++++- 2 files changed, 36 insertions(+), 4 deletions(-) diff --git a/application/models/crm/Prestudent_model.php b/application/models/crm/Prestudent_model.php index f37b715f4..d05b63303 100644 --- a/application/models/crm/Prestudent_model.php +++ b/application/models/crm/Prestudent_model.php @@ -309,13 +309,39 @@ class Prestudent_model extends DB_Model */ public function getLastPrestudent($person_id, $withzgv = false) { - $qry = 'SELECT * FROM public.tbl_prestudent - WHERE person_id = ? + $qry = 'SELECT * FROM public.tbl_prestudent ps %s + WHERE ps.person_id = ? ORDER BY updateamum DESC NULLS LAST, insertamum DESC NULLS LAST LIMIT 1'; - $zgvwhere = $withzgv === true ? 'AND zgv_code IS NOT NULL' : ''; + $zgvwhere = ''; + if ($withzgv === true) + { + $zgvwhere = ' + LEFT JOIN ( + SELECT ps2.zgvmas_code, + ps2.zgvmanation, + ps2.zgvmadatum, + ps2.zgvmaort, + ps2.zgvmas_erfuellt, + ps2.person_id + FROM tbl_prestudent ps2 + WHERE zgvmas_code IS NOT NULL + ORDER BY updateamum DESC NULLS LAST, insertamum DESC NULLS LAST + ) zgvmas ON zgvmas.person_id = ps.person_id + LEFT JOIN ( + SELECT ps2.zgv_code, + ps2.zgvnation, + ps2.zgvdatum, + ps2.zgvort, + ps2.zgv_erfuellt, + ps2.person_id + FROM tbl_prestudent ps2 + WHERE zgv_code IS NOT NULL + ORDER BY updateamum DESC NULLS LAST, insertamum DESC NULLS LAST + )zgv ON zgv.person_id = ps.person_id'; + } $qry = sprintf($qry, $zgvwhere); diff --git a/public/js/infocenter/infocenterDetails.js b/public/js/infocenter/infocenterDetails.js index c7d4d326b..7e6742fda 100644 --- a/public/js/infocenter/infocenterDetails.js +++ b/public/js/infocenter/infocenterDetails.js @@ -150,6 +150,12 @@ var InfocenterDetails = { if (FHC_AjaxClient.hasData(data)) { var prestudent = data.retval[0]; + + if (prestudent.zgv_code === null && prestudent.zgvmas_code === null) + { + btn.after("  keine ZGV vorhanden"); + } + var zgvcode = prestudent.zgv_code !== null ? prestudent.zgv_code : "null"; var zgvort = prestudent.zgvort !== null ? prestudent.zgvort : ""; var zgvdatum = prestudent.zgvdatum; @@ -183,7 +189,7 @@ var InfocenterDetails = { } else { - btn.after("  keine ZGV vorhanden"); + btn.after("  Fehler beim Laden der Daten"); } }, errorCallback: function()