gcp-nrces-fhir
Version:
Google cloud healthcare api NRCES FHIR implimenataion
104 lines • 4.55 kB
JavaScript
;
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