FHIR Appointment/Patient/Encounter/ValueSet (#7066)
commitb1149d5c6e677656fba7f4698178801b7e401b3e
authorRobert Jones <robert@justjones.org>
Thu, 7 Dec 2023 14:52:31 +0000 (7 08:52 -0600)
committerGitHub <noreply@github.com>
Thu, 7 Dec 2023 14:52:31 +0000 (7 09:52 -0500)
tree817441744479c5202c0a62da3a61899976ef352d
parentd3abc55c1be46b8ca465c07d746a9f1deed60c62
FHIR Appointment/Patient/Encounter/ValueSet (#7066)

* Fix/enhance FhirAppointmentService _lastUpdated, appointmentType, location.

  - Fix Location, appointmentType, _lastUpdated w search on FhirAppointmentService.
  - Implement FHIR ValueSet endpoint w appointment-type for all list_options.
  - Add new scopes.

* Implement deceasedBoolean on FhirPatientService.

* Add form_encounter last_update timestamp and FhirEncounter _lastUpdated search.

* Add to upgrade.sql. Fix example to generate missing route in openemr-api.yaml.

* Fix ValueSet getOne/getAll filtering. Use util fns.

* Implement ValueSet _id AND/OR search.

Allows ?_id=appointment-type,address-types,abook_type to return multiple resources,
but ?_id[]=appointment-type&_id[]=address-types (AND) will return none.

* Fix ValueSet _id search w array value.

Now properly handles each case:
   ?_id[]=address-types
   ?_id[]=appointment-type

---------

Co-authored-by: Robert Jones (Analog Informatics Corporation) <robert@analoginfo.com,robert@justjones.org>
14 files changed:
_rest_routes.inc.php
docker/library/api-scope-listing
sql/7_0_2-to-7_0_3_upgrade.sql
sql/database.sql
src/Common/Auth/OpenIDConnect/Repositories/ScopeRepository.php
src/RestControllers/FHIR/FhirValueSetRestController.php [new file with mode: 0644]
src/Services/AppointmentService.php
src/Services/EncounterService.php
src/Services/FHIR/FhirAppointmentService.php
src/Services/FHIR/FhirEncounterService.php
src/Services/FHIR/FhirPatientService.php
src/Services/FHIR/FhirValueSetService.php [new file with mode: 0644]
src/Services/ListService.php
swagger/openemr-api.yaml