UNPKG

gcp-nrces-fhir

Version:

Google cloud healthcare api NRCES FHIR implimenataion

104 lines 4.55 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.PaymentNoctice = void 0; const ResourceMai_1 = __importDefault(require("../../resources/ResourceMai")); const status = ["active", "cancelled", "draft", "entered-in-error"]; class PaymentNoctice extends ResourceMai_1.default { getFHIR(options) { const body = { resourceType: "PaymentNotice", id: options.id, meta: { versionId: "1", lastUpdated: "2023-09-07T14:58:58.181+05:30", profile: [ "https://nrces.in/ndhm/fhir/r4/StructureDefinition/PaymentNotice", ], }, text: { status: "generated", div: options.text, }, identifier: options.identifier, status: options.status, request: options.request && { reference: options.request.resource && `${options.request.resource}/${options.request.id}`, identifier: options.request.identifier, type: options.request.type, display: options.request.display, }, response: options.response && { reference: options.response.resource && `${options.response.resource}/${options.response.id}`, identifier: options.response.identifier, type: options.response.type, display: options.response.display, }, created: options.createdDate, payment: options.payment && { reference: options.payment.resource && `${options.payment.resource}/${options.payment.id}`, identifier: options.payment.identifier, type: options.payment.type, display: options.payment.display, }, paymentDate: options.paymentDate, recipient: options.recipient && { reference: options.recipient.resource && `${options.recipient.resource}/${options.recipient.id}`, identifier: options.recipient.identifier, type: options.recipient.type, display: options.recipient.display, }, amount: options.amount, paymentStatus: options.paymentStatus, payee: options.payee && { reference: options.payee.resource && `${options.payee.resource}/${options.payee.id}`, identifier: options.payee.identifier, type: options.payee.type, display: options.payee.display, }, extension: options.extension, modifierExtension: options.modifierExtension, implicitRules: options.implicitRules, }; return body; } convertFhirToObject(options) { const ret = { id: options.id, resourceType: "PaymentNotice", text: options.text.div, identifier: options.identifier, status: options.status, request: options.request && this.getFromMultResource(options.request), response: options.response && this.getFromMultResource(options.response), createdDate: options.created, payment: options.payment && this.getFromMultResource(options.payment), paymentDate: options.paymentDate, recipient: options.recipient && this.getFromMultResource(options.recipient), amount: options.amount, paymentStatus: options.paymentStatus, payee: options.payee && this.getFromMultResource(options.payee), extension: options.extension, modifierExtension: options.modifierExtension, implicitRules: options.implicitRules, }; // Remove keys with null or undefined values Object.keys(ret).forEach((key) => { if (ret[key] === null || ret[key] === undefined) { delete ret[key]; } }); return ret; } toHtml(option) { throw new Error("Method not implemented."); } statusArray() { return status.map((el) => el); } } exports.PaymentNoctice = PaymentNoctice; //# sourceMappingURL=PaymentNotice.js.map