-
Notifications
You must be signed in to change notification settings - Fork 4.1k
TRUNK-6462: (feat) Align FulfillerStatus enum with FHIR Task Status codes on platform 3.x #5447
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
@chibongho ping |
|
Looks good, but deferring to others with more experience with core. Context: openmrs/openmrs-esm-laboratory-app#445 (comment) |
mseaton
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this valid? I don't think DRAFT is a FulfillerStatus. If it is, then we need to add update the javadoc to reflect the version of OpenMRS where this is since.
|
@its-kios09 did you get a chance to look at the this: https://openmrs.atlassian.net/wiki/spaces/docs/pages/25477199/Pull+Request+Tips? |
|
@wikumChamith You can confirm from this reference https://openmrs.atlassian.net/browse/TRUNK-6462 |
|
@mseaton Yes, DRAFT is a valid FulfillerStatus that I'm adding in this PR. You're correct that the JavaDoc needs to be updated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few things.
- I still don't see the
@sinceJavadoc updated. That would need to be done. - Assuming https://hl7.org/fhir/codesystem-task-status.html represents the list of valid fulfiller statuses from FHIR, it seems fine to me to add this, but why wouldn't we add the rest while we are at it?
- I don't actually think that using DRAFT fulfiller status is the right interpretation of how it is intended to be used, for the use case that you present. i.e. my read of that FHIR link is that this status is meant to mean "Do not yet perform this test", not "Test is performed but results are not ready to be shared / need to be verified".
I would like @ibacher to weigh in as more of a FHIR expert with this thoughts
|
I agree with @mseaton's points. If we want to be able to track tasks resulting from orders, we should just build a data model that supports tracking tasks, not try to bolt it onto the order, especially via this already overloaded FulfillerStatus enum. We've had some discussion of supporting draft elements, but that would be a matter of marking the order itself as a draft (for example). FHIR and OpenMRS have somewhat different workflows and just adopting a FHIR valueset with different semantics here leads to a field with a very unclear meaning. |
Description of what I changed
Adding FHIR-aligned statuses to FulfillerStatus enum to better support task/order lifecycle management.
Reference: https://hl7.org/fhir/codesystem-task-status.html
New statuses being added:
This will allow OpenMRS to better represent the complete lifecycle of orders/tasks in FHIR-compliant ways.
DEMO Video
Issue I worked on
see https://openmrs.atlassian.net/browse/TRUNK-6462
Checklist: I completed these to help reviewers :)
My IDE is configured to follow the code style of this project.
No? Unsure? -> configure your IDE, format the code and add the changes with
git add . && git commit --amendI have added tests to cover my changes. (If you refactored
existing code that was well tested you do not have to add tests)
No? -> write tests and add them to this commit
git add . && git commit --amendI ran
mvn clean packageright before creating this pull request andadded all formatting changes to my commit.
No? -> execute above command
All new and existing tests passed.
No? -> figure out why and add the fix to your commit. It is your responsibility to make sure your code works.
My pull request is based on the latest changes of the master branch.
No? Unsure? -> execute command
git pull --rebase upstream master