@dotbase/hl7-v2-message
Version:
Parses HL7 v2.x messages into typed javascript objects and makes them easily accessable.
262 lines (261 loc) • 10.8 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const Hl7Message_1 = tslib_1.__importDefault(require("../../../model/Hl7Message"));
/**
* Automated time intervals for reporting, like monthly
*/
class CSU_C09_Message extends Hl7Message_1.default {
constructor() {
super(...arguments);
this.compounds = {
PATIENT: {
name: "PATIENT",
isOptional: false,
isRepeatable: true,
},
PATIENT_VISIT: {
name: "PATIENT_VISIT",
isOptional: true,
isRepeatable: false,
parentCompound: "PATIENT",
},
PATIENT_STUDY_PHASE: {
name: "PATIENT_STUDY_PHASE",
isOptional: false,
isRepeatable: true,
parentCompound: "PATIENT",
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE",
isOptional: false,
isRepeatable: true,
parentCompound: "PATIENT_STUDY_PHASE",
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION",
isOptional: false,
isRepeatable: true,
parentCompound: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE",
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_TIMING_QTY: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_TIMING_QTY",
isOptional: true,
isRepeatable: true,
parentCompound: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION",
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM",
isOptional: false,
isRepeatable: true,
parentCompound: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE",
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_COMMON_ORDER: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_COMMON_ORDER",
isOptional: true,
isRepeatable: false,
parentCompound: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM",
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_RX_ADMIN: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_RX_ADMIN",
isOptional: false,
isRepeatable: true,
parentCompound: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM",
},
};
this.segments = {
MSH: {
name: "MSH",
type: "MSH",
isOptional: false,
isRepeatable: false,
value: []
},
SFT: {
name: "SFT",
type: "SFT",
isOptional: true,
isRepeatable: true,
value: []
},
UAC: {
name: "UAC",
type: "UAC",
isOptional: true,
isRepeatable: false,
value: []
},
PATIENT_PID: {
name: "PATIENT_PID",
type: "PID",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_PD1: {
name: "PATIENT_PD1",
type: "PD1",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_PRT: {
name: "PATIENT_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_NTE: {
name: "PATIENT_NTE",
type: "NTE",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_VISIT_PV1: {
name: "PATIENT_VISIT_PV1",
type: "PV1",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_VISIT,
value: []
},
PATIENT_VISIT_PV2: {
name: "PATIENT_VISIT_PV2",
type: "PV2",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_VISIT,
value: []
},
PATIENT_VISIT_PRT: {
name: "PATIENT_VISIT_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT_VISIT,
value: []
},
PATIENT_CSR: {
name: "PATIENT_CSR",
type: "CSR",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_STUDY_PHASE_CSP: {
name: "PATIENT_STUDY_PHASE_CSP",
type: "CSP",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_STUDY_PHASE,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_CSS: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_CSS",
type: "CSS",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_ORC: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_ORC",
type: "ORC",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_OBR: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_OBR",
type: "OBR",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_PRT: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_TIMING_QTY_TQ1: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_TIMING_QTY_TQ1",
type: "TQ1",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_TIMING_QTY,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_TIMING_QTY_TQ2: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_TIMING_QTY_TQ2",
type: "TQ2",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_TIMING_QTY,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_OBX: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION_OBX",
type: "OBX",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_OBSERVATION,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_COMMON_ORDER_ORC: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_COMMON_ORDER_ORC",
type: "ORC",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_COMMON_ORDER,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_COMMON_ORDER_PRT: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_COMMON_ORDER_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_COMMON_ORDER,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_RX_ADMIN_RXA: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_RX_ADMIN_RXA",
type: "RXA",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_RX_ADMIN,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_RX_ADMIN_RXR: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_RX_ADMIN_RXR",
type: "RXR",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_RX_ADMIN,
value: []
},
PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_RX_ADMIN_PRT: {
name: "PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_RX_ADMIN_PRT",
type: "PRT",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT_STUDY_PHASE_STUDY_SCHEDULE_STUDY_PHARM_RX_ADMIN,
value: []
},
};
}
get name() { return 'CSU_C09'; }
get description() { return 'Automated time intervals for reporting, like monthly'; }
}
exports.default = CSU_C09_Message;