diff --git a/forms/dnpm-formulare.osc b/forms/dnpm-formulare.osc index 31a4c3b..4ba1125 100644 --- a/forms/dnpm-formulare.osc +++ b/forms/dnpm-formulare.osc @@ -1,7 +1,7 @@ - 2023-09-26Z + 2023-09-27Z OnkoStar 2.11.1.6 @@ -6301,7 +6301,7 @@ true - patient = getPatient();&#10;setFieldValue('Geburtsdatum', patient.geburtsdatum);&#10;setFieldValue('Todesdatum', patient.sterbedatum);&#10;setFieldValue('Geschlecht', patient.geschlecht);&#10;setFieldValue('Krankenkasse', patient.krankenkassennummer);&#10;&#10;erkrankung = getCurrentDisease();&#10;setFieldValue('DatumErstdiagnose', erkrankung.diagnosisDate);&#10;setFieldVersion('ICDO3Lokalisation', erkrankung.diagnosisDate)&#10;setFieldValue('ICDO3Lokalisation', erkrankung.localisationCode);&#10;setFieldVersion('ICDO3Histologie', erkrankung.diagnosisDate)&#10;setFieldValue('ICDO3Histologie', erkrankung.histologyCode);&#10;setFieldVersion('ICD10', erkrankung.diagnosisDate)&#10;setFieldValue('ICD10', erkrankung.icd10Code);&#10;&#10;executePluginMethod('DNPMHelper', 'getSystemischeTherapienFromDiagnose', {'DiagnoseId': getCurrentDisease().id},&#10;function(result) {&#10; setFieldValue('DNPMTherapielinie', result.result);&#10; for (var i = 0; i <= result.result.length; i++) setSubformFieldValue('Nummer', i, i) &#10;}, true);&#10;&#10;executePluginMethod('DNPMHelper', 'getEcogStatus', {PatientId: getPatient().id}, (resp) => {&#10; if (resp.status.code === 1) {&#10; // Hack: Get version id of ECOG status as stored in Database&#10; // by using initial empty entry and its version.&#10; // Since OS always creates an initial empty entry for subforms&#10; // this can be used to get required version id from within a form script.&#10; let version = getFieldValue('ECOGVerlauf')[0].ECOG.version;&#10;&#10; // Abort if no version available.&#10; if (version == null) {&#10; return;&#10; }&#10;&#10; let uf = resp.result&#10; .map(item => {&#10; let date = item.date.match(/^\d{4}-\d{2}-\d{2}/);&#10; let ecog = [];&#10; ecog.val = item.status;&#10; ecog.version = version;&#10; return {&#10; Datum: [date ? date[0] : null, 'exact'], ECOG: ecog&#10; };&#10; })&#10; // Ignore items without valid values&#10; .filter(item => item.Datum[0] && (item.ECOG >= 0 && item.ECOG <= 5));&#10; setFieldValue('ECOGVerlauf', uf);&#10; }&#10;}, false); + patient = getPatient();&#10;setFieldValue('Geburtsdatum', patient.geburtsdatum);&#10;setFieldValue('Todesdatum', patient.sterbedatum);&#10;setFieldValue('Geschlecht', patient.geschlecht);&#10;setFieldValue('Krankenkasse', patient.krankenkassennummer);&#10;&#10;erkrankung = getCurrentDisease();&#10;setFieldValue('DatumErstdiagnose', erkrankung.diagnosisDate);&#10;setFieldVersion('ICDO3Lokalisation', erkrankung.diagnosisDate)&#10;setFieldValue('ICDO3Lokalisation', erkrankung.localisationCode);&#10;setFieldVersion('ICDO3Histologie', erkrankung.diagnosisDate)&#10;setFieldValue('ICDO3Histologie', erkrankung.histologyCode);&#10;setFieldVersion('ICD10', erkrankung.diagnosisDate)&#10;setFieldValue('ICD10', erkrankung.icd10Code);&#10;&#10;executePluginMethod('DNPMHelper', 'getSystemischeTherapienFromDiagnose', {'DiagnoseId': getCurrentDisease().id},&#10;function(result) {&#10; setFieldValue('DNPMTherapielinie', result.result);&#10; for (var i = 0; i <= result.result.length; i++) setSubformFieldValue('Nummer', i, i) &#10;}, true);&#10;&#10;executePluginMethod('DNPMHelper', 'getEcogStatus', {PatientId: getPatient().id}, (resp) => {&#10; if (resp.status.code === 1) {&#10; // Hack: Get version id of ECOG status as stored in Database&#10; // by using initial empty entry and its version.&#10; // Since OS always creates an initial empty entry for subforms&#10; // this can be used to get required version id from within a form script.&#10; let version = getFieldValue('ECOGVerlauf')[0].ECOG.version;&#10;&#10; // Abort if no version available.&#10; if (version == null) {&#10; return;&#10; }&#10;&#10; let uf = resp.result&#10; .map(item => {&#10; let dateOffset = new Date(item.date).getTimezoneOffset() * -60 * 1000;&#10; let date = new Date(new Date(item.date).getTime() + dateOffset).toISOString().match(/^\d{4}-\d{2}-\d{2}/);&#10; let ecog = [];&#10; ecog.val = item.status;&#10; ecog.version = version;&#10; return {&#10; Datum: [date ? date[0] : null, 'exact'], ECOG: ecog&#10; };&#10; })&#10; // Ignore items without valid values&#10; .filter(item => item.Datum[0] && (item.ECOG >= 0 && item.ECOG <= 5));&#10; setFieldValue('ECOGVerlauf', uf);&#10; }&#10;}, false); true @@ -6310,7 +6310,7 @@ 20119 21334cad-91c9-4817-9cba-550b544cd71a - 226 + 227 true diff --git a/scripts/klinik_anamnese-getEcogStatus.js b/scripts/klinik_anamnese-getEcogStatus.js index 763b683..344c002 100644 --- a/scripts/klinik_anamnese-getEcogStatus.js +++ b/scripts/klinik_anamnese-getEcogStatus.js @@ -15,7 +15,8 @@ executePluginMethod('DNPMHelper', 'getEcogStatus', {PatientId: getPatient().id}, let uf = resp.result .map(item => { - let date = item.date.match(/^\d{4}-\d{2}-\d{2}/); + let dateOffset = new Date(item.date).getTimezoneOffset() * -60 * 1000; + let date = new Date(new Date(item.date).getTime() + dateOffset).toISOString().match(/^\d{4}-\d{2}-\d{2}/); let ecog = []; ecog.val = item.status; ecog.version = version;