1
0
mirror of https://github.com/pcvolkmer/onkostar-plugin-dnpm.git synced 2025-07-04 10:02:55 +00:00
Files
onkostar-plugin-dnpm/examples/uf-einzelempfehlung/klinik_anamnese-getEcogStatus.js
Paul-Christian Volkmer 030e809390 Issue #46: Verwende ECOG-Status Datum "as is"
Dies trägt jeden ECOG Status mit dem gelieferten Datum ein, unabhängig von der Zeitzone.
Da die Datenbank MariaDB keine Zeitzone unterstützt, kann es zwar vorkommen, dass die
Onkostar-Java-API eine Zeitzone annimmt, diese wird jedoch ignoriert und nur das in der
Datenbank gespeicherte Datum "as is" verwendet.
2023-09-25 15:29:23 +02:00

30 lines
1.2 KiB
JavaScript

// To be included in Script "Beim Neuanlegen" of form "DNPM Klink/Anamnese"
executePluginMethod('DNPMHelper', 'getEcogStatus', {PatientId: getPatient().id}, (resp) => {
if (resp.status.code === 1) {
// Hack: Get version id of ECOG status as stored in Database
// by using initial empty entry and its version.
// Since OS always creates an initial empty entry for subforms
// this can be used to get required version id from within a form script.
let version = getFieldValue('ECOGVerlauf')[0].ECOG.version;
// Abort if no version available.
if (version == null) {
return;
}
let uf = resp.result
.map(item => {
let date = item.date.match(/^\d{4}-\d{2}-\d{2}/);
let ecog = [];
ecog.val = item.status;
ecog.version = version;
return {
Datum: [date ? date[0] : null, 'exact'], ECOG: ecog
};
})
// Ignore items without valid values
.filter(item => item.Datum[0] && (item.ECOG >= 0 && item.ECOG <= 5));
setFieldValue('ECOGVerlauf', uf);
}
}, false);