gcp-nrces-fhir
Version:
Google cloud healthcare api NRCES FHIR implimenataion
120 lines • 5.23 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.DietaryRecord = void 0;
const _1 = require(".");
const gcp_1 = __importDefault(require("../../classess/gcp"));
class DietaryRecord extends _1.Composition {
constructor() {
super(...arguments);
this.getOptions = () => { };
this.create = (options, Credentials, DatabasePath) => __awaiter(this, void 0, void 0, function* () {
let gcpFhirCrud;
if (Credentials) {
gcpFhirCrud = new gcp_1.default(Credentials, DatabasePath);
}
else {
gcpFhirCrud = new gcp_1.default();
}
// body.section = options.composition.section;
const res = yield gcpFhirCrud.createFhirResource({
resourceType: "Composition",
identifier: options.identifier ? options.identifier : undefined,
extension: options.extension ? options.extension : undefined,
language: options.languageCode ? options.languageCode : "en",
status: options.status,
type: {
coding: [
{
system: "https://ndhm.gov.in/sct",
code: "440654000",
display: "Dietary record",
},
],
text: "Dietary record",
},
subject: {
reference: `Patient/${options.patientId}`,
},
encounter: {
reference: `Encounter/${options.encounterId}`,
},
date: options.date,
author: [{
reference: `Organization/${options.orgnizationId}`,
}],
title: "Dietary record",
custodian: {
reference: `Organization/${options.orgnizationId}`,
},
text: {
status: "generated",
div: options.docHtml,
},
}, "Composition");
return res;
});
this.update = (options, Credentials, DatabasePath) => __awaiter(this, void 0, void 0, function* () {
if (!options.id) {
throw (new Error().message = "id of composition is required");
}
let gcpFhirCrud;
if (Credentials) {
gcpFhirCrud = new gcp_1.default(Credentials, DatabasePath);
}
else {
gcpFhirCrud = new gcp_1.default();
}
const res = yield gcpFhirCrud.updateFhirResource({
id: options.id,
resourceType: "Composition",
identifier: options.identifier ? options.identifier : undefined,
extension: options.extension ? options.extension : undefined,
language: options.languageCode ? options.languageCode : "en",
status: options.status,
type: {
coding: [
{
system: "https://ndhm.gov.in/sct",
code: "440654000",
display: "Dietary record",
},
],
text: "Dietary record",
},
subject: {
reference: `Patient/${options.patientId}`,
},
encounter: {
reference: `Encounter/${options.encounterId}`,
},
date: options.date,
author: {
reference: `Organization/${options.orgnizationId}`,
},
title: "Dietary record",
custodian: {
reference: `Organization/${options.orgnizationId}`,
},
text: {
status: "generated",
div: options.docHtml,
},
}, options.id, "Composition");
return res;
});
}
}
exports.DietaryRecord = DietaryRecord;
//# sourceMappingURL=Dietary_Record.js.map