Person to Patient

I think that REST API already exists, as:

POST .../patient
{
    "person": "uuid-of-existing-person",
    "identifiers": [ ... ]
}

See: https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.20.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/PatientController1_9Test.java#L89

From the very first OpenMRS projects this was an intended workflow: a person is originally created as a contact of an HIV patient; later on that person is seen in clinic, and their record is upgraded to a patient record. I think that AMPATH did/does this (though maybe through legacy UI screens). @ayeung or @jdick can you comment on whether AMPATH uses the workflow of “upgrading” an existing person record to a patient record (either because they were contacts, or just had lab results)?

So, I would not expect big gotchas.

FYI in the long run (Platform 3+) the intention is for Patient to no longer extend Person, but rather you’d have 0+ Patient records pointing to it. (Like is currently the way that User works.) But no design/planning has been done for this, and I don’t think it has any impact on what you’re asking here.

1 Like