@dotbase/hl7-v2-message
Version:
Parses HL7 v2.x messages into typed javascript objects and makes them easily accessable.
179 lines (178 loc) • 6.43 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const Hl7Message_1 = tslib_1.__importDefault(require("../../../model/Hl7Message"));
/**
* Schedule query message and response
*/
class SQM_S25_Message extends Hl7Message_1.default {
constructor() {
super(...arguments);
this.compounds = {
REQUEST: {
name: "REQUEST",
isOptional: true,
isRepeatable: false,
},
REQUEST_RESOURCES: {
name: "REQUEST_RESOURCES",
isOptional: false,
isRepeatable: true,
parentCompound: "REQUEST",
},
REQUEST_RESOURCES_SERVICE: {
name: "REQUEST_RESOURCES_SERVICE",
isOptional: true,
isRepeatable: true,
parentCompound: "REQUEST_RESOURCES",
},
REQUEST_RESOURCES_GENERAL_RESOURCE: {
name: "REQUEST_RESOURCES_GENERAL_RESOURCE",
isOptional: true,
isRepeatable: true,
parentCompound: "REQUEST_RESOURCES",
},
REQUEST_RESOURCES_PERSONNEL_RESOURCE: {
name: "REQUEST_RESOURCES_PERSONNEL_RESOURCE",
isOptional: true,
isRepeatable: true,
parentCompound: "REQUEST_RESOURCES",
},
REQUEST_RESOURCES_LOCATION_RESOURCE: {
name: "REQUEST_RESOURCES_LOCATION_RESOURCE",
isOptional: true,
isRepeatable: true,
parentCompound: "REQUEST_RESOURCES",
},
};
this.segments = {
MSH: {
name: "MSH",
type: "MSH",
isOptional: false,
isRepeatable: false,
value: []
},
QRD: {
name: "QRD",
type: "QRD",
isOptional: false,
isRepeatable: false,
value: []
},
QRF: {
name: "QRF",
type: "QRF",
isOptional: true,
isRepeatable: false,
value: []
},
REQUEST_ARQ: {
name: "REQUEST_ARQ",
type: "ARQ",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.REQUEST,
value: []
},
REQUEST_APR: {
name: "REQUEST_APR",
type: "APR",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.REQUEST,
value: []
},
REQUEST_PID: {
name: "REQUEST_PID",
type: "PID",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.REQUEST,
value: []
},
REQUEST_RESOURCES_RGS: {
name: "REQUEST_RESOURCES_RGS",
type: "RGS",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.REQUEST_RESOURCES,
value: []
},
REQUEST_RESOURCES_SERVICE_AIS: {
name: "REQUEST_RESOURCES_SERVICE_AIS",
type: "AIS",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.REQUEST_RESOURCES_SERVICE,
value: []
},
REQUEST_RESOURCES_SERVICE_APR: {
name: "REQUEST_RESOURCES_SERVICE_APR",
type: "APR",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.REQUEST_RESOURCES_SERVICE,
value: []
},
REQUEST_RESOURCES_GENERAL_RESOURCE_AIG: {
name: "REQUEST_RESOURCES_GENERAL_RESOURCE_AIG",
type: "AIG",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.REQUEST_RESOURCES_GENERAL_RESOURCE,
value: []
},
REQUEST_RESOURCES_GENERAL_RESOURCE_APR: {
name: "REQUEST_RESOURCES_GENERAL_RESOURCE_APR",
type: "APR",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.REQUEST_RESOURCES_GENERAL_RESOURCE,
value: []
},
REQUEST_RESOURCES_PERSONNEL_RESOURCE_AIP: {
name: "REQUEST_RESOURCES_PERSONNEL_RESOURCE_AIP",
type: "AIP",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.REQUEST_RESOURCES_PERSONNEL_RESOURCE,
value: []
},
REQUEST_RESOURCES_PERSONNEL_RESOURCE_APR: {
name: "REQUEST_RESOURCES_PERSONNEL_RESOURCE_APR",
type: "APR",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.REQUEST_RESOURCES_PERSONNEL_RESOURCE,
value: []
},
REQUEST_RESOURCES_LOCATION_RESOURCE_AIL: {
name: "REQUEST_RESOURCES_LOCATION_RESOURCE_AIL",
type: "AIL",
isOptional: false,
isRepeatable: false,
parentCompound: this.compounds.REQUEST_RESOURCES_LOCATION_RESOURCE,
value: []
},
REQUEST_RESOURCES_LOCATION_RESOURCE_APR: {
name: "REQUEST_RESOURCES_LOCATION_RESOURCE_APR",
type: "APR",
isOptional: true,
isRepeatable: false,
parentCompound: this.compounds.REQUEST_RESOURCES_LOCATION_RESOURCE,
value: []
},
DSC: {
name: "DSC",
type: "DSC",
isOptional: true,
isRepeatable: false,
value: []
},
};
}
get name() { return 'SQM_S25'; }
get description() { return 'Schedule query message and response'; }
}
exports.default = SQM_S25_Message;