diff --git a/application/controllers/api/frontend/v1/vertraege/Vertraege.php b/application/controllers/api/frontend/v1/vertraege/Vertraege.php
index 02d0ab5f9..d1376c484 100644
--- a/application/controllers/api/frontend/v1/vertraege/Vertraege.php
+++ b/application/controllers/api/frontend/v1/vertraege/Vertraege.php
@@ -659,7 +659,12 @@ class Vertraege extends FHCAPI_Controller
}
if (!hasData($result))
{
- return $this->terminateWithError($this->p->t('ui', 'error_missingId', ['id' => 'Id_Lehrauftrag']), self::ERROR_TYPE_GENERAL);
+ //return data before PV21 (with filter fix angestellt, active and with bisverwendung)
+ $result = $this->Mitarbeitermodel->getPersonal(true, true, true);
+ if (isError($result))
+ {
+ return $this->terminateWithError($result, self::ERROR_TYPE_GENERAL);
+ }
}
return $this->terminateWithSuccess(getData($result));
}
diff --git a/application/models/accounting/Vertrag_model.php b/application/models/accounting/Vertrag_model.php
index 048dbb085..f89c6c185 100644
--- a/application/models/accounting/Vertrag_model.php
+++ b/application/models/accounting/Vertrag_model.php
@@ -343,9 +343,9 @@ class Vertrag_model extends DB_Model
*,
tbl_vertrag.bezeichnung as bezeichnung,
tbl_vertragstyp.bezeichnung as vertragstyp_bezeichnung,
- TO_CHAR(tbl_vertrag.vertragsdatum::timestamp, 'DD.MM.YYYY') AS format_vertragsdatum,
+ tbl_vertrag.vertragsdatum,
(SELECT bezeichnung FROM lehre.tbl_vertragsstatus
- JOIN lehre.tbl_vertrag_vertragsstatus USING(vertragsstatus_kurzbz)
+ JOIN lehre.tbl_vertrag_vertragsstatus USING(vertragsstatus_kurzbz)
WHERE vertrag_id=tbl_vertrag.vertrag_id ORDER BY datum desc limit 1) as status, anmerkung,
CASE
WHEN EXISTS (
@@ -487,15 +487,15 @@ SELECT
$query = "
SELECT
*,
- TO_CHAR(tbl_vertrag_vertragsstatus.datum::timestamp, 'DD.MM.YYYY HH24:MI') AS format_datum,
- TO_CHAR(tbl_vertrag_vertragsstatus.insertamum::timestamp, 'DD.MM.YYYY HH24:MI') AS format_insertamum,
- TO_CHAR(tbl_vertrag_vertragsstatus.updateamum::timestamp, 'DD.MM.YYYY HH24:MI') AS format_updateamum
+ tbl_vertrag_vertragsstatus.datum,
+ tbl_vertrag_vertragsstatus.insertamum,
+ tbl_vertrag_vertragsstatus.updateamum
FROM
lehre.tbl_vertrag_vertragsstatus
JOIN lehre.tbl_vertragsstatus USING(vertragsstatus_kurzbz)
WHERE
tbl_vertrag_vertragsstatus.vertrag_id = ?
- ORDER BY datum DESC";
+ ORDER BY tbl_vertrag_vertragsstatus.datum DESC";
return $this->execQuery($query, array($vertrag_id));
}
diff --git a/application/models/ressource/Mitarbeiter_model.php b/application/models/ressource/Mitarbeiter_model.php
index e67635538..0004837f0 100644
--- a/application/models/ressource/Mitarbeiter_model.php
+++ b/application/models/ressource/Mitarbeiter_model.php
@@ -107,17 +107,14 @@ class Mitarbeiter_model extends DB_Model
{
$qry = "
SELECT
- b.uid , p.person_id,
+ b.uid , p.person_id,
p.vorname, p.nachname,
- TO_CHAR(gebdatum::timestamp, 'DD.MM.YYYY') AS format_gebdatum,
+ gebdatum,
COALESCE(b.alias, b.uid) AS email,
STRING_AGG(DISTINCT va.bezeichnung, ', ') AS Vertragsarten,
STRING_AGG(DISTINCT u.bezeichnung, ', ') AS Unternehmen,
STRING_AGG(d.dienstverhaeltnis_id::TEXT, ', ') AS ids,
b.aktiv
- -- CASE WHEN b.aktiv=true THEN 'aktiv'
- -- ELSE 'nicht aktiv'
- -- END as status //not working in header filter */
FROM
hr.tbl_dienstverhaeltnis d
JOIN
@@ -128,7 +125,7 @@ class Mitarbeiter_model extends DB_Model
public.tbl_organisationseinheit u ON d.oe_kurzbz = u.oe_kurzbz
JOIN
hr.tbl_vertragsart va ON d.vertragsart_kurzbz = va.vertragsart_kurzbz
- ";
+ ";
if($person_id)
{
@@ -138,9 +135,9 @@ class Mitarbeiter_model extends DB_Model
$qry.= "
GROUP BY
b.uid, p.person_id, p.vorname, p.nachname, b.alias
- ORDER BY
+ ORDER BY
p.nachname, p.vorname;
- ";
+ ";
$params = array($person_id);
diff --git a/public/js/components/Vertraege/List/Status.js b/public/js/components/Vertraege/List/Status.js
index 3c05daa66..60475d3e2 100644
--- a/public/js/components/Vertraege/List/Status.js
+++ b/public/js/components/Vertraege/List/Status.js
@@ -44,14 +44,61 @@ export default {
ajaxResponse: (url, params, response) => response.data,
columns: [
{title: "Status", field: "bezeichnung"},
- {title: "Datum", field: "format_datum"},
+ {
+ title: "Datum",
+ field: "datum",
+ formatter: function (cell) {
+ const dateStr = cell.getValue();
+ const date = new Date(dateStr); // Convert to Date object
+ return date.toLocaleString("de-DE", {
+ day: "2-digit",
+ month: "2-digit",
+ year: "numeric",
+ hour: "2-digit",
+ minute: "2-digit",
+ hour12: false
+ });
+ }
+ },
{title: "vertrag_id", field: "vertrag_id", visible: false},
{title: "Vertragsstatus", field: "vertragsstatus_kurzbz", visible: false},
{title: "User", field: "mitarbeiter_uid", visible: false},
{title: "insertvon", field: "insertvon", visible: false},
- {title: "insertamum", field: "format_insertamum", visible: false},
+ {
+ title: "insertamum",
+ field: "insertamum",
+ visible: false,
+ formatter: function (cell) {
+ const dateStr = cell.getValue();
+ const date = new Date(dateStr);
+ return date.toLocaleString("de-DE", {
+ day: "2-digit",
+ month: "2-digit",
+ year: "numeric",
+ hour: "2-digit",
+ minute: "2-digit",
+ hour12: false
+ });
+ }
+ },
{title: "updatevon", field: "updatevon", visible: false},
- {title: "updateamum", field: "format_updateamum", visible: false},
+ {
+ title: "updateamum",
+ field: "updateamum",
+ visible: false,
+ formatter: function (cell) {
+ const dateStr = cell.getValue();
+ const date = new Date(dateStr);
+ return date.toLocaleString("de-DE", {
+ day: "2-digit",
+ month: "2-digit",
+ year: "numeric",
+ hour: "2-digit",
+ minute: "2-digit",
+ hour12: false
+ });
+ }
+ },
{
title: 'Aktionen', field: 'actions',
minWidth: 150,
@@ -112,7 +159,7 @@ export default {
cm.getColumnByField('bezeichnung').component.updateDefinition({
title: this.$p.t('global', 'status')
});
- cm.getColumnByField('format_datum').component.updateDefinition({
+ cm.getColumnByField('datum').component.updateDefinition({
title: this.$p.t('global', 'datum')
});
cm.getColumnByField('mitarbeiter_uid').component.updateDefinition({
@@ -130,13 +177,13 @@ export default {
cm.getColumnByField('updatevon').component.updateDefinition({
title: this.$p.t('global', 'updatevon')
});
- cm.getColumnByField('format_updateamum').component.updateDefinition({
+ cm.getColumnByField('updateamum').component.updateDefinition({
title: this.$p.t('global', 'updateamum')
});
cm.getColumnByField('insertvon').component.updateDefinition({
title: this.$p.t('global', 'insertvon')
});
- cm.getColumnByField('format_insertamum').component.updateDefinition({
+ cm.getColumnByField('insertamum').component.updateDefinition({
title: this.$p.t('global', 'insertamum')
});
}
diff --git a/public/js/components/Vertraege/MitarbeiterHeader.js b/public/js/components/Vertraege/MitarbeiterHeader.js
index 84d8e03b8..ff361eaea 100644
--- a/public/js/components/Vertraege/MitarbeiterHeader.js
+++ b/public/js/components/Vertraege/MitarbeiterHeader.js
@@ -62,7 +62,20 @@ export default {
crossElement: ''
}
},
- {title: "Geburtsdatum", field: "format_gebdatum", headerFilter:"input"},
+ {
+ title: "Geburtsdatum",
+ field: "gebdatum",
+ headerFilter:"input",
+ formatter: function (cell) {
+ const dateStr = cell.getValue();
+ const date = new Date(dateStr);
+ return date.toLocaleString("de-DE", {
+ day: "2-digit",
+ month: "2-digit",
+ year: "numeric",
+ });
+ }
+ },
{title: "Unternehmen", field: "unternehmen", headerFilter:"input"},
{title: "Vertragsarten", field: "vertragsarten", headerFilter:"input"},
{title: "Ids Dienstverträge", field: "ids", headerFilter:"input"},
@@ -98,7 +111,7 @@ export default {
cm.getColumnByField('aktiv').component.updateDefinition({
title: this.$p.t('global', 'aktiv')
});
- cm.getColumnByField('format_gebdatum').component.updateDefinition({
+ cm.getColumnByField('gebdatum').component.updateDefinition({
title: this.$p.t('person', 'geburtsdatum')
});
cm.getColumnByField('unternehmen').component.updateDefinition({
diff --git a/public/js/components/Vertraege/Vertraege.js b/public/js/components/Vertraege/Vertraege.js
index 94104e3c5..a3d92fa14 100644
--- a/public/js/components/Vertraege/Vertraege.js
+++ b/public/js/components/Vertraege/Vertraege.js
@@ -68,9 +68,21 @@ export default {
},
{title: "Vertragstyp", field: "vertragstyp_bezeichnung", width: 125},
{title: "Status", field: "status"},
- {title: "Vertragsdatum", field: "format_vertragsdatum", width: 128},
+ {
+ title: "Vertragsdatum",
+ field: "vertragsdatum",
+ width: 128,
+ formatter: function (cell) {
+ const dateStr = cell.getValue();
+ const date = new Date(dateStr);
+ return date.toLocaleString("de-DE", {
+ day: "2-digit",
+ month: "2-digit",
+ year: "numeric",
+ });
+ }
+ },
{title: "VertragId", field: "vertrag_id", visible: false},
- {title: "Vertragsdatum_iso", field: "vertragsdatum", visible: false},
{title: "Vertragsstunden", field: "vertragsstunden", visible: false},
{title: "VertragsstundenStudiensemester", field: "vertragsstunden_studiensemester_kurzbz", visible: false},
{title: "Anmerkung", field: "anmerkung", visible: false},
@@ -146,11 +158,8 @@ export default {
cm.getColumnByField('vertragstyp_bezeichnung').component.updateDefinition({
title: this.$p.t('vertrag', 'vertragstyp')
});
- cm.getColumnByField('format_vertragsdatum').component.updateDefinition({
- title: this.$p.t('vertrag', 'vertragsdatum')
- });
cm.getColumnByField('vertragsdatum').component.updateDefinition({
- title: this.$p.t('vertrag', 'vertragsdatum_iso')
+ title: this.$p.t('vertrag', 'vertragsdatum')
});
cm.getColumnByField('vertragsstunden').component.updateDefinition({
title: this.$p.t('vertrag', 'vertragsstunden')
@@ -177,7 +186,7 @@ export default {
//(maybe enable also for ADDON FH Burgenland: MultiAccept later)
event: 'rowClick',
handler: (e, row) => {
- if (this.dataPrintHonorar.multiselect) {
+ if (this.dataPrintHonorar != null && this.dataPrintHonorar.multiselect != null) {
const selectedContract = row.getData().vertrag_id;
const status = row.getData().status;
const bezeichnung = row.getData().bezeichnung;
diff --git a/public/js/components/Vertraege/Vertragsverwaltung.js b/public/js/components/Vertraege/Vertragsverwaltung.js
index 85f183584..1a6100913 100644
--- a/public/js/components/Vertraege/Vertragsverwaltung.js
+++ b/public/js/components/Vertraege/Vertragsverwaltung.js
@@ -21,15 +21,8 @@ export default {
}
},
data() {
- //TODO(Manu) props for filter: actually not necessary
return {
person_id: null,
-/* filterMa: {
- active: true,
- hasVertraege: true
- },*/
-/* vertragsarten:
- [ 'echterdv', 'externerlehrender', 'gastlektor']*/
}
},
methods: {
@@ -43,14 +36,14 @@ export default {
-
-
-
+
+
+
-
+