From 06f31997f2c6956a0356debabaab1bc1a02f636b Mon Sep 17 00:00:00 2001 From: Cris Date: Mon, 21 Oct 2019 17:29:23 +0200 Subject: [PATCH] Added bestellt_von/erteilt_von/akzeptiert_von columns and TOOLTIPS . added tooltips on bestellt-, erteilt- and akzeptiert-column with insertvon information . adapted tooltips on status column . added columns to all tabulator queries and to the filters --- .../lehre/lehrauftrag/acceptLehrauftrag.php | 48 ++++++++++++-- .../lehrauftrag/acceptLehrauftragData.php | 64 +++++++++++++++++-- .../lehre/lehrauftrag/approveLehrauftrag.php | 43 +++++++++++-- .../lehrauftrag/approveLehrauftragData.php | 64 +++++++++++++++++-- .../lehre/lehrauftrag/orderLehrauftrag.php | 47 ++++++++++++-- .../lehrauftrag/orderLehrauftragData.php | 64 +++++++++++++++++-- system/filtersupdate.php | 15 ++++- 7 files changed, 311 insertions(+), 34 deletions(-) diff --git a/application/views/lehre/lehrauftrag/acceptLehrauftrag.php b/application/views/lehre/lehrauftrag/acceptLehrauftrag.php index 008118d09..d526a0ee3 100644 --- a/application/views/lehre/lehrauftrag/acceptLehrauftrag.php +++ b/application/views/lehre/lehrauftrag/acceptLehrauftrag.php @@ -312,18 +312,54 @@ $this->load->view( var betrag = parseFloat(cell.getRow().getData().betrag); var vertrag_betrag = parseFloat(cell.getRow().getData().vertrag_betrag); - var text = 'Lehrauftrag in Bearbeitung.'; - text += "\n"; + var text = 'Lehrauftrag in Bearbeitung. '; - if (bestellt != null && erteilt == null && akzeptiert == null && betrag != vertrag_betrag) { - text += 'Wartet auf Erteilung, danach können können Sie den Lehrauftrag annehmen.'; + if (bestellt != null && erteilt == null && akzeptiert == null + && betrag != vertrag_betrag) // geaendert (when never erteilt before) + { + text += 'Wartet auf Erteilung.'; return text; } - else if (bestellt != null && erteilt != null && akzeptiert == null && betrag != vertrag_betrag) + else if (bestellt != null && erteilt != null && akzeptiert == null + && betrag != vertrag_betrag) // geaendert (when has been erteilt once) { - text += 'Wartet auf erneute Erteilung, danach können können Sie den Lehrauftrag annehmen.'; + text += 'Wartet auf erneute Erteilung.'; return text; } + else if (bestellt != null && erteilt == null && akzeptiert == null) // bestellt + { + return 'Letzter Status: Bestellt. Wartet auf Erteilung.'; + } + else if (bestellt != null && erteilt != null && akzeptiert == null) // erteilt + { + return 'Letzter Status: Erteilt. Wartet auf Annahme durch Lektor.'; + } + else if (bestellt != null && erteilt != null && akzeptiert != null) // akzeptiert + { + return 'Letzter Status: Angenommen. Vertrag wurde beidseitig abgeschlossen.'; + } + } + + // Generates bestellt tooltip + bestellt_tooltip = function(cell){ + if (cell.getRow().getData().bestellt_von != null) + { + return 'Bestellt von: ' + cell.getRow().getData().bestellt_von; + } + } + + // Generates erteilt tooltip + erteilt_tooltip = function(cell){ + if (cell.getRow().getData().erteilt_von != null) { + return 'Erteilt von: ' + cell.getRow().getData().erteilt_von; + } + } + + // Generates akzeptiert tooltip + akzeptiert_tooltip = function(cell){ + if (cell.getRow().getData().akzeptiert_von != null) { + return 'Angenommen von: ' + cell.getRow().getData().akzeptiert_von; + } } $(function() { diff --git a/application/views/lehre/lehrauftrag/acceptLehrauftragData.php b/application/views/lehre/lehrauftrag/acceptLehrauftragData.php index 6410e8732..be4fc8c68 100644 --- a/application/views/lehre/lehrauftrag/acceptLehrauftragData.php +++ b/application/views/lehre/lehrauftrag/acceptLehrauftragData.php @@ -29,7 +29,55 @@ SELECT mitarbeiter_uid, bestellt, erteilt, - akzeptiert + akzeptiert, + (SELECT + vorname || \' \' || nachname + FROM + public.tbl_person + JOIN public.tbl_benutzer benutzer USING (person_id) + WHERE + benutzer.uid = ( + SELECT + insertvon + FROM + lehre.tbl_vertrag_vertragsstatus vvs + WHERE + vvs.vertragsstatus_kurzbz = \'bestellt\' + AND vvs.vertrag_id = auftraege.vertrag_id + ) + ) AS "bestellt_von", + (SELECT + vorname || \' \' || nachname + FROM + public.tbl_person + JOIN public.tbl_benutzer benutzer USING (person_id) + WHERE + benutzer.uid = ( + SELECT + insertvon + FROM + lehre.tbl_vertrag_vertragsstatus vvs + WHERE + vvs.vertragsstatus_kurzbz = \'erteilt\' + AND vvs.vertrag_id = auftraege.vertrag_id + ) + ) AS "erteilt_von", + (SELECT + vorname || \' \' || nachname + FROM + public.tbl_person + JOIN public.tbl_benutzer benutzer USING (person_id) + WHERE + benutzer.uid = ( + SELECT + insertvon + FROM + lehre.tbl_vertrag_vertragsstatus vvs + WHERE + vvs.vertragsstatus_kurzbz = \'akzeptiert\' + AND vvs.vertrag_id = auftraege.vertrag_id + ) + ) AS "akzeptiert_von" FROM ( /* Lehraufträge and -vertragsstati */ @@ -261,7 +309,10 @@ $filterWidgetArray = array( 'UID', 'Bestellt', 'Erteilt', - 'Akzeptiert' + 'Akzeptiert', + 'Bestellt von', + 'Erteilt von', + 'Angenommen von' ), 'datasetRepOptions' => '{ height: 550, @@ -314,9 +365,12 @@ $filterWidgetArray = array( vertrag_id: {visible: false}, vertrag_betrag: {visible: false}, mitarbeiter_uid: {visible: false}, - bestellt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate}, width: "auto", - erteilt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate}, width: "auto", - akzeptiert: {align:"center", headerFilter:"input", mutator: mut_formatStringDate}, width: "auto" + bestellt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate, tooltip: bestellt_tooltip}, + erteilt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate, tooltip: erteilt_tooltip}, + akzeptiert: {align:"center", headerFilter:"input", mutator: mut_formatStringDate, tooltip: akzeptiert_tooltip}, + bestellt_von: {visible: false}, + erteilt_von: {visible: false}, + akzeptiert_von: {visible: false} }', // col properties ); diff --git a/application/views/lehre/lehrauftrag/approveLehrauftrag.php b/application/views/lehre/lehrauftrag/approveLehrauftrag.php index 0d88944bd..3b25e8399 100644 --- a/application/views/lehre/lehrauftrag/approveLehrauftrag.php +++ b/application/views/lehre/lehrauftrag/approveLehrauftrag.php @@ -347,6 +347,7 @@ $this->load->view( var bestellt = cell.getRow().getData().bestellt; var erteilt = cell.getRow().getData().erteilt; + var akzeptiert = cell.getRow().getData().akzeptiert; var betrag = cell.getRow().getData().betrag; var vertrag_betrag = cell.getRow().getData().vertrag_betrag; @@ -354,25 +355,55 @@ $this->load->view( var text = 'Lehrauftragstunden/-stundensatz geändert.'; text += "\n"; - if (is_dummy) + if (is_dummy) // dummy (no lector) { return 'Neuer Lehrauftrag. Ohne Lektor verplant.' } - else if (bestellt != null && erteilt == null && betrag != vertrag_betrag) + else if (bestellt != null && erteilt == null && betrag != vertrag_betrag) // geaendert (when never erteilt before) { return text += 'Wartet auf Bestellung, danach Erteilen möglich.'; } - else if (bestellt != null && erteilt != null && betrag != vertrag_betrag) + else if (bestellt != null && erteilt != null && betrag != vertrag_betrag) // geaendert (when has been erteilt once) { return text += 'Wartet auf neuerliche Bestellung, danach erneut Erteilen möglich.'; } - else if (bestellt == null) + else if (bestellt == null) // neu { return 'Neuer Lehrauftrag. Wartet auf Bestellung.'; } - else if (bestellt != null) + else if (bestellt != null && erteilt == null && akzeptiert == null) // bestellt { - return 'Lehrauftrag bestellt von: ' + cell.getRow().getData().vertrag_insertvon; + return 'Letzter Status: Bestellt. Wartet auf Erteilung.'; + } + else if (bestellt != null && erteilt != null && akzeptiert == null) // erteilt + { + return 'Letzter Status: Erteilt. Wartet auf Annahme durch Lektor.'; + } + else if (bestellt != null && erteilt != null && akzeptiert != null) // akzeptiert + { + return 'Letzter Status: Angenommen. Vertrag wurde beidseitig abgeschlossen.'; + } + } + + // Generates bestellt tooltip + bestellt_tooltip = function(cell){ + if (cell.getRow().getData().bestellt_von != null) + { + return 'Bestellt von: ' + cell.getRow().getData().bestellt_von; + } + } + + // Generates erteilt tooltip + erteilt_tooltip = function(cell){ + if (cell.getRow().getData().erteilt_von != null) { + return 'Erteilt von: ' + cell.getRow().getData().erteilt_von; + } + } + + // Generates akzeptiert tooltip + akzeptiert_tooltip = function(cell){ + if (cell.getRow().getData().akzeptiert_von != null) { + return 'Angenommen von: ' + cell.getRow().getData().akzeptiert_von; } } $(function() { diff --git a/application/views/lehre/lehrauftrag/approveLehrauftragData.php b/application/views/lehre/lehrauftrag/approveLehrauftragData.php index b18a7fce3..3a1c8bbce 100644 --- a/application/views/lehre/lehrauftrag/approveLehrauftragData.php +++ b/application/views/lehre/lehrauftrag/approveLehrauftragData.php @@ -47,7 +47,55 @@ SELECT mitarbeiter_uid, bestellt, erteilt, - akzeptiert + akzeptiert, + (SELECT + vorname || \' \' || nachname + FROM + public.tbl_person + JOIN public.tbl_benutzer benutzer USING (person_id) + WHERE + benutzer.uid = ( + SELECT + insertvon + FROM + lehre.tbl_vertrag_vertragsstatus vvs + WHERE + vvs.vertragsstatus_kurzbz = \'bestellt\' + AND vvs.vertrag_id = auftraege.vertrag_id + ) + ) AS "bestellt_von", + (SELECT + vorname || \' \' || nachname + FROM + public.tbl_person + JOIN public.tbl_benutzer benutzer USING (person_id) + WHERE + benutzer.uid = ( + SELECT + insertvon + FROM + lehre.tbl_vertrag_vertragsstatus vvs + WHERE + vvs.vertragsstatus_kurzbz = \'erteilt\' + AND vvs.vertrag_id = auftraege.vertrag_id + ) + ) AS "erteilt_von", + (SELECT + vorname || \' \' || nachname + FROM + public.tbl_person + JOIN public.tbl_benutzer benutzer USING (person_id) + WHERE + benutzer.uid = ( + SELECT + insertvon + FROM + lehre.tbl_vertrag_vertragsstatus vvs + WHERE + vvs.vertragsstatus_kurzbz = \'akzeptiert\' + AND vvs.vertrag_id = auftraege.vertrag_id + ) + ) AS "akzeptiert_von" FROM ( /* Lehraufträge and -vertragsstati */ @@ -300,7 +348,10 @@ $filterWidgetArray = array( 'UID', 'Bestellt', 'Erteilt', - 'Akzeptiert' + 'Akzeptiert', + 'Bestellt von', + 'Erteilt von', + 'Angenommen von' ), 'datasetRepOptions' => '{ height: 700, @@ -364,9 +415,12 @@ $filterWidgetArray = array( vertrag_updatevon: {visible: false}, vertrag_updateamum: {visible: false}, mitarbeiter_uid: {visible: false}, - bestellt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate}, - erteilt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate}, - akzeptiert: {align:"center", headerFilter:"input", mutator: mut_formatStringDate} + bestellt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate, tooltip: bestellt_tooltip}, + erteilt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate, tooltip: erteilt_tooltip}, + akzeptiert: {align:"center", headerFilter:"input", mutator: mut_formatStringDate, tooltip: akzeptiert_tooltip}, + bestellt_von: {visible: false}, + erteilt_von: {visible: false}, + akzeptiert_von: {visible: false}, }', // col properties ); diff --git a/application/views/lehre/lehrauftrag/orderLehrauftrag.php b/application/views/lehre/lehrauftrag/orderLehrauftrag.php index 0d800cf17..1ae665871 100644 --- a/application/views/lehre/lehrauftrag/orderLehrauftrag.php +++ b/application/views/lehre/lehrauftrag/orderLehrauftrag.php @@ -362,6 +362,10 @@ $this->load->view( status_tooltip = function(cell){ var is_dummy = (cell.getRow().getData().personalnummer <= 0 && cell.getRow().getData().personalnummer != null); + var bestellt = cell.getRow().getData().bestellt; + var erteilt = cell.getRow().getData().erteilt; + var akzeptiert = cell.getRow().getData().akzeptiert; + var betrag = parseFloat(cell.getRow().getData().betrag); var stunden = parseFloat(cell.getRow().getData().stunden); var stundensatz = parseFloat(cell.getRow().getData().stundensatz); @@ -377,20 +381,55 @@ $this->load->view( } // Return tooltip message - if (is_dummy) + if (is_dummy) // dummy (no lector) { return 'Neuer Lehrauftrag. Ohne Lektor verplant.' } - else if (isNaN(vertrag_betrag)) + else if (isNaN(vertrag_betrag)) // neu { return 'Neuer Lehrauftrag. Wartet auf Bestellung.' } - else if (betrag != vertrag_betrag) { + else if (betrag != vertrag_betrag) // geaendert + { var text = 'NACH Änderung: Stundensatz: ' + stundensatz + ' Stunden: ' + stunden; text += "\n"; text += 'VOR Änderung:' + '\xa0\xa0\xa0' + 'Stundensatz: ' + vertrag_stundensatz + ' Stunden: ' + vertrag_stunden; return text; - } + } + else if (bestellt != null && erteilt == null && akzeptiert == null) // bestellt + { + return 'Letzter Status: Bestellt. Wartet auf Erteilung.'; + } + else if (bestellt != null && erteilt != null && akzeptiert == null) // erteilt + { + return 'Letzter Status: Erteilt. Wartet auf Annahme durch Lektor.'; + } + else if (bestellt != null && erteilt != null && akzeptiert != null) // akzeptiert + { + return 'Letzter Status: Angenommen. Vertrag wurde beidseitig abgeschlossen.'; + } + } + + // Generates bestellt tooltip + bestellt_tooltip = function(cell){ + if (cell.getRow().getData().bestellt_von != null) + { + return 'Bestellt von: ' + cell.getRow().getData().bestellt_von; + } + } + + // Generates erteilt tooltip + erteilt_tooltip = function(cell){ + if (cell.getRow().getData().erteilt_von != null) { + return 'Erteilt von: ' + cell.getRow().getData().erteilt_von; + } + } + + // Generates akzeptiert tooltip + akzeptiert_tooltip = function(cell){ + if (cell.getRow().getData().akzeptiert_von != null) { + return 'Angenommen von: ' + cell.getRow().getData().akzeptiert_von; + } } $(function() { diff --git a/application/views/lehre/lehrauftrag/orderLehrauftragData.php b/application/views/lehre/lehrauftrag/orderLehrauftragData.php index 3ee1e6347..211ae3561 100644 --- a/application/views/lehre/lehrauftrag/orderLehrauftragData.php +++ b/application/views/lehre/lehrauftrag/orderLehrauftragData.php @@ -37,7 +37,55 @@ SELECT mitarbeiter_uid, bestellt, erteilt, - akzeptiert + akzeptiert, + (SELECT + vorname || \' \' || nachname + FROM + public.tbl_person + JOIN public.tbl_benutzer benutzer USING (person_id) + WHERE + benutzer.uid = ( + SELECT + insertvon + FROM + lehre.tbl_vertrag_vertragsstatus vvs + WHERE + vvs.vertragsstatus_kurzbz = \'bestellt\' + AND vvs.vertrag_id = auftraege.vertrag_id + ) + ) AS "bestellt_von", + (SELECT + vorname || \' \' || nachname + FROM + public.tbl_person + JOIN public.tbl_benutzer benutzer USING (person_id) + WHERE + benutzer.uid = ( + SELECT + insertvon + FROM + lehre.tbl_vertrag_vertragsstatus vvs + WHERE + vvs.vertragsstatus_kurzbz = \'erteilt\' + AND vvs.vertrag_id = auftraege.vertrag_id + ) + ) AS "erteilt_von", + (SELECT + vorname || \' \' || nachname + FROM + public.tbl_person + JOIN public.tbl_benutzer benutzer USING (person_id) + WHERE + benutzer.uid = ( + SELECT + insertvon + FROM + lehre.tbl_vertrag_vertragsstatus vvs + WHERE + vvs.vertragsstatus_kurzbz = \'akzeptiert\' + AND vvs.vertrag_id = auftraege.vertrag_id + ) + ) AS "akzeptiert_von" FROM ( /* Lehraufträge and -vertragsstati */ @@ -295,7 +343,10 @@ $filterWidgetArray = array( 'UID', 'Bestellt', 'Erteilt', - 'Akzeptiert' + 'Akzeptiert', + 'Bestellt von', + 'Erteilt von', + 'Angenommen von' ), 'datasetRepOptions' => '{ height: 700, @@ -368,9 +419,12 @@ $filterWidgetArray = array( vertrag_updatevon: {visible: false}, vertrag_updateamum: {visible: false}, mitarbeiter_uid: {visible: false}, - bestellt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate}, - erteilt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate}, - akzeptiert: {align:"center", headerFilter:"input", mutator: mut_formatStringDate} + bestellt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate, tooltip: bestellt_tooltip}, + erteilt: {align:"center", headerFilter:"input", mutator: mut_formatStringDate, tooltip: erteilt_tooltip}, + akzeptiert: {align:"center", headerFilter:"input", mutator: mut_formatStringDate, tooltip: akzeptiert_tooltip}, + bestellt_von: {visible: false}, + erteilt_von: {visible: false}, + akzeptiert_von: {visible: false}, }', // col properties ); diff --git a/system/filtersupdate.php b/system/filtersupdate.php index a9e8862bf..9bd63ada8 100644 --- a/system/filtersupdate.php +++ b/system/filtersupdate.php @@ -440,7 +440,10 @@ $filters = array( {"name": "mitarbeiter_uid"}, {"name": "bestellt"}, {"name": "erteilt"}, - {"name": "akzeptiert"} + {"name": "akzeptiert"}, + {"name": "bestellt_von"}, + {"name": "erteilt_von"}, + {"name": "akzeptiert_von"} ], "filters": [] } @@ -486,7 +489,10 @@ $filters = array( {"name": "mitarbeiter_uid"}, {"name": "bestellt"}, {"name": "erteilt"}, - {"name": "akzeptiert"} + {"name": "akzeptiert"}, + {"name": "bestellt_von"}, + {"name": "erteilt_von"}, + {"name": "akzeptiert_von"} ], "filters": [] } @@ -525,7 +531,10 @@ $filters = array( {"name": "mitarbeiter_uid"}, {"name": "bestellt"}, {"name": "erteilt"}, - {"name": "akzeptiert"} + {"name": "akzeptiert"}, + {"name": "bestellt_von"}, + {"name": "erteilt_von"}, + {"name": "akzeptiert_von"} ], "filters": [] }