@dotbase/hl7-v2-message
Version:
Parses HL7 v2.x messages into typed javascript objects and makes them easily accessable.
270 lines (269 loc) • 9.44 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const Hl7Message_1 = tslib_1.__importDefault(require("../../../model/Hl7Message"));
/**
* Unsolicited laboratory observation message
*/
class OUL_R23_Message extends Hl7Message_1.default {
constructor() {
super(...arguments);
this.compounds = {
PATIENT: {
name: "PATIENT",
isOptional: true,
isRepeatable: false,
},
PATIENT_VISIT: {
name: "PATIENT_VISIT",
isOptional: true,
isRepeatable: false,
parentCompound: "PATIENT",
},
SPECIMEN: {
name: "SPECIMEN",
isOptional: false,
isRepeatable: true,
},
SPECIMEN_CONTAINER: {
name: "SPECIMEN_CONTAINER",
isOptional: false,
isRepeatable: true,
parentCompound: "SPECIMEN",
},
SPECIMEN_CONTAINER_ORDER: {
name: "SPECIMEN_CONTAINER_ORDER",
isOptional: false,
isRepeatable: true,
parentCompound: "SPECIMEN_CONTAINER",
},
SPECIMEN_CONTAINER_ORDER_TIMING_QTY: {
name: "SPECIMEN_CONTAINER_ORDER_TIMING_QTY",
isOptional: true,
isRepeatable: true,
parentCompound: "SPECIMEN_CONTAINER_ORDER",
},
SPECIMEN_CONTAINER_ORDER_RESULT: {
name: "SPECIMEN_CONTAINER_ORDER_RESULT",
isOptional: true,
isRepeatable: true,
parentCompound: "SPECIMEN_CONTAINER_ORDER",
},
};
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: []
},
NTE: {
name: "NTE",
type: "NTE",
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_NTE: {
name: "PATIENT_NTE",
type: "NTE",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.PATIENT,
value: []
},
PATIENT_OBX: {
name: "PATIENT_OBX",
type: "OBX",
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: []
},
NK1: {
name: "NK1",
type: "NK1",
isOptional: true,
isRepeatable: true,
value: []
},
SPECIMEN_SPM: {
name: "SPECIMEN_SPM",
type: "SPM",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.SPECIMEN,
value: []
},
SPECIMEN_OBX: {
name: "SPECIMEN_OBX",
type: "OBX",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.SPECIMEN,
value: []
},
SPECIMEN_CONTAINER_SAC: {
name: "SPECIMEN_CONTAINER_SAC",
type: "SAC",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.SPECIMEN_CONTAINER,
value: []
},
SPECIMEN_CONTAINER_INV: {
name: "SPECIMEN_CONTAINER_INV",
type: "INV",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.SPECIMEN_CONTAINER,
value: []
},
SPECIMEN_CONTAINER_ORDER_OBR: {
name: "SPECIMEN_CONTAINER_ORDER_OBR",
type: "OBR",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.SPECIMEN_CONTAINER_ORDER,
value: []
},
SPECIMEN_CONTAINER_ORDER_ORC: {
name: "SPECIMEN_CONTAINER_ORDER_ORC",
type: "ORC",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.SPECIMEN_CONTAINER_ORDER,
value: []
},
SPECIMEN_CONTAINER_ORDER_NTE: {
name: "SPECIMEN_CONTAINER_ORDER_NTE",
type: "NTE",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.SPECIMEN_CONTAINER_ORDER,
value: []
},
SPECIMEN_CONTAINER_ORDER_ROL: {
name: "SPECIMEN_CONTAINER_ORDER_ROL",
type: "ROL",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.SPECIMEN_CONTAINER_ORDER,
value: []
},
SPECIMEN_CONTAINER_ORDER_TIMING_QTY_TQ1: {
name: "SPECIMEN_CONTAINER_ORDER_TIMING_QTY_TQ1",
type: "TQ1",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.SPECIMEN_CONTAINER_ORDER_TIMING_QTY,
value: []
},
SPECIMEN_CONTAINER_ORDER_TIMING_QTY_TQ2: {
name: "SPECIMEN_CONTAINER_ORDER_TIMING_QTY_TQ2",
type: "TQ2",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.SPECIMEN_CONTAINER_ORDER_TIMING_QTY,
value: []
},
SPECIMEN_CONTAINER_ORDER_RESULT_OBX: {
name: "SPECIMEN_CONTAINER_ORDER_RESULT_OBX",
type: "OBX",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.SPECIMEN_CONTAINER_ORDER_RESULT,
value: []
},
SPECIMEN_CONTAINER_ORDER_RESULT_TCD: {
name: "SPECIMEN_CONTAINER_ORDER_RESULT_TCD",
type: "TCD",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.SPECIMEN_CONTAINER_ORDER_RESULT,
value: []
},
SPECIMEN_CONTAINER_ORDER_RESULT_SID: {
name: "SPECIMEN_CONTAINER_ORDER_RESULT_SID",
type: "SID",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.SPECIMEN_CONTAINER_ORDER_RESULT,
value: []
},
SPECIMEN_CONTAINER_ORDER_RESULT_NTE: {
name: "SPECIMEN_CONTAINER_ORDER_RESULT_NTE",
type: "NTE",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.SPECIMEN_CONTAINER_ORDER_RESULT,
value: []
},
SPECIMEN_CONTAINER_ORDER_CTI: {
name: "SPECIMEN_CONTAINER_ORDER_CTI",
type: "CTI",
isOptional: true,
isRepeatable: true,
parentCompound: this.compounds.SPECIMEN_CONTAINER_ORDER,
value: []
},
DSC: {
name: "DSC",
type: "DSC",
isOptional: true,
isRepeatable: false,
value: []
},
};
}
get name() { return 'OUL_R23'; }
get description() { return 'Unsolicited laboratory observation message'; }
}
exports.default = OUL_R23_Message;