diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100755 index 0000000..2d324b7 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,299 @@ +name: eHospital CI + +on: + push: + branches: [main] + pull_request: + branches: [main] + release: + types: + - created + +env: + TURBO_API: 'http://127.0.0.1:9080' + TURBO_TOKEN: ${{ secrets.TURBO_SERVER_TOKEN }} + TURBO_TEAM: ${{ github.repository_owner }} + +jobs: + build: + runs-on: ubuntu-latest + permissions: + actions: read + + steps: + - uses: actions/checkout@v3 + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: "18" + + - name: Cache dependencies + id: cache + uses: actions/cache@v4 + with: + path: '**/node_modules' + key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} + + - name: Install dependencies + if: steps.cache.outputs.cache-hit != 'true' + run: yarn install + + - name: Setup local cache server for Turborepo + uses: felixmosh/turborepo-gh-artifacts@v1 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + server-token: ${{ secrets.TURBO_SERVER_TOKEN }} + + - name: Run build + run: yarn turbo run build --color --concurrency=5 + + - name: Upload build artifacts + uses: actions/upload-artifact@v2 + with: + name: packages + path: | + packages/**/dist + + + deploy_esm_billing_app: + runs-on: ubuntu-latest + + env: + DIR_NAME: "esm-billing-app" + ESM_NAME: "@ssemr/esm-patient-hiv-art-app" + JS_NAME: "ssemr-esm-patient-hiv-art-app.js" + + needs: build + + if: ${{ github.event_name == 'push' }} + + steps: + - name: Download Artifacts + uses: actions/download-artifact@v2 + + - name: Compute Timestamp + run: echo "TIMESTAMP=$(date +'%Y-%m-%d')" >> $GITHUB_ENV + + - name: Prepare Directory + shell: bash + run: | + mkdir -p dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }} + mv packages/${{ env.DIR_NAME }}/dist/*.* dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + ls dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + + deploy_esm_patient_registration_app: + runs-on: ubuntu-latest + + env: + DIR_NAME: "esm-patient-registration-app" + ESM_NAME: "@sjthc/esm-billing-app" + JS_NAME: "sjthc-esm-billing-app.js" + + needs: build + + if: ${{ github.event_name == 'push' }} + + steps: + - name: Download Artifacts + uses: actions/download-artifact@v2 + + - name: Compute Timestamp + run: echo "TIMESTAMP=$(date +'%Y-%m-%d')" >> $GITHUB_ENV + + - name: Prepare Directory + shell: bash + run: | + mkdir -p dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }} + mv packages/${{ env.DIR_NAME }}/dist/*.* dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + ls dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + + deploy_esm_patient_list_app: + runs-on: ubuntu-latest + + env: + DIR_NAME: "esm-patient-list-app" + ESM_NAME: "@sjthc/esm-patient-list-app" + JS_NAME: "sjthc-esm-patient-list-app.js" + + needs: build + + if: ${{ github.event_name == 'push' }} + + steps: + - name: Download Artifacts + uses: actions/download-artifact@v2 + + - name: Compute Timestamp + run: echo "TIMESTAMP=$(date +'%Y-%m-%d')" >> $GITHUB_ENV + + - name: Prepare Directory + shell: bash + run: | + mkdir -p dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }} + mv packages/${{ env.DIR_NAME }}/dist/*.* dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + ls dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + + deploy_esm_patient_registartion_app: + runs-on: ubuntu-latest + + env: + DIR_NAME: "esm-patient-registration-app" + ESM_NAME: "@sjthc/esm-patient-registration-app" + JS_NAME: "sjthc-esm-patient-registration-app.js" + + needs: build + + if: ${{ github.event_name == 'push' }} + + steps: + - name: Download Artifacts + uses: actions/download-artifact@v2 + + - name: Compute Timestamp + run: echo "TIMESTAMP=$(date +'%Y-%m-%d')" >> $GITHUB_ENV + + - name: Prepare Directory + shell: bash + run: | + mkdir -p dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }} + mv packages/${{ env.DIR_NAME }}/dist/*.* dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + ls dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + + deploy_esm_reports_app: + runs-on: ubuntu-latest + + env: + DIR_NAME: "esm-reports-app" + ESM_NAME: "@sjthc/esm-reports-app" + JS_NAME: "sjthc-esm-reports-app.js" + + needs: build + + if: ${{ github.event_name == 'push' }} + + steps: + - name: Download Artifacts + uses: actions/download-artifact@v2 + + - name: Compute Timestamp + run: echo "TIMESTAMP=$(date +'%Y-%m-%d')" >> $GITHUB_ENV + + - name: Prepare Directory + shell: bash + run: | + mkdir -p dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }} + mv packages/${{ env.DIR_NAME }}/dist/*.* dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + ls dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + + deploy_esm_service_queues_app: + runs-on: ubuntu-latest + + env: + DIR_NAME: "esm-service-queues-app" + ESM_NAME: "@sjthc/esm-service-queues-app" + JS_NAME: "sjthc-esm-service-queues-app.js" + + needs: build + + if: ${{ github.event_name == 'push' }} + + steps: + - name: Download Artifacts + uses: actions/download-artifact@v2 + + - name: Compute Timestamp + run: echo "TIMESTAMP=$(date +'%Y-%m-%d')" >> $GITHUB_ENV + + - name: Prepare Directory + shell: bash + run: | + mkdir -p dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }} + mv packages/${{ env.DIR_NAME }}/dist/*.* dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + ls dist/${{ env.ESM_NAME }}/${{ env.TIMESTAMP }}_${{ github.sha }}/ + + pre_release: + runs-on: ubuntu-latest + + needs: build + + if: ${{ github.event_name == 'push' }} + + steps: + - uses: actions/checkout@v3 + - name: Use Node.js + uses: actions/setup-node@v1 + with: + node-version: 18 + registry-url: "https://registry.npmjs.org" + + - name: Cache dependencies + id: cache + uses: actions/cache@v3 + with: + path: '**/node_modules' + key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} + + - name: Install dependencies + if: steps.cache.outputs.cache-hit != 'true' + run: npx lerna bootstrap + + - name: Build + run: yarn turbo run build --color + + - name: Patch + run: yarn lerna version patch --no-git-tag-version --no-push --yes + + - name: Version + run: npx lerna version "$(node -e "console.log(require('./lerna.json').version)")-pre.${{ github.run_number }}" --no-git-tag-version --yes + + - run: git config user.email "dev@intellisoftkenya.com" && git config user.name "eHospital CI" + - run: git add . && git commit -m "Prerelease version" --no-verify + + - name: Pre-release + run: yarn run ci:prepublish + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }} + - name: see directory + shell: bash + run: | + ls -alh + + release: + runs-on: ubuntu-latest + + needs: build + + if: ${{ github.event_name == 'release' }} + + steps: + - uses: actions/checkout@v4 + - name: Use Node.js + uses: actions/setup-node@v4 + with: + node-version: 18 + registry-url: 'https://registry.npmjs.org' + + - name: Cache dependencies + id: cache + uses: actions/cache@v4 + with: + path: '**/node_modules' + key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} + + - name: Install dependencies + if: steps.cache.outputs.cache-hit != 'true' + run: yarn install --immutable + + - name: Setup local cache server for Turborepo + uses: felixmosh/turborepo-gh-artifacts@v3 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + server-token: ${{ env.TURBO_TOKEN }} + + - name: Build + run: yarn turbo run build --color --concurrency=5 + + - name: Publish + run: yarn config set npmAuthToken "${NODE_AUTH_TOKEN}" && yarn run ci:publish + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index f835841..e83aef6 100755 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -11,26 +11,26 @@ on: jobs: main: runs-on: ubuntu-latest - timeout-minutes: 15 steps: - name: Checkout repo - uses: actions/checkout@v4 + uses: actions/checkout@v3 - name: Copy test environment variables - run: cp example.env .env + run: | + cp example.env .env - name: Setup node - uses: actions/setup-node@v4 + uses: actions/setup-node@v3 with: - node-version: "18" + node-version: 18 - name: Cache dependencies id: cache - uses: actions/cache@v4 + uses: actions/cache@v3 with: path: '**/node_modules' key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} - + - name: Install dependencies if: steps.cache.outputs.cache-hit != 'true' run: yarn install --immutable @@ -38,26 +38,16 @@ jobs: - name: Install Playwright Browsers run: npx playwright install chromium --with-deps - - name: Build apps - run: yarn turbo run build --color --concurrency=5 - - name: Run dev server - run: bash e2e/support/github/run-e2e-docker-env.sh - - - name: Wait for OpenMRS instance to start - run: while [[ "$(curl -s -o /dev/null -w ''%{http_code}'' http://localhost:8080/openmrs/login.htm)" != "200" ]]; do sleep 10; done + run: yarn start --sources 'packages/esm-*-app/' --port 8800 & - name: Run E2E tests - run: yarn test-e2e - - - name: Stop dev server - if: "!cancelled()" - run: docker stop $(docker ps -a -q) + run: yarn playwright test - - name: Upload report + - name: Upload Report uses: actions/upload-artifact@v3 if: always() with: name: playwright-report path: playwright-report/ - retention-days: 30 + retention-days: 30 \ No newline at end of file diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml deleted file mode 100755 index 9fc4b2c..0000000 --- a/.github/workflows/node.js.yml +++ /dev/null @@ -1,103 +0,0 @@ -name: Node.js CI - -on: - push: - branches: [main] - pull_request: - branches: [main] - release: - types: - - created - -env: - ESM_NAME: "@openmrs/esm-template-app" - JS_NAME: "openmrs-esm-template-app.js" - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - - name: Use Node.js - uses: actions/setup-node@v4 - with: - node-version: "18" - - run: yarn install --immutable - - run: yarn verify - - run: yarn build - - name: Upload Artifacts - uses: actions/upload-artifact@v4 - with: - name: dist - path: | - dist - - pre_release: - runs-on: ubuntu-latest - - needs: build - - if: ${{ github.event_name == 'push' }} - - steps: - - run: echo "Uncomment the lines below and delete this one." - # - uses: actions/checkout@v4 - # - name: Download Artifacts - # uses: actions/download-artifact@v4 - # - name: Use Node.js - # uses: actions/setup-node@v4 - # with: - # node-version: "18" - # registry-url: "https://registry.npmjs.org" - # - run: yarn install --immutable - # - run: yarn version "$(node -e "console.log(require('semver').inc(require('./package.json').version, 'patch'))")-pre.${{ github.run_number }}" - # - run: yarn build - # - run: git config user.email "info@openmrs.org" && git config user.name "OpenMRS CI" - # - run: git add . && git commit -m "Prerelease version" --no-verify - # - run: yarn config set npmAuthToken "${NODE_AUTH_TOKEN}" && yarn npm publish --access public --tag next - # env: - # NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }} - # - name: Upload Artifacts - # uses: actions/upload-artifact@v4 - # with: - # name: dist - # path: | - # dist - - release: - runs-on: ubuntu-latest - - needs: build - - if: ${{ github.event_name == 'release' }} - - steps: - - uses: actions/checkout@v4 - - name: Download Artifacts - uses: actions/download-artifact@v4 - - name: Use Node.js - uses: actions/setup-node@v4 - with: - node-version: "18" - registry-url: 'https://registry.npmjs.org' - - run: yarn install --immutable - - run: yarn config set npmAuthToken "${NODE_AUTH_TOKEN}" && yarn npm publish - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }} - - deploy: - runs-on: ubuntu-latest - - needs: pre_release - - if: ${{ github.event_name == 'push' }} - - steps: - - run: echo "Uncomment the lines below and delete this one." - # - name: Trigger RefApp Build - # uses: fjogeleit/http-request-action@v1 - # with: - # url: https://ci.openmrs.org/rest/api/latest/queue/O3-BP - # method: "POST" - # customHeaders: '{ "Authorization": "Bearer ${{ secrets.BAMBOO_TOKEN }}" }' diff --git a/packages/esm-billing-app/.editorconfig b/packages/esm-billing-app/.editorconfig deleted file mode 100644 index 4265fb8..0000000 --- a/packages/esm-billing-app/.editorconfig +++ /dev/null @@ -1,12 +0,0 @@ -root = true - -[*] -indent_style = space -indent_size = 2 -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true -end_of_line = lf - -[*.md] -trim_trailing_whitespace = false \ No newline at end of file diff --git a/packages/esm-billing-app/.eslintignore b/packages/esm-billing-app/.eslintignore deleted file mode 100644 index 7f0977e..0000000 --- a/packages/esm-billing-app/.eslintignore +++ /dev/null @@ -1,2 +0,0 @@ -src/**/*.test.tsx -**/*.d.ts diff --git a/packages/esm-billing-app/.eslintrc b/packages/esm-billing-app/.eslintrc deleted file mode 100644 index 9414c0e..0000000 --- a/packages/esm-billing-app/.eslintrc +++ /dev/null @@ -1,57 +0,0 @@ -{ - "env": { - "node": true, - "browser": true - }, - "extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended", "prettier"], - "parser": "@typescript-eslint/parser", - "plugins": ["@typescript-eslint"], - "ignorePatterns": ["**/*.test.tsx"], - "rules": { - "no-console": ["error", { "allow": ["warn", "error"] }], - "no-explicit-any": "off", - "no-extra-boolean-cast": "off", - "no-prototype-builtins": "off", - "no-restricted-imports": [ - "error", - { - "paths": [ - // These two rules ensure that we're importing lodash and lodash-es correctly. Not doing so can bloat our bundle size significantly. - { - "name": "lodash", - "message": "Import specific methods from `lodash`. e.g. `import map from 'lodash/map'`" - }, - { - "name": "lodash-es", - "importNames": ["default"], - "message": "Import specific methods from `lodash-es`. e.g. `import { map } from 'lodash-es'`" - }, - { - "name": "carbon-components-react", - "message": "Import from `@carbon/react` directly. e.g. `import { Toggle } from '@carbon/react'`" - }, - { - "name": "@carbon/icons-react", - "message": "Import from `@carbon/react/icons`. e.g. `import { ChevronUp } from '@carbon/react/icons'`" - } - ] - } - ], - "no-unsafe-optional-chaining": "off", - "no-useless-escape": "off", - "prefer-const": "off", - "@typescript-eslint/ban-ts-comment": "off", - "@typescript-eslint/ban-types": "off", - // Use `import type` instead of `import` for type imports https://typescript-eslint.io/blog/consistent-type-imports-and-exports-why-and-how - "@typescript-eslint/consistent-type-imports": [ - "error", - { - "fixStyle": "inline-type-imports" - } - ], - "@typescript-eslint/no-explicit-any": "off", - "@typescript-eslint/no-unused-vars": "off", - "@typescript-eslint/no-var-requires": "off", - "@typescript-eslint/triple-slash-reference": "off" - } -} diff --git a/packages/esm-billing-app/.gitignore b/packages/esm-billing-app/.gitignore deleted file mode 100644 index 8e72bdd..0000000 --- a/packages/esm-billing-app/.gitignore +++ /dev/null @@ -1,87 +0,0 @@ -# OS files -.DS_Store - -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* - -# Runtime data -pids -*.pid -*.seed -*.pid.lock - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage - -# nyc test coverage -.nyc_output - -# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# Bower dependency directory (https://bower.io/) -bower_components - -# node-waf configuration -.lock-wscript - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release - -# Dependency directories -node_modules/ -jspm_packages/ - -# TypeScript v1 declaration files -typings/ - -# Optional npm cache directory -.npm - -# Optional eslint cache -.eslintcache - -# Optional REPL history -.node_repl_history - -# Output of 'npm pack' -*.tgz - -# Yarn Integrity file -.yarn-integrity - -# dotenv environment variables file -.env - -# next.js build output -.next - -dist/ - -# Intellij integration -*.iml - -# ignores for Yarn v3 w/o PNP -.pnp.* -.yarn/* -!.yarn/patches -!.yarn/plugins -!.yarn/releases -!.yarn/sdks -!.yarn/versions - -# Turborepo -.turbo - -# Playwright and e2e tests -/test-results/ -/playwright-report/ -/playwright/.cache/ -e2e/storageState.json diff --git a/packages/esm-billing-app/.npmignore b/packages/esm-billing-app/.npmignore deleted file mode 100644 index d570088..0000000 --- a/packages/esm-billing-app/.npmignore +++ /dev/null @@ -1,2 +0,0 @@ -node_modules/ - diff --git a/packages/esm-billing-app/.prettierignore b/packages/esm-billing-app/.prettierignore deleted file mode 100644 index 3817531..0000000 --- a/packages/esm-billing-app/.prettierignore +++ /dev/null @@ -1,14 +0,0 @@ -# directories -.husky/ -dist/ -node_modules/ - -# dotfiles and generated -.* -yarn.lock - -# by file type -**/*.css -**/*.scss -**/*.md -**/*.json diff --git a/packages/esm-billing-app/.turbo.json b/packages/esm-billing-app/.turbo.json deleted file mode 100644 index aa1c7fb..0000000 --- a/packages/esm-billing-app/.turbo.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "$schema": "https://turbo.build/schema.json", - "pipeline": { - "build": { - "outputs": ["dist/**"] - }, - "lint": {}, - "extract-translations": { - "outputs": ["./translations/*"] - }, - "test": {}, - "coverage": { - "outputs": ["coverage/**"] - }, - "typescript": {}, - "verify": {} - } -} diff --git a/packages/esm-billing-app/.yarnrc.yml b/packages/esm-billing-app/.yarnrc.yml deleted file mode 100644 index 0999ec9..0000000 --- a/packages/esm-billing-app/.yarnrc.yml +++ /dev/null @@ -1,11 +0,0 @@ -compressionLevel: mixed - -enableGlobalCache: false - -nodeLinker: node-modules - -plugins: - - path: .yarn/plugins/@yarnpkg/plugin-outdated.cjs - spec: "https://mskelton.dev/yarn-outdated/v3" - -yarnPath: .yarn/releases/yarn-4.1.1.cjs diff --git a/packages/esm-billing-app/__mocks__/bills.mock.ts b/packages/esm-billing-app/__mocks__/bills.mock.ts new file mode 100644 index 0000000..c659d9c --- /dev/null +++ b/packages/esm-billing-app/__mocks__/bills.mock.ts @@ -0,0 +1,394 @@ +import { restBaseUrl } from '@openmrs/esm-framework'; + +export const billsSummary = [ + { + uuid: '65f9f19a-f70e-44f4-9c6c-55b23dab4a3f', + display: 'CP2-0011-0', + voided: false, + voidReason: null, + adjustedBy: [], + billAdjusted: null, + cashPoint: { + uuid: '381595a0-2229-4152-9c45-bd3692aac7cc', + name: 'Pharmacy Cashier', + description: '', + retired: false, + location: { + uuid: '381595a0-2229-4152-9c45-bd3692aac7cc', + display: 'Amani Family Medical Clinic', + links: [ + { + rel: 'self', + uri: `http://localhost:8089/openmrs${restBaseUrl}/location/381595a0-2229-4152-9c45-bd3692aac7cc`, + resourceAlias: 'location', + }, + ], + }, + }, + cashier: { + uuid: '48b55692-e061-4ffa-b1f2-fd4aaf506224', + display: 'admin - ayunda ayunda ayunda', + links: [ + { + rel: 'self', + uri: `http://localhost:8089/openmrs${restBaseUrl}/provider/48b55692-e061-4ffa-b1f2-fd4aaf506224`, + resourceAlias: 'provider', + }, + ], + }, + dateCreated: '2023-11-29T09:35:20.000+0300', + lineItems: [ + { + uuid: '6ff72ef2-4265-4fdb-8563-a3a2eefa484e', + display: 'BillLineItem', + billableService: null, + voided: false, + voidReason: null, + item: 'HIV self-test kit', + quantity: 1, + price: 500.0, + priceName: '', + priceUuid: '', + lineItemOrder: 0, + resourceVersion: '1.8', + }, + ], + patient: { + uuid: 'dda9b65f-0037-11ec-85e7-04ed33c79a3e', + display: 'MGFRYY - WACERA WACERA WACERA', + links: [ + { + rel: 'self', + uri: `http://localhost:8089/openmrs${restBaseUrl}/patient/dda9b65f-0037-11ec-85e7-04ed33c79a3e`, + resourceAlias: 'patient', + }, + ], + }, + payments: [ + { + uuid: '0ddfed3b-f606-4b3f-bf8a-bcc14a40d21d', + instanceType: { + uuid: '8d8718c2-c2cc-11de-8d13-0010c6dffd0f', + name: 'Mpesa', + description: 'Mpesa', + retired: false, + }, + attributes: [ + { + uuid: '84aacfcc-9788-4f7b-a56a-407d84af1b54', + display: 'Mpesa Code: MPESA001', + voided: false, + voidReason: null, + value: 'MPESA001', + attributeType: { + uuid: '8d8718c2-c2cc-11de-8d13-0010c6dffd0f', + name: 'Mpesa Code', + description: 'Mpesa Code', + retired: false, + attributeOrder: 1, + format: 'java.lang.String', + foreignKey: null, + regExp: null, + required: false, + }, + order: 1, + valueName: 'MPESA001', + resourceVersion: '1.8', + }, + ], + amount: 1000.0, + amountTendered: 0, + dateCreated: 1701239720000, + voided: false, + resourceVersion: '1.8', + }, + ], + receiptNumber: 'CP2-0011-0', + status: 'PENDING', + adjustmentReason: null, + id: 30, + resourceVersion: '1.8', + }, + { + uuid: '65f9f19a-f70e-44f4-9c6c-55b23dab4a3f', + display: 'CP2-0011-0', + voided: false, + voidReason: null, + adjustedBy: [], + billAdjusted: null, + cashPoint: { + uuid: '381595a0-2229-4152-9c45-bd3692aac7cc', + name: 'Pharmacy Cashier', + description: '', + retired: false, + location: { + uuid: '381595a0-2229-4152-9c45-bd3692aac7cc', + display: 'Amani Family Medical Clinic', + links: [ + { + rel: 'self', + uri: `http://localhost:8089/openmrs${restBaseUrl}/location/381595a0-2229-4152-9c45-bd3692aac7cc`, + resourceAlias: 'location', + }, + ], + }, + }, + cashier: { + uuid: '48b55692-e061-4ffa-b1f2-fd4aaf506224', + display: 'admin - ayunda ayunda ayunda', + links: [ + { + rel: 'self', + uri: `http://localhost:8089/openmrs${restBaseUrl}/provider/48b55692-e061-4ffa-b1f2-fd4aaf506224`, + resourceAlias: 'provider', + }, + ], + }, + dateCreated: '2023-11-29T09:35:20.000+0300', + lineItems: [ + { + uuid: '6ff72ef2-4265-4fdb-8563-a3a2eefa484e', + display: 'BillLineItem', + billableService: null, + voided: false, + voidReason: null, + item: 'HIV self-test kit', + quantity: 1, + price: 500.0, + priceName: '', + priceUuid: '', + lineItemOrder: 0, + resourceVersion: '1.8', + }, + ], + patient: { + uuid: 'dda9b65f-0037-11ec-85e7-04ed33c79a3e', + display: 'MGFRYY - WACERA WACERA WACERA', + links: [ + { + rel: 'self', + uri: `http://localhost:8089/openmrs${restBaseUrl}/patient/dda9b65f-0037-11ec-85e7-04ed33c79a3e`, + resourceAlias: 'patient', + }, + ], + }, + payments: [ + { + uuid: '0ddfed3b-f606-4b3f-bf8a-bcc14a40d21d', + instanceType: { + uuid: '8d8718c2-c2cc-11de-8d13-0010c6dffd0f', + name: 'Mpesa', + description: 'Mpesa', + retired: false, + }, + + attributes: [ + { + uuid: '84aacfcc-9788-4f7b-a56a-407d84af1b54', + display: 'Mpesa Code: MPESA001', + voided: false, + voidReason: null, + value: 'MPESA001', + attributeType: { + uuid: '8d8718c2-c2cc-11de-8d13-0010c6dffd0f', + name: 'Mpesa Code', + description: 'Mpesa Code', + retired: false, + attributeOrder: 1, + format: 'java.lang.String', + foreignKey: null, + regExp: null, + required: false, + }, + order: 1, + valueName: 'MPESA001', + resourceVersion: '1.8', + }, + ], + amount: 1000.0, + amountTendered: 1000.0, + dateCreated: 1701239720000, + voided: false, + resourceVersion: '1.8', + }, + ], + receiptNumber: 'CP2-0011-0', + status: 'PENDING', + adjustmentReason: null, + id: 30, + resourceVersion: '1.8', + }, + { + uuid: '65f9f19a-f70e-44f4-9c6c-55b23dab4a3f', + display: 'CP2-0011-0', + voided: false, + voidReason: null, + adjustedBy: [], + billAdjusted: null, + cashPoint: { + uuid: '381595a0-2229-4152-9c45-bd3692aac7cc', + name: 'Pharmacy Cashier', + description: '', + retired: false, + location: { + uuid: '381595a0-2229-4152-9c45-bd3692aac7cc', + display: 'Amani Family Medical Clinic', + links: [ + { + rel: 'self', + uri: `http://localhost:8089/openmrs${restBaseUrl}/location/381595a0-2229-4152-9c45-bd3692aac7cc`, + resourceAlias: 'location', + }, + ], + }, + }, + cashier: { + uuid: '48b55692-e061-4ffa-b1f2-fd4aaf506224', + display: 'admin - ayunda ayunda ayunda', + links: [ + { + rel: 'self', + uri: `http://localhost:8089/openmrs${restBaseUrl}/provider/48b55692-e061-4ffa-b1f2-fd4aaf506224`, + resourceAlias: 'provider', + }, + ], + }, + dateCreated: '2023-11-29T09:35:20.000+0300', + lineItems: [ + { + uuid: '6ff72ef2-4265-4fdb-8563-a3a2eefa484e', + display: 'BillLineItem', + billableService: null, + voided: false, + voidReason: null, + item: 'HIV self-test kit', + quantity: 1, + price: 500.0, + priceName: '', + priceUuid: '', + lineItemOrder: 0, + resourceVersion: '1.8', + }, + ], + patient: { + uuid: 'dda9b65f-0037-11ec-85e7-04ed33c79a3e', + display: 'MGFRYY - WACERA WACERA WACERA', + links: [ + { + rel: 'self', + uri: `http://localhost:8089/openmrs${restBaseUrl}/patient/dda9b65f-0037-11ec-85e7-04ed33c79a3e`, + resourceAlias: 'patient', + }, + ], + }, + payments: [ + { + uuid: '0ddfed3b-f606-4b3f-bf8a-bcc14a40d21d', + instanceType: { + uuid: '8d8718c2-c2cc-11de-8d13-0010c6dffd0f', + name: 'Mpesa', + description: 'Mpesa', + retired: false, + }, + + attributes: [ + { + uuid: '84aacfcc-9788-4f7b-a56a-407d84af1b54', + display: 'Mpesa Code: MPESA001', + voided: false, + voidReason: null, + value: 'MPESA001', + attributeType: { + uuid: '8d8718c2-c2cc-11de-8d13-0010c6dffd0f', + name: 'Mpesa Code', + description: 'Mpesa Code', + retired: false, + attributeOrder: 1, + format: 'java.lang.String', + foreignKey: null, + regExp: null, + required: false, + }, + order: 1, + valueName: 'MPESA001', + resourceVersion: '1.8', + }, + ], + amount: 1000.0, + amountTendered: 1000.0, + dateCreated: 1701239720000, + voided: false, + resourceVersion: '1.8', + }, + ], + receiptNumber: 'CP2-0011-0', + status: 'PAID', + adjustmentReason: null, + id: 30, + resourceVersion: '1.8', + }, +]; + +export const mockBill = { + id: 26, + uuid: '6eb8d678-514d-46ad-9554-51e48d96d567', + patientName: 'James Bond', + identifier: 'PJYM9 ', + patientUuid: 'b2fcf02b-7ee3-4d16-a48f-576be2b103aa', + status: 'PENDING', + receiptNumber: '0035-6', + cashier: { + uuid: 'fe00dd43-4c39-4ce9-9832-bc3620c80c6c', + display: 'admin - Bildard SONGOI Olero', + links: [ + { + rel: 'self', + uri: `https://data.kenyahmis.org:8500/openmrs${restBaseUrl}/provider/fe00dd43-4c39-4ce9-9832-bc3620c80c6c`, + resourceAlias: 'provider', + }, + ], + }, + cashPointUuid: '54065383-b4d4-42d2-af4d-d250a1fd2590', + cashPointName: 'Cashier 2', + cashPointLocation: 'Moi Teaching Refferal Hospital', + dateCreated: '15 — Dec — 2023', + lineItems: [ + { + uuid: '053ab483-79de-43f9-a73b-5823ccd8518b', + display: 'BillLineItem', + billableService: null, + voided: false, + voidReason: null, + item: 'Hemoglobin', + quantity: 1, + price: 100, + priceName: '', + priceUuid: '', + lineItemOrder: 0, + paymentStatus: 'PENDING', + resourceVersion: '1.8', + }, + ], + billingService: 'Hemoglobin', + payments: [], + totalAmount: 100, + tenderedAmount: 0, +}; + +export const mockPayments = [ + { + uuid: 'db0744e5-033d-4162-9c41-f34cb97de1f7', + instanceType: { + uuid: '63eff7a4-6f82-43c4-a333-dbcc58fe9f74', + name: 'Cash', + description: 'Cash Payment', + retired: false, + }, + attributes: [], + amount: 500, + amountTendered: 500, + dateCreated: 1702646939000, + voided: false, + resourceVersion: '1.8', + }, +]; diff --git a/packages/esm-billing-app/__mocks__/delivery-summary.mock.ts b/packages/esm-billing-app/__mocks__/delivery-summary.mock.ts new file mode 100644 index 0000000..6d40f12 --- /dev/null +++ b/packages/esm-billing-app/__mocks__/delivery-summary.mock.ts @@ -0,0 +1,89 @@ +import { restBaseUrl } from '@openmrs/esm-framework'; + +export const mockLabourAndDeliveryData = { + data: { + results: [ + { + uuid: '3b4daf81-7372-475c-ba5d-13c9c21d8ab1', + display: 'Delivery 09/23/2022', + encounterDatetime: '2022-09-23T13:11:06.000+0000', + patient: { + uuid: 'b835eff8-98c9-4988-887b-d93da7fbd542', + display: '100019A - George Roberts', + links: [ + { + rel: 'self', + uri: `http://backend:8080/openmrs${restBaseUrl}/patient/b835eff8-98c9-4988-887b-d93da7fbd542`, + resourceAlias: 'patient', + }, + ], + }, + location: null, + form: { + uuid: '496c7cc3-0eea-4e84-a04c-2292949e2f7f', + display: 'MCH Delivery Form', + links: [ + { + rel: 'self', + uri: `http://backend:8080/openmrs${restBaseUrl}/form/9e1a0c68-ca19-3482-9ffb-0a6b4e591c2a`, + resourceAlias: 'form', + }, + ], + }, + encounterType: { + uuid: 'c6d09e05-1f25-4164-8860-9f32c5a02df0', + display: 'Delivery', + links: [ + { + rel: 'self', + uri: `http://backend:8080/openmrs${restBaseUrl}/encountertype/dd528487-82a5-4082-9c72-ed246bd49591`, + resourceAlias: 'encountertype', + }, + ], + }, + obs: [ + { + uuid: '04d7d2a2-8ffd-418c-9a0c-1d20dec50231', + display: 'Covid 19 Signs and Symptom Set: Fever, Congestion, Loss of taste', + links: [ + { + rel: 'self', + uri: `http://backend:8080/openmrs${restBaseUrl}/obs/04d7d2a2-8ffd-418c-9a0c-1d20dec50231`, + resourceAlias: 'obs', + }, + ], + }, + { + uuid: '5ca0c815-2c47-4cda-8c46-1e118b593ea8', + display: 'Covid 19 Test Set: Positive, No, Respiratory PCR', + links: [ + { + rel: 'self', + uri: `http://backend:8080/openmrs${restBaseUrl}/obs/5ca0c815-2c47-4cda-8c46-1e118b593ea8`, + resourceAlias: 'obs', + }, + ], + }, + ], + orders: [], + voided: false, + visit: null, + encounterProviders: [], + diagnoses: [], + links: [ + { + rel: 'self', + uri: `http://backend:8080/openmrs${restBaseUrl}/encounter/3b4daf81-7372-475c-ba5d-13c9c21d8ab1`, + resourceAlias: 'encounter', + }, + { + rel: 'full', + uri: `http://backend:8080/openmrs${restBaseUrl}/encounter/3b4daf81-7372-475c-ba5d-13c9c21d8ab1?v=full`, + resourceAlias: 'encounter', + }, + ], + resourceVersion: '2.2', + }, + ], + }, +}; diff --git a/packages/esm-billing-app/__mocks__/encounter-observation.mock.ts b/packages/esm-billing-app/__mocks__/encounter-observation.mock.ts new file mode 100644 index 0000000..933ff71 --- /dev/null +++ b/packages/esm-billing-app/__mocks__/encounter-observation.mock.ts @@ -0,0 +1,10651 @@ +import { restBaseUrl } from '@openmrs/esm-framework'; + +export const formConceptMap = { + '162054AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Admission Number:', + answers: {}, + }, + '1590AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Number of ANC Visits:', + answers: {}, + }, + '1427AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Date of Last Menstrual Period(LMP)', + answers: {}, + }, + '299AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'VDRL/RPR Results:', + answers: { + '703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Positive', + '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Negative', + '1118AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Not Done', + }, + }, + '5596AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Estimated date of Delivery', + answers: {}, + }, + '163454AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Placenta complete?', + answers: { + '703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1501AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Baby born before arrival', + }, + }, + '160704AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Vagina Examination?', + answers: { + '132681AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Normal', + '5577AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Episiotomy', + '159264AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Vaginal tear', + '118935AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'FGM', + '139505AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Vaginal warts', + }, + }, + '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'NVP for the baby dispensed?', + answers: { + '80586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'N/A', + }, + }, + '1789AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Gestation at birth (in weeks):', + answers: {}, + }, + '159616AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Duration of Labor (Hours):', + answers: {}, + }, + '5630AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Mode of Delivery:', + answers: { + '1170AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Spontaneous vaginal delivery(SVD)', + '1171AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Cesarean section(CS)', + '1172AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Breech delivery', + '118159AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Assisted vaginal delivery(AVD)', + }, + }, + '5599AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Date and time of Delivery:', + answers: {}, + }, + '161928AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Blood loss during delivery in millilitres (mls):', + answers: {}, + }, + '1856AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Condition of Mother after delivery:', + answers: { + '160429AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Alive', + '134612AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Dead', + }, + }, + '162131AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Resuscitation Done:', + answers: { + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + }, + }, + '1602AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Maternal death audited?', + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + }, + }, + '120216AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Delivery complications ?', + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1067AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Unknown', + }, + }, + '1572AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Place of Delivery:', + answers: { + '1536AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Home', + '1589AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Facility', + '1601AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Born Before Arrival', + }, + }, + '1576AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Select delivery complications ?', + answers: { + '1067AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Unknown', + '113195AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Ruptured Uterus', + '118744AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Eclampsia', + '228AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'APH', + '230AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'PPH', + '115036AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Obstructed Labor', + '130AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Puerperal sepsis', + }, + }, + '162093AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Other delivery complications', + answers: {}, + }, + '1473AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Delivery Conducted By:', + answers: {}, + }, + '1573AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Cadre :', + answers: { + '1574AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Clinical officer/Doctor', + '1578AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Midwife', + '1577AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Nurse', + '1575AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Traditional Birth Attendant', + '1555AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Community Health Care Worker', + '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Other', + }, + }, + '159949AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Delivery Outcome', + answers: { + '159913AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Single', + '159914AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Twins', + '159915AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Triplets', + }, + }, + '159369AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Chlorhexidine applied on cord stump:', + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + }, + }, + '162588AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Baby details', + answers: {}, + }, + '164410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'HIV testing', + answers: {}, + }, + '1396AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'HIV Status:', + answers: { + '703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Positive', + '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Negative', + '1067AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Unknown', + '164817AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Known Positive', + }, + }, + '161557AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: "Has the client's partner been tested for HIV? Partner HIV Status:", + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + }, + }, + '1436AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Partner HIV Status:', + answers: { + '703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'HIV Positive', + '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'HIV Negative', + '1067AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Unknown', + }, + }, + '1109AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: "Mother's prophylaxis given during this visit?", + answers: { + '105281AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Cotrimoxazole', + '74250AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Dapsone', + '1107AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'None', + }, + }, + '166665AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Mother started on HAART at maternity ?', + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'N/A', + }, + }, + '163783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Was mother on HAART during ANC?', + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'N/A', + }, + }, + '163145AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Referred to?', + answers: { + '1537AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Another Health Facility', + '163488AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Community Unit', + '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'N/A', + }, + }, + '164359AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Reasons for referral? ', + answers: {}, + }, + '5096AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Next appointment date:', + answers: {}, + }, + '159395AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Clinical notes', + answers: {}, + }, + '1586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: "Baby's name", + answers: {}, + }, + '1587AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Sex', + answers: { + '1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Male', + '1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Female', + }, + }, + '159917AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Condition of the baby', + answers: { + '151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Live birth', + '159916AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Fresh still birth', + '135436AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Macerated still birth', + }, + }, +}; + +export const observationsMockData = [ + { + uuid: 'bcbac92d-9f73-43cf-be4a-eef0b6a04729', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5596AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2732BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Estimated date of confinement', + }, + }, + value: '2023-11-22T00:00:00.000+0300', + }, + { + uuid: 'b23ff9d0-ecec-43da-8ba5-0e2c5ed8f7b0', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '162131AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '124901BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Neonatal resuscitation', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: '508aec61-d508-41e0-8398-4d7d7d55de30', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5096AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2200BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'RETURN VISIT DATE', + }, + }, + value: '2023-12-28T00:00:00.000+0300', + }, + { + uuid: '426211f7-3a9f-42c2-8fbb-02426e651f8b', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1856AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '53982BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: "MOTHER'S HEALTH STATUS", + }, + }, + value: { + uuid: '160429AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '108637BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Alive', + }, + names: [ + { + uuid: '134500BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Vivan', + }, + { + uuid: '108637BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Alive', + }, + { + uuid: '134499BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Vivant', + }, + ], + }, + }, + { + uuid: '50735d12-1ad6-44c8-82b9-469a035a90db', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1573AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1843BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Delivery assistant', + }, + }, + value: { + uuid: '1578AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1850BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Midwife', + }, + names: [ + { + uuid: '1851BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sage-femme', + }, + { + uuid: '136765BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Fanmsaj', + }, + { + uuid: '136764BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Matrone', + }, + { + uuid: '1850BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Midwife', + }, + { + uuid: '136766BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Matwon', + }, + ], + }, + }, + { + uuid: '1dc8e229-6d81-4aa4-a46b-cedeb70bfbd2', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '166665AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '146066BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Treatment given', + }, + }, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + }, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Oui', + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'হ্যাঁ', + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sì', + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yego', + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'True', + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vre', + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vero', + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yes', + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sí', + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vrai', + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Wi', + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Да', + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadero', + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sim', + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ہاں', + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadeiro', + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'እወ', + }, + ], + }, + }, + { + uuid: '58f4ef41-60a8-4f0a-8612-e4cd3aadc550', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1365BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Medication orders', + }, + }, + value: { + uuid: '81369AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '7148BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'OXYTOCIN', + }, + names: [ + { + uuid: '96540BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Pitocin', + }, + { + uuid: '98596BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Syntocinon', + }, + { + uuid: '7148BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'OXYTOCIN', + }, + ], + }, + }, + { + uuid: 'fe501369-1425-4211-9b65-4137b0fbfe6b', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '120216AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '20422BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'COMPLICATION OF LABOR AND DELIVERY AFFECTING FETUS OR NEWBORN', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: 'a750eee4-89cb-4b51-b6de-afd25799446c', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '163783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '139389BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Mother recieved highly active antiretroviral therapy (HAART)', + }, + }, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + }, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Oui', + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'হ্যাঁ', + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sì', + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yego', + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'True', + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vre', + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vero', + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yes', + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sí', + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vrai', + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Wi', + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Да', + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadero', + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sim', + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ہاں', + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadeiro', + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'እወ', + }, + ], + }, + }, + { + uuid: 'e80152ce-6a58-4052-bb03-da4a7024f37a', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5599AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2737BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Date of confinement', + }, + }, + value: '2023-11-23T00:00:00.000+0300', + }, + { + uuid: '339a5a0c-e213-4c2a-8d4b-a2839a5aa08b', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1365BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Medication orders', + }, + }, + value: { + uuid: '80586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '6938BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NEVIRAPINE', + }, + names: [ + { + uuid: '100039BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Viramune', + }, + { + uuid: '6938BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEVIRAPINE', + }, + { + uuid: '110807BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'SHORT', + name: 'NVP', + }, + { + uuid: '135959BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEVIRAPINE', + }, + { + uuid: '138953BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'nevirapin', + }, + ], + }, + }, + { + uuid: '6658c8b9-b1c9-411d-ae5c-afdb650c59ee', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1473AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1685BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Name of health care provider', + }, + }, + value: 'HUTY', + }, + { + uuid: '25021d25-7e86-4140-be98-8dc8628035f3', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '161557AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '111182BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Partner HIV tested', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: 'fb06ac6f-e875-42d2-b5f4-2c8ea152a75b', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '162054AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '124791BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Service delivery point number', + }, + }, + value: '12', + }, + { + uuid: '7bcfc9b6-e2e8-40b9-a9bd-c6cb5835a76e', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '163145AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '134833BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Type of facility referred to', + }, + }, + value: { + uuid: '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1252BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Not applicable', + }, + names: [ + { + uuid: '136924BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non applicable\t', + }, + { + uuid: '136925BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Paka aplike', + }, + { + uuid: '1252BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Not applicable', + }, + ], + }, + }, + { + uuid: 'a961cada-4e1b-418e-9fd7-4a5608e3530e', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '299AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '324BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'VDRL', + }, + }, + value: { + uuid: '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NEGATIVE', + }, + names: [ + { + uuid: '95210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEGATIVE', + }, + { + uuid: '110112BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Hasi', + }, + { + uuid: '697BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NÉGATIF', + }, + { + uuid: '87074BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '137361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'negatif', + }, + { + uuid: '108329BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Negativo', + }, + { + uuid: '108331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108330BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Negativa', + }, + { + uuid: '87080BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '-', + }, + ], + }, + }, + { + uuid: 'f8bfe593-2324-4e97-bf71-58a38f620850', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5630AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2770BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Method of delivery', + }, + }, + value: { + uuid: '1170AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1246BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Spontaneous vaginal delivery', + }, + names: [ + { + uuid: '98557BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'SVD', + }, + { + uuid: '137720BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Kouch nomal', + }, + { + uuid: '1246BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Spontaneous vaginal delivery', + }, + { + uuid: '106160BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Accouchement spontané par voie naturelle', + }, + { + uuid: '136824BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Akouchman espontane pa voi natirèl', + }, + ], + }, + }, + { + uuid: 'c0c3fb7e-31f1-4d4a-b608-467b9ecee209', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1590AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1865BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NUMBER OF ANTENATAL VISITS CURRENT PREGNANCY', + }, + }, + value: 12, + }, + { + uuid: '4586ecc2-a2f4-4845-9ccc-9936980dcf7a', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1427AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1596BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Date of last menstrual period', + }, + }, + value: '2023-02-17T00:00:00.000+0300', + }, + { + uuid: 'bf0a7592-2478-459d-8a71-b948ed88c6a6', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '160704AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '109216BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Uterine cervix visual examination', + }, + }, + value: { + uuid: '132681AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '32606BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Normal Appearance', + }, + names: [ + { + uuid: '32606BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Normal Appearance', + }, + { + uuid: '71738BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'aspecto normal', + }, + ], + }, + }, + { + uuid: 'e249398e-bd89-4595-82a4-a3c204408837', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1365BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Medication orders', + }, + }, + value: { + uuid: '160123AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '107859BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Zidovudine for PMTCT', + }, + names: [ + { + uuid: '107858BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'SHORT', + name: 'AZT for PMTCT', + }, + { + uuid: '107859BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Zidovudine for PMTCT', + }, + ], + }, + }, + { + uuid: 'ec77ce1d-9609-41cf-8280-5edad5f44906', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '159616AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '106971BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Duration of labor', + }, + }, + value: 16, + }, + { + uuid: '54353fb1-c640-4e3b-ba52-912266280304', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '163454AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '136844BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Visual examination of placenta completeness', + }, + }, + value: { + uuid: '703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '737BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'POSITIVE', + }, + names: [ + { + uuid: '108314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'POS', + }, + { + uuid: '106895BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣወንታዊ ውፅኢት መርመራ ወይ ፖዘቲቭ', + }, + { + uuid: '96670BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'POS', + }, + { + uuid: '108313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Positiva', + }, + { + uuid: '110111BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Chanya', + }, + { + uuid: '108312BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Positivo', + }, + { + uuid: '108316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(+)', + }, + { + uuid: '737BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'POSITIVE', + }, + { + uuid: '87075BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '+', + }, + { + uuid: '738BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'POSITIF', + }, + { + uuid: '87073BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(+)', + }, + { + uuid: '108315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '+', + }, + { + uuid: '137362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'positif', + }, + ], + }, + }, + { + uuid: 'e735c6f7-e8dd-4040-ad6b-e71cfa78c523', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1109AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1184BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'PATIENT REPORTED CURRENT PCP PROPHYLAXIS', + }, + }, + value: { + uuid: '105281AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '10699BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'SULFAMETHOXAZOLE / TRIMETHOPRIM', + }, + names: [ + { + uuid: '98001BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Septrin', + }, + { + uuid: '10699BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'SULFAMETHOXAZOLE / TRIMETHOPRIM', + }, + { + uuid: '136038BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'TRIMETHOPRIM / SULFAMETHOXAZOLE', + }, + { + uuid: '88448BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Bactrim', + }, + { + uuid: '97999BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Septra', + }, + { + uuid: '139108BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Sulfamethoxazole / trimetoprim', + }, + { + uuid: '10700BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'COTRIMOXAZOLE', + }, + { + uuid: '124262BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Cotrimoxazole', + }, + { + uuid: '138977BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Kotrimoxasol', + }, + { + uuid: '98491BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Sulfatrim', + }, + { + uuid: '98179BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'SMX-TMP', + }, + { + uuid: '124261BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'CTX', + }, + { + uuid: '90027BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Cotrim', + }, + { + uuid: '110406BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Co-trimoxazole', + }, + ], + }, + }, + { + uuid: '593ad0b1-c791-4686-85ac-bd650299a23e', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1572AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1842BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'LOCATION OF BIRTH', + }, + }, + value: { + uuid: '1589AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1863BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'HOSPITAL', + }, + names: [ + { + uuid: '1863BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'HOSPITAL', + }, + { + uuid: '137722BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'lopital', + }, + { + uuid: '111210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Стационар', + }, + { + uuid: '1864BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'HÔPITAL', + }, + ], + }, + }, + { + uuid: 'c71c26d2-5c44-494f-b137-e80cf1c92477', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '159369AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '106435BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'MEDICATIONS TAKEN', + }, + }, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + }, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Oui', + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'হ্যাঁ', + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sì', + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yego', + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'True', + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vre', + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vero', + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yes', + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sí', + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vrai', + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Wi', + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Да', + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadero', + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sim', + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ہاں', + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadeiro', + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'እወ', + }, + ], + }, + }, + { + uuid: '764dbbc1-035d-4646-b2cf-78138298c89b', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '159949AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '107504BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Quantitative outcome of delivery', + }, + }, + value: { + uuid: '159913AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '107430BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'singleton', + }, + names: [ + { + uuid: '107431BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'single birth', + }, + { + uuid: '136769BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Unique', + }, + { + uuid: '136770BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Inik', + }, + { + uuid: '107430BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'singleton', + }, + ], + }, + }, + { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: [ + { + uuid: '24954482-57f8-4411-9626-6d06b178a297', + display: 'IMMUNIZATIONS: Yes', + concept: { + uuid: '984AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'IMMUNIZATIONS', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/984AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c', + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Yes', + name: { + display: 'Yes', + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + { + rel: 'full', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full', + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f', + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Oui', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'হ্যাঁ', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sì', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yego', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'True', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vre', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vero', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yes', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sí', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vrai', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Wi', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Да', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadero', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sim', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ہاں', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadeiro', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'እወ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373066001', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/24954482-57f8-4411-9626-6d06b178a297`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/24954482-57f8-4411-9626-6d06b178a297?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'af1eed2e-4c64-4d38-8273-a2b685051af4', + display: 'Birth weight (kg): 3.0', + concept: { + uuid: '5916AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Birth weight (kg)', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/5916AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 3, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/af1eed2e-4c64-4d38-8273-a2b685051af4`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/af1eed2e-4c64-4d38-8273-a2b685051af4?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'b516c0cd-5539-477f-8e03-a13447946b30', + display: 'Medication orders: TETRACYCLINE', + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Medication orders', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'TETRACYCLINE', + name: { + display: 'TETRACYCLINE', + uuid: '8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'TETRACYCLINE', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d490dfc-c2cc-11de-8d13-0010c6dffd0f', + display: 'Drug', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d490dfc-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '87199BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Achromycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87199BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98841BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetrachel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98841BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87200BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Achromycin V', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87200BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '88823BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Brodspec', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/88823BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87271BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Actisite', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87271BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87450BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Ala-Tet', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87450BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98836BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetra brand of tetracycline', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98836BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '99061BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Topicycline', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/99061BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '91262BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Economycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/91262BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '91397BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Emtet-500', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/91397BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98840BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetracap', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98840BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'TETRACYCLINE', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98842BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetracon', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98842BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98510BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sumycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98510BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98849BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetrex', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98849BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '96123BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Panmycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/96123BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '97626BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Robitet 500', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/97626BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98835BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetra 500', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98835BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [], + mappings: [ + { + uuid: '131860ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'RxNORM: 10395', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/131860ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '145732ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED NP: 372809001', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/145732ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '177433ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 84893', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/177433ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134131ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 270', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134131ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '139333ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 66261008', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/139333ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/b516c0cd-5539-477f-8e03-a13447946b30`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/b516c0cd-5539-477f-8e03-a13447946b30?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '7820cc1f-83f7-44da-8fd4-ddf5f124f3c6', + display: 'APGAR score at 5 minutes: 9.0', + concept: { + uuid: '159604AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'APGAR score at 5 minutes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/159604AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 9, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/7820cc1f-83f7-44da-8fd4-ddf5f124f3c6`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/7820cc1f-83f7-44da-8fd4-ddf5f124f3c6?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'e402f16a-38d3-423c-9bc8-d56b45b33ebd', + display: 'Neonatal complication: No', + concept: { + uuid: '164122AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Neonatal complication', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/164122AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'No', + name: { + display: 'No', + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'نہیں', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Non', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Нет', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Faux', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ኣይትጥቀምን', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Non', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Muzima', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Fo', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'না', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Não', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'False', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1069FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1069FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18159FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18159FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143597ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143597ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144379ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144379ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134738ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134738ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171329ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171329ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133841ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373067005', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133841ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/e402f16a-38d3-423c-9bc8-d56b45b33ebd`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/e402f16a-38d3-423c-9bc8-d56b45b33ebd?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '75a10d67-723f-40a4-9611-ff93c848ffe4', + display: 'CHILD GENDER: Male Gender', + concept: { + uuid: '1587AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'CHILD GENDER', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1587AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Male Gender', + name: { + display: 'Male Gender', + uuid: '1793BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Male Gender', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1793BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1793BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '1794BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SEXE MASCULIN', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1794BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1793BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Male Gender', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1793BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111257BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Мужчины', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111257BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '94349BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'MALE', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/94349BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '136889BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sèks gason', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/136889BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [], + mappings: [ + { + uuid: '133339ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 248153007', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133339ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '132703ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 2843', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/132703ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171776ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1534', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171776ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/75a10d67-723f-40a4-9611-ff93c848ffe4`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/75a10d67-723f-40a4-9611-ff93c848ffe4?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'f040e1dd-c8e7-4a36-bc63-b651d797e253', + display: 'Qualitative birth outcome: Liveborn, Unspecified Whether Single, Twin, or Multiple', + concept: { + uuid: '159917AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Qualitative birth outcome', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/159917AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + name: { + display: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + uuid: '51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d4918b0-c2cc-11de-8d13-0010c6dffd0f', + display: 'Diagnosis', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d4918b0-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '136876BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: "Naissance vivante, non spécifié si c'est seul, jumeaux ou multiple", + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/136876BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '107439BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Livebirth', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/107439BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '107438BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Liveborn', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/107438BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '107440BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Baby born alive', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/107440BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '86710BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'parto de feto vivo', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/86710BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '136877BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vivant lel fèt, ki pa spesifye si li sel, marasa ou plisiè', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/136877BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [], + mappings: [ + { + uuid: '275493ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ICD-10-WHO: Z37.0', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/275493ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '276362ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'IMO ProblemIT: 824998', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/276362ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '276284ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 151849', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/276284ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '76413ABBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 281050002', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/76413ABBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f040e1dd-c8e7-4a36-bc63-b651d797e253`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f040e1dd-c8e7-4a36-bc63-b651d797e253?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'e6cad7cb-ae04-489a-9fbe-9379edcf0045', + display: 'CHILD NAME: RENO', + concept: { + uuid: '1586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'CHILD NAME', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 'RENO', + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/e6cad7cb-ae04-489a-9fbe-9379edcf0045`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/e6cad7cb-ae04-489a-9fbe-9379edcf0045?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '9fa7ca0a-9af6-451e-930f-5b1287a6625b', + display: 'APGAR score at 1 minute: 9.0', + concept: { + uuid: '159603AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'APGAR score at 1 minute', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/159603AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 9, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/9fa7ca0a-9af6-451e-930f-5b1287a6625b`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/9fa7ca0a-9af6-451e-930f-5b1287a6625b?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'f37d61f2-9820-4d17-9983-b88c91c12072', + display: 'Newborn care counseling, kangaroo method: No', + concept: { + uuid: '161094AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Newborn care counseling, kangaroo method', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/161094AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'No', + name: { + display: 'No', + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'نہیں', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Non', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Нет', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Faux', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ኣይትጥቀምን', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Non', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Muzima', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Fo', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'না', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Não', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'False', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1069FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1069FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18159FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18159FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143597ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143597ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144379ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144379ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134738ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134738ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171329ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171329ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133841ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373067005', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133841ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f37d61f2-9820-4d17-9983-b88c91c12072`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f37d61f2-9820-4d17-9983-b88c91c12072?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'f3db629f-f76d-46d9-bc40-db7cc2aba30a', + display: 'Early initiation of breastfeeding: Yes', + concept: { + uuid: '161543AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Early initiation of breastfeeding', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/161543AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Yes', + name: { + display: 'Yes', + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Oui', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'হ্যাঁ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sì', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yego', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'True', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vre', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sí', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vrai', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Wi', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Да', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sim', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ہاں', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadeiro', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'እወ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373066001', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f3db629f-f76d-46d9-bc40-db7cc2aba30a`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f3db629f-f76d-46d9-bc40-db7cc2aba30a?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'a6fb2623-6d27-4590-8e51-0af08ac498b7', + display: 'APGAR score at 10 minutes: 10.0', + concept: { + uuid: '159605AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'APGAR score at 10 minutes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/159605AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 10, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/a6fb2623-6d27-4590-8e51-0af08ac498b7`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/a6fb2623-6d27-4590-8e51-0af08ac498b7?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + ], + concept: { + uuid: '162588AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '126228BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Outcome of delivery, qualitative and quantitative', + }, + }, + value: null, + }, +]; + +export const mockTableHeaders = [ + { + key: 'testDate', + header: 'Test Date', + getValue: (encounter) => { + return encounter.link; + }, + }, + { + key: 'htsTestType', + header: 'Test type', + getValue: (encounter) => { + return encounter.link; + }, + }, + { + key: 'testApproach', + header: 'Approach', + getValue: (encounter) => { + return encounter.link; + }, + }, + { + key: 'testStrategy', + header: 'Strategy', + getValue: (encounter) => { + return encounter.link; + }, + }, + { + key: 'testEntryPoint', + header: 'Entry point', + getValue: (encounter) => { + return encounter.link; + }, + }, + { + key: 'htsResult', + header: 'Final result', + getValue: (encounter) => { + return encounter.link; + }, + }, + { + key: 'tbScreening', + header: 'TB screening outcome', + getValue: (encounter) => { + return encounter.link; + }, + }, + { + key: 'actions', + header: 'Actions', + getValue: (encounter) => { + return encounter.link; + }, + }, +]; + +export const mockTableRows = [ + { + id: '0c1c70d3-d75f-44bf-be98-ae83d9f4b750', + obs: [ + { + uuid: 'f18e61c4-de52-4bc0-a081-eb64038039f6', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: 'cf543666-ce76-4e91-8b8d-c0b54a436a2e', + name: { + uuid: 'f9f78e0d-e2d9-4e03-876b-b20673ffb71c', + name: 'Population type', + }, + }, + value: { + uuid: '5d308c8c-ad49-45e1-9885-e5d09a8e5587', + name: { + uuid: '58586303-910a-47ce-afb0-2f7632319b91', + name: 'General Population', + }, + names: [ + { + uuid: '58586303-910a-47ce-afb0-2f7632319b91', + conceptNameType: 'FULLY_SPECIFIED', + name: 'General Population', + }, + { + uuid: '7d133896-a0a4-453b-9034-ce16062352fc', + conceptNameType: 'SHORT', + name: 'General Population', + }, + ], + }, + }, + { + uuid: '50b9a6f4-d2ce-4a0d-a398-5ce6938f87ba', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: 'b61c1482-1697-404c-ab96-fd698d5fd317', + name: { + uuid: '5d887e81-e040-4b02-a9c8-dd6f013c6ddf', + name: 'Patient tested as', + }, + }, + value: { + uuid: '147082f4-0662-4bfa-a54c-914f1db97373', + name: { + uuid: '015db596-aa89-4a41-80b5-159d1c7db1d9', + name: 'Individual testing', + }, + names: [ + { + uuid: '015db596-aa89-4a41-80b5-159d1c7db1d9', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Individual testing', + }, + { + uuid: '18567fcc-ff9c-45bb-8235-43f3d01c6245', + conceptNameType: 'SHORT', + name: 'Individual testing', + }, + ], + }, + }, + { + uuid: 'd2545f54-bdd4-4041-811f-ca21dea6ae00', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '159427AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '106513BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Result of HIV test', + }, + }, + value: { + uuid: '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NEGATIVE', + }, + names: [ + { + uuid: '95210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEGATIVE', + }, + { + uuid: '110112BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Hasi', + }, + { + uuid: '697BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NÉGATIF', + }, + { + uuid: '87074BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '137361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'negatif', + }, + { + uuid: '108329BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Negativo', + }, + { + uuid: '108331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108330BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Negativa', + }, + { + uuid: '87080BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '-', + }, + ], + }, + }, + { + uuid: '8db809fe-87f7-4b1b-9129-e7db98037f39', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '160540AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '108875BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Method of enrollment', + }, + }, + value: { + uuid: '160538AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '108858BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Prevention of maternal to child transmission program', + }, + names: [ + { + uuid: '108861BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'SHORT', + name: 'PMTCT Program', + }, + { + uuid: '136004BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Programme de prévention de la transmission mère-enfant', + }, + { + uuid: '108858BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Prevention of maternal to child transmission program', + }, + { + uuid: '127609BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Ngăn ngừa mẹ để chương trình truyền con', + }, + { + uuid: '136005BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Pwogram prevansyon maman ak pitit', + }, + ], + }, + }, + { + uuid: '3d27b31b-f52d-49f5-a215-0176fd459dca', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1659AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1939BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Tuberculosis disease status', + }, + }, + value: { + uuid: '1660AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1940BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No signs or symptoms of disease', + }, + names: [ + { + uuid: '1940BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No signs or symptoms of disease', + }, + { + uuid: '106045BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'AUCUN SIGNE OU SYMPTÔME DE LA MALADIE', + }, + { + uuid: '86943BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'SHORT', + name: 'No Signs Disease', + }, + { + uuid: '135792BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Pa gen okenn siy oswa sentòm maladi', + }, + ], + }, + }, + { + uuid: 'ebae381a-bfbc-4c40-87eb-46d31c0954a2', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1710AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1990BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'INFORMED CONSENT', + }, + }, + value: { + uuid: '1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Anemia due to Blood Loss', + }, + names: [ + { + uuid: '87939BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'ANEMIA, BLOOD LOSS', + }, + { + uuid: '80825BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Anemia por pérdida de sangre', + }, + { + uuid: '106367BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ANÉMIE, PERTE DE SANG', + }, + { + uuid: '139759BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'خون کی کمی، خون بہنے کی وجہ سے', + }, + { + uuid: '1BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Anemia due to Blood Loss', + }, + ], + }, + }, + { + uuid: '6c4e444d-e6f4-4ea2-84e2-d1c2a352ffbf', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: 'd85ff219-0f5a-408d-8df0-96bcc9be5071', + name: { + uuid: '1a8908bb-fcec-422c-b3a6-c4bef3d8a9b5', + name: 'HIV testing services strategy', + }, + }, + value: { + uuid: '164163AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '140056BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Provider-initiated HIV testing and counseling', + }, + names: [ + { + uuid: '140057BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Provider initiated HIV testing and counseling', + }, + { + uuid: '140055BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'PITC', + }, + { + uuid: '140056BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Provider-initiated HIV testing and counseling', + }, + ], + }, + }, + { + uuid: 'e6cd71a9-4b9c-4167-ae8d-10b0f947ebb3', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '164401AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '140415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'HIV test performed', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: 'b173e388-7037-41db-9ef4-92a259b79896', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '2797e57b-d1ff-4928-b10e-b72e95b63faf', + name: { + uuid: 'db721db6-7ef1-404b-b850-59cad88cfab1', + name: 'Patient had HIV self test', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: 'abaa7121-74f2-4d51-abe0-6daeb5d6f9e4', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: [ + { + uuid: '2c670c37-163f-43bb-ba37-7624129fae86', + display: 'HIV RAPID TEST 1, QUALITATIVE: NEGATIVE', + concept: { + uuid: '1040AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'HIV RAPID TEST 1, QUALITATIVE', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1040AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '866b3ed9-c565-431d-a56b-5e1dc5cd0fbc', + display: 'MAXGD - janeffer janeffer janeffer', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/866b3ed9-c565-431d-a56b-5e1dc5cd0fbc`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2019-10-02T10:13:17.000+0300', + accessionNumber: null, + obsGroup: { + uuid: 'abaa7121-74f2-4d51-abe0-6daeb5d6f9e4', + display: 'Test laboratory number construct: NEGATIVE, Determine test kit, 2020-09-04, 98289K100', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/abaa7121-74f2-4d51-abe0-6daeb5d6f9e4`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'f06c0024-f941-4c6b-8358-69290c012e94', + display: 'Baringo County Referral Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/f06c0024-f941-4c6b-8358-69290c012e94`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '0c1c70d3-d75f-44bf-be98-ae83d9f4b750', + display: 'HTS 02/10/2019', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/0c1c70d3-d75f-44bf-be98-ae83d9f4b750`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'NEGATIVE', + name: { + display: 'NEGATIVE', + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NEGATIVE', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '95210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'NEG', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/95210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: '(-)', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'NEGATIVE', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '110112BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Hasi', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/110112BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '697BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'NÉGATIF', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/697BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87074BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: '(-)', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87074BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'negatif', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108329BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Negativo', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108329BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'NEG', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108330BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Negativa', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108330BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87080BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: '-', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87080BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '664FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Response to a finding or test result.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/664FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '171135ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 664', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171135ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134375ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 664', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134375ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133725ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 260385009', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133725ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '143587ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 664', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143587ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '137847ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'org.openmrs.module.mdrtb: NEGATIVE', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/137847ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134376ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 665', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134376ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/2c670c37-163f-43bb-ba37-7624129fae86`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/2c670c37-163f-43bb-ba37-7624129fae86?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '8568fde8-ee92-4e3c-99df-ba8c5678992d', + display: 'HIV test kit used: Determine test kit', + concept: { + uuid: '214c83f9-435d-44f5-9ae6-d5757b7b4c7f', + display: 'HIV test kit used', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/214c83f9-435d-44f5-9ae6-d5757b7b4c7f`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '866b3ed9-c565-431d-a56b-5e1dc5cd0fbc', + display: 'MAXGD - janeffer janeffer janeffer', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/866b3ed9-c565-431d-a56b-5e1dc5cd0fbc`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2019-10-02T10:13:17.000+0300', + accessionNumber: null, + obsGroup: { + uuid: 'abaa7121-74f2-4d51-abe0-6daeb5d6f9e4', + display: 'Test laboratory number construct: NEGATIVE, Determine test kit, 2020-09-04, 98289K100', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/abaa7121-74f2-4d51-abe0-6daeb5d6f9e4`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'f06c0024-f941-4c6b-8358-69290c012e94', + display: 'Baringo County Referral Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/f06c0024-f941-4c6b-8358-69290c012e94`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '0c1c70d3-d75f-44bf-be98-ae83d9f4b750', + display: 'HTS 02/10/2019', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/0c1c70d3-d75f-44bf-be98-ae83d9f4b750`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '7cf927f8-e734-474f-b71a-1459bb566aa2', + display: 'Determine test kit', + name: { + display: 'Determine test kit', + uuid: '33658957-0aaa-436e-be92-2dcadef719c6', + name: 'Determine test kit', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2/name/33658957-0aaa-436e-be92-2dcadef719c6`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2/name/33658957-0aaa-436e-be92-2dcadef719c6?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a48b6-c2cc-11de-8d13-0010c6dffd0f', + display: 'Coded', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a48b6-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d491e50-c2cc-11de-8d13-0010c6dffd0f', + display: 'Question', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d491e50-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: null, + retired: false, + names: [ + { + uuid: '1e136157-be42-4555-a803-fa1d6de08a3f', + display: 'Determine test kit', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2/name/1e136157-be42-4555-a803-fa1d6de08a3f`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '33658957-0aaa-436e-be92-2dcadef719c6', + display: 'Determine test kit', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2/name/33658957-0aaa-436e-be92-2dcadef719c6`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: 'e6111abc-3edf-4fa3-adfa-e0f2fef2ec61', + display: 'Determine test kit', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2/description/e6111abc-3edf-4fa3-adfa-e0f2fef2ec61`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [], + answers: [ + { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Yes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + ], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/8568fde8-ee92-4e3c-99df-ba8c5678992d`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/8568fde8-ee92-4e3c-99df-ba8c5678992d?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'c157d865-21fc-4a78-bd2a-00eb10d21b6b', + display: 'Expiration date: 2020-09-04', + concept: { + uuid: '162502AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Expiration date', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/162502AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '866b3ed9-c565-431d-a56b-5e1dc5cd0fbc', + display: 'MAXGD - janeffer janeffer janeffer', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/866b3ed9-c565-431d-a56b-5e1dc5cd0fbc`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2019-10-02T10:13:17.000+0300', + accessionNumber: null, + obsGroup: { + uuid: 'abaa7121-74f2-4d51-abe0-6daeb5d6f9e4', + display: 'Test laboratory number construct: NEGATIVE, Determine test kit, 2020-09-04, 98289K100', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/abaa7121-74f2-4d51-abe0-6daeb5d6f9e4`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'f06c0024-f941-4c6b-8358-69290c012e94', + display: 'Baringo County Referral Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/f06c0024-f941-4c6b-8358-69290c012e94`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '0c1c70d3-d75f-44bf-be98-ae83d9f4b750', + display: 'HTS 02/10/2019', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/0c1c70d3-d75f-44bf-be98-ae83d9f4b750`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: '2020-09-04T00:00:00.000+0300', + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/c157d865-21fc-4a78-bd2a-00eb10d21b6b`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/c157d865-21fc-4a78-bd2a-00eb10d21b6b?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '3ad65540-61db-4c20-98bd-aa6ea1ab7f83', + display: 'Test kit lot number: 98289K100', + concept: { + uuid: '3d4f9e8e-46cc-4024-a1c4-d0167f2c84a4', + display: 'Test kit lot number', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/3d4f9e8e-46cc-4024-a1c4-d0167f2c84a4`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '866b3ed9-c565-431d-a56b-5e1dc5cd0fbc', + display: 'MAXGD - janeffer janeffer janeffer', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/866b3ed9-c565-431d-a56b-5e1dc5cd0fbc`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2019-10-02T10:13:17.000+0300', + accessionNumber: null, + obsGroup: { + uuid: 'abaa7121-74f2-4d51-abe0-6daeb5d6f9e4', + display: 'Test laboratory number construct: NEGATIVE, Determine test kit, 2020-09-04, 98289K100', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/abaa7121-74f2-4d51-abe0-6daeb5d6f9e4`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'f06c0024-f941-4c6b-8358-69290c012e94', + display: 'Baringo County Referral Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/f06c0024-f941-4c6b-8358-69290c012e94`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '0c1c70d3-d75f-44bf-be98-ae83d9f4b750', + display: 'HTS 02/10/2019', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/0c1c70d3-d75f-44bf-be98-ae83d9f4b750`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: '98289K100', + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/3ad65540-61db-4c20-98bd-aa6ea1ab7f83`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/3ad65540-61db-4c20-98bd-aa6ea1ab7f83?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + ], + concept: { + uuid: '164410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '140430BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Test laboratory number construct', + }, + }, + value: null, + }, + { + uuid: '836004a5-92c5-41f2-8169-2a723d004bc2', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '91a87033-8f75-4f08-9f15-0d8ae66bd9d9', + name: { + uuid: 'fc9be8b6-a9e0-4dae-957f-f4f2fe55295b', + name: 'Patient disabled', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: 'a765bb77-b910-4704-9690-012782f8a606', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '6096AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '3243BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Discordant couple', + }, + }, + value: { + uuid: '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1252BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Not applicable', + }, + names: [ + { + uuid: '136924BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non applicable\t', + }, + { + uuid: '136925BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Paka aplike', + }, + { + uuid: '1252BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Not applicable', + }, + ], + }, + }, + ], + testDate: '02-Oct-2019', + htsTestType: 'HTS Initial Form', + testApproach: '--', + testStrategy: 'Provider-initiated HIV testing and counseling', + testEntryPoint: 'PMTCT Program', + htsResult: 'NEGATIVE', + tbScreening: 'No Signs Disease', + }, +]; + +export const mockLaunchOptions = { + displayText: 'Add', + moduleName: 'HTS Clinical View', +}; + +export const mockEncounterType = '9c0a7a57-62ff-4f75-babe-5835b0e921b7'; + +export const mockHeaderTitle = 'HTS Clinical View'; + +export const mockDescription = 'HTS Clinical View'; + +export const mockFormList = [ + { + name: 'HTS screening Form', + }, +]; + +export const mockEncounterData = { + data: { + results: [ + [ + { + uuid: '5cd5f444-af06-470e-8831-43ddec625a9c', + encounterDatetime: '2021-06-09T11:58:44.000+0300', + encounterType: { + uuid: 'c6d09e05-1f25-4164-8860-9f32c5a02df0', + display: 'MCH Mother Consultation', + name: 'MCH Mother Consultation', + description: 'Collection of mother data during MCH visit', + retired: false, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encountertype/c6d09e05-1f25-4164-8860-9f32c5a02df0`, + resourceAlias: 'encountertype', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encountertype/c6d09e05-1f25-4164-8860-9f32c5a02df0?v=full`, + resourceAlias: 'encountertype', + }, + ], + resourceVersion: '1.8', + }, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + name: 'Moi Teaching Refferal Hospital', + }, + patient: { + uuid: '3cb798ff-e316-425d-9d12-89b026f9bf19', + display: 'PHUNE - TUI TUI TUI', + }, + encounterProviders: [ + { + uuid: '0ed89476-7685-44b8-9c09-50f5afa8b0d0', + provider: { + uuid: 'fe00dd43-4c39-4ce9-9832-bc3620c80c6c', + name: 'Bildard SONGOI Olero', + }, + }, + ], + obs: [ + { + uuid: 'e631c0fa-383c-4b00-b3d9-5c50abb2fc27', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1789AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2069BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'PREGNANCY DURATION AMOUNT', + }, + }, + value: 38, + }, + { + uuid: '5d8095c9-97d0-461c-b2de-2d19030c75d6', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1109AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1184BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'PATIENT REPORTED CURRENT PCP PROPHYLAXIS', + }, + }, + value: { + uuid: '105281AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '10699BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'SULFAMETHOXAZOLE / TRIMETHOPRIM', + }, + names: [ + { + uuid: '98001BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Septrin', + }, + { + uuid: '10699BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'SULFAMETHOXAZOLE / TRIMETHOPRIM', + }, + { + uuid: '136038BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'TRIMETHOPRIM / SULFAMETHOXAZOLE', + }, + { + uuid: '88448BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Bactrim', + }, + { + uuid: '97999BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Septra', + }, + { + uuid: '139108BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Sulfamethoxazole / trimetoprim', + }, + { + uuid: '10700BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'COTRIMOXAZOLE', + }, + { + uuid: '124262BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Cotrimoxazole', + }, + { + uuid: '138977BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Kotrimoxasol', + }, + { + uuid: '98491BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Sulfatrim', + }, + { + uuid: '98179BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'SMX-TMP', + }, + { + uuid: '124261BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'CTX', + }, + { + uuid: '90027BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Cotrim', + }, + { + uuid: '110406BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Co-trimoxazole', + }, + ], + }, + }, + { + uuid: '7d8686a3-893b-44bc-b19a-6e8b1d4d74fc', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5630AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2770BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Method of delivery', + }, + }, + value: { + uuid: '1170AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1246BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Spontaneous vaginal delivery', + }, + names: [ + { + uuid: '98557BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'SVD', + }, + { + uuid: '137720BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Kouch nomal', + }, + { + uuid: '1246BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Spontaneous vaginal delivery', + }, + { + uuid: '106160BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Accouchement spontané par voie naturelle', + }, + { + uuid: '136824BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Akouchman espontane pa voi natirèl', + }, + ], + }, + }, + { + uuid: '720fb641-f625-41c8-a73d-60093505c063', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '163783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '139389BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Mother recieved highly active antiretroviral therapy (HAART)', + }, + }, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + }, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Oui', + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'হ্যাঁ', + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sì', + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yego', + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'True', + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vre', + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vero', + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yes', + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sí', + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vrai', + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Wi', + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Да', + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadero', + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sim', + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ہاں', + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadeiro', + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'እወ', + }, + ], + }, + }, + { + uuid: '5cf7b03c-ec94-4944-9d0b-1852c7f406e4', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1572AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1842BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'LOCATION OF BIRTH', + }, + }, + value: { + uuid: '1589AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1863BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'HOSPITAL', + }, + names: [ + { + uuid: '1863BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'HOSPITAL', + }, + { + uuid: '137722BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'lopital', + }, + { + uuid: '111210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Стационар', + }, + { + uuid: '1864BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'HÔPITAL', + }, + ], + }, + }, + { + uuid: 'b81c31ec-db12-420d-b9a9-5eddc7c48fe1', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '120216AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '20422BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'COMPLICATION OF LABOR AND DELIVERY AFFECTING FETUS OR NEWBORN', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: '6d46b686-1334-4481-a38f-78e008ba67f9', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '162054AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '124791BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Service delivery point number', + }, + }, + value: '12345', + }, + { + uuid: '494512a6-5092-4559-a295-ef7a0d89e7b8', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1436AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1613BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: "PARTNER'S HIV STATUS", + }, + }, + value: { + uuid: '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NEGATIVE', + }, + names: [ + { + uuid: '95210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEGATIVE', + }, + { + uuid: '110112BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Hasi', + }, + { + uuid: '697BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NÉGATIF', + }, + { + uuid: '87074BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '137361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'negatif', + }, + { + uuid: '108329BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Negativo', + }, + { + uuid: '108331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108330BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Negativa', + }, + { + uuid: '87080BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '-', + }, + ], + }, + }, + { + uuid: '7ad13efe-4fe5-4730-a3aa-e9f209dede42', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1365BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Medication orders', + }, + }, + value: { + uuid: '80586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '6938BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NEVIRAPINE', + }, + names: [ + { + uuid: '100039BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Viramune', + }, + { + uuid: '6938BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEVIRAPINE', + }, + { + uuid: '110807BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'SHORT', + name: 'NVP', + }, + { + uuid: '135959BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEVIRAPINE', + }, + { + uuid: '138953BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'nevirapin', + }, + ], + }, + }, + { + uuid: '593d918f-05b0-48c0-9694-4ce11ef53823', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '160704AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '109216BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Uterine cervix visual examination', + }, + }, + value: { + uuid: '132681AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '32606BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Normal Appearance', + }, + names: [ + { + uuid: '32606BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Normal Appearance', + }, + { + uuid: '71738BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'aspecto normal', + }, + ], + }, + }, + { + uuid: '9409a58b-8d4b-4bd5-b0ba-92fbd3348879', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '161557AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '111182BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Partner HIV tested', + }, + }, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + }, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Oui', + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'হ্যাঁ', + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sì', + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yego', + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'True', + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vre', + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vero', + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yes', + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sí', + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vrai', + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Wi', + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Да', + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadero', + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sim', + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ہاں', + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadeiro', + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'እወ', + }, + ], + }, + }, + { + uuid: 'b4c95ace-7949-4360-a2bf-cbc4e735e2a4', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '163145AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '134833BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Type of facility referred to', + }, + }, + value: { + uuid: '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1252BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Not applicable', + }, + names: [ + { + uuid: '136924BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non applicable\t', + }, + { + uuid: '136925BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Paka aplike', + }, + { + uuid: '1252BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Not applicable', + }, + ], + }, + }, + { + uuid: 'ea1d6240-0531-4502-be5a-e72e510436df', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '166665AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '146066BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Treatment given', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: '4af5c2d0-8f58-4667-89c1-5872770cf9c0', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '163454AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '136844BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Visual examination of placenta completeness', + }, + }, + value: { + uuid: '703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '737BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'POSITIVE', + }, + names: [ + { + uuid: '108314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'POS', + }, + { + uuid: '106895BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣወንታዊ ውፅኢት መርመራ ወይ ፖዘቲቭ', + }, + { + uuid: '96670BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'POS', + }, + { + uuid: '108313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Positiva', + }, + { + uuid: '110111BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Chanya', + }, + { + uuid: '108312BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Positivo', + }, + { + uuid: '108316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(+)', + }, + { + uuid: '737BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'POSITIVE', + }, + { + uuid: '87075BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '+', + }, + { + uuid: '738BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'POSITIF', + }, + { + uuid: '87073BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(+)', + }, + { + uuid: '108315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '+', + }, + { + uuid: '137362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'positif', + }, + ], + }, + }, + { + uuid: '56b24a88-812b-459f-88aa-bfc3b8bb7913', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: [ + { + uuid: 'c31d3411-7b49-4fea-b2b0-15c2806bc7f7', + display: 'CHILD NAME: Babe em', + concept: { + uuid: '1586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'CHILD NAME', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '3cb798ff-e316-425d-9d12-89b026f9bf19', + display: 'PHUNE - TUI TUI TUI', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/3cb798ff-e316-425d-9d12-89b026f9bf19`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2021-06-09T11:58:44.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '56b24a88-812b-459f-88aa-bfc3b8bb7913', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/56b24a88-812b-459f-88aa-bfc3b8bb7913`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '5cd5f444-af06-470e-8831-43ddec625a9c', + display: 'MCH Mother Consultation 09/06/2021', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/5cd5f444-af06-470e-8831-43ddec625a9c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 'Babe em', + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/c31d3411-7b49-4fea-b2b0-15c2806bc7f7`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/c31d3411-7b49-4fea-b2b0-15c2806bc7f7?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'b44a252e-40a3-49e8-82a4-be8228fb3fa7', + display: 'Neonatal complication: No', + concept: { + uuid: '164122AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Neonatal complication', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/164122AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '3cb798ff-e316-425d-9d12-89b026f9bf19', + display: 'PHUNE - TUI TUI TUI', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/3cb798ff-e316-425d-9d12-89b026f9bf19`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2021-06-09T11:58:44.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '56b24a88-812b-459f-88aa-bfc3b8bb7913', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/56b24a88-812b-459f-88aa-bfc3b8bb7913`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '5cd5f444-af06-470e-8831-43ddec625a9c', + display: 'MCH Mother Consultation 09/06/2021', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/5cd5f444-af06-470e-8831-43ddec625a9c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'No', + name: { + display: 'No', + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'نہیں', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Non', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Нет', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Faux', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ኣይትጥቀምን', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Non', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Muzima', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Fo', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'না', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Não', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'False', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1069FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1069FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18159FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18159FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143597ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143597ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144379ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144379ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134738ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134738ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171329ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171329ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133841ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373067005', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133841ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/b44a252e-40a3-49e8-82a4-be8228fb3fa7`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/b44a252e-40a3-49e8-82a4-be8228fb3fa7?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '01e84886-9f49-4b29-9b0e-ac3b36821b07', + display: 'Qualitative birth outcome: Liveborn, Unspecified Whether Single, Twin, or Multiple', + concept: { + uuid: '159917AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Qualitative birth outcome', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/159917AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '3cb798ff-e316-425d-9d12-89b026f9bf19', + display: 'PHUNE - TUI TUI TUI', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/3cb798ff-e316-425d-9d12-89b026f9bf19`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2021-06-09T11:58:44.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '56b24a88-812b-459f-88aa-bfc3b8bb7913', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/56b24a88-812b-459f-88aa-bfc3b8bb7913`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '5cd5f444-af06-470e-8831-43ddec625a9c', + display: 'MCH Mother Consultation 09/06/2021', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/5cd5f444-af06-470e-8831-43ddec625a9c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + name: { + display: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + uuid: '51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d4918b0-c2cc-11de-8d13-0010c6dffd0f', + display: 'Diagnosis', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d4918b0-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '136876BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: "Naissance vivante, non spécifié si c'est seul, jumeaux ou multiple", + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/136876BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '107439BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Livebirth', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/107439BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '107438BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Liveborn', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/107438BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '107440BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Baby born alive', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/107440BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '86710BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'parto de feto vivo', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/86710BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '136877BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vivant lel fèt, ki pa spesifye si li sel, marasa ou plisiè', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/136877BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [], + mappings: [ + { + uuid: '275493ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ICD-10-WHO: Z37.0', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/275493ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '276362ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'IMO ProblemIT: 824998', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/276362ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '276284ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 151849', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/276284ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '76413ABBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 281050002', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/76413ABBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/01e84886-9f49-4b29-9b0e-ac3b36821b07`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/01e84886-9f49-4b29-9b0e-ac3b36821b07?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '1acdaefb-5733-400c-8adb-2d45cb2dc32c', + display: 'CHILD GENDER: Female gender', + concept: { + uuid: '1587AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'CHILD GENDER', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1587AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '3cb798ff-e316-425d-9d12-89b026f9bf19', + display: 'PHUNE - TUI TUI TUI', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/3cb798ff-e316-425d-9d12-89b026f9bf19`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2021-06-09T11:58:44.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '56b24a88-812b-459f-88aa-bfc3b8bb7913', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/56b24a88-812b-459f-88aa-bfc3b8bb7913`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '5cd5f444-af06-470e-8831-43ddec625a9c', + display: 'MCH Mother Consultation 09/06/2021', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/5cd5f444-af06-470e-8831-43ddec625a9c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Female gender', + name: { + display: 'Female gender', + uuid: '1795BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Female gender', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1795BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1795BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '111256BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ЖЕНЩИНЫ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111256BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1796BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SEXE FÉMININ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1796BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '91837BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'FEMALE', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/91837BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '136890BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sèks fi', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/136890BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1795BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Female gender', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1795BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [], + mappings: [ + { + uuid: '171777ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1535', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171777ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '132704ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 248152002', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/132704ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133340ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 2844', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133340ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/1acdaefb-5733-400c-8adb-2d45cb2dc32c`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/1acdaefb-5733-400c-8adb-2d45cb2dc32c?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'f91eb7ae-b837-4d32-92dd-97bad2f98b72', + display: 'Medication orders: TETRACYCLINE', + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Medication orders', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '3cb798ff-e316-425d-9d12-89b026f9bf19', + display: 'PHUNE - TUI TUI TUI', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/3cb798ff-e316-425d-9d12-89b026f9bf19', + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2021-06-09T11:58:44.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '56b24a88-812b-459f-88aa-bfc3b8bb7913', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/56b24a88-812b-459f-88aa-bfc3b8bb7913`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '5cd5f444-af06-470e-8831-43ddec625a9c', + display: 'MCH Mother Consultation 09/06/2021', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/5cd5f444-af06-470e-8831-43ddec625a9c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'TETRACYCLINE', + name: { + display: 'TETRACYCLINE', + uuid: '8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'TETRACYCLINE', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d490dfc-c2cc-11de-8d13-0010c6dffd0f', + display: 'Drug', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d490dfc-c2cc-11de-8d13-0010c6dffd0f', + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '87199BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Achromycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87199BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98841BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetrachel', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98841BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87200BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Achromycin V', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87200BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '88823BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Brodspec', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/88823BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87271BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Actisite', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87271BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87450BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Ala-Tet', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87450BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98836BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetra brand of tetracycline', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98836BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '99061BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Topicycline', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/99061BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '91262BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Economycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/91262BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '91397BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Emtet-500', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/91397BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98840BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetracap', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98840BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'TETRACYCLINE', + links: [ + { + rel: 'self', + uri: 'http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98842BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetracon', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98842BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98510BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sumycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98510BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98849BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetrex', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98849BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '96123BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Panmycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/96123BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '97626BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Robitet 500', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/97626BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98835BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetra 500', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98835BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [], + mappings: [ + { + uuid: '131860ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'RxNORM: 10395', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/131860ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '145732ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED NP: 372809001', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/145732ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '177433ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 84893', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/177433ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134131ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 270', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134131ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '139333ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 66261008', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/139333ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f91eb7ae-b837-4d32-92dd-97bad2f98b72`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f91eb7ae-b837-4d32-92dd-97bad2f98b72?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '8c06b0e5-f758-468d-a208-3e72c2ac69c4', + display: 'Early initiation of breastfeeding: Yes', + concept: { + uuid: '161543AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Early initiation of breastfeeding', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/161543AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '3cb798ff-e316-425d-9d12-89b026f9bf19', + display: 'PHUNE - TUI TUI TUI', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/3cb798ff-e316-425d-9d12-89b026f9bf19`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2021-06-09T11:58:44.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '56b24a88-812b-459f-88aa-bfc3b8bb7913', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/56b24a88-812b-459f-88aa-bfc3b8bb7913`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '5cd5f444-af06-470e-8831-43ddec625a9c', + display: 'MCH Mother Consultation 09/06/2021', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/5cd5f444-af06-470e-8831-43ddec625a9c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Yes', + name: { + display: 'Yes', + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Oui', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'হ্যাঁ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sì', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yego', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'True', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vre', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sí', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vrai', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Wi', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Да', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sim', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ہاں', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadeiro', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'እወ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373066001', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/8c06b0e5-f758-468d-a208-3e72c2ac69c4`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/8c06b0e5-f758-468d-a208-3e72c2ac69c4?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'ed2115fe-2dd0-4bf5-a00e-1a3cda54e9e8', + display: 'IMMUNIZATIONS: Yes', + concept: { + uuid: '984AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'IMMUNIZATIONS', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/984AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '3cb798ff-e316-425d-9d12-89b026f9bf19', + display: 'PHUNE - TUI TUI TUI', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/3cb798ff-e316-425d-9d12-89b026f9bf19`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2021-06-09T11:58:44.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '56b24a88-812b-459f-88aa-bfc3b8bb7913', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/56b24a88-812b-459f-88aa-bfc3b8bb7913`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '5cd5f444-af06-470e-8831-43ddec625a9c', + display: 'MCH Mother Consultation 09/06/2021', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/5cd5f444-af06-470e-8831-43ddec625a9c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Yes', + name: { + display: 'Yes', + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Oui', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'হ্যাঁ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sì', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yego', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'True', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vre', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sí', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vrai', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Wi', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Да', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sim', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ہاں', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadeiro', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'እወ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373066001', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/ed2115fe-2dd0-4bf5-a00e-1a3cda54e9e8`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/ed2115fe-2dd0-4bf5-a00e-1a3cda54e9e8?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'abf8b948-9f62-46c6-a77f-9c3b7bc20515', + display: 'Birth weight (kg): 3.0', + concept: { + uuid: '5916AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Birth weight (kg)', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/5916AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '3cb798ff-e316-425d-9d12-89b026f9bf19', + display: 'PHUNE - TUI TUI TUI', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/3cb798ff-e316-425d-9d12-89b026f9bf19`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2021-06-09T11:58:44.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '56b24a88-812b-459f-88aa-bfc3b8bb7913', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/56b24a88-812b-459f-88aa-bfc3b8bb7913`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '5cd5f444-af06-470e-8831-43ddec625a9c', + display: 'MCH Mother Consultation 09/06/2021', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/5cd5f444-af06-470e-8831-43ddec625a9c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 3, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/abf8b948-9f62-46c6-a77f-9c3b7bc20515`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/abf8b948-9f62-46c6-a77f-9c3b7bc20515?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '3adec14f-a448-4bb0-8df9-a2362189eb30', + display: 'APGAR score at 5 minutes: 7.0', + concept: { + uuid: '159604AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'APGAR score at 5 minutes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/159604AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '3cb798ff-e316-425d-9d12-89b026f9bf19', + display: 'PHUNE - TUI TUI TUI', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/3cb798ff-e316-425d-9d12-89b026f9bf19`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2021-06-09T11:58:44.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '56b24a88-812b-459f-88aa-bfc3b8bb7913', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/56b24a88-812b-459f-88aa-bfc3b8bb7913`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '5cd5f444-af06-470e-8831-43ddec625a9c', + display: 'MCH Mother Consultation 09/06/2021', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/5cd5f444-af06-470e-8831-43ddec625a9c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 7, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/3adec14f-a448-4bb0-8df9-a2362189eb30`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/3adec14f-a448-4bb0-8df9-a2362189eb30?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'cb6393ea-ffc6-4226-93ab-a4f657373427', + display: 'Newborn care counseling, kangaroo method: Yes', + concept: { + uuid: '161094AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Newborn care counseling, kangaroo method', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/161094AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '3cb798ff-e316-425d-9d12-89b026f9bf19', + display: 'PHUNE - TUI TUI TUI', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/3cb798ff-e316-425d-9d12-89b026f9bf19`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2021-06-09T11:58:44.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '56b24a88-812b-459f-88aa-bfc3b8bb7913', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/56b24a88-812b-459f-88aa-bfc3b8bb7913`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '5cd5f444-af06-470e-8831-43ddec625a9c', + display: 'MCH Mother Consultation 09/06/2021', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/5cd5f444-af06-470e-8831-43ddec625a9c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Yes', + name: { + display: 'Yes', + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Oui', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'হ্যাঁ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sì', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yego', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'True', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vre', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sí', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vrai', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Wi', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Да', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sim', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ہاں', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadeiro', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'እወ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373066001', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/cb6393ea-ffc6-4226-93ab-a4f657373427`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/cb6393ea-ffc6-4226-93ab-a4f657373427?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + ], + concept: { + uuid: '162588AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '126228BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Outcome of delivery, qualitative and quantitative', + }, + }, + value: null, + }, + { + uuid: '6df5363d-c33e-48d4-844b-d1e5bb9857fe', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1473AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1685BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Name of health care provider', + }, + }, + value: 'em', + }, + { + uuid: '677ac34c-31c3-4e07-b9ca-1a5b27f58283', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '162131AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '124901BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Neonatal resuscitation', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: '2efbfa7f-254b-43bd-bd6a-db3e1c50f1fe', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '159949AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '107504BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Quantitative outcome of delivery', + }, + }, + value: { + uuid: '159913AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '107430BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'singleton', + }, + names: [ + { + uuid: '107431BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'single birth', + }, + { + uuid: '136769BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Unique', + }, + { + uuid: '136770BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Inik', + }, + { + uuid: '107430BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'singleton', + }, + ], + }, + }, + { + uuid: '7adaa810-7e1e-4f23-9f15-c437971f5565', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '159616AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '106971BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Duration of labor', + }, + }, + value: 1, + }, + { + uuid: '4991cf58-6609-42fb-8062-c8b01120c22b', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5596AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2732BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Estimated date of confinement', + }, + }, + value: '2021-06-08T00:00:00.000+0300', + }, + { + uuid: '548d7660-57ee-4674-9796-2f0904af8af9', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '159369AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '106435BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'MEDICATIONS TAKEN', + }, + }, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + }, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Oui', + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'হ্যাঁ', + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sì', + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yego', + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'True', + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vre', + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vero', + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yes', + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sí', + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vrai', + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Wi', + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Да', + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadero', + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sim', + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ہاں', + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadeiro', + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'እወ', + }, + ], + }, + }, + { + uuid: 'f2663ebf-d525-4eac-a41b-ff2b9fcd4154', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1365BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Medication orders', + }, + }, + value: { + uuid: '81369AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '7148BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'OXYTOCIN', + }, + names: [ + { + uuid: '96540BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Pitocin', + }, + { + uuid: '98596BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Syntocinon', + }, + { + uuid: '7148BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'OXYTOCIN', + }, + ], + }, + }, + { + uuid: 'af7b4d6e-85a6-4eaf-9103-53ed9acbd422', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1856AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '53982BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: "MOTHER'S HEALTH STATUS", + }, + }, + value: { + uuid: '160429AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '108637BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Alive', + }, + names: [ + { + uuid: '134500BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Vivan', + }, + { + uuid: '108637BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Alive', + }, + { + uuid: '134499BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Vivant', + }, + ], + }, + }, + { + uuid: '11610534-bb7d-425d-b992-160b86a30cf9', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1365BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Medication orders', + }, + }, + value: { + uuid: '160123AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '107859BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Zidovudine for PMTCT', + }, + names: [ + { + uuid: '107858BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'SHORT', + name: 'AZT for PMTCT', + }, + { + uuid: '107859BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Zidovudine for PMTCT', + }, + ], + }, + }, + { + uuid: '9b9b31a9-ebcd-4ac1-97bb-ede09fb0005a', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1590AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1865BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NUMBER OF ANTENATAL VISITS CURRENT PREGNANCY', + }, + }, + value: 9, + }, + { + uuid: 'c3a6a04c-573c-43d4-8060-d0965f98bc7a', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '299AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '324BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'VDRL', + }, + }, + value: { + uuid: '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NEGATIVE', + }, + names: [ + { + uuid: '95210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEGATIVE', + }, + { + uuid: '110112BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Hasi', + }, + { + uuid: '697BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NÉGATIF', + }, + { + uuid: '87074BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '137361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'negatif', + }, + { + uuid: '108329BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Negativo', + }, + { + uuid: '108331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108330BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Negativa', + }, + { + uuid: '87080BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '-', + }, + ], + }, + }, + { + uuid: '905b37e7-0c89-44aa-98c6-666e844b059f', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5096AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2200BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'RETURN VISIT DATE', + }, + }, + value: '2021-06-30T00:00:00.000+0300', + }, + { + uuid: '1c19edf8-439b-4dba-9b7b-e23a552127bf', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1573AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1843BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Delivery assistant', + }, + }, + value: { + uuid: '1578AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1850BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Midwife', + }, + names: [ + { + uuid: '1851BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sage-femme', + }, + { + uuid: '136765BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Fanmsaj', + }, + { + uuid: '136764BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Matrone', + }, + { + uuid: '1850BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Midwife', + }, + { + uuid: '136766BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Matwon', + }, + ], + }, + }, + { + uuid: '25ed91d2-5172-419d-98bf-cb4b5023437e', + obsDatetime: '2021-06-09T11:58:44.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5599AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2737BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Date of confinement', + }, + }, + value: '2021-06-09T00:00:00.000+0300', + }, + ], + form: { + uuid: '496c7cc3-0eea-4e84-a04c-2292949e2f7f', + name: 'Delivery', + }, + launchFormActions: {}, + }, + ], + ], + }, +}; diff --git a/packages/esm-billing-app/__mocks__/encounter-observations.mock.ts b/packages/esm-billing-app/__mocks__/encounter-observations.mock.ts new file mode 100644 index 0000000..7a1a37c --- /dev/null +++ b/packages/esm-billing-app/__mocks__/encounter-observations.mock.ts @@ -0,0 +1,6189 @@ +import { restBaseUrl } from '@openmrs/esm-framework'; + +export const formConceptMap = { + '162054AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Admission Number:', + answers: {}, + }, + '1590AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Number of ANC Visits:', + answers: {}, + }, + '1427AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Date of Last Menstrual Period(LMP)', + answers: {}, + }, + '299AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'VDRL/RPR Results:', + answers: { + '703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Positive', + '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Negative', + '1118AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Not Done', + }, + }, + '5596AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Estimated date of Delivery', + answers: {}, + }, + '163454AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Placenta complete?', + answers: { + '703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1501AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Baby born before arrival', + }, + }, + '160704AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Vagina Examination?', + answers: { + '132681AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Normal', + '5577AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Episiotomy', + '159264AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Vaginal tear', + '118935AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'FGM', + '139505AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Vaginal warts', + }, + }, + '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'NVP for the baby dispensed?', + answers: { + '80586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'N/A', + }, + }, + '1789AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Gestation at birth (in weeks):', + answers: {}, + }, + '159616AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Duration of Labor (Hours):', + answers: {}, + }, + '5630AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Mode of Delivery:', + answers: { + '1170AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Spontaneous vaginal delivery(SVD)', + '1171AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Cesarean section(CS)', + '1172AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Breech delivery', + '118159AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Assisted vaginal delivery(AVD)', + }, + }, + '5599AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Date and time of Delivery:', + answers: {}, + }, + '161928AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Blood loss during delivery in millilitres (mls):', + answers: {}, + }, + '1856AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Condition of Mother after delivery:', + answers: { + '160429AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Alive', + '134612AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Dead', + }, + }, + '162131AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Resuscitation Done:', + answers: { + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + }, + }, + '1602AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Maternal death audited?', + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + }, + }, + '120216AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Delivery complications ?', + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1067AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Unknown', + }, + }, + '1572AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Place of Delivery:', + answers: { + '1536AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Home', + '1589AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Facility', + '1601AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Born Before Arrival', + }, + }, + '1576AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Select delivery complications ?', + answers: { + '1067AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Unknown', + '113195AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Ruptured Uterus', + '118744AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Eclampsia', + '228AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'APH', + '230AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'PPH', + '115036AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Obstructed Labor', + '130AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Puerperal sepsis', + }, + }, + '162093AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Other delivery complications', + answers: {}, + }, + '1473AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Delivery Conducted By:', + answers: {}, + }, + '1573AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Cadre :', + answers: { + '1574AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Clinical officer/Doctor', + '1578AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Midwife', + '1577AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Nurse', + '1575AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Traditional Birth Attendant', + '1555AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Community Health Care Worker', + '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Other', + }, + }, + '159949AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Delivery Outcome', + answers: { + '159913AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Single', + '159914AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Twins', + '159915AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Triplets', + }, + }, + '159369AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Chlorhexidine applied on cord stump:', + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + }, + }, + '162588AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Baby details', + answers: {}, + }, + '164410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'HIV testing', + answers: {}, + }, + '1396AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'HIV Status:', + answers: { + '703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Positive', + '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Negative', + '1067AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Unknown', + '164817AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Known Positive', + }, + }, + '161557AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: "Has the client's partner been tested for HIV? Partner HIV Status:", + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + }, + }, + '1436AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Partner HIV Status:', + answers: { + '703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'HIV Positive', + '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'HIV Negative', + '1067AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Unknown', + }, + }, + '1109AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: "Mother's prophylaxis given during this visit?", + answers: { + '105281AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Cotrimoxazole', + '74250AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Dapsone', + '1107AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'None', + }, + }, + '166665AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Mother started on HAART at maternity ?', + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'N/A', + }, + }, + '163783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Was mother on HAART during ANC?', + answers: { + '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Yes', + '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'No', + '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'N/A', + }, + }, + '163145AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Referred to?', + answers: { + '1537AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Another Health Facility', + '163488AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Community Unit', + '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'N/A', + }, + }, + '164359AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Reasons for referral? ', + answers: {}, + }, + '5096AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Next appointment date:', + answers: {}, + }, + '159395AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Clinical notes', + answers: {}, + }, + '1586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: "Baby's name", + answers: {}, + }, + '1587AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Sex', + answers: { + '1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Male', + '1535AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Female', + }, + }, + '159917AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': { + display: 'Condition of the baby', + answers: { + '151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Live birth', + '159916AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Fresh still birth', + '135436AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA': 'Macerated still birth', + }, + }, +}; + +export const observationsMockData = [ + { + uuid: 'bcbac92d-9f73-43cf-be4a-eef0b6a04729', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5596AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2732BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Estimated date of confinement', + }, + }, + value: '2023-11-22T00:00:00.000+0300', + }, + { + uuid: 'b23ff9d0-ecec-43da-8ba5-0e2c5ed8f7b0', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '162131AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '124901BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Neonatal resuscitation', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: '508aec61-d508-41e0-8398-4d7d7d55de30', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5096AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2200BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'RETURN VISIT DATE', + }, + }, + value: '2023-12-28T00:00:00.000+0300', + }, + { + uuid: '426211f7-3a9f-42c2-8fbb-02426e651f8b', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1856AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '53982BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: "MOTHER'S HEALTH STATUS", + }, + }, + value: { + uuid: '160429AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '108637BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Alive', + }, + names: [ + { + uuid: '134500BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Vivan', + }, + { + uuid: '108637BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Alive', + }, + { + uuid: '134499BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Vivant', + }, + ], + }, + }, + { + uuid: '50735d12-1ad6-44c8-82b9-469a035a90db', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1573AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1843BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Delivery assistant', + }, + }, + value: { + uuid: '1578AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1850BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Midwife', + }, + names: [ + { + uuid: '1851BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sage-femme', + }, + { + uuid: '136765BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Fanmsaj', + }, + { + uuid: '136764BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Matrone', + }, + { + uuid: '1850BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Midwife', + }, + { + uuid: '136766BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Matwon', + }, + ], + }, + }, + { + uuid: '1dc8e229-6d81-4aa4-a46b-cedeb70bfbd2', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '166665AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '146066BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Treatment given', + }, + }, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + }, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Oui', + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'হ্যাঁ', + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sì', + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yego', + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'True', + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vre', + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vero', + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yes', + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sí', + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vrai', + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Wi', + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Да', + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadero', + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sim', + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ہاں', + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadeiro', + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'እወ', + }, + ], + }, + }, + { + uuid: '58f4ef41-60a8-4f0a-8612-e4cd3aadc550', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1365BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Medication orders', + }, + }, + value: { + uuid: '81369AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '7148BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'OXYTOCIN', + }, + names: [ + { + uuid: '96540BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Pitocin', + }, + { + uuid: '98596BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Syntocinon', + }, + { + uuid: '7148BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'OXYTOCIN', + }, + ], + }, + }, + { + uuid: 'fe501369-1425-4211-9b65-4137b0fbfe6b', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '120216AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '20422BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'COMPLICATION OF LABOR AND DELIVERY AFFECTING FETUS OR NEWBORN', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: 'a750eee4-89cb-4b51-b6de-afd25799446c', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '163783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '139389BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Mother recieved highly active antiretroviral therapy (HAART)', + }, + }, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + }, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Oui', + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'হ্যাঁ', + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sì', + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yego', + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'True', + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vre', + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vero', + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yes', + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sí', + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vrai', + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Wi', + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Да', + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadero', + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sim', + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ہاں', + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadeiro', + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'እወ', + }, + ], + }, + }, + { + uuid: 'e80152ce-6a58-4052-bb03-da4a7024f37a', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5599AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2737BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Date of confinement', + }, + }, + value: '2023-11-23T00:00:00.000+0300', + }, + { + uuid: '339a5a0c-e213-4c2a-8d4b-a2839a5aa08b', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1365BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Medication orders', + }, + }, + value: { + uuid: '80586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '6938BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NEVIRAPINE', + }, + names: [ + { + uuid: '100039BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Viramune', + }, + { + uuid: '6938BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEVIRAPINE', + }, + { + uuid: '110807BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'SHORT', + name: 'NVP', + }, + { + uuid: '135959BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEVIRAPINE', + }, + { + uuid: '138953BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'nevirapin', + }, + ], + }, + }, + { + uuid: '6658c8b9-b1c9-411d-ae5c-afdb650c59ee', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1473AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1685BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Name of health care provider', + }, + }, + value: 'HUTY', + }, + { + uuid: '25021d25-7e86-4140-be98-8dc8628035f3', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '161557AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '111182BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Partner HIV tested', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: 'fb06ac6f-e875-42d2-b5f4-2c8ea152a75b', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '162054AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '124791BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Service delivery point number', + }, + }, + value: '12', + }, + { + uuid: '7bcfc9b6-e2e8-40b9-a9bd-c6cb5835a76e', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '163145AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '134833BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Type of facility referred to', + }, + }, + value: { + uuid: '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1252BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Not applicable', + }, + names: [ + { + uuid: '136924BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non applicable\t', + }, + { + uuid: '136925BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Paka aplike', + }, + { + uuid: '1252BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Not applicable', + }, + ], + }, + }, + { + uuid: 'a961cada-4e1b-418e-9fd7-4a5608e3530e', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '299AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '324BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'VDRL', + }, + }, + value: { + uuid: '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NEGATIVE', + }, + names: [ + { + uuid: '95210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEGATIVE', + }, + { + uuid: '110112BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Hasi', + }, + { + uuid: '697BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NÉGATIF', + }, + { + uuid: '87074BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '137361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'negatif', + }, + { + uuid: '108329BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Negativo', + }, + { + uuid: '108331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108330BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Negativa', + }, + { + uuid: '87080BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '-', + }, + ], + }, + }, + { + uuid: 'f8bfe593-2324-4e97-bf71-58a38f620850', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '5630AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '2770BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Method of delivery', + }, + }, + value: { + uuid: '1170AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1246BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Spontaneous vaginal delivery', + }, + names: [ + { + uuid: '98557BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'SVD', + }, + { + uuid: '137720BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Kouch nomal', + }, + { + uuid: '1246BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Spontaneous vaginal delivery', + }, + { + uuid: '106160BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Accouchement spontané par voie naturelle', + }, + { + uuid: '136824BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Akouchman espontane pa voi natirèl', + }, + ], + }, + }, + { + uuid: 'c0c3fb7e-31f1-4d4a-b608-467b9ecee209', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1590AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1865BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NUMBER OF ANTENATAL VISITS CURRENT PREGNANCY', + }, + }, + value: 12, + }, + { + uuid: '4586ecc2-a2f4-4845-9ccc-9936980dcf7a', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1427AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1596BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Date of last menstrual period', + }, + }, + value: '2023-02-17T00:00:00.000+0300', + }, + { + uuid: 'bf0a7592-2478-459d-8a71-b948ed88c6a6', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '160704AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '109216BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Uterine cervix visual examination', + }, + }, + value: { + uuid: '132681AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '32606BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Normal Appearance', + }, + names: [ + { + uuid: '32606BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Normal Appearance', + }, + { + uuid: '71738BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'aspecto normal', + }, + ], + }, + }, + { + uuid: 'e249398e-bd89-4595-82a4-a3c204408837', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1365BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Medication orders', + }, + }, + value: { + uuid: '160123AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '107859BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Zidovudine for PMTCT', + }, + names: [ + { + uuid: '107858BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'SHORT', + name: 'AZT for PMTCT', + }, + { + uuid: '107859BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Zidovudine for PMTCT', + }, + ], + }, + }, + { + uuid: 'ec77ce1d-9609-41cf-8280-5edad5f44906', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '159616AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '106971BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Duration of labor', + }, + }, + value: 16, + }, + { + uuid: '54353fb1-c640-4e3b-ba52-912266280304', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '163454AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '136844BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Visual examination of placenta completeness', + }, + }, + value: { + uuid: '703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '737BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'POSITIVE', + }, + names: [ + { + uuid: '108314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'POS', + }, + { + uuid: '106895BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣወንታዊ ውፅኢት መርመራ ወይ ፖዘቲቭ', + }, + { + uuid: '96670BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'POS', + }, + { + uuid: '108313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Positiva', + }, + { + uuid: '110111BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Chanya', + }, + { + uuid: '108312BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Positivo', + }, + { + uuid: '108316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(+)', + }, + { + uuid: '737BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'POSITIVE', + }, + { + uuid: '87075BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '+', + }, + { + uuid: '738BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'POSITIF', + }, + { + uuid: '87073BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(+)', + }, + { + uuid: '108315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '+', + }, + { + uuid: '137362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'positif', + }, + ], + }, + }, + { + uuid: 'e735c6f7-e8dd-4040-ad6b-e71cfa78c523', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1109AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1184BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'PATIENT REPORTED CURRENT PCP PROPHYLAXIS', + }, + }, + value: { + uuid: '105281AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '10699BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'SULFAMETHOXAZOLE / TRIMETHOPRIM', + }, + names: [ + { + uuid: '98001BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Septrin', + }, + { + uuid: '10699BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'SULFAMETHOXAZOLE / TRIMETHOPRIM', + }, + { + uuid: '136038BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'TRIMETHOPRIM / SULFAMETHOXAZOLE', + }, + { + uuid: '88448BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Bactrim', + }, + { + uuid: '97999BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Septra', + }, + { + uuid: '139108BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Sulfamethoxazole / trimetoprim', + }, + { + uuid: '10700BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'COTRIMOXAZOLE', + }, + { + uuid: '124262BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Cotrimoxazole', + }, + { + uuid: '138977BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Kotrimoxasol', + }, + { + uuid: '98491BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Sulfatrim', + }, + { + uuid: '98179BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'SMX-TMP', + }, + { + uuid: '124261BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'CTX', + }, + { + uuid: '90027BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Cotrim', + }, + { + uuid: '110406BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Co-trimoxazole', + }, + ], + }, + }, + { + uuid: '593ad0b1-c791-4686-85ac-bd650299a23e', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1572AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1842BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'LOCATION OF BIRTH', + }, + }, + value: { + uuid: '1589AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1863BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'HOSPITAL', + }, + names: [ + { + uuid: '1863BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'HOSPITAL', + }, + { + uuid: '137722BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'lopital', + }, + { + uuid: '111210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Стационар', + }, + { + uuid: '1864BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'HÔPITAL', + }, + ], + }, + }, + { + uuid: 'c71c26d2-5c44-494f-b137-e80cf1c92477', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '159369AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '106435BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'MEDICATIONS TAKEN', + }, + }, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + }, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Oui', + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'হ্যাঁ', + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sì', + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yego', + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'True', + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vre', + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vero', + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Yes', + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sí', + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Vrai', + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Wi', + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Да', + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadero', + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Sim', + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ہاں', + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Verdadeiro', + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'እወ', + }, + ], + }, + }, + { + uuid: '764dbbc1-035d-4646-b2cf-78138298c89b', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '159949AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '107504BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Quantitative outcome of delivery', + }, + }, + value: { + uuid: '159913AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '107430BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'singleton', + }, + names: [ + { + uuid: '107431BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'single birth', + }, + { + uuid: '136769BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Unique', + }, + { + uuid: '136770BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Inik', + }, + { + uuid: '107430BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'singleton', + }, + ], + }, + }, + { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + obsDatetime: '2023-12-15T10:36:47.000+0300', + voided: false, + groupMembers: [ + { + uuid: '24954482-57f8-4411-9626-6d06b178a297', + display: 'IMMUNIZATIONS: Yes', + concept: { + uuid: '984AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'IMMUNIZATIONS', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/984AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Yes', + name: { + display: 'Yes', + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Oui', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'হ্যাঁ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sì', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yego', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'True', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vre', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sí', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vrai', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Wi', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Да', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sim', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ہاں', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadeiro', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'እወ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373066001', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/24954482-57f8-4411-9626-6d06b178a297`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/24954482-57f8-4411-9626-6d06b178a297?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'af1eed2e-4c64-4d38-8273-a2b685051af4', + display: 'Birth weight (kg): 3.0', + concept: { + uuid: '5916AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Birth weight (kg)', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/5916AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 3, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/af1eed2e-4c64-4d38-8273-a2b685051af4`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/af1eed2e-4c64-4d38-8273-a2b685051af4?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'b516c0cd-5539-477f-8e03-a13447946b30', + display: 'Medication orders: TETRACYCLINE', + concept: { + uuid: '1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Medication orders', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1282AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'TETRACYCLINE', + name: { + display: 'TETRACYCLINE', + uuid: '8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'TETRACYCLINE', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d490dfc-c2cc-11de-8d13-0010c6dffd0f', + display: 'Drug', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d490dfc-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '87199BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Achromycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87199BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98841BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetrachel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98841BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87200BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Achromycin V', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87200BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '88823BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Brodspec', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/88823BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87271BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Actisite', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87271BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87450BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Ala-Tet', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87450BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98836BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetra brand of tetracycline', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98836BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '99061BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Topicycline', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/99061BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '91262BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Economycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/91262BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '91397BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Emtet-500', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/91397BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98840BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetracap', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98840BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'TETRACYCLINE', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/8292BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98842BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetracon', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98842BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98510BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sumycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98510BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98849BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetrex', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98849BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '96123BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Panmycin', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/96123BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '97626BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Robitet 500', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/97626BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '98835BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Tetra 500', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/98835BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [], + mappings: [ + { + uuid: '131860ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'RxNORM: 10395', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/131860ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '145732ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED NP: 372809001', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/145732ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '177433ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 84893', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/177433ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134131ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 270', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134131ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '139333ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 66261008', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/139333ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/84893AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/b516c0cd-5539-477f-8e03-a13447946b30`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/b516c0cd-5539-477f-8e03-a13447946b30?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '7820cc1f-83f7-44da-8fd4-ddf5f124f3c6', + display: 'APGAR score at 5 minutes: 9.0', + concept: { + uuid: '159604AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'APGAR score at 5 minutes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/159604AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 9, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/7820cc1f-83f7-44da-8fd4-ddf5f124f3c6`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/7820cc1f-83f7-44da-8fd4-ddf5f124f3c6?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'e402f16a-38d3-423c-9bc8-d56b45b33ebd', + display: 'Neonatal complication: No', + concept: { + uuid: '164122AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Neonatal complication', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/164122AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'No', + name: { + display: 'No', + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'نہیں', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Non', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Нет', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Faux', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ኣይትጥቀምን', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Non', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Muzima', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Fo', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'না', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Não', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'False', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1069FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1069FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18159FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18159FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143597ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143597ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144379ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144379ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134738ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134738ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171329ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171329ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133841ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373067005', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133841ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/e402f16a-38d3-423c-9bc8-d56b45b33ebd`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/e402f16a-38d3-423c-9bc8-d56b45b33ebd?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '75a10d67-723f-40a4-9611-ff93c848ffe4', + display: 'CHILD GENDER: Male Gender', + concept: { + uuid: '1587AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'CHILD GENDER', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1587AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Male Gender', + name: { + display: 'Male Gender', + uuid: '1793BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Male Gender', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1793BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1793BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '1794BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SEXE MASCULIN', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1794BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1793BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Male Gender', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1793BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111257BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Мужчины', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111257BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '94349BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'MALE', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/94349BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '136889BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sèks gason', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/136889BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [], + mappings: [ + { + uuid: '133339ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 248153007', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133339ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '132703ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 2843', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/132703ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171776ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1534', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171776ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/75a10d67-723f-40a4-9611-ff93c848ffe4`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/75a10d67-723f-40a4-9611-ff93c848ffe4?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'f040e1dd-c8e7-4a36-bc63-b651d797e253', + display: 'Qualitative birth outcome: Liveborn, Unspecified Whether Single, Twin, or Multiple', + concept: { + uuid: '159917AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Qualitative birth outcome', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/159917AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + name: { + display: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + uuid: '51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d4918b0-c2cc-11de-8d13-0010c6dffd0f', + display: 'Diagnosis', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d4918b0-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '136876BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: "Naissance vivante, non spécifié si c'est seul, jumeaux ou multiple", + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/136876BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '107439BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Livebirth', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/107439BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Liveborn, Unspecified Whether Single, Twin, or Multiple', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/51415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '107438BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Liveborn', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/107438BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '107440BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Baby born alive', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/107440BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '86710BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'parto de feto vivo', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/86710BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '136877BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vivant lel fèt, ki pa spesifye si li sel, marasa ou plisiè', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/136877BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [], + mappings: [ + { + uuid: '275493ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ICD-10-WHO: Z37.0', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/275493ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '276362ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'IMO ProblemIT: 824998', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/276362ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '276284ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 151849', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/276284ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '76413ABBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 281050002', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/76413ABBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/151849AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f040e1dd-c8e7-4a36-bc63-b651d797e253`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f040e1dd-c8e7-4a36-bc63-b651d797e253?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'e6cad7cb-ae04-489a-9fbe-9379edcf0045', + display: 'CHILD NAME: RENO', + concept: { + uuid: '1586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'CHILD NAME', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 'RENO', + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/e6cad7cb-ae04-489a-9fbe-9379edcf0045`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/e6cad7cb-ae04-489a-9fbe-9379edcf0045?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '9fa7ca0a-9af6-451e-930f-5b1287a6625b', + display: 'APGAR score at 1 minute: 9.0', + concept: { + uuid: '159603AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'APGAR score at 1 minute', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/159603AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 9, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/9fa7ca0a-9af6-451e-930f-5b1287a6625b`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/9fa7ca0a-9af6-451e-930f-5b1287a6625b?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'f37d61f2-9820-4d17-9983-b88c91c12072', + display: 'Newborn care counseling, kangaroo method: No', + concept: { + uuid: '161094AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Newborn care counseling, kangaroo method', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/161094AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'No', + name: { + display: 'No', + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'نہیں', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Non', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Нет', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Faux', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ኣይትጥቀምን', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Non', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Muzima', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Falso', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Fo', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'না', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Não', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'False', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1069FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1069FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18159FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18159FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143597ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143597ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144379ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144379ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134738ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134738ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171329ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1066', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171329ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133841ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373067005', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133841ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f37d61f2-9820-4d17-9983-b88c91c12072`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f37d61f2-9820-4d17-9983-b88c91c12072?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'f3db629f-f76d-46d9-bc40-db7cc2aba30a', + display: 'Early initiation of breastfeeding: Yes', + concept: { + uuid: '161543AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Early initiation of breastfeeding', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/161543AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Yes', + name: { + display: 'Yes', + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Yes', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Oui', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1137BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'হ্যাঁ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/127332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sì', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126316BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yego', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106307BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'True', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126313BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vre', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126317BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Yes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/1136BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sí', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Vrai', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126314BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Wi', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Да', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/111198BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadero', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126315BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Sim', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126318BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'ہاں', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/139802BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Verdadeiro', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/126319BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'እወ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/106919BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Generic answer to a question.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/1068FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + { + uuid: '18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'کسی سوال کا عام جواب', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/18158FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143596ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 373066001', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133840ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH Malawi: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/144378ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171328ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 1065', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134737ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f3db629f-f76d-46d9-bc40-db7cc2aba30a`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/f3db629f-f76d-46d9-bc40-db7cc2aba30a?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'a6fb2623-6d27-4590-8e51-0af08ac498b7', + display: 'APGAR score at 10 minutes: 10.0', + concept: { + uuid: '159605AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'APGAR score at 10 minutes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/159605AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: 'd8907239-b3a5-4f2f-8ec8-d8b179505101', + display: 'MC66P - chepkewel chepkewel chepkewel', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/d8907239-b3a5-4f2f-8ec8-d8b179505101`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2023-12-15T10:36:47.000+0300', + accessionNumber: null, + obsGroup: { + uuid: '935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e', + display: 'Outcome of delivery, qualitative and quantitative: ', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/935b9c5d-001d-45a8-b8e4-c80d4a0e5d2e`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'cdbf35ac-6ff2-43e1-b41a-2fef1294881f', + display: 'Moi Teaching Refferal Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/cdbf35ac-6ff2-43e1-b41a-2fef1294881f`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '4095905d-70fe-4f86-834d-f5096be7f70c', + display: 'MCH Mother Consultation 15/12/2023', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/4095905d-70fe-4f86-834d-f5096be7f70c`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: 10, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/a6fb2623-6d27-4590-8e51-0af08ac498b7`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/a6fb2623-6d27-4590-8e51-0af08ac498b7?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + ], + concept: { + uuid: '162588AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '126228BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Outcome of delivery, qualitative and quantitative', + }, + }, + value: null, + }, +]; + +export const mockTableHeaders = [ + { + key: 'testDate', + header: 'Test Date', + }, + { + key: 'htsTestType', + header: 'Test type', + }, + { + key: 'testApproach', + header: 'Approach', + }, + { + key: 'testStrategy', + header: 'Strategy', + }, + { + key: 'testEntryPoint', + header: 'Entry point', + }, + { + key: 'htsResult', + header: 'Final result', + }, + { + key: 'tbScreening', + header: 'TB screening outcome', + }, + { + key: 'actions', + header: 'Actions', + }, +]; + +export const mockTableRows = [ + { + id: '0c1c70d3-d75f-44bf-be98-ae83d9f4b750', + obs: [ + { + uuid: 'f18e61c4-de52-4bc0-a081-eb64038039f6', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: 'cf543666-ce76-4e91-8b8d-c0b54a436a2e', + name: { + uuid: 'f9f78e0d-e2d9-4e03-876b-b20673ffb71c', + name: 'Population type', + }, + }, + value: { + uuid: '5d308c8c-ad49-45e1-9885-e5d09a8e5587', + name: { + uuid: '58586303-910a-47ce-afb0-2f7632319b91', + name: 'General Population', + }, + names: [ + { + uuid: '58586303-910a-47ce-afb0-2f7632319b91', + conceptNameType: 'FULLY_SPECIFIED', + name: 'General Population', + }, + { + uuid: '7d133896-a0a4-453b-9034-ce16062352fc', + conceptNameType: 'SHORT', + name: 'General Population', + }, + ], + }, + }, + { + uuid: '50b9a6f4-d2ce-4a0d-a398-5ce6938f87ba', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: 'b61c1482-1697-404c-ab96-fd698d5fd317', + name: { + uuid: '5d887e81-e040-4b02-a9c8-dd6f013c6ddf', + name: 'Patient tested as', + }, + }, + value: { + uuid: '147082f4-0662-4bfa-a54c-914f1db97373', + name: { + uuid: '015db596-aa89-4a41-80b5-159d1c7db1d9', + name: 'Individual testing', + }, + names: [ + { + uuid: '015db596-aa89-4a41-80b5-159d1c7db1d9', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Individual testing', + }, + { + uuid: '18567fcc-ff9c-45bb-8235-43f3d01c6245', + conceptNameType: 'SHORT', + name: 'Individual testing', + }, + ], + }, + }, + { + uuid: 'd2545f54-bdd4-4041-811f-ca21dea6ae00', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '159427AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '106513BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Result of HIV test', + }, + }, + value: { + uuid: '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NEGATIVE', + }, + names: [ + { + uuid: '95210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NEGATIVE', + }, + { + uuid: '110112BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Hasi', + }, + { + uuid: '697BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'NÉGATIF', + }, + { + uuid: '87074BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '(-)', + }, + { + uuid: '137361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'negatif', + }, + { + uuid: '108329BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Negativo', + }, + { + uuid: '108331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'NEG', + }, + { + uuid: '108330BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Negativa', + }, + { + uuid: '87080BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: '-', + }, + ], + }, + }, + { + uuid: '8db809fe-87f7-4b1b-9129-e7db98037f39', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '160540AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '108875BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Method of enrollment', + }, + }, + value: { + uuid: '160538AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '108858BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Prevention of maternal to child transmission program', + }, + names: [ + { + uuid: '108861BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'SHORT', + name: 'PMTCT Program', + }, + { + uuid: '136004BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Programme de prévention de la transmission mère-enfant', + }, + { + uuid: '108858BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Prevention of maternal to child transmission program', + }, + { + uuid: '127609BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Ngăn ngừa mẹ để chương trình truyền con', + }, + { + uuid: '136005BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Pwogram prevansyon maman ak pitit', + }, + ], + }, + }, + { + uuid: '3d27b31b-f52d-49f5-a215-0176fd459dca', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1659AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1939BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Tuberculosis disease status', + }, + }, + value: { + uuid: '1660AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1940BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No signs or symptoms of disease', + }, + names: [ + { + uuid: '1940BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No signs or symptoms of disease', + }, + { + uuid: '106045BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'AUCUN SIGNE OU SYMPTÔME DE LA MALADIE', + }, + { + uuid: '86943BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'SHORT', + name: 'No Signs Disease', + }, + { + uuid: '135792BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Pa gen okenn siy oswa sentòm maladi', + }, + ], + }, + }, + { + uuid: 'ebae381a-bfbc-4c40-87eb-46d31c0954a2', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '1710AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1990BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'INFORMED CONSENT', + }, + }, + value: { + uuid: '1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Anemia due to Blood Loss', + }, + names: [ + { + uuid: '87939BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'ANEMIA, BLOOD LOSS', + }, + { + uuid: '80825BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Anemia por pérdida de sangre', + }, + { + uuid: '106367BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ANÉMIE, PERTE DE SANG', + }, + { + uuid: '139759BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'خون کی کمی، خون بہنے کی وجہ سے', + }, + { + uuid: '1BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Anemia due to Blood Loss', + }, + ], + }, + }, + { + uuid: '6c4e444d-e6f4-4ea2-84e2-d1c2a352ffbf', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: 'd85ff219-0f5a-408d-8df0-96bcc9be5071', + name: { + uuid: '1a8908bb-fcec-422c-b3a6-c4bef3d8a9b5', + name: 'HIV testing services strategy', + }, + }, + value: { + uuid: '164163AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '140056BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Provider-initiated HIV testing and counseling', + }, + names: [ + { + uuid: '140057BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Provider initiated HIV testing and counseling', + }, + { + uuid: '140055BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'PITC', + }, + { + uuid: '140056BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Provider-initiated HIV testing and counseling', + }, + ], + }, + }, + { + uuid: 'e6cd71a9-4b9c-4167-ae8d-10b0f947ebb3', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '164401AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '140415BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'HIV test performed', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: 'b173e388-7037-41db-9ef4-92a259b79896', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '2797e57b-d1ff-4928-b10e-b72e95b63faf', + name: { + uuid: 'db721db6-7ef1-404b-b850-59cad88cfab1', + name: 'Patient had HIV self test', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: 'abaa7121-74f2-4d51-abe0-6daeb5d6f9e4', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: [ + { + uuid: '2c670c37-163f-43bb-ba37-7624129fae86', + display: 'HIV RAPID TEST 1, QUALITATIVE: NEGATIVE', + concept: { + uuid: '1040AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'HIV RAPID TEST 1, QUALITATIVE', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1040AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '866b3ed9-c565-431d-a56b-5e1dc5cd0fbc', + display: 'MAXGD - janeffer janeffer janeffer', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/866b3ed9-c565-431d-a56b-5e1dc5cd0fbc`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2019-10-02T10:13:17.000+0300', + accessionNumber: null, + obsGroup: { + uuid: 'abaa7121-74f2-4d51-abe0-6daeb5d6f9e4', + display: 'Test laboratory number construct: NEGATIVE, Determine test kit, 2020-09-04, 98289K100', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/abaa7121-74f2-4d51-abe0-6daeb5d6f9e4`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'f06c0024-f941-4c6b-8358-69290c012e94', + display: 'Baringo County Referral Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/f06c0024-f941-4c6b-8358-69290c012e94`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '0c1c70d3-d75f-44bf-be98-ae83d9f4b750', + display: 'HTS 02/10/2019', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/0c1c70d3-d75f-44bf-be98-ae83d9f4b750`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'NEGATIVE', + name: { + display: 'NEGATIVE', + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'NEGATIVE', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a4c94-c2cc-11de-8d13-0010c6dffd0f', + display: 'N/A', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a4c94-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d492774-c2cc-11de-8d13-0010c6dffd0f', + display: 'Misc', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d492774-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: '', + retired: false, + names: [ + { + uuid: '95210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'NEG', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/95210BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: '(-)', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108332BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'NEGATIVE', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/696BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '110112BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Hasi', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/110112BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '697BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'NÉGATIF', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/697BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87074BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: '(-)', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87074BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '137361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'negatif', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/137361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108329BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Negativo', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108329BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'NEG', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108331BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '108330BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'Negativa', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/108330BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '87080BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: '-', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/name/87080BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: '664FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF', + display: 'Response to a finding or test result.', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/description/664FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [ + { + uuid: '171135ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'CIEL: 664', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/171135ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134375ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 664', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134375ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '133725ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'SNOMED CT: 260385009', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/133725ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '143587ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'PIH: 664', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/143587ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '137847ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'org.openmrs.module.mdrtb: NEGATIVE', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/137847ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + { + uuid: '134376ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + display: 'AMPATH: 665', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/mapping/134376ABBBBBBBBBBBBBBBBBBBBBBBBBBBBB`, + resourceAlias: 'mapping', + }, + ], + }, + ], + answers: [], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/2c670c37-163f-43bb-ba37-7624129fae86`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/2c670c37-163f-43bb-ba37-7624129fae86?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '8568fde8-ee92-4e3c-99df-ba8c5678992d', + display: 'HIV test kit used: Determine test kit', + concept: { + uuid: '214c83f9-435d-44f5-9ae6-d5757b7b4c7f', + display: 'HIV test kit used', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/214c83f9-435d-44f5-9ae6-d5757b7b4c7f`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '866b3ed9-c565-431d-a56b-5e1dc5cd0fbc', + display: 'MAXGD - janeffer janeffer janeffer', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/866b3ed9-c565-431d-a56b-5e1dc5cd0fbc`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2019-10-02T10:13:17.000+0300', + accessionNumber: null, + obsGroup: { + uuid: 'abaa7121-74f2-4d51-abe0-6daeb5d6f9e4', + display: 'Test laboratory number construct: NEGATIVE, Determine test kit, 2020-09-04, 98289K100', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/abaa7121-74f2-4d51-abe0-6daeb5d6f9e4`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'f06c0024-f941-4c6b-8358-69290c012e94', + display: 'Baringo County Referral Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/f06c0024-f941-4c6b-8358-69290c012e94`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '0c1c70d3-d75f-44bf-be98-ae83d9f4b750', + display: 'HTS 02/10/2019', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/0c1c70d3-d75f-44bf-be98-ae83d9f4b750`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: { + uuid: '7cf927f8-e734-474f-b71a-1459bb566aa2', + display: 'Determine test kit', + name: { + display: 'Determine test kit', + uuid: '33658957-0aaa-436e-be92-2dcadef719c6', + name: 'Determine test kit', + locale: 'en', + localePreferred: true, + conceptNameType: 'FULLY_SPECIFIED', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2/name/33658957-0aaa-436e-be92-2dcadef719c6`, + resourceAlias: 'name', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2/name/33658957-0aaa-436e-be92-2dcadef719c6?v=full`, + resourceAlias: 'name', + }, + ], + resourceVersion: '1.9', + }, + datatype: { + uuid: '8d4a48b6-c2cc-11de-8d13-0010c6dffd0f', + display: 'Coded', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptdatatype/8d4a48b6-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptdatatype', + }, + ], + }, + conceptClass: { + uuid: '8d491e50-c2cc-11de-8d13-0010c6dffd0f', + display: 'Question', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/conceptclass/8d491e50-c2cc-11de-8d13-0010c6dffd0f`, + resourceAlias: 'conceptclass', + }, + ], + }, + set: false, + version: null, + retired: false, + names: [ + { + uuid: '1e136157-be42-4555-a803-fa1d6de08a3f', + display: 'Determine test kit', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2/name/1e136157-be42-4555-a803-fa1d6de08a3f`, + resourceAlias: 'name', + }, + ], + }, + { + uuid: '33658957-0aaa-436e-be92-2dcadef719c6', + display: 'Determine test kit', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2/name/33658957-0aaa-436e-be92-2dcadef719c6`, + resourceAlias: 'name', + }, + ], + }, + ], + descriptions: [ + { + uuid: 'e6111abc-3edf-4fa3-adfa-e0f2fef2ec61', + display: 'Determine test kit', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2/description/e6111abc-3edf-4fa3-adfa-e0f2fef2ec61`, + resourceAlias: 'description', + }, + ], + }, + ], + mappings: [], + answers: [ + { + uuid: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Yes', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'No', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + ], + setMembers: [], + attributes: [], + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2`, + resourceAlias: 'concept', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/7cf927f8-e734-474f-b71a-1459bb566aa2?v=full`, + resourceAlias: 'concept', + }, + ], + resourceVersion: '2.0', + }, + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/8568fde8-ee92-4e3c-99df-ba8c5678992d`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/8568fde8-ee92-4e3c-99df-ba8c5678992d?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: 'c157d865-21fc-4a78-bd2a-00eb10d21b6b', + display: 'Expiration date: 2020-09-04', + concept: { + uuid: '162502AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + display: 'Expiration date', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/162502AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '866b3ed9-c565-431d-a56b-5e1dc5cd0fbc', + display: 'MAXGD - janeffer janeffer janeffer', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/866b3ed9-c565-431d-a56b-5e1dc5cd0fbc`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2019-10-02T10:13:17.000+0300', + accessionNumber: null, + obsGroup: { + uuid: 'abaa7121-74f2-4d51-abe0-6daeb5d6f9e4', + display: 'Test laboratory number construct: NEGATIVE, Determine test kit, 2020-09-04, 98289K100', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/abaa7121-74f2-4d51-abe0-6daeb5d6f9e4`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'f06c0024-f941-4c6b-8358-69290c012e94', + display: 'Baringo County Referral Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/f06c0024-f941-4c6b-8358-69290c012e94`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '0c1c70d3-d75f-44bf-be98-ae83d9f4b750', + display: 'HTS 02/10/2019', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/0c1c70d3-d75f-44bf-be98-ae83d9f4b750`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: '2020-09-04T00:00:00.000+0300', + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/c157d865-21fc-4a78-bd2a-00eb10d21b6b`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/c157d865-21fc-4a78-bd2a-00eb10d21b6b?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + { + uuid: '3ad65540-61db-4c20-98bd-aa6ea1ab7f83', + display: 'Test kit lot number: 98289K100', + concept: { + uuid: '3d4f9e8e-46cc-4024-a1c4-d0167f2c84a4', + display: 'Test kit lot number', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/concept/3d4f9e8e-46cc-4024-a1c4-d0167f2c84a4`, + resourceAlias: 'concept', + }, + ], + }, + person: { + uuid: '866b3ed9-c565-431d-a56b-5e1dc5cd0fbc', + display: 'MAXGD - janeffer janeffer janeffer', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/patient/866b3ed9-c565-431d-a56b-5e1dc5cd0fbc`, + resourceAlias: 'patient', + }, + ], + }, + obsDatetime: '2019-10-02T10:13:17.000+0300', + accessionNumber: null, + obsGroup: { + uuid: 'abaa7121-74f2-4d51-abe0-6daeb5d6f9e4', + display: 'Test laboratory number construct: NEGATIVE, Determine test kit, 2020-09-04, 98289K100', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/abaa7121-74f2-4d51-abe0-6daeb5d6f9e4`, + resourceAlias: 'obs', + }, + ], + }, + valueCodedName: null, + groupMembers: null, + comment: null, + location: { + uuid: 'f06c0024-f941-4c6b-8358-69290c012e94', + display: 'Baringo County Referral Hospital', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/location/f06c0024-f941-4c6b-8358-69290c012e94`, + resourceAlias: 'location', + }, + ], + }, + order: null, + encounter: { + uuid: '0c1c70d3-d75f-44bf-be98-ae83d9f4b750', + display: 'HTS 02/10/2019', + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/encounter/0c1c70d3-d75f-44bf-be98-ae83d9f4b750`, + resourceAlias: 'encounter', + }, + ], + }, + voided: false, + value: '98289K100', + valueModifier: null, + formFieldPath: null, + formFieldNamespace: null, + status: 'FINAL', + interpretation: null, + links: [ + { + rel: 'self', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/3ad65540-61db-4c20-98bd-aa6ea1ab7f83`, + resourceAlias: 'obs', + }, + { + rel: 'full', + uri: `http://dev.kenyahmis.org/openmrs${restBaseUrl}/obs/3ad65540-61db-4c20-98bd-aa6ea1ab7f83?v=full`, + resourceAlias: 'obs', + }, + ], + resourceVersion: '2.1', + }, + ], + concept: { + uuid: '164410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '140430BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Test laboratory number construct', + }, + }, + value: null, + }, + { + uuid: '836004a5-92c5-41f2-8169-2a723d004bc2', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '91a87033-8f75-4f08-9f15-0d8ae66bd9d9', + name: { + uuid: 'fc9be8b6-a9e0-4dae-957f-f4f2fe55295b', + name: 'Patient disabled', + }, + }, + value: { + uuid: '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'No', + }, + names: [ + { + uuid: '139803BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'نہیں', + }, + { + uuid: '137333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126360BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '108334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '111196BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Нет', + }, + { + uuid: '126357BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Faux', + }, + { + uuid: '106917BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'ኣይትጥቀምን', + }, + { + uuid: '1139BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non', + }, + { + uuid: '126358BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '106308BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Muzima', + }, + { + uuid: '126362BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Falso', + }, + { + uuid: '137334BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'Fo', + }, + { + uuid: '1138BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '126359BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'No', + }, + { + uuid: '127333BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'না', + }, + { + uuid: '126361BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Não', + }, + { + uuid: '126356BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: null, + name: 'False', + }, + ], + }, + }, + { + uuid: 'a765bb77-b910-4704-9690-012782f8a606', + obsDatetime: '2019-10-02T10:13:17.000+0300', + voided: false, + groupMembers: null, + concept: { + uuid: '6096AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '3243BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Discordant couple', + }, + }, + value: { + uuid: '1175AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + name: { + uuid: '1252BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + name: 'Not applicable', + }, + names: [ + { + uuid: '136924BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Non applicable\t', + }, + { + uuid: '136925BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Paka aplike', + }, + { + uuid: '1252BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB', + conceptNameType: 'FULLY_SPECIFIED', + name: 'Not applicable', + }, + ], + }, + }, + ], + testDate: '02-Oct-2019', + htsTestType: 'HTS Initial Form', + testApproach: '--', + testStrategy: 'Provider-initiated HIV testing and counseling', + testEntryPoint: 'PMTCT Program', + htsResult: 'NEGATIVE', + tbScreening: 'No Signs Disease', + }, +]; diff --git a/packages/esm-billing-app/__mocks__/hiv-summary.mock.ts b/packages/esm-billing-app/__mocks__/hiv-summary.mock.ts new file mode 100644 index 0000000..896ecfc --- /dev/null +++ b/packages/esm-billing-app/__mocks__/hiv-summary.mock.ts @@ -0,0 +1,22 @@ +export const hivSummary = { + summary: { + whoStage: 1, + whoStageDate: 1602766530107, + cd4: '3.0', + cd4Date: 1602766530107, + cd4Percent: 'None', + cd4PercentDate: 1602766530107, + ldlValue: 'LDL', + ldlDate: 1602766530107, + }, + lastEncounter: { + startDate: '11-Jan-2019', + endDate: '', + regimenShortDisplay: 'TDF/3TC/DTG', + regimenLine: 'Adult first line', + regimenLongDisplay: 'Tenofovir / Lamivudine / Dolutegravir', + changeReasons: [], + regimenUuid: '9fb85385-b4fb-468c-b7c1-22f75834b4b0', + current: true, + }, +}; diff --git a/packages/esm-billing-app/__mocks__/patient-summary.mock.ts b/packages/esm-billing-app/__mocks__/patient-summary.mock.ts new file mode 100644 index 0000000..22f0886 --- /dev/null +++ b/packages/esm-billing-app/__mocks__/patient-summary.mock.ts @@ -0,0 +1,32 @@ +export const mockPatient = { + uuid: '330c0ec6-0ac7-4b86-9c70-29d76f0ae20a', + patientName: 'John Doe', + reportDate: '06-Aug-2023', + clinicName: 'Example Clinic', + mflCode: '12345', + age: 40, + uniquePatientIdentifier: 'ABC123', + nationalUniquePatientIdentifier: 'XYZ456', + birthDate: '01-Jan-1990', + gender: 'M', + maritalStatus: 'Married', + weight: '70 kg', + height: '180 cm', + bmi: '24.5', + bloodPressure: '120/80 mmHg', + oxygenSaturation: '98%', + respiratoryRate: '16 breaths per minute', + pulseRate: '72 beats per minute', + familyProtection: 'Intrauterine Device (IUD)', + tbScreeningOutcome: 'Negative', + allVlResults: { + value: [ + { vl: '120', vlDate: '01-June-2023' }, + { vl: '150', vlDate: '01-July-2023' }, + ], + }, + allCd4CountResults: [ + { cd4Count: '300', cd4CountDate: '01-June-2023' }, + { cd4Count: '320', cd4CountDate: '01-July-2023' }, + ], +}; diff --git a/packages/esm-billing-app/__mocks__/patient.mock.ts b/packages/esm-billing-app/__mocks__/patient.mock.ts new file mode 100644 index 0000000..c16e934 --- /dev/null +++ b/packages/esm-billing-app/__mocks__/patient.mock.ts @@ -0,0 +1,59 @@ +export const mockPatient = { + resourceType: 'Patient', + id: '8673ee4f-e2ab-4077-ba55-4980f408773e', + extension: [ + { + url: 'http://fhir-es.transcendinsights.com/stu3/StructureDefinition/resource-date-created', + valueDateTime: '2017-01-18T09:42:40+00:00', + }, + { + url: 'https://purl.org/elab/fhir/StructureDefinition/Creator-crew-version1', + valueString: 'daemon', + }, + ], + identifier: [ + { + id: '1f0ad7a1-430f-4397-b571-59ea654a52db', + use: 'secondary', + system: 'Old Identification Number', + type: { text: 'Old Identification Number' }, + value: '100732HE', + }, + { + id: '1f0ad7a1-430f-4397-b571-59ea654a52db', + use: 'usual', + system: 'OpenMRS ID', + type: { text: 'OpenMRS ID' }, + value: '100GEJ', + }, + ], + active: true, + name: [ + { + id: 'efdb246f-4142-4c12-a27a-9be60b9592e9', + use: 'usual', + family: 'Wilson', + given: ['John'], + }, + ], + gender: 'male', + birthDate: '1972-04-04', + deceasedBoolean: false, + address: [ + { + id: '0c244eae-85c8-4cc9-b168-96b51f864e77', + use: 'home', + line: ['Address10351'], + city: 'City0351', + state: 'State0351tested', + postalCode: '60351', + country: 'Country0351', + }, + ], + telecom: [ + { + system: 'Mobile', + value: '+25467388299499', + }, + ], +}; diff --git a/packages/esm-billing-app/__mocks__/program-summary.mock.ts b/packages/esm-billing-app/__mocks__/program-summary.mock.ts new file mode 100644 index 0000000..42794cc --- /dev/null +++ b/packages/esm-billing-app/__mocks__/program-summary.mock.ts @@ -0,0 +1,43 @@ +export const mockProgram = { + HIV: { + ldlValue: '100', + ldlDate: '2023-08-06', + cd4: '500', + cd4Date: '2023-08-07', + cd4Percent: '30', + cd4PercentDate: '2023-08-10', + whoStage: 'Stage 2', + whoStageDate: '2023-08-11', + lastEncDetails: { + regimenShortDisplay: 'Regimen ABC', + startDate: '2023-08-01', + }, + }, + TB: { + tbTreatmentNumber: 'TB-123', + tbDiseaseClassification: 'TB Disease', + tbDiseaseClassificationDate: '2023-08-09', + tbPatientClassification: 'TB Patient', + lastTbEncounter: { + regimenShortDisplay: 'TB Regimen XYZ', + }, + }, + mchMother: { + hivStatus: 'Positive', + hivStatusDate: '2023-08-13', + onHaart: 'Yes', + onHaartDate: '2023-08-14', + }, + mchChild: { + currentProphylaxisUsed: 'Prophylaxis ABC', + currentProphylaxisUsedDate: '2023-08-05', + currentFeedingOption: 'Feeding Option XYZ', + currentFeedingOptionDate: '2023-08-01', + milestonesAttained: 'Milestone 1, Milestone 2', + milestonesAttainedDate: '2023-08-02', + heiOutcome: 'HEI Outcome XYZ', + heiOutcomeDate: '2023-08-20', + hivStatus: 'Negative', + hivStatusDate: '2023-08-21', + }, +}; diff --git a/packages/esm-billing-app/__mocks__/react-i18next.js b/packages/esm-billing-app/__mocks__/react-i18next.js new file mode 100644 index 0000000..389f6c9 --- /dev/null +++ b/packages/esm-billing-app/__mocks__/react-i18next.js @@ -0,0 +1,57 @@ +const React = require('react'); +const reactI18next = require('react-i18next'); + +const hasChildren = (node) => node && (node.children || (node.props && node.props.children)); + +const getChildren = (node) => (node && node.children ? node.children : node.props && node.props.children); + +const renderNodes = (reactNodes) => { + if (typeof reactNodes === 'string') { + return reactNodes; + } + + return Object.keys(reactNodes).map((key, i) => { + const child = reactNodes[key]; + const isElement = React.isValidElement(child); + + if (typeof child === 'string') { + return child; + } + if (hasChildren(child)) { + const inner = renderNodes(getChildren(child)); + return React.cloneElement(child, { ...child.props, key: i }, inner); + } + if (typeof child === 'object' && !isElement) { + return Object.keys(child).reduce((str, childKey) => `${str}${child[childKey]}`, ''); + } + + return child; + }); +}; + +const useMock = [(key) => key, {}]; +useMock.t = (key, defaultValue, options = {}) => { + let translatedString = defaultValue; + Object.keys(options).forEach((key) => { + translatedString = defaultValue.replace(`{{${key}}}`, `${options[key]}`); + }); + + return translatedString; +}; + +useMock.i18n = { language: 'en_US' }; + +module.exports = { + // this mock makes sure any components using the translate HoC receive the t function as a prop + Trans: ({ children }) => renderNodes(children), + Translation: ({ children }) => children((k) => k, { i18n: {} }), + useTranslation: () => useMock, + + // mock if needed + I18nextProvider: reactI18next.I18nextProvider, + initReactI18next: reactI18next.initReactI18next, + setDefaults: reactI18next.setDefaults, + getDefaults: reactI18next.getDefaults, + setI18n: reactI18next.setI18n, + getI18n: reactI18next.getI18n, +}; diff --git a/packages/esm-billing-app/__mocks__/visit.mock.ts b/packages/esm-billing-app/__mocks__/visit.mock.ts deleted file mode 100644 index 1d1b0e8..0000000 --- a/packages/esm-billing-app/__mocks__/visit.mock.ts +++ /dev/null @@ -1,151 +0,0 @@ -export const mockCurrentVisit = { - uuid: 'ee527f74-7373-4494-98bc-002c979971d1', - encounters: [], - patient: { uuid: '0b25b92a-add3-4d52-8491-778bec556e02' }, - visitType: { uuid: '3371a4d4-f66f-4454-a86d-92c7b3da990c', name: 'Outpatient', display: 'Outpatient' }, - attributes: [ - { - uuid: 'e1522ecb-d027-4c30-aa25-38698ba18020', - display: 'Source form: 13', - attributeType: { - name: 'Source form', - datatypeClassname: 'org.openmrs.module.kenyaemr.datatype.FormDatatype', - uuid: '8bfab185-6947-4958-b7ab-dfafae1a3e3d', - }, - value: { - uuid: '23b4ebbd-29ad-455e-be0e-04aa6bc30798', - display: 'MOH 257 Visit Summary', - name: 'MOH 257 Visit Summary', - description: null, - encounterType: { - uuid: 'a0034eee-1940-4e35-847f-97537a35d05e', - display: 'HIV Consultation', - }, - version: '1', - build: null, - published: true, - formFields: [], - retired: false, - resourceVersion: '1.9', - }, - }, - { - uuid: '5dbb093d-b377-4684-9583-05074ae7187a', - display: 'Payment Method: 28989582-e8c3-46b0-96d0-c249cb06d5c6', - attributeType: { - name: 'Payment Method', - datatypeClassname: 'org.openmrs.customdatatype.datatype.FreeTextDatatype', - uuid: 'e6cb0c3b-04b0-4117-9bc6-ce24adbda802', - }, - value: '28989582-e8c3-46b0-96d0-c249cb06d5c6', - }, - { - uuid: '85abc096-8524-4c2e-863c-b44c99c144f7', - display: 'Patient Type: false', - attributeType: { - name: 'Patient Type', - datatypeClassname: 'org.openmrs.customdatatype.datatype.FreeTextDatatype', - uuid: '3b9dfac8-9e4d-11ee-8c90-0242ac120002', - }, - value: 'false', - }, - { - uuid: '7eb402bb-2bf8-43b7-91aa-ee3f5c753de1', - display: 'Visit queue number: CLI-090', - attributeType: { - name: 'Visit queue number', - datatypeClassname: 'org.openmrs.customdatatype.datatype.FreeTextDatatype', - uuid: 'c61ce16f-272a-41e7-9924-4c555d0932c5', - }, - value: 'CLI-090', - }, - ], - location: { - uuid: '233de33e-2778-4f9a-a398-fa09da9daa14', - name: 'Wamagana Health Centre', - display: 'Wamagana Health Centre', - }, - startDatetime: '2024-05-29T15:19:00.000+0300', - stopDatetime: '', -}; - -export const mockBills = [ - { - id: 1888, - uuid: '3b784fa7-c124-4710-9152-cad3dbaa19e8', - patientName: ' Test Unit patient', - identifier: 'MGTKYE ', - patientUuid: '0b25b92a-add3-4d52-8491-778bec556e02', - status: 'PENDING', - receiptNumber: '1916-6', - cashier: { - uuid: '693acc9b-734f-488d-b6d2-60368d02cec0', - display: '23797304 - Test Patient', - }, - cashPointUuid: '54065383-b4d4-42d2-af4d-d250a1fd2590', - cashPointName: 'OPD Cash Point', - cashPointLocation: 'Moi Teaching Refferal Hospital', - dateCreated: '29 — May — 2024', - lineItems: [ - { - uuid: '528c3411-b3b8-41dc-bf88-174b4adc1b5b', - display: 'BillLineItem', - voided: false, - voidReason: null, - item: '', - billableService: '3f5d0684-a280-477e-a67b-2a956a1f6dca:Registration Revist', - quantity: 1, - price: 50, - priceName: 'Default', - priceUuid: '', - lineItemOrder: 0, - paymentStatus: 'PENDING', - order: null, - resourceVersion: '1.8', - }, - ], - billingService: '3f5d0684-a280-477e-a67b-2a956a1f6dca:Registration Revist', - payments: [], - display: '1916-6', - totalAmount: 50, - }, - { - id: 1213, - uuid: '5b633220-9a99-4517-bcdf-c06a7d38dd23', - patientName: ' peter ndungu mairo', - identifier: 'MGTKYE ', - patientUuid: '0b25b92a-add3-4d52-8491-778bec556e02', - status: 'PENDING', - receiptNumber: '1228-6', - cashier: { - uuid: '48b55692-e061-4ffa-b1f2-fd4aaf506224', - display: 'admin - Super User', - }, - cashPointUuid: '54065383-b4d4-42d2-af4d-d250a1fd2590', - cashPointName: 'OPD Cash Point', - cashPointLocation: 'Moi Teaching Refferal Hospital', - dateCreated: '15 — May — 2024', - lineItems: [ - { - uuid: '16cc8b90-f2d4-4907-a3d5-0f57486e5dcf', - display: 'BillLineItem', - voided: false, - voidReason: null, - item: '', - billableService: '3f5d0684-a280-477e-a67b-2a956a1f6dca:Registration Revist', - quantity: 1, - price: 50, - priceName: 'Default', - priceUuid: '', - lineItemOrder: 0, - paymentStatus: 'PENDING', - order: null, - resourceVersion: '1.8', - }, - ], - billingService: '3f5d0684-a280-477e-a67b-2a956a1f6dca:Registration Revist', - payments: [], - display: '1228-6', - totalAmount: 50, - }, -]; diff --git a/packages/esm-billing-app/e2e/README.md b/packages/esm-billing-app/e2e/README.md new file mode 100644 index 0000000..6dc4986 --- /dev/null +++ b/packages/esm-billing-app/e2e/README.md @@ -0,0 +1,115 @@ +# E2E Tests + +This directory contains an E2E test suite using the [Playwright](https://playwright.dev) +framework. + +## Getting Started + +Please ensure that you have followed the basic installation guide in the +[root README](../README.md). +Once everything is set up, make sure the dev server is running by using: + +```sh +yarn start --sources 'packages/esm-*-app/' +``` +Then, in a separate terminal, run: + +```sh +yarn test-e2e --headed +``` + +By default, the test suite will run against the http://localhost:8080. +You can override this by exporting `E2E_BASE_URL` environment variables beforehand: + +```sh +# Ex: Set the server URL to dev3: +export E2E_BASE_URL=https://dev3.openmrs.org/openmrs + +# Run all e2e tests: +yarn test-e2e --headed +``` +To run a specific test by title: +```sh +yarn test-e2e --headed -g "title of the test" +``` +Check [this documentation](https://playwright.dev/docs/running-tests#command-line) for more running options. + +It is also highly recommended to install the companion VS Code extension: +https://playwright.dev/docs/getting-started-vscode + + +## Writing New Tests + +In general, it is recommended to read through the official [Playwright docs](https://playwright.dev/docs/intro) +before writing new test cases. The project uses the official Playwright test runner and, +generally, follows a very simple project structure: + +``` +e2e +|__ commands +| ^ Contains "commands" (simple reusable functions) that can be used in test cases/specs, +| e.g. generate a random patient. +|__ core +| ^ Contains code related to the test runner itself, e.g. setting up the custom fixtures. +| You probably need to touch this infrequently. +|__ fixtures +| ^ Contains fixtures (https://playwright.dev/docs/test-fixtures) which are used +| to run reusable setup/teardown tasks +|__ pages +| ^ Contains page object model classes for interacting with the frontend. +| See https://playwright.dev/docs/test-pom for details. +|__ specs +| ^ Contains the actual test cases/specs. New tests should be placed in this folder. +|__ support + ^ Contains support files that requires to run e2e tests, e.g. docker compose files. +``` + +When you want to write a new test case, start by creating a new spec in `./specs`. +Depending on what you want to achieve, you might want to create new fixtures and/or +page object models. To see examples, have a look at the existing code to see how these +different concepts play together. + +## Open reports from GitHub Actions / Bamboo + +To download the report from the GitHub action/Bamboo plan, follow these steps: + +1. Go to the artifact section of the action/plan and locate the report file. +2. Download the report file and unzip it using a tool of your choice. +3. Open the index.html file in a web browser to view the report. + +The report will show you a full summary of your tests, including information on which +tests passed, failed, were skipped, or were flaky. You can filter the report by browser +and explore the details of individual tests, including any errors or failures, video +recordings, and the steps involved in each test. Simply click on a test to view its details. + +## Debugging Tests + +Refer to [this documentation](https://playwright.dev/docs/debug) on how to debug a test. + +## Configuration + +This is very much underdeveloped/WIP. At the moment, there exists a (git-shared) `example.env` +file which can be used for configuring certain test attributes. This is most likely +about to change in the future. Stay tuned for updates! + + +## Github Action integration +The e2e.yml workflow is made up of two jobs: one for running on pull requests (PRs) and +one for running on commits. + +1. When running on PRs, the workflow will start the dev server, use dev3.openmrs.org as the backend, +and run tests only on chromium. This is done in order to quickly provide feedback to the developer. +The tests are designed to generate their own data and clean up after themselves once they are finished. +This ensures that the tests will have minimum effect from changes made to dev3 by other developers. +In the future, we plan to use a docker container to run the tests in an isolated environment once we +figure out a way to spin up the container within a small amount of time. +2. When running on commits, the workflow will spin up a docker container and run the dev server against +it in order to provide a known and isolated environment. In addition, tests will be run on multiple +browsers (chromium, firefox, and WebKit) to ensure compatibility. + +## Troubleshooting tips + +On MacOS, you might run into the following error: +```browserType.launch: Executable doesn't exist at /Users//Library/Caches/ms-playwright/chromium-1015/chrome-mac/Chromium.app/Contents/MacOS/Chromium``` +In order to fix this, you can attempt to force the browser reinstallation by running: +```PLAYWRIGHT_BROWSERS_PATH=/Users/$USER/Library/Caches/ms-playwright npx playwright install``` diff --git a/packages/esm-billing-app/e2e/core/global-setup.ts b/packages/esm-billing-app/e2e/core/global-setup.ts new file mode 100644 index 0000000..4238f7b --- /dev/null +++ b/packages/esm-billing-app/e2e/core/global-setup.ts @@ -0,0 +1,32 @@ +import { request } from '@playwright/test'; +import * as dotenv from 'dotenv'; + +dotenv.config(); + +/** + * This configuration is to reuse the signed-in state in the tests + * by log in only once using the API and then skip the log in step for all the tests. + * + * https://playwright.dev/docs/auth#reuse-signed-in-state + */ + +async function globalSetup() { + const requestContext = await request.newContext(); + const token = Buffer.from(`${process.env.E2E_USER_ADMIN_USERNAME}:${process.env.E2E_USER_ADMIN_PASSWORD}`).toString( + 'base64', + ); + await requestContext.post(`${process.env.E2E_BASE_URL}/ws/rest/v1/session`, { + data: { + sessionLocation: process.env.E2E_LOGIN_DEFAULT_LOCATION_UUID, + locale: 'en', + }, + headers: { + 'Content-Type': 'application/json', + Authorization: `Basic ${token}`, + }, + }); + await requestContext.storageState({ path: 'e2e/storageState.json' }); + await requestContext.dispose(); +} + +export default globalSetup; diff --git a/packages/esm-billing-app/e2e/core/index.ts b/packages/esm-billing-app/e2e/core/index.ts new file mode 100644 index 0000000..607718c --- /dev/null +++ b/packages/esm-billing-app/e2e/core/index.ts @@ -0,0 +1 @@ +export * from './test'; diff --git a/packages/esm-billing-app/e2e/core/test.ts b/packages/esm-billing-app/e2e/core/test.ts new file mode 100644 index 0000000..dd3e40b --- /dev/null +++ b/packages/esm-billing-app/e2e/core/test.ts @@ -0,0 +1,20 @@ +import { APIRequestContext, Page, test as base } from '@playwright/test'; +import { api } from '../fixtures'; + +// This file sets up our custom test harness using the custom fixtures. +// See https://playwright.dev/docs/test-fixtures#creating-a-fixture for details. +// If a spec intends to use one of the custom fixtures, the special `test` function +// exported from this file must be used instead of the default `test` function +// provided by playwright. + +export interface CustomTestFixtures { + loginAsAdmin: Page; +} + +export interface CustomWorkerFixtures { + api: APIRequestContext; +} + +export const test = base.extend({ + api: [api, { scope: 'worker' }], +}); diff --git a/packages/esm-billing-app/e2e/fixtures/api.ts b/packages/esm-billing-app/e2e/fixtures/api.ts new file mode 100644 index 0000000..5cc1d7d --- /dev/null +++ b/packages/esm-billing-app/e2e/fixtures/api.ts @@ -0,0 +1,27 @@ +import { restBaseUrl } from '@openmrs/esm-framework'; +import { APIRequestContext, PlaywrightWorkerArgs, WorkerFixture } from '@playwright/test'; + +/** + * A fixture which initializes an [`APIRequestContext`](https://playwright.dev/docs/api/class-apirequestcontext) + * that is bound to the configured OpenMRS API server. The context is automatically authenticated + * using the configured admin account. + * + * Use the request context like this: + * ```ts + * test('your test', async ({ api }) => { + * const res = await api.get('patient/1234'); + * await expect(res.ok()).toBeTruthy(); + * }); + * ``` + */ +export const api: WorkerFixture = async ({ playwright }, use) => { + const ctx = await playwright.request.newContext({ + baseURL: `${process.env.E2E_BASE_URL}${restBaseUrl}/`, + httpCredentials: { + username: process.env.E2E_USER_ADMIN_USERNAME, + password: process.env.E2E_USER_ADMIN_PASSWORD, + }, + }); + + await use(ctx); +}; diff --git a/packages/esm-billing-app/e2e/fixtures/index.ts b/packages/esm-billing-app/e2e/fixtures/index.ts new file mode 100644 index 0000000..b1c13e7 --- /dev/null +++ b/packages/esm-billing-app/e2e/fixtures/index.ts @@ -0,0 +1 @@ +export * from './api'; diff --git a/packages/esm-billing-app/e2e/pages/home-page.ts b/packages/esm-billing-app/e2e/pages/home-page.ts new file mode 100644 index 0000000..94aa548 --- /dev/null +++ b/packages/esm-billing-app/e2e/pages/home-page.ts @@ -0,0 +1,9 @@ +import { Page } from '@playwright/test'; + +export class HomePage { + constructor(readonly page: Page) {} + + async goto() { + await this.page.goto(`home`); + } +} diff --git a/packages/esm-billing-app/e2e/pages/index.ts b/packages/esm-billing-app/e2e/pages/index.ts new file mode 100644 index 0000000..5778f2f --- /dev/null +++ b/packages/esm-billing-app/e2e/pages/index.ts @@ -0,0 +1 @@ +export * from './home-page'; diff --git a/packages/esm-billing-app/e2e/specs/sample-test.spec.ts b/packages/esm-billing-app/e2e/specs/sample-test.spec.ts new file mode 100644 index 0000000..725f9df --- /dev/null +++ b/packages/esm-billing-app/e2e/specs/sample-test.spec.ts @@ -0,0 +1,11 @@ +import test from '@playwright/test'; +import { HomePage } from '../pages'; +import { expect } from '@playwright/test'; + +// This test is a sample E2E test. You can delete it. + +test('Sample test', async ({ page }) => { + const homePage = new HomePage(page); + await homePage.goto(); + await expect(homePage.page.getByRole('link', { name: 'Home' })).toBeVisible(); +}); diff --git a/packages/esm-billing-app/e2e/support/github/Dockerfile b/packages/esm-billing-app/e2e/support/github/Dockerfile new file mode 100644 index 0000000..6823603 --- /dev/null +++ b/packages/esm-billing-app/e2e/support/github/Dockerfile @@ -0,0 +1,34 @@ +# syntax=docker/dockerfile:1.3 +FROM --platform=$BUILDPLATFORM node:18-alpine as dev + +ARG APP_SHELL_VERSION=next + +RUN mkdir -p /app +WORKDIR /app + +COPY . . + +RUN npm_config_legacy_peer_deps=true npm install -g openmrs@${APP_SHELL_VERSION:-next} +ARG CACHE_BUST +RUN npm_config_legacy_peer_deps=true openmrs assemble --manifest --mode config --config spa-assemble-config.json --target ./spa + +FROM --platform=$BUILDPLATFORM openmrs/openmrs-reference-application-3-frontend:nightly as frontend +FROM nginx:1.23-alpine + +RUN apk update && \ + apk upgrade && \ + # add more utils for sponge to support our startup script + apk add --no-cache moreutils + +# clear any default files installed by nginx +RUN rm -rf /usr/share/nginx/html/* + +COPY --from=frontend /etc/nginx/nginx.conf /etc/nginx/nginx.conf +# this assumes that NOTHING in the framework is in a subdirectory +COPY --from=frontend /usr/share/nginx/html/* /usr/share/nginx/html/ +COPY --from=frontend /usr/local/bin/startup.sh /usr/local/bin/startup.sh +RUN chmod +x /usr/local/bin/startup.sh + +COPY --from=dev /app/spa/ /usr/share/nginx/html/ + +CMD ["/usr/local/bin/startup.sh"] diff --git a/packages/esm-billing-app/e2e/support/github/docker-compose.yml b/packages/esm-billing-app/e2e/support/github/docker-compose.yml new file mode 100644 index 0000000..6a82976 --- /dev/null +++ b/packages/esm-billing-app/e2e/support/github/docker-compose.yml @@ -0,0 +1,24 @@ +# This docker compose file is used to create a backend environment for the e2e.yml workflow. +version: "3.7" + +services: + gateway: + image: openmrs/openmrs-reference-application-3-gateway:${TAG:-nightly} + ports: + - "8080:80" + + frontend: + build: + context: . + environment: + SPA_PATH: /openmrs/spa + API_URL: /openmrs + + backend: + image: openmrs/openmrs-reference-application-3-backend:nightly-with-data + depends_on: + - db + + # MariaDB + db: + image: openmrs/openmrs-reference-application-3-db:nightly-with-data diff --git a/packages/esm-billing-app/e2e/support/github/run-e2e-docker-env.sh b/packages/esm-billing-app/e2e/support/github/run-e2e-docker-env.sh new file mode 100644 index 0000000..8ea68c5 --- /dev/null +++ b/packages/esm-billing-app/e2e/support/github/run-e2e-docker-env.sh @@ -0,0 +1,49 @@ +#!/usr/bin/env bash -eu + +# get the dir containing the script +script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +# create a temporary working directory +working_dir=$(mktemp -d "${TMPDIR:-/tmp/}openmrs-e2e-frontends.XXXXXXXXXX") +# get a list of all the apps in this workspace +apps=$(yarn workspaces list --json | jq -r 'if ((.location == ".") or (.location | test("form-engine-app")) or (.location | test("-app") | not)) then halt else .name end') +# this array will hold all of the packed app names +app_names=() + +echo "Creating packed archives of apps..." +# for each app +for app in $apps +do + # @openmrs/esm-whatever -> _openmrs_esm_whatever + app_name=$(echo "$app" | tr '[:punct:]' '_'); + # add to our array + app_names+=("$app_name.tgz"); + # run yarn pack for our app and add it to the working directory + yarn workspace "$app" pack -o "$working_dir/$app_name.tgz" >/dev/null; +done; +echo "Created packed app archives" + +echo "Creating dynamic spa-assemble-config.json..." +# dynamically assemble our list of frontend modules, prepending the login app and +# primary navigation apps; apps will all be in the /app directory of the Docker +# container +jq -n \ + --arg apps "$apps" \ + --arg app_names "$(echo ${app_names[@]})" \ + '{"@openmrs/esm-primary-navigation-app": "next", "@openmrs/esm-home-app": "next"} + ( + ($apps | split("\n")) as $apps | ($app_names | split(" ") | map("/app/" + .)) as $app_files + | [$apps, $app_files] + | transpose + | map({"key": .[0], "value": .[1]}) + | from_entries + )' | jq '{"frontendModules": .}' > "$working_dir/spa-assemble-config.json" +echo "Created dynamic spa-assemble-config.json" + +echo "Copying Docker configuration..." +cp "$script_dir/Dockerfile" "$working_dir/Dockerfile" +cp "$script_dir/docker-compose.yml" "$working_dir/docker-compose.yml" + +cd $working_dir +echo "Starting Docker containers..." +# CACHE_BUST to ensure the assemble step is always run +docker compose build --build-arg CACHE_BUST=$(date +%s) frontend +docker compose up -d diff --git a/packages/esm-billing-app/package.json b/packages/esm-billing-app/package.json index 6e89d44..a66bf44 100644 --- a/packages/esm-billing-app/package.json +++ b/packages/esm-billing-app/package.json @@ -1,12 +1,12 @@ { "name": "@sjthc/esm-billing-app", - "version": "1.0.3", + "version": "1.0.4", "description": "Billing frontend module for use in O3", "browser": "dist/sjthc-esm-billing-app.js", "main": "src/index.ts", "source": true, "license": "MPL-2.0", - "homepage": "https://github.com/openmrs/openmrs-esm-billing-app#readme", + "homepage": "https://github.com/IntelliSOFT-Consulting/eHospital3.x-Apps/tree/main/packages/esm-billing-app", "scripts": { "start": "openmrs develop", "analyze": "webpack --mode=production --env.analyze=true", @@ -38,10 +38,10 @@ }, "repository": { "type": "git", - "url": "git+https://github.com/openmrs/openmrs-esm-billing-app#readme" + "url": "git+https://github.com/IntelliSOFT-Consulting/eHospital3.x-Apps/blob/main/packages/esm-billing-app/README.md" }, "bugs": { - "url": "https://github.com/openmrs/openmrs-esm-billing-app/issues" + "url": "https://github.com/IntelliSOFT-Consulting/eHospital3.x-Apps/issues" }, "dependencies": { "@carbon/react": "^1.48.1", diff --git a/packages/esm-billing-app/src/bill-history/bill-history.component.tsx b/packages/esm-billing-app/src/bill-history/bill-history.component.tsx index e3c1991..338dff0 100644 --- a/packages/esm-billing-app/src/bill-history/bill-history.component.tsx +++ b/packages/esm-billing-app/src/bill-history/bill-history.component.tsx @@ -1,29 +1,36 @@ import React from 'react'; import { useTranslation } from 'react-i18next'; import { + Button, + DataTable, DataTableSkeleton, Layer, - DataTable, - TableContainer, + Pagination, Table, - TableHead, - TableHeader, - TableRow, TableBody, TableCell, - Tile, - Pagination, + TableContainer, + TableExpandedRow, TableExpandHeader, TableExpandRow, - TableExpandedRow, - Button, + TableHead, + TableHeader, + TableRow, + Tile, } from '@carbon/react'; -import { Add } from '@carbon/react/icons'; -import { isDesktop, useLayoutType, usePagination, launchWorkspace } from '@openmrs/esm-framework'; -import { EmptyDataIllustration, ErrorState, usePaginationInfo, CardHeader } from '@openmrs/esm-patient-common-lib'; +import { isDesktop, useConfig, useLayoutType, usePagination } from '@openmrs/esm-framework'; +import { + CardHeader, + EmptyDataIllustration, + ErrorState, + launchPatientWorkspace, + usePaginationInfo, +} from '@openmrs/esm-patient-common-lib'; import { useBills } from '../billing.resource'; import InvoiceTable from '../invoice/invoice-table.component'; import styles from './bill-history.scss'; +import { Add } from '@carbon/react/icons'; +import { convertToCurrency } from '../helpers'; interface BillHistoryProps { patientUuid: string; @@ -33,9 +40,10 @@ const BillHistory: React.FC = ({ patientUuid }) => { const { t } = useTranslation(); const { bills, isLoading, error } = useBills(patientUuid); const layout = useLayoutType(); - const [pageSize, setPageSize] = React.useState(10); const responsiveSize = isDesktop(layout) ? 'sm' : 'lg'; - const { paginated, goTo, results, currentPage } = usePagination(bills, pageSize); + const { paginated, goTo, results, currentPage } = usePagination(bills); + const { pageSize, defaultCurrency } = useConfig(); + const [currentPageSize, setCurrentPageSize] = React.useState(pageSize); const { pageSizes } = usePaginationInfo(pageSize, bills?.length, currentPage, results?.length); const headerData = [ @@ -58,15 +66,12 @@ const BillHistory: React.FC = ({ patientUuid }) => { ]; const setBilledItems = (bill) => - bill.lineItems.reduce( - (acc, item) => acc + (acc ? ' & ' : '') + (item.billableService?.split(':')[1] || item.item?.split(':')[1] || ''), - '', - ); + bill?.lineItems?.reduce((acc, item) => acc + (acc ? ' & ' : '') + (item?.billableService || item?.item || ''), ''); const rowData = results?.map((bill) => ({ id: bill.uuid, uuid: bill.uuid, - billTotal: bill.totalAmount, + billTotal: convertToCurrency(bill?.totalAmount, defaultCurrency), visitTime: bill.dateCreated, identifier: bill.identifier, billedItems: setBilledItems(bill), @@ -92,32 +97,24 @@ const BillHistory: React.FC = ({ patientUuid }) => { if (bills.length === 0) { return ( - <> - - <> - - - -
- -
-

There are no bills to display.

- -
-
- + + +
+ +
+

There are no bills to display.

+ +
+
); } return ( -
- - @@ -156,7 +153,9 @@ const BillHistory: React.FC = ({ patientUuid }) => { {row.cells.map((cell) => ( - {cell.value} + + {cell.value} + ))} {row.isExpanded ? ( @@ -181,7 +180,7 @@ const BillHistory: React.FC = ({ patientUuid }) => { forwardText={t('nextPage', 'Next page')} backwardText={t('previousPage', 'Previous page')} page={currentPage} - pageSize={pageSize} + pageSize={currentPageSize} pageSizes={pageSizes} totalItems={bills.length} className={styles.pagination} @@ -190,12 +189,12 @@ const BillHistory: React.FC = ({ patientUuid }) => { if (newPage !== currentPage) { goTo(newPage); } - setPageSize(pageSize); + setCurrentPageSize(pageSize); }} /> )}
- + ); }; diff --git a/packages/esm-billing-app/src/bill-history/bill-history.scss b/packages/esm-billing-app/src/bill-history/bill-history.scss index 786f905..84e127f 100644 --- a/packages/esm-billing-app/src/bill-history/bill-history.scss +++ b/packages/esm-billing-app/src/bill-history/bill-history.scss @@ -6,6 +6,11 @@ margin: 2rem 0; } +.emptyStateContainer, +.loaderContainer { + @extend .container; +} + .billHistoryContainer { background-color: $ui-02; border: 1px solid $ui-03; @@ -112,7 +117,7 @@ .tile { text-align: center; - // border: 1px solid $ui-03; + border: 1px solid $ui-03; } .filterEmptyState { @@ -140,26 +145,22 @@ } .table { - tr[data-child-row] td { - padding-left: 2rem !important; + width: 100%; + table-layout: fixed; // This helps with uniform column sizing + border-collapse: collapse; + + td:has(:global(.billingTable)) { + td{ + padding: 0.375rem 2rem 0.4375rem !important; + white-space:normal; + text-overflow: unset; + } + } + :global(tr.cds--parent-row.cds--expandable-row + tr[data-child-row]) td { + padding-left: 1rem; } } -.billingHeading { - position: relative; - max-width: 400px; - text-align: 'left'; - margin-bottom: 40px; -} - -.billingHeading::after { - position: absolute; - bottom: -10px; - width: 50px; - height: 5px; - background: green; - content: ''; - display: block; - left: 6%; - transform: translatex(-50%); -} +.tableCells { + white-space: wrap !important; +} \ No newline at end of file diff --git a/packages/esm-billing-app/src/bill-history/bill-history.test.tsx b/packages/esm-billing-app/src/bill-history/bill-history.test.tsx index 5395bf0..cd886ac 100644 --- a/packages/esm-billing-app/src/bill-history/bill-history.test.tsx +++ b/packages/esm-billing-app/src/bill-history/bill-history.test.tsx @@ -1,8 +1,8 @@ import React from 'react'; +import userEvent from '@testing-library/user-event'; import { render, screen } from '@testing-library/react'; -import BillHistory from './bill-history.component'; import { useBills } from '../billing.resource'; -import userEvent from '@testing-library/user-event'; +import BillHistory from './bill-history.component'; const testProps = { patientUuid: 'some-uuid', diff --git a/packages/esm-billing-app/src/bill-item-actions/bill-item-actions.scss b/packages/esm-billing-app/src/bill-item-actions/bill-item-actions.scss new file mode 100644 index 0000000..05c6cba --- /dev/null +++ b/packages/esm-billing-app/src/bill-item-actions/bill-item-actions.scss @@ -0,0 +1,26 @@ +@use '@carbon/styles/scss/spacing'; +@use '@carbon/styles/scss/type'; +@use '@carbon/colors'; + +.section { + margin: spacing.$spacing-03; +} + +.sectionTitle { + @include type.type-style('heading-compact-02'); + color: colors.$gray-70; + margin-bottom: spacing.$spacing-04; +} + +.modalBody { + padding-bottom: spacing.$spacing-05; +} + +.label { + @include type.type-style('heading-compact-01'); + margin-bottom: spacing.$spacing-05; +} + +.controlField { + margin-bottom: spacing.$spacing-05; +} \ No newline at end of file diff --git a/packages/esm-billing-app/src/bill-item-actions/edit-bill-item.component.tsx b/packages/esm-billing-app/src/bill-item-actions/edit-bill-item.component.tsx new file mode 100644 index 0000000..cd91af6 --- /dev/null +++ b/packages/esm-billing-app/src/bill-item-actions/edit-bill-item.component.tsx @@ -0,0 +1,214 @@ +import React, { useEffect, useMemo, useState } from 'react'; +import { Button, ModalBody, ModalFooter, ModalHeader, Form, InlineLoading } from '@carbon/react'; +import { useTranslation } from 'react-i18next'; +import { showSnackbar } from '@openmrs/esm-framework'; +import { Controller, type FieldErrors, useForm } from 'react-hook-form'; +import { z } from 'zod'; +import { zodResolver } from '@hookform/resolvers/zod'; +import { type LineItem, type MappedBill } from '../types'; +import styles from './bill-item-actions.scss'; +import { updateBillItems } from '../billing.resource'; +import { mutate } from 'swr'; +import { apiBasePath } from '../constants'; +import { Column } from '@carbon/react'; +import { InlineNotification } from '@carbon/react'; +import { getBillableServiceUuid } from '../invoice/payments/utils'; +import { useBillableServices } from '../billable-services/billable-service.resource'; +import { NumberInput } from '@carbon/react'; +import { TextInput } from '@carbon/react'; + +interface BillLineItemProps { + bill: MappedBill; + item: LineItem; + closeModal: () => void; +} + +const ChangeStatus: React.FC = ({ bill, item, closeModal }) => { + const { t } = useTranslation(); + const [showErrorNotification, setShowErrorNotification] = useState(false); + const [total, setTotal] = useState(0); + const { billableServices } = useBillableServices(); + + const schema = useMemo( + () => + z.object({ + quantity: z.string({ required_error: t('quantityRequired', 'Quantity is required') }), + price: z.string({ required_error: t('priceIsRequired', 'Price is required') }), + }), + [], + ); + + type BillLineItemForm = z.infer; + + const onError = (errors: FieldErrors) => { + if (errors) { + setShowErrorNotification(true); + } + }; + + const { + control, + handleSubmit, + formState: { isSubmitting, errors, isDirty }, + watch, + } = useForm({ + defaultValues: { + quantity: item.quantity.toString(), + price: item.price.toString(), + }, + resolver: zodResolver(schema), + }); + + const quantity = watch('quantity'); + const price = watch('price'); + + useEffect(() => { + const newTotal = parseInt(quantity) * parseInt(price); + setTotal(newTotal); + }, [quantity, price]); + + const onSubmit = (data: BillLineItemForm) => { + const url = `${apiBasePath}bill`; + + const newItem = { + ...item, + quantity: parseInt(data.quantity), + price: parseInt(data?.price), + billableService: getBillableServiceUuid(billableServices, item.billableService), + item: item?.item, + }; + + const previousLineitems = bill?.lineItems + .filter((currItem) => currItem.uuid !== item?.uuid) + .map((currItem) => ({ + ...currItem, + billableService: getBillableServiceUuid(billableServices, item.billableService), + })); + const updatedLineItems = previousLineitems.concat(newItem); + + const payload = { + cashPoint: bill.cashPointUuid, + cashier: bill.cashier.uuid, + lineItems: updatedLineItems, + patient: bill.patientUuid, + status: bill.status, + uuid: bill.uuid, + }; + updateBillItems(payload).then( + (res) => { + mutate((key) => typeof key === 'string' && key.startsWith(url), undefined, { revalidate: true }); + showSnackbar({ + title: t('billItems', 'Save Bill'), + subtitle: 'Bill processing has been successful', + kind: 'success', + timeoutInMs: 3000, + }); + closeModal(); + }, + (error) => { + showSnackbar({ title: 'Bill processing error', kind: 'error', subtitle: error?.message }); + }, + ); + }; + + if (Object.keys(bill)?.length === 0) { + return ; + } + + if (Object.keys(bill)?.length > 0) { + return ( +
+
+ + +
+
+ {bill?.patientName}   ·  {bill?.cashPointName}   ·  {bill?.receiptNumber}  +
+
+
+

+ {t('item', 'Item')} : {item?.billableService ? item?.billableService : item?.item} +

+

+ {t('currentPrice', 'Current price')} : {item?.price} +

+

+ {t('status', 'status')} : {item?.paymentStatus} +

+ ( + + )} + /> + + ( + + )} + /> + +

+ {t('total', 'Total')} : {total}{' '} +

+ + {showErrorNotification && ( + + setShowErrorNotification(false)} + /> + + )} +
+
+ + + + + +
+ ); + } +}; + +export default ChangeStatus; diff --git a/packages/esm-billing-app/src/billable-services-admin-card-link.component.test.tsx b/packages/esm-billing-app/src/billable-services-admin-card-link.component.test.tsx index b64db9e..f92b00a 100644 --- a/packages/esm-billing-app/src/billable-services-admin-card-link.component.test.tsx +++ b/packages/esm-billing-app/src/billable-services-admin-card-link.component.test.tsx @@ -8,11 +8,11 @@ describe('BillableServicesCardLink', () => { const manageBillableServicesText = screen.getByText('Manage billable services'); expect(manageBillableServicesText).toHaveClass('heading'); - const billableText = screen.getByText('Billable Services'); - expect(billableText).toHaveClass('content'); + const billiableText = screen.getByText('Billable Services'); + expect(billiableText).toHaveClass('content'); - const billableServiceLink = screen.getByRole('link', { name: /Billable Services/i }); - expect(billableServiceLink).toHaveAttribute('href', '/spa/billable-services'); + const billiableServiceLink = screen.getByRole('link', { name: /Billable Services/i }); + expect(billiableServiceLink).toHaveAttribute('href', '/spa/billable-services'); }); }); diff --git a/packages/esm-billing-app/src/billable-services-admin-card-link.component.tsx b/packages/esm-billing-app/src/billable-services-admin-card-link.component.tsx index b385dd3..830e562 100644 --- a/packages/esm-billing-app/src/billable-services-admin-card-link.component.tsx +++ b/packages/esm-billing-app/src/billable-services-admin-card-link.component.tsx @@ -6,6 +6,7 @@ import { ArrowRight } from '@carbon/react/icons'; const BillableServicesCardLink: React.FC = () => { const { t } = useTranslation(); const header = t('manageBillableServices', 'Manage billable services'); + return ( diff --git a/packages/esm-billing-app/src/billable-services/bill-waiver/bill-selection.component.tsx b/packages/esm-billing-app/src/billable-services/bill-waiver/bill-selection.component.tsx index 2cc2598..69fbcae 100644 --- a/packages/esm-billing-app/src/billable-services/bill-waiver/bill-selection.component.tsx +++ b/packages/esm-billing-app/src/billable-services/bill-waiver/bill-selection.component.tsx @@ -1,18 +1,19 @@ import React from 'react'; import { + Checkbox, + Layer, + StructuredListBody, + StructuredListCell, StructuredListHead, StructuredListRow, - StructuredListCell, - StructuredListBody, StructuredListWrapper, - Layer, - Checkbox, } from '@carbon/react'; import { useTranslation } from 'react-i18next'; -import { convertToCurrency, extractString } from '../../helpers'; -import { MappedBill, LineItem } from '../../types'; -import styles from './bill-waiver.scss'; +import { convertToCurrency } from '../../helpers'; +import { type MappedBill, type LineItem } from '../../types'; import BillWaiverForm from './bill-waiver-form.component'; +import styles from './bill-waiver.scss'; +import { useConfig } from '@openmrs/esm-framework'; const PatientBillsSelections: React.FC<{ bills: MappedBill; setPatientUuid: (patientUuid) => void }> = ({ bills, @@ -20,9 +21,10 @@ const PatientBillsSelections: React.FC<{ bills: MappedBill; setPatientUuid: (pat }) => { const { t } = useTranslation(); const [selectedBills, setSelectedBills] = React.useState>([]); + const { defaultCurrency } = useConfig(); const checkBoxLabel = (lineItem) => { - return `${lineItem.item === '' ? lineItem.billableService : lineItem.item} ${convertToCurrency(lineItem.price)}`; + return `${lineItem.item === '' ? lineItem.billableService : lineItem.item} ${convertToCurrency(lineItem.price, defaultCurrency)}`; }; const handleOnCheckBoxChange = (event, { checked, id }) => { @@ -48,12 +50,12 @@ const PatientBillsSelections: React.FC<{ bills: MappedBill; setPatientUuid: (pat {bills?.lineItems.map((lineItem) => ( + {lineItem.item === '' ? lineItem.billableService : lineItem.item} + {lineItem.quantity} + {convertToCurrency(lineItem.price, defaultCurrency)} - {lineItem.item === '' ? extractString(lineItem.billableService) : extractString(lineItem.item)} + {convertToCurrency(lineItem.price * lineItem.quantity, defaultCurrency)} - {lineItem.quantity} - {convertToCurrency(lineItem.price)} - {convertToCurrency(lineItem.price * lineItem.quantity)} = ({ bill, lineItems, setPat const [waiverAmount, setWaiverAmount] = React.useState(0); const { lineItems: billableLineItems, isLoading: isLoadingLineItems, error: lineError } = useBillableItems(); const totalAmount = lineItems.reduce((acc, curr) => acc + curr.price * curr.quantity, 0); - const { paymentModes } = usePaymentMethods(); + const { defaultCurrency } = useConfig(); + if (lineItems?.length === 0) { return null; } @@ -34,7 +36,6 @@ const BillWaiverForm: React.FC = ({ bill, lineItems, setPat totalAmount, lineItems, billableLineItems, - paymentModes, ); processBillPayment(waiverEndPointPayload, bill.uuid).then( @@ -47,7 +48,7 @@ const BillWaiverForm: React.FC = ({ bill, lineItems, setPat isLowContrast: true, }); setPatientUuid(''); - mutate((key) => typeof key === 'string' && key.startsWith('/ws/rest/v1/cashier/bill?v=full'), undefined, { + mutate((key) => typeof key === 'string' && key.startsWith(`${apiBasePath}bill?v=full`), undefined, { revalidate: true, }); }, @@ -78,7 +79,7 @@ const BillWaiverForm: React.FC = ({ bill, lineItems, setPat
-

{convertToCurrency(totalAmount)}

+

{convertToCurrency(totalAmount, defaultCurrency)}

diff --git a/packages/esm-billing-app/src/billable-services/bill-waiver/bill-waiver.component.tsx b/packages/esm-billing-app/src/billable-services/bill-waiver/bill-waiver.component.tsx index ec8b2d1..099f5f0 100644 --- a/packages/esm-billing-app/src/billable-services/bill-waiver/bill-waiver.component.tsx +++ b/packages/esm-billing-app/src/billable-services/bill-waiver/bill-waiver.component.tsx @@ -1,16 +1,15 @@ -import React from 'react'; +import React, { useState } from 'react'; import { ExtensionSlot, UserHasAccess } from '@openmrs/esm-framework'; import PatientBills from './patient-bills.component'; -import styles from './bill-waiver.scss'; -import BillWaiverForm from './bill-waiver-form.component'; import { useBills } from '../../billing.resource'; +import styles from './bill-waiver.scss'; type BillWaiverProps = {}; const BillWaiver: React.FC = () => { - const [patientUuid, setPatientUuid] = React.useState(''); + const [patientUuid, setPatientUuid] = useState(''); const { bills } = useBills(patientUuid); - const filterBills = bills.filter((bill) => bill.status !== 'PAID' && patientUuid === bill.patientUuid) ?? []; + const filterBills = bills.filter((bill) => bill?.status !== 'PAID' && patientUuid === bill.patientUuid) ?? []; return (
diff --git a/packages/esm-billing-app/src/billable-services/bill-waiver/patient-bills.component.tsx b/packages/esm-billing-app/src/billable-services/bill-waiver/patient-bills.component.tsx index f0fd2eb..3179220 100644 --- a/packages/esm-billing-app/src/billable-services/bill-waiver/patient-bills.component.tsx +++ b/packages/esm-billing-app/src/billable-services/bill-waiver/patient-bills.component.tsx @@ -1,26 +1,26 @@ import React from 'react'; -import { useBills } from '../../billing.resource'; import { - Layer, DataTable, - TableContainer, + Layer, Table, - TableHead, - TableRow, - TableExpandHeader, - TableHeader, TableBody, - TableExpandRow, TableCell, + TableContainer, TableExpandedRow, + TableExpandHeader, + TableExpandRow, + TableHead, + TableHeader, + TableRow, Tile, } from '@carbon/react'; -import { convertToCurrency, extractString } from '../../helpers'; import { useTranslation } from 'react-i18next'; import { EmptyDataIllustration } from '@openmrs/esm-patient-common-lib'; +import { type MappedBill } from '../../types'; +import { convertToCurrency } from '../../helpers'; import PatientBillsSelections from './bill-selection.component'; -import { MappedBill } from '../../types'; import styles from '../../bills-table/bills-table.scss'; +import { useConfig } from '@openmrs/esm-framework'; type PatientBillsProps = { patientUuid: string; @@ -30,6 +30,7 @@ type PatientBillsProps = { const PatientBills: React.FC = ({ patientUuid, bills, setPatientUuid }) => { const { t } = useTranslation(); + const { defaultCurrency } = useConfig(); if (!patientUuid) { return; @@ -44,8 +45,8 @@ const PatientBills: React.FC = ({ patientUuid, bills, setPati const tableRows = bills.map((bill) => ({ id: `${bill.uuid}`, date: bill.dateCreated, - billableService: extractString(bill.billingService), - totalAmount: convertToCurrency(bill.totalAmount), + billableService: bill.billingService, + totalAmount: convertToCurrency(bill?.totalAmount, defaultCurrency), })); if (bills.length === 0 && patientUuid !== '') { diff --git a/packages/esm-billing-app/src/billable-services/bill-waiver/utils.ts b/packages/esm-billing-app/src/billable-services/bill-waiver/utils.ts index 54805c9..aa43f3d 100644 --- a/packages/esm-billing-app/src/billable-services/bill-waiver/utils.ts +++ b/packages/esm-billing-app/src/billable-services/bill-waiver/utils.ts @@ -1,5 +1,7 @@ -import { OpenmrsResource } from '@openmrs/esm-framework'; -import { LineItem, MappedBill } from '../../types'; +import { type OpenmrsResource } from '@openmrs/esm-framework'; +import type { LineItem, MappedBill } from '../../types'; + +const WAIVER_UUID = 'eb6173cb-9678-4614-bbe1-0ccf7ed9d1d4'; export const createBillWaiverPayload = ( bill: MappedBill, @@ -7,7 +9,6 @@ export const createBillWaiverPayload = ( totalAmount: number, lineItems: Array, billableLineItems: Array, - paymentModes: Array, ) => { const { cashier } = bill; @@ -15,13 +16,12 @@ export const createBillWaiverPayload = ( amount: parseFloat(totalAmount.toFixed(2)), amountTendered: parseFloat(Number(amountWaived).toFixed(2)), attributes: [], - instanceType: paymentModes?.find((mode) => mode.name.toLowerCase().includes('waiver'))?.uuid, + instanceType: WAIVER_UUID, }; const processedLineItems = lineItems.map((lineItem) => ({ ...lineItem, - billableService: processBillItem(lineItem), - item: processBillItem(lineItem), + billableService: findBillableServiceUuid(billableLineItems, lineItem), paymentStatus: 'PAID', })); @@ -36,4 +36,6 @@ export const createBillWaiverPayload = ( return processedPayment; }; -const processBillItem = (item) => (item.item || item.billableService)?.split(':')[0]; +const findBillableServiceUuid = (billableService: Array, lineItems: LineItem) => { + return billableService.find((service) => service.name === lineItems.billableService)?.uuid ?? null; +}; diff --git a/packages/esm-billing-app/src/billable-services/billable-service.resource.ts b/packages/esm-billing-app/src/billable-services/billable-service.resource.ts new file mode 100644 index 0000000..6ff99b2 --- /dev/null +++ b/packages/esm-billing-app/src/billable-services/billable-service.resource.ts @@ -0,0 +1,74 @@ +import useSWR from 'swr'; +import { type OpenmrsResource, openmrsFetch, restBaseUrl, useConfig } from '@openmrs/esm-framework'; +import { type ServiceConcept } from '../types'; +import { apiBasePath } from '../constants'; + +type ResponseObject = { + results: Array; +}; + +export const useBillableServices = () => { + const url = `${apiBasePath}billableService?v=custom:(uuid,name,shortName,serviceStatus,serviceType:(display),servicePrices:(uuid,name,price))`; + + const { data, isLoading, isValidating, error, mutate } = useSWR<{ data: ResponseObject }>(url, openmrsFetch); + + return { + billableServices: data?.data.results ?? [], + isLoading, + isValidating, + error, + mutate, + }; +}; + +export function useServiceTypes() { + const config = useConfig(); + const serviceConceptUuid = config.serviceTypes.billableService; + const url = `${restBaseUrl}/concept/${serviceConceptUuid}?v=custom:(setMembers:(uuid,display))`; + + const { data, error, isLoading } = useSWR<{ data }>(url, openmrsFetch); + + return { + serviceTypes: data?.data.setMembers ?? [], + error, + isLoading, + }; +} + +export const usePaymentModes = () => { + const url = `${apiBasePath}paymentMode`; + + const { data, error, isLoading } = useSWR<{ data: ResponseObject }>(url, openmrsFetch); + + return { + paymentModes: data?.data.results ?? [], + error, + isLoading, + }; +}; + +export const createBillableSerice = (payload: any) => { + const url = `${apiBasePath}api/billable-service`; + return openmrsFetch(url, { + method: 'POST', + body: payload, + headers: { + 'Content-Type': 'application/json', + }, + }); +}; + +export function useConceptsSearch(conceptToLookup: string) { + const conditionsSearchUrl = `${restBaseUrl}/conceptsearch?q=${conceptToLookup}`; + + const { data, error, isLoading } = useSWR<{ data: { results: Array } }, Error>( + conceptToLookup ? conditionsSearchUrl : null, + openmrsFetch, + ); + + return { + searchResults: data?.data?.results ?? [], + error: error, + isSearching: isLoading, + }; +} diff --git a/packages/esm-billing-app/src/billable-services/billable-service.resource.tsx b/packages/esm-billing-app/src/billable-services/billable-service.resource.tsx deleted file mode 100644 index ce0f9f5..0000000 --- a/packages/esm-billing-app/src/billable-services/billable-service.resource.tsx +++ /dev/null @@ -1,51 +0,0 @@ -import { OpenmrsResource, openmrsFetch } from '@openmrs/esm-framework'; -import useSWR from 'swr'; -import { ServiceConcept } from '../types'; - -type ResponseObject = { - results: Array; -}; - -export const useBillableServices = () => { - const url = `/ws/rest/v1/cashier/billableService?v=custom:(uuid,name,shortName,serviceStatus,serviceType:(display),servicePrices:(uuid,name,price))`; - const { data, isLoading, isValidating, error, mutate } = useSWR<{ data: ResponseObject }>(url, openmrsFetch, {}); - return { billableServices: data?.data.results ?? [], isLoading, isValidating, error, mutate }; -}; - -export function useServiceTypes() { - const url = `/ws/rest/v1/concept/d7bd4cc0-90b1-4f22-90f2-ab7fde936727?v=custom:(setMembers:(uuid,display))`; - const { data, error, isLoading } = useSWR<{ data: any }>(url, openmrsFetch, {}); - return { serviceTypes: data?.data.setMembers ?? [], error, isLoading }; -} - -export const usePaymentModes = () => { - const url = `/ws/rest/v1/cashier/paymentMode`; - const { data, error, isLoading } = useSWR<{ data: ResponseObject }>(url, openmrsFetch, {}); - return { paymentModes: data?.data.results ?? [], error, isLoading }; -}; - -export const createBillableService = (payload: any) => { - const url = `/ws/rest/v1/cashier/api/billable-service`; - return openmrsFetch(url, { - method: 'POST', - body: payload, - headers: { - 'Content-Type': 'application/json', - }, - }); -}; - -export function useConceptsSearch(conceptToLookup: string) { - const conditionsSearchUrl = `/ws/rest/v1/conceptsearch?q=${conceptToLookup}`; - - const { data, error, isLoading } = useSWR<{ data: { results: Array } }, Error>( - conceptToLookup ? conditionsSearchUrl : null, - openmrsFetch, - ); - - return { - searchResults: data?.data?.results ?? [], - error: error, - isSearching: isLoading, - }; -} diff --git a/packages/esm-billing-app/src/billable-services/billable-services-home.component.tsx b/packages/esm-billing-app/src/billable-services/billable-services-home.component.tsx index af50fe2..fac8faf 100644 --- a/packages/esm-billing-app/src/billable-services/billable-services-home.component.tsx +++ b/packages/esm-billing-app/src/billable-services/billable-services-home.component.tsx @@ -1,17 +1,18 @@ import React from 'react'; import { BrowserRouter, Routes, Route } from 'react-router-dom'; -import { useTranslation } from 'react-i18next'; -import { BillableServicesDashboard } from './dashboard/dashboard.component'; -import AddBillableService from './create-edit/add-billable-service.component'; import { SideNav, SideNavItems, SideNavLink } from '@carbon/react'; -import styles from './billable-services.scss'; -import BillingHeader from '../billing-header/billing-header.component'; import { Wallet, Money } from '@carbon/react/icons'; +import { useTranslation } from 'react-i18next'; import { UserHasAccess, navigate } from '@openmrs/esm-framework'; +import AddBillableService from './create-edit/add-billable-service.component'; import BillWaiver from './bill-waiver/bill-waiver.component'; -const basePath = `${window.spaBase}/billable-services`; +import BillableServicesDashboard from './dashboard/dashboard.component'; +import BillingHeader from '../billing-header/billing-header.component'; +import styles from './billable-services.scss'; + const BillableServiceHome: React.FC = () => { const { t } = useTranslation(); + const basePath = `${window.spaBase}/billable-services`; const handleNavigation = (path: string) => { navigate({ to: `${basePath}/${path}` }); diff --git a/packages/esm-billing-app/src/billable-services/billable-services-menu-item/item.component.tsx b/packages/esm-billing-app/src/billable-services/billable-services-menu-item/item.component.tsx new file mode 100644 index 0000000..10294b2 --- /dev/null +++ b/packages/esm-billing-app/src/billable-services/billable-services-menu-item/item.component.tsx @@ -0,0 +1,17 @@ +import { ClickableTile } from '@carbon/react'; +import React from 'react'; +import styles from './item.scss'; +import { Receipt } from '@carbon/react/icons'; + +const Item = () => { + // items + const openmrsSpaBase = window['getOpenmrsSpaBase'](); + + return ( + +
{}
+
Billable Services
+
+ ); +}; +export default Item; diff --git a/packages/esm-billing-app/src/billable-services/billable-services-menu-item/item.scss b/packages/esm-billing-app/src/billable-services/billable-services-menu-item/item.scss new file mode 100644 index 0000000..fac25d2 --- /dev/null +++ b/packages/esm-billing-app/src/billable-services/billable-services-menu-item/item.scss @@ -0,0 +1,14 @@ +.customTile { + background-color: #f0f0f0; + border-radius: 4px; + padding: 20px; + width: 50px; + height: 100px; + text-align: center; + margin: 2px; +} + +.customTileTitle { + font-size: 14px; + color: #333; +} \ No newline at end of file diff --git a/packages/esm-billing-app/src/billable-services/billable-services.component.tsx b/packages/esm-billing-app/src/billable-services/billable-services.component.tsx index c0c3bb2..417558c 100644 --- a/packages/esm-billing-app/src/billable-services/billable-services.component.tsx +++ b/packages/esm-billing-app/src/billable-services/billable-services.component.tsx @@ -1,6 +1,8 @@ import React, { useCallback, useMemo, useState } from 'react'; +import { useTranslation } from 'react-i18next'; import classNames from 'classnames'; import { + Button, DataTable, InlineLoading, Layer, @@ -14,14 +16,12 @@ import { TableHeader, TableRow, Tile, - Button, } from '@carbon/react'; +import { ArrowRight } from '@carbon/react/icons'; import { useLayoutType, isDesktop, useConfig, usePagination, ErrorState, navigate } from '@openmrs/esm-framework'; import { EmptyState } from '@openmrs/esm-patient-common-lib'; -import styles from './billable-services.scss'; -import { useTranslation } from 'react-i18next'; import { useBillableServices } from './billable-service.resource'; -import { ArrowRight } from '@carbon/react/icons'; +import styles from './billable-services.scss'; const BillableServices = () => { const { t } = useTranslation(); diff --git a/packages/esm-billing-app/src/billable-services/billable-services.scss b/packages/esm-billing-app/src/billable-services/billable-services.scss index 2f2691f..5ac6727 100644 --- a/packages/esm-billing-app/src/billable-services/billable-services.scss +++ b/packages/esm-billing-app/src/billable-services/billable-services.scss @@ -1,6 +1,5 @@ @use '@carbon/layout'; @use '@carbon/type'; -@use '@carbon/styles/scss/spacing'; @import '~@openmrs/esm-styleguide/src/vars'; .container { @@ -192,9 +191,9 @@ display: flex; justify-content: space-between; background-color: $ui-02; - height: spacing.$spacing-10; + height: layout.$spacing-10; align-items: center; - padding: 0 spacing.$spacing-05; + padding: 0 layout.$spacing-05; } .metricsTitle { diff --git a/packages/esm-billing-app/src/billable-services/billable-services.test.tsx b/packages/esm-billing-app/src/billable-services/billable-services.test.tsx index 0965c47..d44afbf 100644 --- a/packages/esm-billing-app/src/billable-services/billable-services.test.tsx +++ b/packages/esm-billing-app/src/billable-services/billable-services.test.tsx @@ -3,10 +3,11 @@ import { render, screen } from '@testing-library/react'; import BillableServices from './billable-services.component'; describe('BillableService', () => { - test('should render billable services', () => { + test('renders an empty state when there are no billable services', () => { renderBillableServices(); + expect(screen.getByText(/Empty data illustration/i)).toBeInTheDocument(); - expect(screen.getByText(/There are no {{displayText}} to display for this patient/i)).toBeInTheDocument(); + expect(screen.getByText(/There are no services to display to display for this patient/i)).toBeInTheDocument(); }); }); diff --git a/packages/esm-billing-app/src/billable-services/billiable-item/drug-order.component.tsx b/packages/esm-billing-app/src/billable-services/billiable-item/drug-order.component.tsx deleted file mode 100644 index 3699edd..0000000 --- a/packages/esm-billing-app/src/billable-services/billiable-item/drug-order.component.tsx +++ /dev/null @@ -1,56 +0,0 @@ -import React from 'react'; -import { Drug } from '@openmrs/esm-patient-common-lib'; -import { DosingUnit, MedicationFrequency, MedicationRoute, QuantityUnit } from '../../types'; -import { useBillableItem, useSockItemInventory } from './useBilliableItem'; -import { useTranslation } from 'react-i18next'; -import styles from './drug-order.scss'; -import { convertToCurrency } from '../../helpers'; - -type DrugOrderProps = { - order: { - drug: Drug; - unit: DosingUnit; - commonMedicationName: string; - dosage: number; - frequency: MedicationFrequency; - route: MedicationRoute; - quantityUnits: QuantityUnit; - patientInstructions: string; - asNeeded: boolean; - asNeededCondition: string; - }; -}; - -const DrugOrder: React.FC = ({ order }) => { - const { t } = useTranslation(); - const { stockItem, isLoading: isLoadingInventory } = useSockItemInventory(order?.drug?.uuid); - const { billableItem, isLoading } = useBillableItem(order?.drug.concept.uuid); - - if (isLoading || isLoadingInventory) { - return null; - } - - return ( -
- {stockItem && ( -
- - {t('inStock', '{{quantityUoM}}(s) In stock ', { quantityUoM: stockItem?.quantityUoM })} - - {Math.round(stockItem?.quantity)} -
- )} -
- {billableItem && - billableItem?.servicePrices.map((item) => ( -
- {t('unitPrice', 'Unit price ')} - {convertToCurrency(item.price)} -
- ))} -
-
- ); -}; - -export default DrugOrder; diff --git a/packages/esm-billing-app/src/billable-services/billiable-item/drug-order.scss b/packages/esm-billing-app/src/billable-services/billiable-item/drug-order.scss deleted file mode 100644 index f40a9fd..0000000 --- a/packages/esm-billing-app/src/billable-services/billiable-item/drug-order.scss +++ /dev/null @@ -1,26 +0,0 @@ -@use '@carbon/type'; -@use '@carbon/colors'; -@use '@carbon/layout'; -@use '@carbon/styles/scss/spacing'; - -.drugOrderContainer { - margin: spacing.$spacing-03 0; - - & > div { - margin: spacing.$spacing-03 0; - } -} - -.bold { - font-weight: bold; -} - -.itemInfo { - @include type.type-style('body-01'); -} - -.itemContainer { - display: grid; - grid-template-columns: 1fr 1fr; - padding-left: spacing.$spacing-03; -} diff --git a/packages/esm-billing-app/src/billable-services/billiable-item/lab-order.component.tsx b/packages/esm-billing-app/src/billable-services/billiable-item/lab-order.component.tsx deleted file mode 100644 index 58a93b5..0000000 --- a/packages/esm-billing-app/src/billable-services/billiable-item/lab-order.component.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import React from 'react'; -import { convertToCurrency } from '../../helpers'; -import { useBillableItem } from './useBilliableItem'; - -type LabOrderProps = { - order: { - testType?: { - label: string; - conceptUuid: string; - }; - }; -}; - -const LabOrder: React.FC = ({ order }) => { - // TODO: Implement logic to display whether the lab order service is available to ensure clinicians can order the service - - const { billableItem, error, isLoading } = useBillableItem(order?.testType?.conceptUuid); - - const billItems = billableItem?.servicePrices - .map((servicePrice) => `${servicePrice?.paymentMode?.name} - ${convertToCurrency(servicePrice?.price)}`) - .join(' '); - - if (isLoading) { - return null; - } - - if (error) { - return null; - } - - return

{billItems}

; -}; - -export default LabOrder; diff --git a/packages/esm-billing-app/src/billable-services/billiable-item/useBilliableItem.tsx b/packages/esm-billing-app/src/billable-services/billiable-item/useBilliableItem.tsx deleted file mode 100644 index 50393f0..0000000 --- a/packages/esm-billing-app/src/billable-services/billiable-item/useBilliableItem.tsx +++ /dev/null @@ -1,50 +0,0 @@ -import useSWRImmutable from 'swr/immutable'; -import { openmrsFetch, restBaseUrl } from '@openmrs/esm-framework'; -import useSWR from 'swr'; -import first from 'lodash-es/first'; - -type BillableItemResponse = { - uuid: string; - name: string; - concept: { - uuid: string; - display: string; - }; - servicePrices: Array<{ - uuid: string; - price: number; - paymentMode: { - uuid: string; - name: string; - }; - }>; -}; - -export const useBillableItem = (billableItemId: string) => { - const customRepresentation = `v=custom:(uuid,name,concept:(uuid,display),servicePrices:(uuid,price,paymentMode:(uuid,name)))`; - const { data, error, isLoading } = useSWRImmutable<{ data: { results: Array } }>( - `${restBaseUrl}/cashier/billableService?${customRepresentation}`, - openmrsFetch, - ); - const billableItem = data?.data?.results?.find((item) => item?.concept?.uuid === billableItemId); - - return { - billableItem: billableItem, - isLoading: isLoading, - error, - }; -}; - -export const useSockItemInventory = (stockItemId: string) => { - const url = `/ws/rest/v1/stockmanagement/stockiteminventory?v=default&limit=10&totalCount=true&drugUuid=${stockItemId}`; - const { data, error, isLoading } = useSWR<{ data: { results: Array<{ quantityUoM: string; quantity: number }> } }>( - url, - openmrsFetch, - ); - const stockItemsInfo = first(data?.data?.results ?? []); - return { - stockItem: stockItemsInfo, - isLoading: isLoading, - error, - }; -}; diff --git a/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.component.tsx b/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.component.tsx index a2dcd74..7985b19 100644 --- a/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.component.tsx +++ b/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.component.tsx @@ -1,31 +1,40 @@ /* eslint-disable curly */ import React, { useCallback, useRef, useState } from 'react'; -import styles from './add-billable-service.scss'; import { - Form, Button, - TextInput, ComboBox, Dropdown, - Layer, + Form, + FormLabel, InlineLoading, + Layer, Search, + TextInput, Tile, - FormLabel, } from '@carbon/react'; +import { navigate, showSnackbar, useDebounce, useLayoutType, useSession } from '@openmrs/esm-framework'; +import { Add, TrashCan, WarningFilled } from '@carbon/react/icons'; +import { Controller, useFieldArray, useForm } from 'react-hook-form'; import { useTranslation } from 'react-i18next'; +import { z } from 'zod'; +import { zodResolver } from '@hookform/resolvers/zod'; import { - createBillableService, + createBillableSerice, useConceptsSearch, usePaymentModes, useServiceTypes, } from '../billable-service.resource'; -import { Controller, useFieldArray, useForm } from 'react-hook-form'; -import { Add, TrashCan, WarningFilled } from '@carbon/react/icons'; -import { z } from 'zod'; -import { zodResolver } from '@hookform/resolvers/zod'; -import { navigate, showSnackbar, useDebounce, useLayoutType, useSession } from '@openmrs/esm-framework'; -import { ServiceConcept } from '../../types'; +import { type ServiceConcept } from '../../types'; +import styles from './add-billable-service.scss'; + +type PaymentMode = { + paymentMode: string; + price: string | number; +}; + +type PaymentModeFormValue = { + payment: Array; +}; const servicePriceSchema = z.object({ paymentMode: z.string().refine((value) => !!value, 'Payment method is required'), @@ -34,15 +43,11 @@ const servicePriceSchema = z.object({ z.string().refine((value) => !!value, 'Price is required'), ]), }); -const paymentFormSchema = z.object({ payment: z.array(servicePriceSchema) }); -type PaymentMode = { - paymentMode: string; - price: string | number; -}; -type PaymentModeFormValue = { - payment: Array; -}; +const paymentFormSchema = z.object({ + payment: z.array(servicePriceSchema).min(1, 'At least one payment option is required'), +}); + const DEFAULT_PAYMENT_OPTION = { paymentMode: '', price: 0 }; const AddBillableService: React.FC = () => { @@ -55,10 +60,10 @@ const AddBillableService: React.FC = () => { const { control, handleSubmit, - formState: { errors }, + formState: { errors, isValid }, } = useForm({ mode: 'all', - defaultValues: {}, + defaultValues: { payment: [DEFAULT_PAYMENT_OPTION] }, resolver: zodResolver(paymentFormSchema), }); const { fields, remove, append } = useFieldArray({ name: 'payment', control: control }); @@ -108,7 +113,7 @@ const AddBillableService: React.FC = () => { payload.serviceStatus = 'ENABLED'; payload.concept = selectedConcept?.concept?.uuid; - createBillableService(payload).then( + createBillableSerice(payload).then( (resp) => { showSnackbar({ title: t('billableService', 'Billable service'), @@ -119,11 +124,19 @@ const AddBillableService: React.FC = () => { handleNavigateToServiceDashboard(); }, (error) => { - showSnackbar({ title: 'Bill payment error', kind: 'error', subtitle: error }); + showSnackbar({ title: 'Bill payment error', kind: 'error', subtitle: error?.message }); }, ); }; + const getPaymentErrorMessage = () => { + const paymentError = errors.payment; + if (paymentError && typeof paymentError.message === 'string') { + return paymentError.message; + } + return null; + }; + return (

{t('addBillableServices', 'Add Billable Services')}

@@ -258,7 +271,6 @@ const AddBillableService: React.FC = () => { render={({ field }) => ( field.onChange(selectedItem?.uuid)} titleText={t('paymentMode', 'Payment Mode')} label={t('selectPaymentMethod', 'Select payment method')} @@ -276,7 +288,6 @@ const AddBillableService: React.FC = () => { render={({ field }) => ( { )} />
- handleRemovePaymentMode(index)} - className={styles.removeButton} - size={20} - /> + handleRemovePaymentMode(index)} className={styles.removeButton} size={20} />
))} @@ -305,6 +310,7 @@ const AddBillableService: React.FC = () => { iconDescription="Add"> {t('addPaymentOptions', 'Add payment option')} + {getPaymentErrorMessage() &&
{getPaymentErrorMessage()}
} @@ -312,7 +318,7 @@ const AddBillableService: React.FC = () => { - diff --git a/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.scss b/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.scss index 3b1f8c8..18d663e 100644 --- a/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.scss +++ b/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.scss @@ -1,7 +1,6 @@ -@use '@carbon/styles/scss/spacing'; -@use '@carbon/styles/scss/type'; @use '@carbon/colors'; @use '@carbon/layout'; +@use '@carbon/type'; @import '~@openmrs/esm-styleguide/src/vars'; .form { @@ -12,17 +11,17 @@ } .section { - margin: spacing.$spacing-03; + margin: layout.$spacing-03; } .sectionTitle { @include type.type-style('heading-compact-02'); color: $text-02; - margin-bottom: spacing.$spacing-04; + margin-bottom: layout.$spacing-04; } .modalBody { - padding-bottom: spacing.$spacing-05; + padding-bottom: layout.$spacing-05; } .container { diff --git a/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.test.tsx b/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.test.tsx index 475491e..6e3aadf 100644 --- a/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.test.tsx +++ b/packages/esm-billing-app/src/billable-services/create-edit/add-billable-service.test.tsx @@ -6,16 +6,14 @@ import { useBillableServices, usePaymentModes, useServiceTypes, - createBillableService, - useConceptsSearch, + createBillableSerice, } from '../billable-service.resource'; import { FetchResponse, navigate, showSnackbar } from '@openmrs/esm-framework'; const mockUseBillableServices = useBillableServices as jest.MockedFunction; const mockUsePaymentModes = usePaymentModes as jest.MockedFunction; const mockUseServiceTypes = useServiceTypes as jest.MockedFunction; -const mockCreateBillableService = createBillableService as jest.MockedFunction; -const mockUseConceptsSearch = useConceptsSearch as jest.MockedFunction; +const mockCreateBillableSerice = createBillableSerice as jest.MockedFunction; const mockNavigate = navigate as jest.MockedFunction; const mockShowSnackbar = showSnackbar as jest.MockedFunction; @@ -23,8 +21,7 @@ jest.mock('../billable-service.resource', () => ({ useBillableServices: jest.fn(), usePaymentModes: jest.fn(), useServiceTypes: jest.fn(), - createBillableService: jest.fn(), - useConceptsSearch: jest.fn(), + createBillableSerice: jest.fn(), })); const mockPaymentModes = [ @@ -53,7 +50,7 @@ const mockServiceTypes = [ { uuid: 'a487a743-62ce-4f93-a66b-c5154ee8987d', display: 'Adherence counselling service' }, ]; -describe('AddBillableService', () => { +xdescribe('AddBillableService', () => { beforeEach(() => { jest.resetAllMocks(); }); @@ -69,11 +66,10 @@ describe('AddBillableService', () => { }); mockUsePaymentModes.mockReturnValue({ paymentModes: mockPaymentModes, error: null, isLoading: false }); mockUseServiceTypes.mockReturnValue({ serviceTypes: mockServiceTypes, error: false, isLoading: false }); - mockUseConceptsSearch.mockReturnValue({ searchResults: [], error: null, isSearching: false }); render(); - const formTitle = screen.getByRole('heading', { name: /Add Billable Services/i }); - expect(formTitle).toBeInTheDocument(); + const formTtile = screen.getByRole('heading', { name: /Add Billable Services/i }); + expect(formTtile).toBeInTheDocument(); const serviceNameTextInp = screen.getByRole('textbox', { name: /Service Name/i }); expect(serviceNameTextInp).toBeInTheDocument(); @@ -110,25 +106,16 @@ describe('AddBillableService', () => { expect(priceTextInp).toBeInTheDocument(); await user.type(priceTextInp, '1000'); - // Should be able to add multiple payment methods and delete them - await user.click(addPaymentMethodBtn); - const deleteBtn0 = screen.getByRole('img', { name: /delete_0/i }); - expect(deleteBtn0).toBeInTheDocument(); - const deleteBtn1 = screen.getByRole('img', { name: /delete_1/i }); - - // Delete payment method on index 1 - await user.click(deleteBtn1); - - mockCreateBillableService.mockReturnValue(Promise.resolve({} as FetchResponse)); + mockCreateBillableSerice.mockReturnValue(Promise.resolve({} as FetchResponse)); const saveBtn = screen.getByRole('button', { name: /Save/i }); expect(saveBtn).toBeInTheDocument(); await user.click(saveBtn); - expect(mockCreateBillableService).toHaveBeenCalledTimes(1); - expect(mockCreateBillableService).toHaveBeenCalledWith({ + expect(mockCreateBillableSerice).toHaveBeenCalledTimes(1); + expect(mockCreateBillableSerice).toHaveBeenCalledWith({ name: 'Test Service Name', shortName: 'Test Short Name', - serviceType: 'c9604249-db0a-4d03-b074-fc6bc2fa13e6', + serviceType: undefined, servicePrices: [ { paymentMode: '63eff7a4-6f82-43c4-a333-dbcc58fe9f74', @@ -137,7 +124,6 @@ describe('AddBillableService', () => { }, ], serviceStatus: 'ENABLED', - concept: undefined, }); expect(mockNavigate).toHaveBeenCalledTimes(1); expect(mockNavigate).toHaveBeenCalledWith({ to: '/openmrs/spa/billable-services' }); @@ -154,7 +140,6 @@ describe('AddBillableService', () => { }); mockUsePaymentModes.mockReturnValue({ paymentModes: mockPaymentModes, error: null, isLoading: false }); mockUseServiceTypes.mockReturnValue({ serviceTypes: mockServiceTypes, error: false, isLoading: false }); - mockUseConceptsSearch.mockReturnValue({ searchResults: [], error: null, isSearching: false }); render(); const cancelBtn = screen.getByRole('button', { name: /Cancel/i }); diff --git a/packages/esm-billing-app/src/billable-services/dashboard/dashboard.component.tsx b/packages/esm-billing-app/src/billable-services/dashboard/dashboard.component.tsx index 15540d4..5cb3395 100644 --- a/packages/esm-billing-app/src/billable-services/dashboard/dashboard.component.tsx +++ b/packages/esm-billing-app/src/billable-services/dashboard/dashboard.component.tsx @@ -1,15 +1,12 @@ import React from 'react'; -import { useTranslation } from 'react-i18next'; -import styles from './dashboard.scss'; -import ServiceMetrics from './service-metrics.component'; import BillableServices from '../billable-services.component'; +import styles from './dashboard.scss'; +import { ExtensionSlot } from '@openmrs/esm-framework'; -export function BillableServicesDashboard() { - const { t } = useTranslation(); - +export default function BillableServicesDashboard() { return (
- +
diff --git a/packages/esm-billing-app/src/billable-services/dashboard/dashboard.test.tsx b/packages/esm-billing-app/src/billable-services/dashboard/dashboard.test.tsx index db5255e..5ef1797 100644 --- a/packages/esm-billing-app/src/billable-services/dashboard/dashboard.test.tsx +++ b/packages/esm-billing-app/src/billable-services/dashboard/dashboard.test.tsx @@ -1,6 +1,6 @@ import React from 'react'; import { screen, render } from '@testing-library/react'; -import { BillableServicesDashboard } from './dashboard.component'; +import BillableServicesDashboard from './dashboard.component'; test('renders an empty state when there are no services', () => { renderBillingDashboard(); diff --git a/packages/esm-billing-app/src/billable-services/dashboard/service-metrics.component.tsx b/packages/esm-billing-app/src/billable-services/dashboard/service-metrics.component.tsx index 8d5dbbc..fe62477 100644 --- a/packages/esm-billing-app/src/billable-services/dashboard/service-metrics.component.tsx +++ b/packages/esm-billing-app/src/billable-services/dashboard/service-metrics.component.tsx @@ -1,10 +1,11 @@ import React, { useMemo } from 'react'; -import Card from '../../metrics-cards/card.component'; -import styles from '../../metrics-cards/metrics-cards.scss'; +import { InlineLoading } from '@carbon/react'; import { useTranslation } from 'react-i18next'; import { ErrorState } from '@openmrs/esm-patient-common-lib'; -import { InlineLoading } from '@carbon/react'; import { useBillableServices } from '../billable-service.resource'; +import Card from '../../metrics-cards/card.component'; +import styles from '../../metrics-cards/metrics-cards.scss'; +import { ExtensionSlot } from '@openmrs/esm-framework'; export default function ServiceMetrics() { const { t } = useTranslation(); diff --git a/packages/esm-billing-app/src/billing-dashboard/billing-dashboard.component.tsx b/packages/esm-billing-app/src/billing-dashboard/billing-dashboard.component.tsx index 8235f6c..66c42c9 100644 --- a/packages/esm-billing-app/src/billing-dashboard/billing-dashboard.component.tsx +++ b/packages/esm-billing-app/src/billing-dashboard/billing-dashboard.component.tsx @@ -1,20 +1,33 @@ -import React from 'react'; +import React, { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import BillingHeader from '../billing-header/billing-header.component'; import MetricsCards from '../metrics-cards/metrics-cards.component'; import BillsTable from '../bills-table/bills-table.component'; import styles from './billing-dashboard.scss'; +import { useParams } from 'react-router-dom'; +import dayjs from 'dayjs'; +import { omrsDateFormat } from '../constants'; +import SelectedDateContext from '../hooks/selectedDateContext'; export function BillingDashboard() { const { t } = useTranslation(); + const [selectedDate, setSelectedDate] = useState(dayjs().startOf('day').format(omrsDateFormat)); + + let params = useParams(); + + useEffect(() => { + if (params.date) { + setSelectedDate(dayjs(params.date).startOf('day').format(omrsDateFormat)); + } + }, [params.date]); return ( -
+ -
- -
-
+
+ +
+ ); } diff --git a/packages/esm-billing-app/src/billing-form/billing-checkin-form.component.tsx b/packages/esm-billing-app/src/billing-form/billing-checkin-form.component.tsx index bdb671d..8078e2c 100644 --- a/packages/esm-billing-app/src/billing-form/billing-checkin-form.component.tsx +++ b/packages/esm-billing-app/src/billing-form/billing-checkin-form.component.tsx @@ -1,15 +1,13 @@ -import React, { useCallback, useEffect, useState } from 'react'; -import { InlineLoading, InlineNotification, FilterableMultiSelect } from '@carbon/react'; +import React, { useCallback, useState } from 'react'; +import { Dropdown, InlineLoading, InlineNotification } from '@carbon/react'; import { useTranslation } from 'react-i18next'; -import { useCashPoint, useBillableItems, createPatientBill } from './billing-form.resource'; import { showSnackbar, useConfig } from '@openmrs/esm-framework'; -import styles from './billing-checkin-form.scss'; +import { useCashPoint, useBillableItems, createPatientBill } from './billing-form.resource'; import VisitAttributesForm from './visit-attributes/visit-attributes-form.component'; -import { BillingConfig } from '../config-schema'; -import { hasPatientBeenExempted } from './helper'; -import { EXEMPTED_PAYMENT_STATUS, PENDING_PAYMENT_STATUS } from '../constants'; -import { BillingService } from '../types'; -import SHANumberValidity from './social-health-authority/sha-number-validity.component'; +import styles from './billing-checkin-form.scss'; + +const DEFAULT_PRICE = 500.00001; +const PENDING_PAYMENT_STATUS = 'PENDING'; type BillingCheckInFormProps = { patientUuid: string; @@ -18,74 +16,60 @@ type BillingCheckInFormProps = { const BillingCheckInForm: React.FC = ({ patientUuid, setExtraVisitInfo }) => { const { t } = useTranslation(); - const { - visitAttributeTypes: { isPatientExempted }, - } = useConfig(); const { cashPoints, isLoading: isLoadingCashPoints, error: cashError } = useCashPoint(); const { lineItems, isLoading: isLoadingLineItems, error: lineError } = useBillableItems(); const [attributes, setAttributes] = useState([]); const [paymentMethod, setPaymentMethod] = useState(); let lineList = []; - const handleCreateBill = useCallback((createBillPayload) => { + const handleCreateExtraVisitInfo = useCallback((createBillPayload) => { createPatientBill(createBillPayload).then( - () => { + (res) => { showSnackbar({ title: 'Patient Bill', subtitle: 'Patient has been billed successfully', kind: 'success' }); }, (error) => { - const errorMessage = JSON.stringify(error?.responseBody?.error?.message?.replace(/\[/g, '').replace(/\]/g, '')); showSnackbar({ title: 'Patient Bill Error', - subtitle: `An error has occurred while creating patient bill, Contact system administrator quoting this error ${errorMessage}`, + subtitle: 'An error has occurred while creating patient bill', kind: 'error', - isLowContrast: true, }); }, ); }, []); - const handleBillingService = (selectedItems: Array) => { + const handleBillingService = ({ selectedItem }) => { const cashPointUuid = cashPoints?.[0]?.uuid ?? ''; - const billStatus = hasPatientBeenExempted(attributes, isPatientExempted) - ? EXEMPTED_PAYMENT_STATUS - : PENDING_PAYMENT_STATUS; + const itemUuid = selectedItem?.uuid ?? ''; - const lineItems = selectedItems.map((item, index) => { - // // should default to first price if check returns empty. todo - update backend to return default price - const priceForPaymentMode = - item.servicePrices.find((p) => p.paymentMode?.uuid === paymentMethod) || item?.servicePrices[0]; - return { - billableService: item?.uuid ?? '', - quantity: 1, - price: priceForPaymentMode ? priceForPaymentMode.price : '0.000', - priceName: 'Default', - priceUuid: priceForPaymentMode ? priceForPaymentMode.uuid : '', - lineItemOrder: index, - paymentStatus: billStatus, - }; - }); + // should default to first price if check returns empty. todo - update backend to return default price + const priceForPaymentMode = + selectedItem.servicePrices.find((p) => p.paymentMode?.uuid === paymentMethod) || selectedItem?.servicePrices[0]; - const billPayload = { - lineItems: lineItems, + const createBillPayload = { + lineItems: [ + { + billableService: itemUuid, + quantity: 1, + price: priceForPaymentMode ? priceForPaymentMode.price : '0.000', + priceName: 'Default', + priceUuid: priceForPaymentMode ? priceForPaymentMode.uuid : '', + lineItemOrder: 0, + paymentStatus: PENDING_PAYMENT_STATUS, + }, + ], cashPoint: cashPointUuid, patient: patientUuid, - status: billStatus, + status: PENDING_PAYMENT_STATUS, payments: [], }; setExtraVisitInfo({ - handleCreateExtraVisitInfo: () => handleCreateBill(billPayload), + createBillPayload, + handleCreateExtraVisitInfo: () => handleCreateExtraVisitInfo(createBillPayload), attributes, }); }; - useEffect(() => { - setExtraVisitInfo({ - handleCreateExtraVisitInfo: () => {}, - attributes, - }); - }, []); - if (isLoadingLineItems || isLoadingCashPoints) { return ( = ({ patientUuid, se if (paymentMethod) { lineList = []; lineList = lineItems.filter((e) => - e.servicePrices.some((p) => p.paymentMode && p.paymentMode.uuid === paymentMethod?.uuid), + e.servicePrices.some((p) => p.paymentMode && p.paymentMode.uuid === paymentMethod), ); } + const setServicePrice = (prices) => { + const matchingPrice = prices.find((p) => p.paymentMode?.uuid === paymentMethod); + return matchingPrice ? `(${matchingPrice.name}:${matchingPrice.price})` : ''; + }; + if (cashError || lineError) { return ( = ({ patientUuid, se } return ( - <> +
- -
-
{t('billing', 'Billing')}
-
- (item ? item?.name : '')} - onChange={({ selectedItems }) => handleBillingService(selectedItems)} + { + <> +
{t('billing', 'Billing')}
+
+ (item ? `${item.name} ${setServicePrice(item.servicePrices)}` : '')} + titleText={t('billableService', 'Billable service')} /> -
-
- + + } +
); }; diff --git a/packages/esm-billing-app/src/billing-form/billing-checkin-form.scss b/packages/esm-billing-app/src/billing-form/billing-checkin-form.scss index 3cf04ff..06a28f4 100644 --- a/packages/esm-billing-app/src/billing-form/billing-checkin-form.scss +++ b/packages/esm-billing-app/src/billing-form/billing-checkin-form.scss @@ -2,13 +2,12 @@ @use '@carbon/type'; @use '@carbon/colors'; +.sectionContainer { + margin: 0 layout.$spacing-03; +} + .sectionTitle { @include type.type-style('heading-compact-02'); color: colors.$gray-70; margin: 0 0 layout.$spacing-03 0; - flex-basis: 30%; -} - -.sectionField { - flex-basis: 70%; } diff --git a/packages/esm-billing-app/src/billing-form/billing-checkin-form.test.tsx b/packages/esm-billing-app/src/billing-form/billing-checkin-form.test.tsx index 4a0b191..2180449 100644 --- a/packages/esm-billing-app/src/billing-form/billing-checkin-form.test.tsx +++ b/packages/esm-billing-app/src/billing-form/billing-checkin-form.test.tsx @@ -1,8 +1,8 @@ import React from 'react'; +import userEvent from '@testing-library/user-event'; import { screen, render } from '@testing-library/react'; -import BillingCheckInForm from './billing-checkin-form.component'; import { useBillableItems, useCashPoint, createPatientBill, usePaymentMethods } from './billing-form.resource'; -import userEvent from '@testing-library/user-event'; +import BillingCheckInForm from './billing-checkin-form.component'; const mockCashPoints = [ { @@ -51,7 +51,7 @@ jest.mock('./billing-form.resource', () => ({ createPatientBill: jest.fn(), })); -const testProps = { patientUuid: 'some-patient-uuid', setBillingInfo: jest.fn() }; +const testProps = { patientUuid: 'some-patient-uuid', setExtraVisitInfo: jest.fn() }; xdescribe('BillingCheckInForm', () => { beforeEach(() => { @@ -59,11 +59,7 @@ xdescribe('BillingCheckInForm', () => { }); test('should show the loading spinner while retrieving data', () => { - mockUseBillableItems.mockReturnValueOnce({ lineItems: [], isLoading: true, - searchTerm: "", - setSearchTerm(value: ((prevState: string) => string) | string): void { - }, - error: null }); + mockUseBillableItems.mockReturnValueOnce({ lineItems: [], isLoading: true, error: null }); mockUseCashPoint.mockReturnValueOnce({ cashPoints: [], isLoading: true, error: null }); renderBillingCheckinForm(); @@ -72,11 +68,7 @@ xdescribe('BillingCheckInForm', () => { test('should show error state when an error occurs while fetching data', () => { const error = new Error('Internal server error'); - mockUseBillableItems.mockReturnValueOnce({ lineItems: [], - searchTerm: "", - setSearchTerm(value: ((prevState: string) => string) | string): void { - }, - isLoading: false, error }); + mockUseBillableItems.mockReturnValueOnce({ lineItems: [], isLoading: false, error }); mockUseCashPoint.mockReturnValueOnce({ cashPoints: [], isLoading: false, error }); renderBillingCheckinForm(); @@ -87,9 +79,7 @@ xdescribe('BillingCheckInForm', () => { test('should render the form correctly and generate the required payload', async () => { const user = userEvent.setup(); mockUseCashPoint.mockReturnValue({ cashPoints: [], isLoading: false, error: null }); - mockUseBillableItems.mockReturnValue({ - searchTerm: "", setSearchTerm(value: ((prevState: string) => string) | string): void { - }, lineItems: mockBillableItems, isLoading: false, error: null }); + mockUseBillableItems.mockReturnValue({ lineItems: mockBillableItems, isLoading: false, error: null }); renderBillingCheckinForm(); const paymentTypeSelect = screen.getByRole('group', { name: 'Payment Details' }); @@ -105,8 +95,8 @@ xdescribe('BillingCheckInForm', () => { await user.click(screen.getByText('Lab Testing')); - expect(testProps.setBillingInfo).toHaveBeenCalled(); - expect(testProps.setBillingInfo).toHaveBeenCalledWith({ + expect(testProps.setExtraVisitInfo).toHaveBeenCalled(); + expect(testProps.setExtraVisitInfo).toHaveBeenCalledWith({ createBillPayload: { lineItems: [ { @@ -124,11 +114,15 @@ xdescribe('BillingCheckInForm', () => { status: 'PENDING', payments: [], }, - handleCreateBill: expect.anything(), + handleCreateExtraVisitInfo: expect.anything(), attributes: [ { attributeType: 'caf2124f-00a9-4620-a250-efd8535afd6d', - value: '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + value: '1c30ee58-82d4-4ea4-a8c1-4bf2f9dfc8cf', + }, + { + attributeType: '919b51c9-8e2e-468f-8354-181bf3e55786', + value: true, }, ], }); @@ -136,7 +130,5 @@ xdescribe('BillingCheckInForm', () => { }); function renderBillingCheckinForm() { - return render(); + return render(); } diff --git a/packages/esm-billing-app/src/billing-form/billing-form.component.tsx b/packages/esm-billing-app/src/billing-form/billing-form.component.tsx index ce01d94..d2b8144 100644 --- a/packages/esm-billing-app/src/billing-form/billing-form.component.tsx +++ b/packages/esm-billing-app/src/billing-form/billing-form.component.tsx @@ -1,10 +1,13 @@ -import React, { useState } from 'react'; +import React, { useState, useEffect, useMemo } from 'react'; import { ButtonSet, Button, + Form, + InlineLoading, RadioButtonGroup, RadioButton, Search, + Stack, Table, TableHead, TableBody, @@ -14,164 +17,201 @@ import { } from '@carbon/react'; import styles from './billing-form.scss'; import { useTranslation } from 'react-i18next'; +import { restBaseUrl, showSnackbar, showToast, useConfig, useDebounce, useLayoutType } from '@openmrs/esm-framework'; import { useFetchSearchResults, processBillItems } from '../billing.resource'; -import { getPatientUuidFromUrl } from '@openmrs/esm-patient-common-lib'; -import { showSnackbar } from '@openmrs/esm-framework'; import { mutate } from 'swr'; +import { convertToCurrency } from '../helpers'; +import { z } from 'zod'; +import { TrashCan } from '@carbon/react/icons'; +import fuzzy from 'fuzzy'; +import { type BillabeItem } from '../types'; +import { apiBasePath } from '../constants'; +import isEmpty from 'lodash-es/isEmpty'; type BillingFormProps = { patientUuid: string; closeWorkspace: () => void; }; -const BillingForm: React.FC = ({ closeWorkspace }) => { +const BillingForm: React.FC = ({ patientUuid, closeWorkspace }) => { const { t } = useTranslation(); - const patientUuid = getPatientUuidFromUrl(); + const { defaultCurrency, postBilledItems } = useConfig(); + const isTablet = useLayoutType() === 'tablet'; - const [GrandTotal, setGrandTotal] = useState(0); - - const [searchOptions, setsearchOptions] = useState([]); - const [defaultSearchItems, setdefaultSearchItems] = useState([]); - - const [BillItems, setBillItems] = useState([]); - - const [searchVal, setsearchVal] = useState(''); + const [grandTotal, setGrandTotal] = useState(0); + const [searchOptions, setSearchOptions] = useState([]); + const [billItems, setBillItems] = useState([]); + const [searchVal, setSearchVal] = useState(''); const [category, setCategory] = useState(''); + const [saveDisabled, setSaveDisabled] = useState(false); + const [isSubmitting, setIsSubmitting] = useState(false); + const [addedItems, setAddedItems] = useState([]); + const [searchTerm, setSearchTerm] = useState(''); + const debouncedSearchTerm = useDebounce(searchTerm); + const [disableSearch, setDisableSearch] = useState(true); const toggleSearch = (choiceSelected) => { - (document.getElementById('searchField') as HTMLInputElement).disabled = false; - - if (choiceSelected == 'Stock Item') { - setCategory('Stock Item'); - } else { - setCategory('Service'); + if (!isEmpty(choiceSelected)) { + setDisableSearch(false); } + setCategory(choiceSelected === 'Stock Item' ? 'Stock Item' : 'Service'); }; + const billItemSchema = z.object({ + Qnty: z.number().min(1, t('quantityGreaterThanZero', 'Quantity must be at least one for all items.')), // zod logic + }); + const calculateTotal = (event, itemName) => { - const Qnty = event.target.value; - const price = (document.getElementById(event.target.id + 'Price') as HTMLInputElement).innerHTML; - const total = parseInt(price) * Qnty; - (document.getElementById(event.target.id + 'Total') as HTMLInputElement).innerHTML = total.toString(); + const quantity = parseInt(event.target.value); + let isValid = true; - const updateItem = BillItems.filter((o) => o.Item.toLowerCase().includes(itemName.toLowerCase())); + try { + billItemSchema.parse({ Qnty: quantity }); + } catch (error) { + isValid = false; + const parsedErrorMessage = JSON.parse(error.message); + showToast({ + title: t('billItems', 'Save Bill'), + kind: 'error', + description: parsedErrorMessage[0].message, + }); + } - updateItem.map((o) => (o.Qnty = Qnty)); - updateItem.map((o) => (o.Total = total)); + const updatedItems = billItems.map((item) => { + if (item.Item.toLowerCase().includes(itemName.toLowerCase())) { + return { ...item, Qnty: quantity, Total: quantity > 0 ? item.Price * quantity : 0 }; + } + return item; + }); - const totals = Array.from(document.querySelectorAll('[id$="Total"]')); + const anyInvalidQuantity = updatedItems.some((item) => item.Qnty <= 0); - let addUpTotals = 0; - totals.forEach((tot) => { - var getTot = (tot as HTMLInputElement).innerHTML; - addUpTotals += parseInt(getTot); - }); - setGrandTotal(addUpTotals); - }; + setSaveDisabled(!isValid || anyInvalidQuantity); - const CalculateTotalAfteraddBillItem = () => { - let sum = 0; - BillItems.map((o) => (sum += o.Price)); + const updatedGrandTotal = updatedItems.reduce((acc, item) => acc + item.Total, 0); + setGrandTotal(updatedGrandTotal); + }; + const calculateTotalAfterAddBillItem = (items) => { + const sum = items.reduce((acc, item) => acc + item.Price * item.Qnty, 0); setGrandTotal(sum); }; const addItemToBill = (event, itemid, itemname, itemcategory, itemPrice) => { - BillItems.push({ - uuid: itemid, - Item: itemname, - Qnty: 1, - Price: itemPrice, - Total: itemPrice, - category: itemcategory, - }); - setBillItems(BillItems); - setsearchOptions([]); - CalculateTotalAfteraddBillItem(); + const existingItemIndex = billItems.findIndex((item) => item.uuid === itemid); + + let updatedItems = []; + if (existingItemIndex >= 0) { + updatedItems = billItems.map((item, index) => { + if (index === existingItemIndex) { + const updatedQuantity = item.Qnty + 1; + return { ...item, Qnty: updatedQuantity, Total: updatedQuantity * item.Price }; + } + return item; + }); + } else { + const newItem = { + uuid: itemid, + Item: itemname, + Qnty: 1, + Price: itemPrice, + Total: itemPrice, + category: itemcategory, + }; + updatedItems = [...billItems, newItem]; + setAddedItems([...addedItems, newItem]); + } + + setBillItems(updatedItems); + calculateTotalAfterAddBillItem(updatedItems); (document.getElementById('searchField') as HTMLInputElement).value = ''; }; - // filter items - const { data, error, isLoading, isValidating } = useFetchSearchResults(searchVal, category); + const removeItemFromBill = (uuid) => { + const updatedItems = billItems.filter((item) => item.uuid !== uuid); + setBillItems(updatedItems); - const filterItems = (val) => { - setsearchVal(val); + // Update the list of added items + setAddedItems(addedItems.filter((item) => item.uuid !== uuid)); - if (isLoading) { - } else { - if (typeof data !== 'undefined') { - //set to null then repopulate - while (searchOptions.length > 0) { - searchOptions.pop(); - } + const updatedGrandTotal = updatedItems.reduce((acc, item) => acc + item.Total, 0); + setGrandTotal(updatedGrandTotal); + }; - const res = data as { results: any[] }; - - res.results.map((o) => { - if (o.commonName && (o.commonName != '' || o.commonName != null)) { - searchOptions.push({ - uuid: o.uuid, - Item: o.commonName, - Qnty: 1, - Price: 10, - Total: 10, - category: 'StockItem', - }); - } else { - if (o.name.toLowerCase().includes(searchVal.toLowerCase())) { - searchOptions.push({ - uuid: o.uuid, - Item: o.name, - Qnty: 1, - Price: o.servicePrices[0].price, - Total: o.servicePrices[0].price, - category: 'Service', - }); - } - } - setsearchOptions(searchOptions); - }); - } + const { data, error, isLoading, isValidating } = useFetchSearchResults(debouncedSearchTerm, category); + + const handleSearchTermChange = (e: React.ChangeEvent) => setSearchTerm(e.target.value); + + const filterItems = useMemo(() => { + if (!debouncedSearchTerm || isLoading || error) { + return []; } - }; + + const res = data as { results: BillabeItem[] }; + const existingItemUuids = new Set(billItems.map((item) => item.uuid)); + + const preprocessedData = res?.results + ?.map((item) => { + return { + uuid: item.uuid || '', + Item: item.commonName ? item.commonName : item.name, + Qnty: 1, + Price: item.commonName ? 10 : item.servicePrices[0]?.price, + Total: item.commonName ? 10 : item.servicePrices[0]?.price, + category: item.commonName ? 'StockItem' : 'Service', + }; + }) + .filter((item) => !existingItemUuids.has(item.uuid)); + + return debouncedSearchTerm + ? fuzzy + .filter(debouncedSearchTerm, preprocessedData, { + extract: (o) => `${o.Item}`, + }) + .sort((r1, r2) => r1.score - r2.score) + .map((result) => result.original) + : searchOptions; + }, [debouncedSearchTerm, data, billItems]); + + useEffect(() => { + setSearchOptions(filterItems); + }, [filterItems]); const postBillItems = () => { + setIsSubmitting(true); const bill = { - cashPoint: '54065383-b4d4-42d2-af4d-d250a1fd2590', - cashier: 'f9badd80-ab76-11e2-9e96-0800200c9a66', + cashPoint: postBilledItems.cashPoint, + cashier: postBilledItems.cashier, lineItems: [], payments: [], patient: patientUuid, status: 'PENDING', }; - BillItems.map((o) => { - if (o.category == 'StockItem') { - bill.lineItems.push({ - item: o.uuid, - quantity: parseInt(o.Qnty), - price: o.Price, - priceName: 'Default', - priceUuid: '7b9171ac-d3c1-49b4-beff-c9902aee5245', - lineItemOrder: 0, - paymentStatus: 'PENDING', - }); + billItems.forEach((item) => { + let lineItem: any = { + quantity: parseInt(item.Qnty), + price: item.Price, + priceName: 'Default', + priceUuid: postBilledItems.priceUuid, + lineItemOrder: 0, + paymentStatus: 'PENDING', + }; + + if (item.category === 'StockItem') { + lineItem.item = item.uuid; } else { - bill.lineItems.push({ - billableService: o.uuid, - quantity: parseInt(o.Qnty), - price: o.Price, - priceName: 'Default', - priceUuid: '7b9171ac-d3c1-49b4-beff-c9902aee5245', - lineItemOrder: 0, - paymentStatus: 'PENDING', - }); + lineItem.billableService = item.uuid; } + + bill?.lineItems.push(lineItem); }); - const url = `/ws/rest/v1/cashier/bill`; + const url = `${apiBasePath}bill`; processBillItems(bill).then( - (resp) => { + () => { + setIsSubmitting(false); + closeWorkspace(); mutate((key) => typeof key === 'string' && key.startsWith(url), undefined, { revalidate: true }); showSnackbar({ @@ -182,114 +222,132 @@ const BillingForm: React.FC = ({ closeWorkspace }) => { }); }, (error) => { - showSnackbar({ title: 'Bill processing error', kind: 'error', subtitle: error }); + setIsSubmitting(false); + showSnackbar({ title: 'Bill processing error', kind: 'error', subtitle: error?.message }); }, ); }; + const handleClearSearchTerm = () => { + setSearchOptions([]); + }; + return ( -
- - - - -
- -
- {}} - className={styles.billingItem} - onKeyUp={(e) => { - filterItems(e.target.value); - }} - /> - -
    - {searchOptions.map((row) => ( -
  • - -
  • - ))} -
-
+ +
+ + + + + + + + + + +
    + {searchOptions?.length > 0 && + searchOptions?.map((row) => ( +
  • + +
  • + ))} - {/* alert((numberRef.current as HTMLInputElement).value)} - className="testingNumberInput" label="NumberInput label" helperText="Optional helper text." invalidText="Number is not valid" /> */} - - - - - Item - Quantity - Price - Total - - - - {BillItems && Array.isArray(BillItems) ? ( - BillItems.map((row) => ( + {searchOptions?.length === 0 && !isLoading && !!debouncedSearchTerm && ( +

    {t('noResultsFound', 'No results found')}

    + )} + + + +
    + + + Item + Quantity + Price + Total + Action + + + + {billItems && Array.isArray(billItems) ? ( + billItems.map((row) => ( + + {row.Item} + + { + calculateTotal(e, row.Item); + row.Qnty = e.target.value; + }} + /> + + {row.Price} + + {row.Total} + + + removeItemFromBill(row.uuid)} className={styles.removeButton} /> + + + )) + ) : ( +

    Loading...

    + )} - {row.Item} - - { - calculateTotal(e, row.Item); - row.Qnty = e.target.value; - }} - /> - {/* alert((numberRef.current as HTMLInputElement).value)} /> */} - - {row.Price} - - {row.Total} - + + {t('grandTotal', 'Grand total')}: + {convertToCurrency(grandTotal, defaultCurrency)} - )) - ) : ( -

    Loading...

    - )} - - - - Grand Total: - {GrandTotal} - -
    -
    - - - - - -
+ + + + + + + + +
+ ); }; diff --git a/packages/esm-billing-app/src/billing-form/billing-form.resource.ts b/packages/esm-billing-app/src/billing-form/billing-form.resource.ts new file mode 100644 index 0000000..1558a81 --- /dev/null +++ b/packages/esm-billing-app/src/billing-form/billing-form.resource.ts @@ -0,0 +1,32 @@ +import useSWR from 'swr'; +import { type OpenmrsResource, openmrsFetch, restBaseUrl } from '@openmrs/esm-framework'; +import { apiBasePath } from '../constants'; + +export const useBillableItems = () => { + const url = `${apiBasePath}billableService?v=custom:(uuid,name,shortName,serviceStatus,serviceType:(display),servicePrices:(uuid,name,price,paymentMode))`; + const { data, isLoading, error } = useSWR<{ data: { results: Array } }>(url, openmrsFetch); + return { + lineItems: data?.data?.results ?? [], + isLoading, + error, + }; +}; + +export const useCashPoint = () => { + const url = `${apiBasePath}cashPoint`; + const { data, isLoading, error } = useSWR<{ data: { results: Array } }>(url, openmrsFetch); + + return { isLoading, error, cashPoints: data?.data?.results ?? [] }; +}; + +export const createPatientBill = (payload) => { + const postUrl = `${apiBasePath}bill`; + return openmrsFetch(postUrl, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: payload }); +}; + +export const usePaymentMethods = () => { + const url = `${apiBasePath}paymentMode`; + const { data, isLoading, error } = useSWR<{ data: { results: Array } }>(url, openmrsFetch); + + return { isLoading, error, paymentModes: data?.data?.results ?? [] }; +}; diff --git a/packages/esm-billing-app/src/billing-form/billing-form.resource.tsx b/packages/esm-billing-app/src/billing-form/billing-form.resource.tsx deleted file mode 100644 index dd3bf5f..0000000 --- a/packages/esm-billing-app/src/billing-form/billing-form.resource.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import useSWR from 'swr'; -import { OpenmrsResource, openmrsFetch } from '@openmrs/esm-framework'; -import { useState } from 'react'; -export const useBillableItems = () => { - const url = `/ws/rest/v1/cashier/billableService?v=custom:(uuid,name,shortName,serviceStatus,serviceType:(display),servicePrices:(uuid,name,price,paymentMode))`; - const { data, isLoading, error } = useSWR<{ data: { results: Array } }>(url, openmrsFetch); - const [searchTerm, setSearchTerm] = useState(''); - const filteredItems = - data?.data?.results?.filter((item) => item.name.toLowerCase().includes(searchTerm.toLowerCase())) ?? []; - return { - lineItems: filteredItems, - isLoading, - error, - searchTerm, - setSearchTerm, - }; -}; -export const useCashPoint = () => { - const url = `/ws/rest/v1/cashier/cashPoint`; - const { data, isLoading, error } = useSWR<{ data: { results: Array } }>(url, openmrsFetch); - - return { isLoading, error, cashPoints: data?.data?.results ?? [] }; -}; - -export const createPatientBill = (payload) => { - const postUrl = `/ws/rest/v1/cashier/bill`; - return openmrsFetch(postUrl, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: payload }); -}; - -export const usePaymentMethods = (filterWaiver?: boolean) => { - const url = `/ws/rest/v1/cashier/paymentMode`; - const { data, isLoading, error } = useSWR<{ data: { results: Array } }>(url, openmrsFetch); - const methods = data?.data?.results ?? []; - return { isLoading, error, paymentModes: methods ?? [] }; -}; - -export const useConceptAnswers = (conceptUuid: string) => { - const url = `/ws/rest/v1/concept/${conceptUuid}`; - const { data, isLoading, error } = useSWR<{ data: { answers: Array } }>(url, openmrsFetch); - return { conceptAnswers: data?.data?.answers, isLoading, error }; -}; diff --git a/packages/esm-billing-app/src/billing-form/billing-form.scss b/packages/esm-billing-app/src/billing-form/billing-form.scss index b8719c1..9c955fa 100644 --- a/packages/esm-billing-app/src/billing-form/billing-form.scss +++ b/packages/esm-billing-app/src/billing-form/billing-form.scss @@ -1,16 +1,37 @@ @use '@carbon/layout'; +@use '@carbon/styles/scss/spacing'; +@import '~@openmrs/esm-styleguide/src/vars'; -.billingFormContainer { - padding: layout.$spacing-05; +.tablet { + padding: 1.5rem spacing.$spacing-05; + background-color: $ui-02; } -.billingItem { - // padding: layout.$spacing-05; - margin-top: 30px; +.desktop { + padding: 0rem; +} + +.button { + height: 4rem; + display: flex; + align-content: flex-start; + align-items: baseline; + min-width: 50%; + + :global(.cds--inline-loading) { + min-height: 1rem !important; + } + + :global(.cds--inline-loading__text) { + font-size: unset !important; + } +} + +.mt2 { + margin-top: spacing.$spacing-07; } .searchContent { - // display: none; position: absolute; background-color: #fff; min-width: 230px; @@ -23,6 +44,45 @@ .searchItem { border-bottom: 0.1rem solid; border-bottom-color: silver; - // padding: 10px; cursor: pointer; } + +.invalidInput { + border: 2px solid red; +} + +.removeButton { + color: #ee0909; + right: 20px; + cursor: pointer; +} + +.form { + display: flex; + flex-direction: column; + justify-content: space-between; + height: calc(100vh - 6rem); +} + +:global(.omrs-breakpoint-lt-desktop) .form { + background-color: #ededed; +} + +:global(.omrs-breakpoint-gt-tablet) .form { + background-color: $ui-02; +} + +.grid { + margin: spacing.$spacing-05; +} + +.row { + margin: spacing.$spacing-03 0rem 0rem; + display: flex; + flex-flow: row wrap; + gap: spacing.$spacing-05; +} + +.spacer { + margin-top: spacing.$spacing-05; +} diff --git a/packages/esm-billing-app/src/billing-form/helper.ts b/packages/esm-billing-app/src/billing-form/helper.ts deleted file mode 100644 index 55edb5a..0000000 --- a/packages/esm-billing-app/src/billing-form/helper.ts +++ /dev/null @@ -1,2 +0,0 @@ -export const hasPatientBeenExempted = (attributes: Array, isPatientExempted: string): boolean => - attributes.find(({ attributeType }) => attributeType === isPatientExempted)?.value === true; diff --git a/packages/esm-billing-app/src/billing-form/social-health-authority/sha-number-validity.component.tsx b/packages/esm-billing-app/src/billing-form/social-health-authority/sha-number-validity.component.tsx deleted file mode 100644 index 8a238bf..0000000 --- a/packages/esm-billing-app/src/billing-form/social-health-authority/sha-number-validity.component.tsx +++ /dev/null @@ -1,77 +0,0 @@ -import React, { useState } from 'react'; -import { useTranslation } from 'react-i18next'; -import { Form, TextInput, Button, InlineLoading, InlineNotification } from '@carbon/react'; - -type SHANumberValidityProps = { - paymentMethod: any; -}; - -const SHANumberValidity: React.FC = ({ paymentMethod }) => { - const { t } = useTranslation(); - const [shaNumber, setNumber] = useState(''); - const [message, setMessage] = useState(''); - const [isLoading, setIsLoading] = useState(false); - const [validity, setValidity] = useState(false); // TODO: set validity based on api response - const isSHA = paymentMethod?.name === 'Social Health Insurance Fund (SHA)'; - - const handleValidateSHANumber = () => { - setIsLoading(true); - const randomNumber = Math.floor(Math.random() * 10) + 1; - // TODO call api to validate sha number - setTimeout(() => { - // TODO: set validity based on api response and update the expiry date based on the response as visit attribute - randomNumber % 2 === 0 ? setValidity(false) : setValidity(true); - setMessage( - randomNumber % 2 === 0 - ? t('invalidSHANumber', 'SHA number is invalid, advice patient to update payment or contact SHA') - : t('validSHANumber', 'SHA number is valid, proceed with care'), - ); - setIsLoading(false); - }, 1500); - }; - - if (!isSHA) { - return null; - } - - return ( -
- setNumber(e.target.value)} - labelText={t('shaNumber', 'SHA Number')} - placeholder={t('enterSHANumber', 'Enter SHA Number')} - /> - {isLoading ? ( - - ) : ( - - )} - {message !== '' && ( -

- -

- )} - - ); -}; - -export default SHANumberValidity; diff --git a/packages/esm-billing-app/src/billing-form/visit-attributes/visit-attributes-form.component.tsx b/packages/esm-billing-app/src/billing-form/visit-attributes/visit-attributes-form.component.tsx index 744935e..c5e908f 100644 --- a/packages/esm-billing-app/src/billing-form/visit-attributes/visit-attributes-form.component.tsx +++ b/packages/esm-billing-app/src/billing-form/visit-attributes/visit-attributes-form.component.tsx @@ -1,13 +1,12 @@ -import React, { useCallback } from 'react'; -import { useTranslation } from 'react-i18next'; -import styles from './visit-attributes-form.scss'; -import { TextInput, InlineLoading, ComboBox, RadioButtonGroup, RadioButton, Layer } from '@carbon/react'; -import { Controller, useForm } from 'react-hook-form'; +import React from 'react'; +import { z } from 'zod'; import { zodResolver } from '@hookform/resolvers/zod'; -import { string, z } from 'zod'; +import { Controller, useForm } from 'react-hook-form'; +import { useTranslation } from 'react-i18next'; +import { TextInput, InlineLoading, ComboBox, RadioButtonGroup, RadioButton } from '@carbon/react'; import { usePaymentMethods } from '../billing-form.resource'; +import styles from './visit-attributes-form.scss'; import { useConfig } from '@openmrs/esm-framework'; -import { BillingConfig } from '../../config-schema'; type VisitAttributesFormProps = { setAttributes: (state) => void; @@ -15,56 +14,51 @@ type VisitAttributesFormProps = { }; type VisitAttributesFormValue = { - isPatientExempted: string; - paymentMethods: { uuid: string; name: string }; + paymentDetails: string; + paymentMethods: string; insuranceScheme: string; policyNumber: string; - exemptionCategory: string; + patientCategory: string; }; const visitAttributesFormSchema = z.object({ - isPatientExempted: z.string(), - paymentMethods: z.object({ uuid: z.string(), name: z.string() }), + paymentDetails: z.string(), + paymentMethods: z.string(), insuranceSchema: z.string(), policyNumber: z.string(), - exemptionCategory: z.string(), + patientCategory: z.string(), }); const VisitAttributesForm: React.FC = ({ setAttributes, setPaymentMethod }) => { const { t } = useTranslation(); - const { visitAttributeTypes, patientExemptionCategories } = useConfig(); - const { control, getValues, watch, setValue } = useForm({ + const { control, getValues, watch } = useForm({ mode: 'all', defaultValues: {}, resolver: zodResolver(visitAttributesFormSchema), }); - const [isPatientExempted, paymentMethods, insuranceSchema, policyNumber, exemptionCategory] = watch([ - 'isPatientExempted', + const { patientCatergory, catergoryConcepts } = useConfig(); + const [paymentDetails, paymentMethods, insuranceSchema, policyNumber, patientCategory] = watch([ + 'paymentDetails', 'paymentMethods', 'insuranceScheme', 'policyNumber', - 'exemptionCategory', + 'patientCategory', ]); - const { paymentModes, isLoading: isLoadingPaymentModes } = usePaymentMethods(true); - - const resetFormFieldsForNonExemptedPatients = useCallback(() => { - if ((isPatientExempted && paymentMethods !== null) || paymentMethods !== undefined) { - setValue('insuranceScheme', ''); - setValue('policyNumber', ''); - } - }, [isPatientExempted, paymentMethods, setValue]); + const { paymentModes, isLoading: isLoadingPaymentModes } = usePaymentMethods(); + React.useEffect(() => { + setAttributes(createVisitAttributesPayload()); + }, [paymentDetails, paymentMethods, insuranceSchema, policyNumber, patientCategory]); - const createVisitAttributesPayload = useCallback(() => { - const { exemptionCategory, paymentMethods, policyNumber, isPatientExempted } = getValues(); + const createVisitAttributesPayload = () => { + const { paymentDetails, paymentMethods, insuranceScheme, policyNumber, patientCategory } = getValues(); setPaymentMethod(paymentMethods); - resetFormFieldsForNonExemptedPatients(); const formPayload = [ - { uuid: visitAttributeTypes.isPatientExempted, value: isPatientExempted }, - { uuid: visitAttributeTypes.paymentMethods, value: paymentMethods?.uuid }, - { uuid: visitAttributeTypes.policyNumber, value: policyNumber }, - { uuid: visitAttributeTypes.insuranceScheme, value: insuranceSchema }, - { uuid: visitAttributeTypes.exemptionCategory, value: exemptionCategory }, + { uuid: patientCatergory.paymentDetails, value: paymentDetails }, + { uuid: patientCatergory.paymentMethods, value: paymentMethods }, + { uuid: patientCatergory.insuranceScheme, value: insuranceScheme }, + { uuid: patientCatergory.policyNumber, value: policyNumber }, + { uuid: patientCatergory.patientCategory, value: patientCategory }, ]; const visitAttributesPayload = formPayload.filter( (item) => item.value !== undefined && item.value !== null && item.value !== '', @@ -73,21 +67,7 @@ const VisitAttributesForm: React.FC = ({ setAttributes attributeType: value.uuid, value: value.value, })); - }, [ - visitAttributeTypes.insuranceScheme, - visitAttributeTypes.isPatientExempted, - visitAttributeTypes.exemptionCategory, - visitAttributeTypes.paymentMethods, - visitAttributeTypes.policyNumber, - getValues, - insuranceSchema, - resetFormFieldsForNonExemptedPatients, - setPaymentMethod, - ]); - - React.useEffect(() => { - setAttributes(createVisitAttributesPayload()); - }, [paymentMethods, insuranceSchema, policyNumber, exemptionCategory, setAttributes, createVisitAttributesPayload]); + }; if (isLoadingPaymentModes) { return ( @@ -101,96 +81,91 @@ const VisitAttributesForm: React.FC = ({ setAttributes return (
-
{t('billing', 'Billing')}
-
-
+
{t('paymentDetails', 'Payment Details')}
+ ( + field.onChange(selected)} + orientation="vertical" + legendText={t('paymentDetails', 'Payment Details')} + name="payment-details"> + + + + )} + /> + + {paymentDetails === catergoryConcepts.payingDetails && ( + ( + field.onChange(selectedItem?.uuid)} + id="paymentMethods" + items={paymentModes} + itemToString={(item) => (item ? item.name : '')} + titleText={t('paymentMethods', 'Payment methods')} + placeholder={t('selectPaymentMethod', 'Select payment method')} + /> + )} + /> + )} + + {paymentMethods === catergoryConcepts.insuranceDetails && paymentDetails === catergoryConcepts.payingDetails && ( + <> ( - field.onChange(selected)} - orientation="horizontal" - legendText={t('isPatientExemptedLegend', 'Is patient exempted from payment?')} - name="patientExemption"> - - - + field.onChange(e.target.value)} + id="insurance-scheme" + type="text" + labelText={t('insuranceScheme', 'Insurance scheme')} + /> )} /> -
- {isPatientExempted && ( -
- ( - field.onChange(selectedItem?.uuid)} - id="exemptionCategory" - items={patientExemptionCategories} - itemToString={(item) => (item ? item.label : '')} - titleText={t('exemptionCategory', 'Exemption category')} - placeholder={t('selectExemptionCategory', 'Select exemption category')} - /> - )} - /> -
- )} -
( - field.onChange(selectedItem)} - id="paymentMethods" - items={paymentModes} - itemToString={(item) => (item ? item.name : '')} - titleText={t('paymentMethodsTitle', 'Payment methods')} - placeholder={t('selectPaymentMethodPlaceholder', 'Select payment method')} + onChange={(e) => field.onChange(e.target.value)} + {...field} + id="policy-number" + type="text" + labelText={t('policyNumber', 'Policy number')} /> )} /> -
+ + )} - {paymentMethods?.name?.toLocaleLowerCase() === 'insurance' && ( - <> -
- ( - field.onChange(e.target.value)} - id="insurance-scheme" - type="text" - labelText={t('insuranceScheme', 'Insurance scheme')} - /> - )} - /> -
-
- ( - field.onChange(e.target.value)} - id="policy-number" - type="text" - labelText={t('policyNumber', 'Policy number')} - /> - )} - /> -
- - )} -
+ {paymentDetails === catergoryConcepts.nonPayingDetails && ( + ( + field.onChange(selectedItem?.uuid)} + id="patientCategory" + items={[ + { text: 'Child under 5', uuid: catergoryConcepts.childUnder5 }, + { text: 'Student', uuid: catergoryConcepts.student }, + ]} + itemToString={(item) => (item ? item.text : '')} + titleText={t('patientCategory', 'Patient category')} + /> + )} + /> + )}
); }; diff --git a/packages/esm-billing-app/src/billing-form/visit-attributes/visit-attributes-form.scss b/packages/esm-billing-app/src/billing-form/visit-attributes/visit-attributes-form.scss index 47c7f7e..1ddf6e8 100644 --- a/packages/esm-billing-app/src/billing-form/visit-attributes/visit-attributes-form.scss +++ b/packages/esm-billing-app/src/billing-form/visit-attributes/visit-attributes-form.scss @@ -2,17 +2,21 @@ @use '@carbon/type'; @use '@carbon/colors'; +.sectionContainer { + margin: 0 layout.$spacing-03; +} + .sectionTitle { @include type.type-style('heading-compact-02'); color: colors.$gray-70; margin: 0 0 layout.$spacing-03 0; - flex-basis: 30%; } - -.sectionField { - flex-basis: 70%; +.visitAttributesContainer { + row-gap: layout.$spacing-03; + display: flex; + flex-direction: column; } -.sectionFieldLayer { - margin-bottom: 0.5rem; +.sectionField { + margin-top: layout.$spacing-03; } diff --git a/packages/esm-billing-app/src/billing-header/billing-header.component.tsx b/packages/esm-billing-app/src/billing-header/billing-header.component.tsx index 99fb9f5..c085a80 100644 --- a/packages/esm-billing-app/src/billing-header/billing-header.component.tsx +++ b/packages/esm-billing-app/src/billing-header/billing-header.component.tsx @@ -1,10 +1,14 @@ -import React from 'react'; +import React, { useContext } from 'react'; import { useTranslation } from 'react-i18next'; import { Calendar, Location, UserFollow } from '@carbon/react/icons'; import { formatDate, useSession } from '@openmrs/esm-framework'; import BillingIllustration from './billing-illustration.component'; import styles from './billing-header.scss'; - +import SelectedDateContext from '../hooks/selectedDateContext'; +import { omrsDateFormat } from '../constants'; +import { DatePickerInput } from '@carbon/react'; +import { DatePicker } from '@carbon/react'; +import dayjs from 'dayjs'; interface BillingHeaderProps { title: string; } @@ -13,6 +17,7 @@ const BillingHeader: React.FC = ({ title }) => { const { t } = useTranslation(); const session = useSession(); const location = session?.sessionLocation?.display; + const { selectedDate, setSelectedDate } = useContext(SelectedDateContext); return (
@@ -32,8 +37,19 @@ const BillingHeader: React.FC = ({ title }) => { {location} · - - {formatDate(new Date(), { mode: 'standard' })} + setSelectedDate(dayjs(date).startOf('day').format(omrsDateFormat))} + value={dayjs(selectedDate).format('DD MMM YYYY')} + dateFormat="d-M-Y" + datePickerType="single"> + +
diff --git a/packages/esm-billing-app/src/billing-prompt/billing-prompt.resource.tsx b/packages/esm-billing-app/src/billing-prompt/billing-prompt.resource.tsx deleted file mode 100644 index bab087a..0000000 --- a/packages/esm-billing-app/src/billing-prompt/billing-prompt.resource.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import { Visit, useConfig, useVisit } from '@openmrs/esm-framework'; -import { useBills } from '../billing.resource'; -import { BillingConfig } from '../config-schema'; - -const INPATIENT_VISIT_TYPE = 'a73e2ac6-263b-47fc-99fc-e0f2c09fc914'; -const INSURANCE_PAYMENT_METHOD = 'beac329b-f1dc-4a33-9e7c-d95821a137a6'; - -// helper functions -const isCurrentVisitInPatient = (currentVisit: Visit) => currentVisit?.visitType?.uuid === INPATIENT_VISIT_TYPE; -const isPaymentMethodInsurance = (currentVisit: Visit, insurancePaymentMethod: string) => - currentVisit?.attributes.find((attr) => attr.attributeType.uuid === insurancePaymentMethod)?.value === - INSURANCE_PAYMENT_METHOD; - -export const useBillingPrompt = (patientUuid: string) => { - const { - visitAttributeTypes: { paymentMethods }, - } = useConfig(); - const { currentVisit, isLoading: isLoadingVisit } = useVisit(patientUuid); - const { bills, isLoading, error } = useBills(patientUuid); - - const flattenBills = bills - .flatMap((bill) => bill.lineItems) - .filter((lineItem) => lineItem.paymentStatus !== 'EXEMPTED'); - const flattenPayments = bills.flatMap((bill) => bill.payments); - - const totalBill = flattenBills.reduce((acc, curr) => acc + curr.price * curr.quantity, 0); - const totalPayments = flattenPayments.reduce((acc, curr) => acc + curr.amountTendered, 0); - const patientBillBalance = totalBill - totalPayments; - - // Should show billing prompt if the following conditions are met: - // 1. The current visit is not an inpatient visit - // 2. The patient has a bill balance - // 3. The payment method is not insurances - - return { - shouldShowBillingPrompt: - !isCurrentVisitInPatient(currentVisit) && - patientBillBalance > 0 && - !isPaymentMethodInsurance(currentVisit, paymentMethods), - isLoading: isLoading || isLoadingVisit, - error, - currentVisit, - bills, - }; -}; diff --git a/packages/esm-billing-app/src/billing.resource.ts b/packages/esm-billing-app/src/billing.resource.ts index d68f18c..7b3f36e 100644 --- a/packages/esm-billing-app/src/billing.resource.ts +++ b/packages/esm-billing-app/src/billing.resource.ts @@ -1,56 +1,51 @@ import useSWR from 'swr'; -import { formatDate, parseDate, openmrsFetch, useSession, useVisit } from '@openmrs/esm-framework'; -import { FacilityDetail, MappedBill, PatientInvoice } from './types'; +import { formatDate, parseDate, openmrsFetch, useSession, useVisit, restBaseUrl } from '@openmrs/esm-framework'; +import type { FacilityDetail, MappedBill, PatientInvoice } from './types'; import isEmpty from 'lodash-es/isEmpty'; import sortBy from 'lodash-es/sortBy'; +import { apiBasePath, omrsDateFormat } from './constants'; +import { useContext } from 'react'; +import SelectedDateContext from './hooks/selectedDateContext'; import dayjs from 'dayjs'; export const useBills = (patientUuid: string = '', billStatus: string = '') => { - // TODO: Should be provided from the UI - const defaultCreatedOnOrAfterDateTime = dayjs().startOf('day').toISOString(); - const url = `/ws/rest/v1/cashier/bill?status=${billStatus}&v=custom:(uuid,display,voided,voidReason,adjustedBy,cashPoint:(uuid,name),cashier:(uuid,display),dateCreated,lineItems,patient:(uuid,display))&createdOnOrAfter=${defaultCreatedOnOrAfterDateTime}`; + const { selectedDate } = useContext(SelectedDateContext); + const endDate = dayjs().endOf('day').format(omrsDateFormat); + const url = `${apiBasePath}bill?q=&v=full`; + + const patientUrl = `${apiBasePath}bill?patientUuid=${patientUuid}&v=full`; const { data, error, isLoading, isValidating, mutate } = useSWR<{ data: { results: Array } }>( - patientUuid ? `${url}&patientUuid=${patientUuid}` : url, + isEmpty(patientUuid) ? url : patientUrl, openmrsFetch, - { - errorRetryCount: 2, - }, ); - const mapBillProperties = (bill: PatientInvoice): MappedBill => { - // create base object - const mappedBill: MappedBill = { - id: bill?.id, - uuid: bill?.uuid, - patientName: bill?.patient?.display.split('-')?.[1], - identifier: bill?.patient?.display.split('-')?.[0], - patientUuid: bill?.patient?.uuid, - status: bill.lineItems.some((item) => item.paymentStatus === 'PENDING') ? 'PENDING' : 'PAID', - receiptNumber: bill?.receiptNumber, - cashier: bill?.cashier, - cashPointUuid: bill?.cashPoint?.uuid, - cashPointName: bill?.cashPoint?.name, - cashPointLocation: bill?.cashPoint?.location?.display, - dateCreated: bill?.dateCreated ? formatDate(parseDate(bill.dateCreated), { mode: 'wide' }) : '--', - lineItems: bill.lineItems, - billingService: bill.lineItems.map((bill) => bill.item || bill.billableService || '--').join(' '), - payments: bill.payments, - display: bill.display, - totalAmount: bill?.lineItems?.map((item) => item.price * item.quantity).reduce((prev, curr) => prev + curr, 0), - }; - - return mappedBill; - }; + const mapBillProperties = (bill: PatientInvoice): MappedBill => ({ + id: bill?.id, + uuid: bill?.uuid, + patientName: bill?.patient?.display.split('-')?.[1], + identifier: bill?.patient?.display.split('-')?.[0], + patientUuid: bill?.patient?.uuid, + status: bill.lineItems.some((item) => item.paymentStatus === 'PENDING') ? 'PENDING' : 'PAID', + receiptNumber: bill?.receiptNumber, + cashier: bill?.cashier, + cashPointUuid: bill?.cashPoint?.uuid, + cashPointName: bill?.cashPoint?.name, + cashPointLocation: bill?.cashPoint?.location?.display, + dateCreated: bill?.dateCreated ? formatDate(parseDate(bill.dateCreated), { mode: 'wide' }) : '--', + lineItems: bill?.lineItems, + billingService: bill?.lineItems.map((bill) => bill?.item || bill?.billableService || '--').join(' '), + payments: bill?.payments, + display: bill?.display, + totalAmount: bill?.lineItems?.map((item) => item.price * item.quantity).reduce((prev, curr) => prev + curr, 0), + }); - const sortBills = sortBy(data?.data?.results ?? [], ['dateCreated']).reverse(); - const filteredBills = billStatus === '' ? sortBills : sortBills?.filter((bill) => bill.status === billStatus); + const sortedBills = sortBy(data?.data?.results ?? [], ['dateCreated']).reverse(); + const filteredBills = billStatus === '' ? sortedBills : sortedBills?.filter((bill) => bill?.status === billStatus); const mappedResults = filteredBills?.map((bill) => mapBillProperties(bill)); - const filteredResults = mappedResults?.filter((res) => res.patientUuid === patientUuid); - const formattedBills = isEmpty(patientUuid) ? mappedResults : filteredResults || []; return { - bills: formattedBills, + bills: mappedResults, error, isLoading, isValidating, @@ -59,46 +54,38 @@ export const useBills = (patientUuid: string = '', billStatus: string = '') => { }; export const useBill = (billUuid: string) => { - const url = `/ws/rest/v1/cashier/bill/${billUuid}`; + const url = `${apiBasePath}bill/${billUuid}`; const { data, error, isLoading, isValidating, mutate } = useSWR<{ data: PatientInvoice }>( billUuid ? url : null, openmrsFetch, - { - errorRetryCount: 2, - }, ); - const mapBillProperties = (bill: PatientInvoice): MappedBill => { - // create base object - const mappedBill: MappedBill = { - id: bill?.id, - uuid: bill?.uuid, - patientName: bill?.patient?.display.split('-')?.[1], - identifier: bill?.patient?.display.split('-')?.[0], - patientUuid: bill?.patient?.uuid, - status: - bill.lineItems.length > 1 - ? bill.lineItems.some((item) => item.paymentStatus === 'PENDING') - ? 'PENDING' - : 'PAID' - : bill.status, - receiptNumber: bill?.receiptNumber, - cashier: bill?.cashier, - cashPointUuid: bill?.cashPoint?.uuid, - cashPointName: bill?.cashPoint?.name, - cashPointLocation: bill?.cashPoint?.location?.display, - dateCreated: bill?.dateCreated ? formatDate(parseDate(bill.dateCreated), { mode: 'wide' }) : '--', - lineItems: bill.lineItems, - billingService: bill.lineItems.map((bill) => bill.item).join(' '), - payments: bill.payments, - totalAmount: bill?.lineItems?.map((item) => item.price * item.quantity).reduce((prev, curr) => prev + curr, 0), - tenderedAmount: bill?.payments?.map((item) => item.amountTendered).reduce((prev, curr) => prev + curr, 0), - }; - - return mappedBill; - }; + const mapBillProperties = (bill: PatientInvoice): MappedBill => ({ + id: bill?.id, + uuid: bill?.uuid, + patientName: bill?.patient?.display.split('-')?.[1], + identifier: bill?.patient?.display.split('-')?.[0], + patientUuid: bill?.patient?.uuid, + status: + bill.lineItems.length > 1 + ? bill.lineItems.some((item) => item.paymentStatus === 'PENDING') + ? 'PENDING' + : 'PAID' + : bill.status, + receiptNumber: bill?.receiptNumber, + cashier: bill?.cashier, + cashPointUuid: bill?.cashPoint?.uuid, + cashPointName: bill?.cashPoint?.name, + cashPointLocation: bill?.cashPoint?.location?.display, + dateCreated: bill?.dateCreated ? formatDate(parseDate(bill.dateCreated), { mode: 'wide' }) : '--', + lineItems: bill?.lineItems, + billingService: bill?.lineItems.map((bill) => bill.item).join(' '), + payments: bill.payments, + totalAmount: bill?.lineItems?.map((item) => item.price * item.quantity).reduce((prev, curr) => prev + curr, 0), + tenderedAmount: bill?.payments?.map((item) => item.amountTendered).reduce((prev, curr) => prev + curr, 0), + }); - const formattedBill = data?.data ? mapBillProperties(data?.data) : ({} as MappedBill); + const formattedBill = data?.data ? mapBillProperties(data?.data) : null; return { bill: formattedBill, @@ -110,7 +97,8 @@ export const useBill = (billUuid: string) => { }; export const processBillPayment = (payload, billUuid: string) => { - const url = `/ws/rest/v1/cashier/bill/${billUuid}`; + const url = `${apiBasePath}bill/${billUuid}`; + return openmrsFetch(url, { method: 'POST', body: payload, @@ -121,22 +109,12 @@ export const processBillPayment = (payload, billUuid: string) => { }; export function useDefaultFacility() { + const url = `${restBaseUrl}/kenyaemr/default-facility`; const { authenticated } = useSession(); - const url = '/ws/rest/v1/kenyaemr/default-facility'; - const { data, isLoading } = useSWR<{ data: FacilityDetail }>(authenticated ? url : null, openmrsFetch, {}); - return { data: data?.data, isLoading: isLoading }; -} -export function useFetchSearchResults(searchVal, category) { - let url = ``; - if (category == 'Stock Item') { - url = `/ws/rest/v1/stockmanagement/stockitem?v=default&limit=10&q=${searchVal}`; - } else { - url = `/ws/rest/v1/cashier/billableService?v=custom:(uuid,name,shortName,serviceStatus,serviceType:(display),servicePrices:(uuid,name,price,paymentMode))`; - } - const { data, error, isLoading, isValidating } = useSWR(searchVal ? url : null, openmrsFetch, {}); + const { data, isLoading } = useSWR<{ data: FacilityDetail }>(authenticated ? url : null, openmrsFetch); - return { data: data?.data, error, isLoading: isLoading, isValidating }; + return { data: data?.data, isLoading: isLoading }; } export const usePatientPaymentInfo = (patientUuid: string) => { @@ -152,8 +130,31 @@ export const usePatientPaymentInfo = (patientUuid: string) => { return paymentInformation; }; +export function useFetchSearchResults(searchVal, category) { + let url = ``; + if (category == 'Stock Item') { + url = `${restBaseUrl}/stockmanagement/stockitem?v=default&limit=10&q=${searchVal}`; + } else { + url = `${apiBasePath}billableService?v=custom:(uuid,name,shortName,serviceStatus,serviceType:(display),servicePrices:(uuid,name,price,paymentMode))`; + } + const { data, error, isLoading, isValidating } = useSWR(searchVal ? url : null, openmrsFetch, {}); + + return { data: data?.data, error, isLoading: isLoading, isValidating }; +} + export const processBillItems = (payload) => { - const url = `/ws/rest/v1/cashier/bill`; + const url = `${apiBasePath}bill`; + return openmrsFetch(url, { + method: 'POST', + body: payload, + headers: { + 'Content-Type': 'application/json', + }, + }); +}; + +export const updateBillItems = (payload) => { + const url = `${apiBasePath}bill/${payload.uuid}`; return openmrsFetch(url, { method: 'POST', body: payload, diff --git a/packages/esm-billing-app/src/bills-table/bills-table.component.tsx b/packages/esm-billing-app/src/bills-table/bills-table.component.tsx index 9e58d1d..f3e02b3 100644 --- a/packages/esm-billing-app/src/bills-table/bills-table.component.tsx +++ b/packages/esm-billing-app/src/bills-table/bills-table.component.tsx @@ -30,23 +30,13 @@ import { EmptyDataIllustration } from '@openmrs/esm-patient-common-lib'; import { useBills } from '../billing.resource'; import styles from './bills-table.scss'; -const filterItems = [ - { id: '', text: 'All bills' }, - { id: 'PENDING', text: 'Pending bills' }, - { id: 'PAID', text: 'Paid bills' }, -]; - -type BillTableProps = { - defaultBillPaymentStatus?: string; -}; - -const BillsTable: React.FC = ({ defaultBillPaymentStatus = '' }) => { +const BillsTable = () => { const { t } = useTranslation(); const id = useId(); const config = useConfig(); const layout = useLayoutType(); const responsiveSize = isDesktop(layout) ? 'sm' : 'lg'; - const [billPaymentStatus, setBillPaymentStatus] = useState(defaultBillPaymentStatus); + const [billPaymentStatus, setBillPaymentStatus] = useState('PENDING'); const pageSizes = config?.bills?.pageSizes ?? [10, 20, 30, 40, 50]; const [pageSize, setPageSize] = useState(config?.bills?.pageSize ?? 10); const { bills, isLoading, isValidating, error } = useBills('', billPaymentStatus); @@ -92,10 +82,7 @@ const BillsTable: React.FC = ({ defaultBillPaymentStatus = '' }) const { paginated, goTo, results, currentPage } = usePagination(searchResults, pageSize); const setBilledItems = (bill) => - bill?.lineItems?.reduce( - (acc, item) => acc + (acc ? ' & ' : '') + (item.billableService.split(':')[1] || item.item.split(':')[1] || ''), - '', - ); + bill?.lineItems?.reduce((acc, item) => acc + (acc ? ' & ' : '') + (item.billableService || item.item || ''), ''); const billingUrl = '${openmrsSpaBase}/home/billing/patient/${patientUuid}/${uuid}'; @@ -125,6 +112,12 @@ const BillsTable: React.FC = ({ defaultBillPaymentStatus = '' }) [goTo, setSearchString], ); + const filterItems = [ + { id: '', text: 'All bills' }, + { id: 'PENDING', text: 'Pending bills' }, + { id: 'PAID', text: 'Paid bills' }, + ]; + const handleFilterChange = ({ selectedItem }) => setBillPaymentStatus(selectedItem.id); if (isLoading) { @@ -159,7 +152,7 @@ const BillsTable: React.FC = ({ defaultBillPaymentStatus = '' }) className={styles.filterDropdown} direction="bottom" id={`filter-${id}`} - initialSelectedItem={filterItems.find((item) => item.id === billPaymentStatus)} + initialSelectedItem={filterItems[1]} items={filterItems} itemToString={(item) => (item ? item.text : '')} label="" diff --git a/packages/esm-billing-app/src/bills-table/bills-table.test.tsx b/packages/esm-billing-app/src/bills-table/bills-table.test.tsx index 56f2723..2f658f1 100644 --- a/packages/esm-billing-app/src/bills-table/bills-table.test.tsx +++ b/packages/esm-billing-app/src/bills-table/bills-table.test.tsx @@ -1,8 +1,8 @@ import React from 'react'; +import userEvent from '@testing-library/user-event'; import { render, screen } from '@testing-library/react'; import { useBills } from '../billing.resource'; import BillsTable from './bills-table.component'; -import userEvent from '@testing-library/user-event'; const mockbills = useBills as jest.Mock; @@ -121,12 +121,12 @@ describe('BillsTable', () => { // Should filter the table when bill payment status combobox is changed const billCategorySelect = screen.getByRole('combobox'); expect(billCategorySelect).toBeInTheDocument(); - await user.click(billCategorySelect, { name: 'All bills' }); - expect(mockbills).toHaveBeenCalledWith('', ''); - - await user.click(screen.getByText('Pending bills')); - expect(screen.getByText('Pending bills')).toBeInTheDocument(); + await user.click(billCategorySelect, { name: 'Pending bills' }); expect(mockbills).toHaveBeenCalledWith('', 'PENDING'); + + await user.click(screen.getByText('All bills')); + expect(screen.getByText('All bills')).toBeInTheDocument(); + expect(mockbills).toHaveBeenCalledWith('', ''); }); test('should show the loading spinner while retrieving data', () => { @@ -149,5 +149,6 @@ describe('BillsTable', () => { const patientNameLink = screen.getByRole('link', { name: 'John Doe' }); expect(patientNameLink).toBeInTheDocument(); + expect(patientNameLink).toHaveAttribute('href', '/openmrs/spa/home/billing/patient/uuid1/1'); }); }); diff --git a/packages/esm-billing-app/src/config-schema.ts b/packages/esm-billing-app/src/config-schema.ts index c7e3a45..19fe93c 100644 --- a/packages/esm-billing-app/src/config-schema.ts +++ b/packages/esm-billing-app/src/config-schema.ts @@ -1,85 +1,77 @@ import { Type } from '@openmrs/esm-framework'; -export interface BillingConfig { - visitAttributeTypes: { - isPatientExempted: string; - paymentMethods: string; - insuranceScheme: string; - policyNumber: string; - exemptionCategory: string; - billPaymentStatus: string; - }; - patientExemptionCategories: Array<{ value: string; label: string }>; - excludedPaymentMode: Array<{ uuid: string; label: string }>; - enforceBillPayment: boolean; -} +export interface BillingConfig {} export const configSchema = { - visitAttributeTypes: { - isPatientExempted: { - _type: Type.String, - _default: '3b9dfac8-9e4d-11ee-8c90-0242ac120002', - _description: 'Whether the patient should be exempted from paying for service i.e Prisoners', - }, - paymentMethods: { - _type: Type.String, - _description: 'The payment methods visit attribute uuid', - _default: 'e6cb0c3b-04b0-4117-9bc6-ce24adbda802', - }, - insuranceScheme: { - _type: Type.String, - _description: 'The insurance scheme visit attribute uuid', - _default: '2d0fa959-6780-41f1-85b1-402045935068', - }, - policyNumber: { - _type: Type.String, - _description: 'The policy number visit attribute uuid', - _default: '0f4f3306-f01b-43c6-af5b-fdb60015cb02', + patientCatergory: { + _type: Type.Object, + _description: 'Patient Category Custom UUIDs', + _default: { + paymentDetails: 'fbc0702d-b4c9-4968-be63-af8ad3ad6239', + paymentMethods: '8553afa0-bdb9-4d3c-8a98-05fa9350aa85', + policyNumber: '3a988e33-a6c0-4b76-b924-01abb998944b', + insuranceScheme: 'aac48226-d143-4274-80e0-264db4e368ee', + patientCategory: '3b9dfac8-9e4d-11ee-8c90-0242ac120002', + formPayloadPending: '919b51c9-8e2e-468f-8354-181bf3e55786', }, - exemptionCategory: { - _type: Type.String, - _description: 'The exemption category visit attribute uuid', - _default: 'df0362f9-782e-4d92-8bb2-3112e9e9eb3c', - }, - billPaymentStatus: { - _type: Type.String, - _description: 'The bill payment status visit attribute uuid', - _default: '919b51c9-8e2e-468f-8354-181bf3e55786', + }, + + catergoryConcepts: { + _type: Type.Object, + _description: 'Patient Category Concept UUIDs', + _default: { + payingDetails: '44b34972-6630-4e5a-a9f6-a6eb0f109650', + nonPayingDetails: 'f3fb2d88-cccd-422c-8766-be101ba7bd2e', + insuranceDetails: 'beac329b-f1dc-4a33-9e7c-d95821a137a6', + childUnder5: '1528AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', + student: '159465AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', }, }, - patientExemptionCategories: { - _type: Type.Array, - _elements: { - value: { - _type: Type.UUID, - _description: 'The value of the exemption category', - }, - label: { - _type: Type.String, - _default: null, - _description: 'The label of the exemption category', - }, + + postBilledItems: { + _type: Type.Object, + _description: 'Post Bill Items such as cashPoints, cashier, priceUUid when submitting a bill', + _default: { + cashPoint: '54065383-b4d4-42d2-af4d-d250a1fd2590', + cashier: 'f9badd80-ab76-11e2-9e96-0800200c9a66', + priceUuid: '7b9171ac-d3c1-49b4-beff-c9902aee5245', }, - _default: [{ value: 'IN_PRISON', label: 'In Prison' }], }, - excludedPaymentMode: { - _type: Type.Array, - _elements: { - uuid: { - _type: Type.UUID, - _description: 'The value of the payment mode to be excluded', - }, - label: { - _type: Type.String, - _default: null, - _description: 'The label of the payment mode to be excluded', - }, + + serviceTypes: { + _type: Type.Object, + _description: 'Post Bill Items such as cashPoints, cashier, priceUUid when submitting a bill', + _default: { + billableService: '21b8cf43-9f9f-4d02-9f4a-d710ece54261', }, - _default: [], }, - enforceBillPayment: { + + defaultCurrency: { + _type: Type.String, + _description: 'The default currency for the application. Specify the currency code (e.g., KES, UGX, GBP).', + _default: 'KES', + }, + + pageSize: { + _type: Type.String, + _description: 'The default page size', + _default: 10, + }, + + showEditBillButton: { _type: Type.Boolean, - _default: true, - _description: 'Whether to enforce bill payment or not for patient to receive service', + _description: 'Whether to show the edit bill button or not.', + _default: false, }, }; + +export interface ConfigObject { + patientCatergory: Object; + defaultCurrency: string; + catergoryConcepts: Object; + pageSize; + object; + showEditBillButton: boolean; + postBilledItems: Object; + serviceTypes: Object; +} diff --git a/packages/esm-billing-app/src/constants.ts b/packages/esm-billing-app/src/constants.ts index f8b1ae7..eb8ef41 100644 --- a/packages/esm-billing-app/src/constants.ts +++ b/packages/esm-billing-app/src/constants.ts @@ -1,2 +1,5 @@ -export const PENDING_PAYMENT_STATUS = 'PENDING'; -export const EXEMPTED_PAYMENT_STATUS = 'EXEMPTED'; +import { restBaseUrl } from '@openmrs/esm-framework'; + +export const apiBasePath = `${restBaseUrl}/billing/`; + +export const omrsDateFormat = 'YYYY-MM-DDTHH:mm:ss.SSSZZ'; diff --git a/packages/esm-billing-app/src/dashboard.meta.ts b/packages/esm-billing-app/src/dashboard.meta.ts index aff6b56..a946afd 100644 --- a/packages/esm-billing-app/src/dashboard.meta.ts +++ b/packages/esm-billing-app/src/dashboard.meta.ts @@ -1,6 +1,7 @@ export const dashboardMeta = { slot: 'patient-chart-billing-dashboard-slot', columns: 1, - title: 'Billing', - path: 'Billing', + title: 'Billing history', + path: 'Billing history', + hideDashboardTitle: true, }; diff --git a/packages/esm-billing-app/src/helpers/functions.ts b/packages/esm-billing-app/src/helpers/functions.ts index b373fba..df24ca0 100644 --- a/packages/esm-billing-app/src/helpers/functions.ts +++ b/packages/esm-billing-app/src/helpers/functions.ts @@ -1,4 +1,6 @@ -import { Payment, LineItem } from '../types'; +import { type Payment, type LineItem } from '../types'; +import { type ConfigObject } from '../config-schema'; +import { useConfig } from '@openmrs/esm-framework'; // amount already paid export function calculateTotalAmountTendered(payments: Array) { @@ -31,10 +33,11 @@ export function calculateTotalAmount(lineItems: Array) { : 0; } -export const convertToCurrency = (amountToConvert: number) => { - const formatter = new Intl.NumberFormat('en-KE', { +export const convertToCurrency = (amountToConvert: number, currencyType?: string) => { + const locale = window.i18next?.language?.substring(0, 2) ?? ''; + const formatter = new Intl.NumberFormat(locale, { style: 'currency', - currency: 'KES', + currency: currencyType, minimumFractionDigits: 2, }); @@ -61,15 +64,3 @@ export const getGender = (gender: string, t) => { return gender; } }; - -/** - * Extracts and returns the substring after the first colon (:) in the input string. - * The input string is expected to be in the format "uuid:string". - * - * @param {string} input - The input string from which the substring is to be extracted. - * @returns {string} The substring found after the first colon in the input string. - */ -export function extractString(input: string): string { - const parts = input.split(':'); - return parts.length < 2 ? input : parts[1]; -} diff --git a/packages/esm-billing-app/src/hooks/selectedDateContext.ts b/packages/esm-billing-app/src/hooks/selectedDateContext.ts new file mode 100644 index 0000000..d34f47d --- /dev/null +++ b/packages/esm-billing-app/src/hooks/selectedDateContext.ts @@ -0,0 +1,10 @@ +import { createContext } from 'react'; +import dayjs from 'dayjs'; +import { omrsDateFormat } from '../constants'; + +const SelectedDateContext = createContext({ + selectedDate: dayjs().startOf('day').format(omrsDateFormat), + setSelectedDate: (date: string) => {}, +}); + +export default SelectedDateContext; diff --git a/packages/esm-billing-app/src/index.ts b/packages/esm-billing-app/src/index.ts index 774d93e..83ceb55 100644 --- a/packages/esm-billing-app/src/index.ts +++ b/packages/esm-billing-app/src/index.ts @@ -1,27 +1,40 @@ -import { defineConfigSchema, getSyncLifecycle } from '@openmrs/esm-framework'; +import { configSchema } from './config-schema'; import { createDashboardLink } from '@openmrs/esm-patient-common-lib'; import { createLeftPanelLink } from './left-panel-link.component'; -import { configSchema } from './config-schema'; import { dashboardMeta } from './dashboard.meta'; -import rootComponent from './root.component'; +import { defineConfigSchema, getAsyncLifecycle, getSyncLifecycle, registerFeatureFlag } from '@openmrs/esm-framework'; +import BillableServiceHome from './billable-services/billable-services-home.component'; +import BillableServicesCardLink from './billable-services-admin-card-link.component'; import BillHistory from './bill-history/bill-history.component'; import BillingCheckInForm from './billing-form/billing-checkin-form.component'; -import BillableServicesCardLink from './billable-services-admin-card-link.component'; -import BillableServiceHome from './billable-services/billable-services-home.component'; -import BillingForm from './billing-form/billing-form.component'; import RequirePaymentModal from './modal/require-payment-modal.component'; +import RootComponent from './root.component'; import VisitAttributeTags from './invoice/payments/visit-tags/visit-attribute.component'; -import InitiatePaymentDialog from './invoice/payments/initiate-payment/initiate-payment.component'; -import DrugOrder from './billable-services/billiable-item/drug-order.component'; -import LabOrder from './billable-services/billiable-item/lab-order.component'; +import ServiceMetrics from './billable-services/dashboard/service-metrics.component'; +import appMenu from './billable-services/billable-services-menu-item/item.component'; -const moduleName = '@kenyaemr/esm-billing-app'; +const moduleName = '@sjthc/esm-billing-app'; const options = { featureName: 'billing', moduleName, }; +registerFeatureFlag( + 'billing', + 'Billing module', + 'This feature introduces navigation links on the patient chart and home page to allow accessing the billing module features', +); + +// t('billing', 'Billing') +export const billingDashboardLink = getSyncLifecycle( + createLeftPanelLink({ + name: 'billing', + title: 'Billing', + }), + options, +); + export const importTranslation = require.context('../translations', false, /.json$/, 'lazy'); export function startupApp() { @@ -32,23 +45,21 @@ export const billingSummaryDashboardLink = getSyncLifecycle( createDashboardLink({ ...dashboardMeta, moduleName }), options, ); -// t('billing', 'Billing') -export const billingDashboardLink = getSyncLifecycle( - createLeftPanelLink({ - name: 'billing', - title: 'Billing', - }), - options, -); -export const root = getSyncLifecycle(rootComponent, options); -export const billingPatientSummary = getSyncLifecycle(BillHistory, options); -export const billingCheckInForm = getSyncLifecycle(BillingCheckInForm, options); -export const billableServicesHome = getSyncLifecycle(BillableServiceHome, options); export const billableServicesCardLink = getSyncLifecycle(BillableServicesCardLink, options); -export const billingForm = getSyncLifecycle(BillingForm, options); +export const billableServicesHome = getSyncLifecycle(BillableServiceHome, options); +export const billingCheckInForm = getSyncLifecycle(BillingCheckInForm, options); +export const serviceMetrics = getSyncLifecycle(ServiceMetrics, options); +export const billingPatientSummary = getSyncLifecycle(BillHistory, options); export const requirePaymentModal = getSyncLifecycle(RequirePaymentModal, options); +export const root = getSyncLifecycle(RootComponent, options); export const visitAttributeTags = getSyncLifecycle(VisitAttributeTags, options); -export const initiatePaymentDialog = getSyncLifecycle(InitiatePaymentDialog, options); -export const labOrder = getSyncLifecycle(LabOrder, options); -export const drugOrder = getSyncLifecycle(DrugOrder, options); +export const billableServicesAppMenuItem = getSyncLifecycle(appMenu, options); + +export const editBillLineItemDialog = getAsyncLifecycle(() => import('./bill-item-actions/edit-bill-item.component'), { + featureName: 'edit bill line item', + moduleName, +}); + +// t('billingForm', 'Billing form') +export const billingFormWorkspace = getAsyncLifecycle(() => import('./billing-form/billing-form.component'), options); diff --git a/packages/esm-billing-app/src/invoice/invoice-table.component.tsx b/packages/esm-billing-app/src/invoice/invoice-table.component.tsx index 66be2ad..615722f 100644 --- a/packages/esm-billing-app/src/invoice/invoice-table.component.tsx +++ b/packages/esm-billing-app/src/invoice/invoice-table.component.tsx @@ -1,4 +1,4 @@ -import React, { useMemo, useState } from 'react'; +import React, { useMemo, useState, useEffect } from 'react'; import { useTranslation } from 'react-i18next'; import fuzzy from 'fuzzy'; import { @@ -12,17 +12,17 @@ import { TableHead, TableHeader, TableRow, - TableToolbar, - TableToolbarContent, + type DataTableRow, TableToolbarSearch, TableSelectRow, Tile, - type DataTableHeader, - type DataTableRow, + Button, } from '@carbon/react'; -import { isDesktop, useDebounce, useLayoutType } from '@openmrs/esm-framework'; -import { LineItem, MappedBill } from '../types'; +import { isDesktop, showModal, useConfig, useDebounce, useLayoutType } from '@openmrs/esm-framework'; +import { type LineItem, type MappedBill } from '../types'; import styles from './invoice-table.scss'; +import { convertToCurrency } from '../helpers'; +import { Edit } from '@carbon/react/icons'; type InvoiceTableProps = { bill: MappedBill; @@ -33,13 +33,20 @@ type InvoiceTableProps = { const InvoiceTable: React.FC = ({ bill, isSelectable = true, isLoadingBill, onSelectItem }) => { const { t } = useTranslation(); - const { lineItems } = bill; - const paidLineItems = lineItems?.filter((item) => item.paymentStatus === 'PAID') ?? []; + const lineItems = bill?.lineItems ?? []; const layout = useLayoutType(); const responsiveSize = isDesktop(layout) ? 'sm' : 'lg'; - const [selectedLineItems, setSelectedLineItems] = useState(paidLineItems ?? []); + const [selectedLineItems, setSelectedLineItems] = useState([]); const [searchTerm, setSearchTerm] = useState(''); const debouncedSearchTerm = useDebounce(searchTerm); + const { defaultCurrency, showEditBillButton } = useConfig(); + + useEffect(() => { + if (onSelectItem) { + onSelectItem(selectedLineItems); + } + }, [selectedLineItems, onSelectItem]); + const filteredLineItems = useMemo(() => { if (!debouncedSearchTerm) { return lineItems; @@ -55,32 +62,58 @@ const InvoiceTable: React.FC = ({ bill, isSelectable = true, : lineItems; }, [debouncedSearchTerm, lineItems]); - const tableHeaders: Array = [ - { header: 'No', key: 'no' }, - { header: 'Bill item', key: 'billItem' }, - { header: 'Bill code', key: 'billCode' }, - { header: 'Status', key: 'status' }, - { header: 'Quantity', key: 'quantity' }, - { header: 'Price', key: 'price' }, - { header: 'Total', key: 'total' }, + const tableHeaders = [ + { header: 'No', key: 'no', width: 7 }, // Width as a percentage + { header: 'Bill item', key: 'billItem', width: 25 }, + { header: 'Bill code', key: 'billCode', width: 20 }, + { header: 'Status', key: 'status', width: 25 }, + { header: 'Quantity', key: 'quantity', width: 15 }, + { header: 'Price', key: 'price', width: 24 }, + { header: 'Total', key: 'total', width: 15 }, + { header: t('actions', 'Actions'), key: 'actionButton' }, ]; - const processBillItem = (item) => (item.item || item.billableService)?.split(':')[1]; + + const handleSelectBillItem = (row: LineItem) => { + const dispose = showModal('edit-bill-line-item-dialog', { + bill, + item: row, + closeModal: () => dispose(), + }); + }; const tableRows: Array = useMemo( () => filteredLineItems?.map((item, index) => { + const itemTotal = item.price * item.quantity; + const itemStatus = item.paymentStatus === 'PAID' || bill.tenderedAmount >= itemTotal ? 'PAID' : 'PENDING'; return { no: `${index + 1}`, id: `${item.uuid}`, - billItem: processBillItem(item), - billCode: bill.receiptNumber, - status: item.paymentStatus, + billItem: item.billableService ? item.billableService : item?.item, + billCode: bill?.receiptNumber, + status: itemStatus, quantity: item.quantity, - price: item.price, - total: item.price * item.quantity, + price: convertToCurrency(item.price, defaultCurrency), + total: convertToCurrency(itemTotal, defaultCurrency), + actionButton: ( + + {showEditBillButton ? ( + - {bill.status === 'PAID' ? : null} + {(bill?.status === 'PAID' || bill?.tenderedAmount > 0) && } - +
{isPrinting && } diff --git a/packages/esm-billing-app/src/invoice/invoice.scss b/packages/esm-billing-app/src/invoice/invoice.scss index f067f6b..420f301 100644 --- a/packages/esm-billing-app/src/invoice/invoice.scss +++ b/packages/esm-billing-app/src/invoice/invoice.scss @@ -62,10 +62,6 @@ } } -.button { - margin-left: layout.$spacing-04; -} - .invoicePaymentsContainer { display: flex; flex-direction: column; diff --git a/packages/esm-billing-app/src/invoice/invoice.test.tsx b/packages/esm-billing-app/src/invoice/invoice.test.tsx index 96d25e4..b333e0c 100644 --- a/packages/esm-billing-app/src/invoice/invoice.test.tsx +++ b/packages/esm-billing-app/src/invoice/invoice.test.tsx @@ -3,7 +3,7 @@ import { screen, render } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; import { useReactToPrint } from 'react-to-print'; import { showSnackbar } from '@openmrs/esm-framework'; -import { mockPayments, mockBill } from '../../../../__mocks__/bills.mock'; +import { mockPayments, mockBill } from '../../__mocks__/bills.mock'; import { useBill, processBillPayment } from '../billing.resource'; import { usePaymentModes } from './payments/payment.resource'; import Invoice from './invoice.component'; diff --git a/packages/esm-billing-app/src/invoice/payments/initiate-payment/initiate-payment.component.tsx b/packages/esm-billing-app/src/invoice/payments/initiate-payment/initiate-payment.component.tsx deleted file mode 100644 index 044d9b4..0000000 --- a/packages/esm-billing-app/src/invoice/payments/initiate-payment/initiate-payment.component.tsx +++ /dev/null @@ -1,111 +0,0 @@ -import React from 'react'; -import { useTranslation } from 'react-i18next'; -import { Button, Form, ModalBody, ModalHeader, TextInput, Layer } from '@carbon/react'; -import styles from './initiate-payment.scss'; -import { Controller, useForm } from 'react-hook-form'; -import { MappedBill } from '../../../types'; -import { initiateStkPush } from '../payment.resource'; -import { showSnackbar } from '@openmrs/esm-framework'; - -export interface InitiatePaymentDialogProps { - closeModal: () => void; - bill: MappedBill; -} - -const InitiatePaymentDialog: React.FC = ({ closeModal, bill }) => { - const { t } = useTranslation(); - - const { - control, - handleSubmit, - formState: { errors }, - } = useForm({ - mode: 'all', - defaultValues: {}, - }); - - const onSubmit = (data) => { - const payload = { - phoneNumber: data.phoneNumber, - amount: data.billAmount, - billUuid: bill.uuid, - referenceNumber: bill.receiptNumber, - callBackUrl: 'https://756e-105-163-1-73.ngrok-free.app/api/confirmation-url/', - }; - initiateStkPush(payload).then( - (resp) => { - showSnackbar({ - title: t('stkPush', 'STK Push'), - subtitle: t('stkPushSucess', 'STK Push send successfully'), - kind: 'success', - timeoutInMs: 3500, - isLowContrast: true, - }); - }, - (err) => { - showSnackbar({ - title: t('stkPush', 'STK Push'), - subtitle: t('stkPushError', 'STK Push request failed', { error: err.message }), - kind: 'error', - timeoutInMs: 3500, - isLowContrast: true, - }); - }, - ); - closeModal(); - }; - return ( -
- - -
-

{t('paymentPayment', 'Bill Payment')}

-
- ( - - - - )} - /> -
-
- ( - - - - )} - /> -
-
- - -
-
-
-
- ); -}; - -export default InitiatePaymentDialog; diff --git a/packages/esm-billing-app/src/invoice/payments/initiate-payment/initiate-payment.scss b/packages/esm-billing-app/src/invoice/payments/initiate-payment/initiate-payment.scss deleted file mode 100644 index f5b482f..0000000 --- a/packages/esm-billing-app/src/invoice/payments/initiate-payment/initiate-payment.scss +++ /dev/null @@ -1,33 +0,0 @@ -@use '@carbon/styles/scss/spacing'; -@use '@carbon/styles/scss/type'; -@use '@carbon/colors'; -@use '@carbon/layout'; -@import '~@openmrs/esm-styleguide/src/vars'; - -.form { - display: flex; - flex-direction: column; - justify-content: space-between; - height: 100%; -} - -.section { - margin: spacing.$spacing-03; -} - -.sectionTitle { - @include type.type-style('heading-compact-02'); - color: $text-02; - margin-bottom: spacing.$spacing-04; -} - -.buttonLayout { - margin-top: layout.$spacing-05; - margin-bottom: layout.$spacing-01; -} - -.button { - margin-left: layout.$spacing-04; - margin-top: layout.$spacing-05; - margin-bottom: layout.$spacing-01; -} diff --git a/packages/esm-billing-app/src/invoice/payments/payment-form/payment-form.component.tsx b/packages/esm-billing-app/src/invoice/payments/payment-form/payment-form.component.tsx index 5486a10..bf675b2 100644 --- a/packages/esm-billing-app/src/invoice/payments/payment-form/payment-form.component.tsx +++ b/packages/esm-billing-app/src/invoice/payments/payment-form/payment-form.component.tsx @@ -1,18 +1,28 @@ -import React, { useCallback } from 'react'; +import React, { useCallback, useState, useEffect } from 'react'; import { Controller, useFieldArray, useFormContext } from 'react-hook-form'; import { useTranslation } from 'react-i18next'; import { TrashCan, Add } from '@carbon/react/icons'; import { Button, Dropdown, NumberInputSkeleton, TextInput, NumberInput } from '@carbon/react'; import { ErrorState } from '@openmrs/esm-patient-common-lib'; -import { PaymentFormValue } from '../payments.component'; +import { type PaymentFormValue } from '../payments.component'; import { usePaymentModes } from '../payment.resource'; import styles from './payment-form.scss'; -type PaymentFormProps = { disablePayment: boolean; amountDue: number }; +type PaymentFormProps = { + disablePayment: boolean; + clientBalance: number; + isSingleLineItemSelected: boolean; + isSingleLineItem: boolean; +}; const DEFAULT_PAYMENT = { method: '', amount: 0, referenceCode: '' }; -const PaymentForm: React.FC = ({ disablePayment, amountDue }) => { +const PaymentForm: React.FC = ({ + disablePayment, + clientBalance, + isSingleLineItemSelected, + isSingleLineItem, +}) => { const { t } = useTranslation(); const { control, @@ -20,8 +30,21 @@ const PaymentForm: React.FC = ({ disablePayment, amountDue }) } = useFormContext(); const { paymentModes, isLoading, error } = usePaymentModes(); const { fields, remove, append } = useFieldArray({ name: 'payment', control: control }); + const [isFormVisible, setIsFormVisible] = useState(isSingleLineItem); + + useEffect(() => { + if (isSingleLineItem) { + setIsFormVisible(true); + if (fields.length === 0) { + append(DEFAULT_PAYMENT); + } + } + }, [isSingleLineItem, append, fields.length]); - const handleAppendPaymentMode = useCallback(() => append(DEFAULT_PAYMENT), [append]); + const handleAppendPaymentMode = useCallback(() => { + setIsFormVisible(true); + append(DEFAULT_PAYMENT); + }, [append]); const handleRemovePaymentMode = useCallback((index) => remove(index), [remove]); if (isLoading) { @@ -38,59 +61,60 @@ const PaymentForm: React.FC = ({ disablePayment, amountDue }) return (
- {fields.map((field, index) => ( -
- ( - field.onChange(selectedItem?.uuid)} - titleText={t('paymentMethod', 'Payment method')} - label={t('selectPaymentMethod', 'Select payment method')} - items={paymentModes} - itemToString={(item) => (item ? item.name : '')} - invalid={!!errors?.payment?.[index]?.method} - invalidText={errors?.payment?.[index]?.method?.message} - /> - )} - /> - ( - field.onChange(Number(e.target.value))} - invalid={!!errors?.payment?.[index]?.amount} - invalidText={errors?.payment?.[index]?.amount?.message} - label={t('amount', 'Amount')} - placeholder={t('enterAmount', 'Enter amount')} - /> - )} - /> - ( - - )} - /> -
- handleRemovePaymentMode(index)} className={styles.removeButton} size={20} /> + {isFormVisible && + fields.map((field, index) => ( +
+ ( + field.onChange(selectedItem?.uuid)} + titleText={t('paymentMethod', 'Payment method')} + label={t('selectPaymentMethod', 'Select payment method')} + items={paymentModes} + itemToString={(item) => (item ? item.name : '')} + invalid={!!errors?.payment?.[index]?.method} + invalidText={errors?.payment?.[index]?.method?.message} + /> + )} + /> + ( + field.onChange(Number(e.target.value))} + invalid={!!errors?.payment?.[index]?.amount} + invalidText={errors?.payment?.[index]?.amount?.message} + label={t('amount', 'Amount')} + placeholder={t('enterAmount', 'Enter amount')} + /> + )} + /> + ( + + )} + /> +
+ handleRemovePaymentMode(index)} className={styles.removeButton} size={20} /> +
-
- ))} + ))}
- +
); }; diff --git a/packages/esm-billing-app/src/invoice/printable-invoice/printable-footer.component.tsx b/packages/esm-billing-app/src/invoice/printable-invoice/printable-footer.component.tsx index 39a9d6e..8bb4a9a 100644 --- a/packages/esm-billing-app/src/invoice/printable-invoice/printable-footer.component.tsx +++ b/packages/esm-billing-app/src/invoice/printable-invoice/printable-footer.component.tsx @@ -8,6 +8,7 @@ const PrintableFooter = () => { if (isLoading) { return
--
; } + return (

{data?.display}

diff --git a/packages/esm-billing-app/src/invoice/printable-invoice/printable-footer.test.tsx b/packages/esm-billing-app/src/invoice/printable-invoice/printable-footer.test.tsx index 096206e..eeac83d 100644 --- a/packages/esm-billing-app/src/invoice/printable-invoice/printable-footer.test.tsx +++ b/packages/esm-billing-app/src/invoice/printable-invoice/printable-footer.test.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { screen, render } from '@testing-library/react'; -import PrintableFooter from './printable-footer.component'; import { useDefaultFacility } from '../../billing.resource'; +import PrintableFooter from './printable-footer.component'; const mockUseDefaultFacility = useDefaultFacility as jest.MockedFunction; diff --git a/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice-header.component.tsx b/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice-header.component.tsx index c62697f..91233e7 100644 --- a/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice-header.component.tsx +++ b/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice-header.component.tsx @@ -1,9 +1,9 @@ import React from 'react'; -import { PatientDetails } from '../../types'; -import styles from './printable-invoice-header.scss'; +import { type PatientDetails } from '../../types'; import { useConfig } from '@openmrs/esm-framework'; import { useTranslation } from 'react-i18next'; import { useDefaultFacility } from '../../billing.resource'; +import styles from './printable-invoice-header.scss'; interface PrintableInvoiceHeaderProps { patientDetails: PatientDetails; diff --git a/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice-header.test.tsx b/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice-header.test.tsx index 49f5aa4..d47a29f 100644 --- a/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice-header.test.tsx +++ b/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice-header.test.tsx @@ -1,8 +1,8 @@ import React from 'react'; import { screen, render } from '@testing-library/react'; -import PrintableInvoiceHeader from './printable-invoice-header.component'; -import { useDefaultFacility } from '../../billing.resource'; import { useConfig } from '@openmrs/esm-framework'; +import { useDefaultFacility } from '../../billing.resource'; +import PrintableInvoiceHeader from './printable-invoice-header.component'; const mockUseDefaultFacility = useDefaultFacility as jest.MockedFunction; const mockUseConfig = useConfig as jest.MockedFunction; diff --git a/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice.component.tsx b/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice.component.tsx index 90d05e8..184641c 100644 --- a/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice.component.tsx +++ b/packages/esm-billing-app/src/invoice/printable-invoice/printable-invoice.component.tsx @@ -12,7 +12,7 @@ import { } from '@carbon/react'; import { age, isDesktop, useLayoutType } from '@openmrs/esm-framework'; import { getGender } from '../../helpers'; -import { MappedBill } from '../../types'; +import { type MappedBill } from '../../types'; import { useTranslation } from 'react-i18next'; import PrintableFooter from './printable-footer.component'; import PrintableInvoiceHeader from './printable-invoice-header.component'; @@ -65,9 +65,9 @@ const PrintableInvoice: React.FC = ({ bill, patient, isLo }, [patient, t]); const invoiceDetails = { - 'Invoice #': bill.receiptNumber, + 'Invoice #': bill?.receiptNumber, 'Invoice date': bill.dateCreated, - Status: bill.status, + Status: bill?.status, }; if (isLoading) { diff --git a/packages/esm-billing-app/src/left--panel-link.test.tsx b/packages/esm-billing-app/src/left-panel-link.test.tsx similarity index 87% rename from packages/esm-billing-app/src/left--panel-link.test.tsx rename to packages/esm-billing-app/src/left-panel-link.test.tsx index 4254426..06083a5 100644 --- a/packages/esm-billing-app/src/left--panel-link.test.tsx +++ b/packages/esm-billing-app/src/left-panel-link.test.tsx @@ -1,6 +1,6 @@ import React from 'react'; import { render, screen } from '@testing-library/react'; -import { MemoryRouter, Route } from 'react-router-dom'; +import { MemoryRouter } from 'react-router-dom'; import { LinkExtension, createLeftPanelLink } from './left-panel-link.component'; import userEvent from '@testing-library/user-event'; @@ -14,7 +14,9 @@ describe('LinkExtension Component', () => { test('renders correctly', () => { const config = { name: 'billing', title: 'Billing' }; - renderWithRouter(, { route: '/billing/6eb8d678-514d-46ad-9554-51e48d96d567' }); + renderWithRouter(, { + route: '/billing/6eb8d678-514d-46ad-9554-51e48d96d567', + }); expect(screen.getByText('Billing')).toBeInTheDocument(); }); diff --git a/packages/esm-billing-app/src/metrics-cards/card.component.tsx b/packages/esm-billing-app/src/metrics-cards/card.component.tsx index 02d882b..3939d5b 100644 --- a/packages/esm-billing-app/src/metrics-cards/card.component.tsx +++ b/packages/esm-billing-app/src/metrics-cards/card.component.tsx @@ -1,11 +1,16 @@ import React from 'react'; import styles from './card.scss'; +import { useConfig } from '@openmrs/esm-framework'; +import { convertToCurrency } from '../helpers'; export default function Card({ count, title }) { + const { defaultCurrency } = useConfig(); return (

{title}

- {count} + + {typeof count === 'number' ? convertToCurrency(count, defaultCurrency) : count} +
); } diff --git a/packages/esm-billing-app/src/metrics-cards/metrics-cards.component.tsx b/packages/esm-billing-app/src/metrics-cards/metrics-cards.component.tsx index d38b855..50d5263 100644 --- a/packages/esm-billing-app/src/metrics-cards/metrics-cards.component.tsx +++ b/packages/esm-billing-app/src/metrics-cards/metrics-cards.component.tsx @@ -1,11 +1,11 @@ import React, { useMemo } from 'react'; -import Card from './card.component'; -import styles from './metrics-cards.scss'; -import { useBills } from '../billing.resource'; -import { useBillMetrics } from './metrics.resource'; +import { InlineLoading } from '@carbon/react'; import { useTranslation } from 'react-i18next'; import { ErrorState } from '@openmrs/esm-patient-common-lib'; -import { InlineLoading } from '@carbon/react'; +import { useBills } from '../billing.resource'; +import { useBillMetrics } from './metrics.resource'; +import Card from './card.component'; +import styles from './metrics-cards.scss'; export default function MetricsCards() { const { t } = useTranslation(); diff --git a/packages/esm-billing-app/src/metrics-cards/metrics-cards.test.tsx b/packages/esm-billing-app/src/metrics-cards/metrics-cards.test.tsx index 143c5d1..f59a6f3 100644 --- a/packages/esm-billing-app/src/metrics-cards/metrics-cards.test.tsx +++ b/packages/esm-billing-app/src/metrics-cards/metrics-cards.test.tsx @@ -1,10 +1,12 @@ import React from 'react'; import { render, screen } from '@testing-library/react'; -import MetricsCards from './metrics-cards.component'; +import { billsSummary } from '../../__mocks__/bills.mock'; import { useBills } from '../billing.resource'; -import { billsSummary } from '../../../../__mocks__/bills.mock'; +import MetricsCards from './metrics-cards.component'; +import { useConfig } from '@openmrs/esm-framework'; const mockUseBills = useBills as jest.Mock; +const mockUseConfig = useConfig as jest.Mock; jest.mock('../billing.resource', () => ({ useBills: jest.fn(), @@ -29,6 +31,7 @@ describe('MetricsCards', () => { test('renders metrics cards', () => { mockUseBills.mockReturnValue({ isLoading: false, bills: billsSummary, error: null }); + mockUseConfig.mockImplementation(() => ({ defaultCurrency: 'USD' })); renderMetricsCards(); expect(screen.getByRole('heading', { name: /cumulative bills/i })).toBeInTheDocument(); expect(screen.getByRole('heading', { name: /pending bills/i })).toBeInTheDocument(); diff --git a/packages/esm-billing-app/src/metrics-cards/metrics.resource.ts b/packages/esm-billing-app/src/metrics-cards/metrics.resource.ts index ae4b64f..b00b008 100644 --- a/packages/esm-billing-app/src/metrics-cards/metrics.resource.ts +++ b/packages/esm-billing-app/src/metrics-cards/metrics.resource.ts @@ -1,5 +1,5 @@ import { calculateTotalAmount, convertToCurrency } from '../helpers'; -import { MappedBill } from '../types'; +import { type MappedBill } from '../types'; /** * A custom hook for calculating bill metrics. @@ -19,9 +19,9 @@ import { MappedBill } from '../types'; export const useBillMetrics = (bills: Array) => { const { paidTotal, pendingTotal, cumulativeTotal } = calculateBillTotals(bills); return { - cumulativeBills: convertToCurrency(cumulativeTotal), - pendingBills: convertToCurrency(pendingTotal), - paidBills: convertToCurrency(paidTotal), + cumulativeBills: cumulativeTotal, + pendingBills: pendingTotal, + paidBills: paidTotal, }; }; @@ -31,12 +31,12 @@ const calculateBillTotals = (bills: Array) => { let cumulativeTotal = 0; bills.forEach((bill) => { - if (bill.status === 'PAID') { - paidTotal += bill.totalAmount; - } else if (bill.status === 'PENDING') { - pendingTotal += bill.totalAmount; + if (bill?.status === 'PAID') { + paidTotal += bill?.totalAmount; + } else if (bill?.status === 'PENDING') { + pendingTotal += bill?.totalAmount; } - cumulativeTotal += bill.totalAmount; // Add to cumulative total regardless of status + cumulativeTotal += bill?.totalAmount; // Add to cumulative total regardless of status }); return { paidTotal, pendingTotal, cumulativeTotal }; diff --git a/packages/esm-billing-app/src/modal/require-payment-modal.component.tsx b/packages/esm-billing-app/src/modal/require-payment-modal.component.tsx index 2c60591..6f03599 100644 --- a/packages/esm-billing-app/src/modal/require-payment-modal.component.tsx +++ b/packages/esm-billing-app/src/modal/require-payment-modal.component.tsx @@ -1,111 +1,84 @@ -import React, { useState } from 'react'; +import React from 'react'; import { useTranslation } from 'react-i18next'; import { - ModalBody, - ModalFooter, Button, InlineLoading, - StructuredListWrapper, + ModalBody, + ModalFooter, + ModalHeader, + StructuredListBody, + StructuredListCell, StructuredListHead, StructuredListRow, - StructuredListCell, - StructuredListBody, - ComposedModal, - Heading, + StructuredListWrapper, } from '@carbon/react'; +import { useBills } from '../billing.resource'; +import { convertToCurrency } from '../helpers'; import styles from './require-payment.scss'; -import { convertToCurrency, extractString } from '../helpers'; -import { navigate, useConfig } from '@openmrs/esm-framework'; -import { BillingConfig } from '../config-schema'; -import { getPatientUuidFromUrl } from '@openmrs/esm-patient-common-lib'; -import { useBillingPrompt } from '../billing-prompt/billing-prompt.resource'; +import { useConfig } from '@openmrs/esm-framework'; -type RequirePaymentModalProps = {}; +type RequirePaymentModalProps = { + closeModal: () => void; + patientUuid: string; +}; -const RequirePaymentModal: React.FC = () => { +const RequirePaymentModal: React.FC = ({ closeModal, patientUuid }) => { const { t } = useTranslation(); - const patientUuid = getPatientUuidFromUrl(); - const { shouldShowBillingPrompt, isLoading, bills } = useBillingPrompt(patientUuid); - const [showModal, setShowModal] = useState({ loadingModal: true, billingModal: true }); - const { enforceBillPayment } = useConfig(); - - const closeButtonText = enforceBillPayment - ? t('navigateBack', 'Navigate back') - : t('proceedToCare', 'Proceed to care'); - - const handleCloseModal = () => { - enforceBillPayment - ? navigate({ to: `\${openmrsSpaBase}/home` }) - : setShowModal((prevState) => ({ ...prevState, billingModal: false })); - }; - - const lineItems = bills - .filter((bill) => bill.status !== 'PAID') - .flatMap((bill) => bill.lineItems) - .filter((lineItem) => lineItem.paymentStatus !== 'EXEMPTED'); - - if (!shouldShowBillingPrompt) { - return null; - } + const { defaultCurrency } = useConfig(); + const { bills, isLoading, error } = useBills(patientUuid); + const lineItems = bills.filter((bill) => bill?.status !== 'PAID').flatMap((bill) => bill?.lineItems); return ( - - {isLoading ? ( - - {t('billingStatus', 'Billing status')} +
+ + +

+ {t( + 'billPaymentRequiredMessage', + 'The current patient has pending bill. Advice patient to settle bill before receiving services', + )} +

+ {isLoading && ( -
- ) : ( - - {t('patientBillingAlert', 'Patient Billing Alert')} -

- {t('billPaymentRequiredMessage', 'The current patient has pending bill. Advice patient to settle bill.')} -

- - - - {t('item', 'Item')} - {t('quantity', 'Quantity')} - {t('unitPrice', 'Unit price')} - {t('total', 'Total')} - - - - {lineItems.map((lineItem) => { - return ( - - {extractString(lineItem.billableService || lineItem.item)} - {lineItem.quantity} - {convertToCurrency(lineItem.price)} - {convertToCurrency(lineItem.quantity * lineItem.price)} - - ); - })} - - - {!enforceBillPayment && ( -

- {t( - 'providerMessage', - 'By clicking Proceed to care, you acknowledge that you have advised the patient to settle the bill.', - )} -

- )} -
- )} + )} + + + + {t('item', 'Item')} + {t('quantity', 'Quantity')} + {t('unitPrice', 'Unit price')} + {t('total', 'Total')} + + + + {lineItems.map((lineItem) => { + return ( + + {lineItem.billableService || lineItem.item} + {lineItem.quantity} + {convertToCurrency(lineItem.price, defaultCurrency)} + + {convertToCurrency(lineItem.quantity * lineItem.price, defaultCurrency)} + + + ); + })} + + + - - - +
); }; diff --git a/packages/esm-billing-app/src/modal/require-payment.scss b/packages/esm-billing-app/src/modal/require-payment.scss index 10aa8f9..9224425 100644 --- a/packages/esm-billing-app/src/modal/require-payment.scss +++ b/packages/esm-billing-app/src/modal/require-payment.scss @@ -1,18 +1,6 @@ @use '@carbon/type'; -@use '@carbon/colors'; .bodyShort02 { margin-bottom: 0.5rem; @include type.type-style('body-compact-02'); } - -.providerMessage { - @include type.type-style('heading-01'); - color: colors.$red-50; - margin-top: 1.5rem; -} - -.modalTitle { - @include type.type-style('productive-heading-03'); - padding: 0.5rem 0; -} diff --git a/packages/esm-billing-app/src/root.scss b/packages/esm-billing-app/src/root.scss index 0a39cd4..da087b0 100644 --- a/packages/esm-billing-app/src/root.scss +++ b/packages/esm-billing-app/src/root.scss @@ -1,4 +1,4 @@ -@use '@carbon/styles/scss/type'; +@use '@carbon/type'; @import '~@openmrs/esm-styleguide/src/vars'; .productiveHeading01 { diff --git a/packages/esm-billing-app/src/routes.json b/packages/esm-billing-app/src/routes.json index a6d8658..147a5c3 100644 --- a/packages/esm-billing-app/src/routes.json +++ b/packages/esm-billing-app/src/routes.json @@ -1,18 +1,13 @@ { "$schema": "https://json.openmrs.org/routes.schema.json", "backendDependencies": { - "kenyaemr": "^18.2.0" + "webservices.rest": ">=2.24.0", + "fhir2": ">=1.2" }, "pages": [ { "component": "billableServicesHome", "route":"billable-services" - }, - { - "component": "requirePaymentModal", - "routeRegex": "^patient\/.+\/chart", - "online": true, - "offline": false } ], "extensions": [ @@ -24,7 +19,8 @@ "name": "billing", "title": "billing", "slot": "billing-dashboard-slot" - } + }, + "featureFlag": "billing" }, { "component": "root", @@ -49,11 +45,20 @@ "columns": 1, "columnSpan": 1, "slot": "patient-chart-billing-dashboard-slot", - "path": "Billing" + "path": "Billing history" + }, + "featureFlag": "billing" + }, + { + "name": "billable-services-app-menu-item", + "component": "billableServicesAppMenuItem", + "slot": "app-menu-item-slot", + "meta": { + "name": "Billable Services" } }, { - "name": "billing-check-in-form", + "name": "billing-checkin-form", "slot": "extra-visit-attribute-slot", "component": "billingCheckInForm" }, @@ -62,10 +67,6 @@ "component": "billableServicesCardLink", "name": "billable-services-admin-card-link" }, - { - "name": "billing-form", - "component": "billingForm" - }, { "name": "require-billing-modal", "component": "requirePaymentModal" @@ -77,18 +78,23 @@ "order": 2 }, { - "name": "initiate-payment-modal", - "component": "initiatePaymentDialog" + "name": "billing-home-tiles-ext", + "slot": "billing-home-tiles-slot", + "component": "serviceMetrics" }, { - "name": "lab-order-billable-item", - "component": "labOrder", - "slot": "top-of-lab-order-form-slot" - }, + "name": "edit-bill-line-item-dialog", + "component": "editBillLineItemDialog", + "online": true, + "offline": true + } + ], + "workspaces": [ { - "name": "drug-order-billable-item", - "component": "drugOrder", - "slot": "medication-info-slot" + "name": "billing-form-workspace", + "title": "billingForm", + "component": "billingFormWorkspace", + "type": "form" } ] -} \ No newline at end of file +} diff --git a/packages/esm-billing-app/src/setup-tests.ts b/packages/esm-billing-app/src/setup-tests.ts new file mode 100644 index 0000000..9ed534b --- /dev/null +++ b/packages/esm-billing-app/src/setup-tests.ts @@ -0,0 +1,13 @@ +import '@testing-library/jest-dom'; + +declare global { + interface Window { + openmrsBase: string; + spaBase: string; + } +} + +window.openmrsBase = '/openmrs'; +window.spaBase = '/spa'; +window.getOpenmrsSpaBase = () => '/openmrs/spa/'; +window.HTMLElement.prototype.scrollIntoView = jest.fn(); diff --git a/packages/esm-billing-app/src/types/index.ts b/packages/esm-billing-app/src/types/index.ts index 71c604c..6d9fa81 100644 --- a/packages/esm-billing-app/src/types/index.ts +++ b/packages/esm-billing-app/src/types/index.ts @@ -1,4 +1,3 @@ -import { type Drug, type OrderBasketItem } from '@openmrs/esm-patient-common-lib'; export interface MappedBill { uuid: string; id: number; @@ -168,85 +167,15 @@ export type ServiceConcept = { display: string; }; -export type BillingService = { - name: string; - servicePrices: Array<{ name: string; paymentMode: { uuid: string; name: string }; price: number; uuid: string }>; - serviceStatus: string; - serviceType: { display: string }; - shortName: string; +export type BillabeItem = { uuid: string; + id?: number; + name?: string; + commonName?: string; + servicePrices?: ServicePrice[]; }; -export interface DrugOrderBasketItem extends OrderBasketItem { - drug: Drug; - unit: DosingUnit; - commonMedicationName: string; - dosage: number; - frequency: MedicationFrequency; - route: MedicationRoute; - quantityUnits: QuantityUnit; - patientInstructions: string; - asNeeded: boolean; - asNeededCondition: string; - // TODO: This is unused - startDate: Date | string; - durationUnit: DurationUnit; - duration: number | null; - pillsDispensed: number; - numRefills: number; - indication: string; - isFreeTextDosage: boolean; - freeTextDosage: string; - previousOrder?: string; - template?: OrderTemplate; -} - -export interface DrugOrderTemplate { +export type ServicePrice = { + price: string; uuid: string; - name: string; - drug: Drug; - template: OrderTemplate; -} - -export interface OrderTemplate { - type: string; - dosingType: string; - dosingInstructions: DosingInstructions; -} - -export interface DosingInstructions { - dose: Array; - units: Array; - route: Array; - frequency: Array; - instructions?: Array; - durationUnits?: Array; - quantityUnits?: Array; - asNeeded?: boolean; - asNeededCondition?: string; -} - -export interface MedicationDosage extends Omit { - value: number; -} - -export type MedicationFrequency = CommonMedicationValueCoded; - -export type MedicationRoute = CommonMedicationValueCoded; - -export type MedicationInstructions = CommonMedicationProps; - -export type DosingUnit = CommonMedicationValueCoded; - -export type QuantityUnit = CommonMedicationValueCoded; - -export type DurationUnit = CommonMedicationValueCoded; - -interface CommonMedicationProps { - value: string; - default?: boolean; -} - -export interface CommonMedicationValueCoded extends CommonMedicationProps { - valueCoded: string; -} +}; diff --git a/packages/esm-patient-list-app/package.json b/packages/esm-patient-list-app/package.json index 812fe06..dbc09ad 100644 --- a/packages/esm-patient-list-app/package.json +++ b/packages/esm-patient-list-app/package.json @@ -3,7 +3,7 @@ "version": "1.0.9", "license": "MPL-2.0", "description": "Custom Patient list microfrontend for the OpenMRS SPA", - "browser": "dist/sjthc-esm-patient-list-app", + "browser": "dist/sjthc-esm-patient-list-app.js", "main": "src/index.ts", "source": true, "scripts": {