From d732cb5ecd19c50b269b210715bf815104a23095 Mon Sep 17 00:00:00 2001 From: Jonny Rylands Date: Wed, 1 Sep 2021 15:28:51 +0100 Subject: [PATCH] Amend appointment #1088 --- .../amend-appt-request-header-1.txt | 1 + ...json => amend-appt-request-payload-1.json} | 10 ++++-- ...son => amend-appt-response-payload-1.json} | 10 ++++-- ...ointments_use_case_amend_an_appointment.md | 31 +++++++++++++------ pages/overview/release_notes/1_2_8.md | 25 ++++++++++++++- 5 files changed, 63 insertions(+), 14 deletions(-) create mode 100644 _includes/appointments/amend-appt-request-header-1.txt rename _includes/appointments/{amend_appt_request_example.json => amend-appt-request-payload-1.json} (90%) rename _includes/appointments/{amend_appt_response_example.json => amend-appt-response-payload-1.json} (92%) diff --git a/_includes/appointments/amend-appt-request-header-1.txt b/_includes/appointments/amend-appt-request-header-1.txt new file mode 100644 index 000000000..1f27803b3 --- /dev/null +++ b/_includes/appointments/amend-appt-request-header-1.txt @@ -0,0 +1 @@ +PUT /Appointment/9 \ No newline at end of file diff --git a/_includes/appointments/amend_appt_request_example.json b/_includes/appointments/amend-appt-request-payload-1.json similarity index 90% rename from _includes/appointments/amend_appt_request_example.json rename to _includes/appointments/amend-appt-request-payload-1.json index 45305ec43..48dcb9a02 100644 --- a/_includes/appointments/amend_appt_request_example.json +++ b/_includes/appointments/amend-appt-request-payload-1.json @@ -32,11 +32,11 @@ ] } ], - "name": "Test Organization Name", + "name": "West Road GP Practice", "telecom": [ { "system": "phone", - "value": "0300 303 5678" + "value": "03003035678" } ] } @@ -72,6 +72,12 @@ "reference": "Location/32" }, "status": "accepted" + }, + { + "actor": { + "reference": "Practitioner/18" + }, + "status": "accepted" } ] } \ No newline at end of file diff --git a/_includes/appointments/amend_appt_response_example.json b/_includes/appointments/amend-appt-response-payload-1.json similarity index 92% rename from _includes/appointments/amend_appt_response_example.json rename to _includes/appointments/amend-appt-response-payload-1.json index b443770b2..0cd9578b9 100644 --- a/_includes/appointments/amend_appt_response_example.json +++ b/_includes/appointments/amend-appt-response-payload-1.json @@ -32,11 +32,11 @@ ] } ], - "name": "Test Organization Name", + "name": "West Road GP Practice", "telecom": [ { "system": "phone", - "value": "0300 303 5678" + "value": "03003035678" } ] } @@ -96,6 +96,12 @@ "reference": "Location/32" }, "status": "accepted" + }, + { + "actor": { + "reference": "Practitioner/18" + }, + "status": "accepted" } ] } \ No newline at end of file diff --git a/pages/appointments/appointments_use_case_amend_an_appointment.md b/pages/appointments/appointments_use_case_amend_an_appointment.md index 6f8e8e5f0..566a3e126 100644 --- a/pages/appointments/appointments_use_case_amend_an_appointment.md +++ b/pages/appointments/appointments_use_case_amend_an_appointment.md @@ -21,7 +21,7 @@ The typical flow to amend an appointment is: Amending a cancelled appointment is NOT supported. -{% include important.html content="The Appointment Management capability pack is aimed at administration of a patient's appointments. As a result of information governance (IG) requirements, the amend appointments capability has been restricted to future appointments. More details are available on the [Design decisions](appointments_design.html#viewing-and-amending-booked-appointments) page." %} +{% include important.html content="The Appointment Management capability is aimed at administration of a patient's appointments. As a result of information governance (IG) requirements, the amend appointments capability has been restricted to future appointments. More details are available on the [Design decisions](appointments_design.html#viewing-and-amending-booked-appointments) page." %} ## Security ## @@ -101,13 +101,6 @@ When receiving `description` and `comment` fields in the provider system: - Where a consumer sends information longer than character limits supported, an error SHALL be returned to the consumer - Where there are not two suitable appointment text fields in a provider system, providers MAY concatenate `description` and `comment` (with suitable delimiters) in order to store in a single field, such that data is not lost -#### Example request body #### - -On the wire, a JSON serialised request would look something like the following: - -```json -{% include appointments/amend_appt_request_example.json %} -``` #### Error handling #### @@ -140,12 +133,32 @@ Provider systems: - SHALL populate `serviceType.text` with the practice defined slot type description, and where available `serviceCategory.text` with a practice defined schedule type description (may be called session name or rota type). +- SHALL populate a reference to a `HealthcareService` in the `Appointment.participant.actor` element where: + - the Appointment is [linked to a service](appointments_serviceid_configuration.html#linking-services-to-schedules) set up for service ID filtering + - and the service ID filtering [organisation switch](appointments_serviceid_configuration.html#organisation-switch) is set to ON + - SHALL meet [General FHIR resource population requirements](development_fhir_resource_guidance.html#general-fhir-resource-population-requirements) populating all fields where data is available, excluding those listed below - SHALL NOT populate the following fields: - `reason` - `specialty` +### Examples ### + +#### Amend an appointment #### + +##### Request ##### + +```http +{% include appointments/amend-appt-request-header-1.txt %} +``` + +```json +{% include appointments/amend-appt-request-payload-1.json %} +``` + +##### Response ##### + ```json -{% include appointments/amend_appt_response_example.json %} +{% include appointments/amend-appt-response-payload-1.json %} ``` diff --git a/pages/overview/release_notes/1_2_8.md b/pages/overview/release_notes/1_2_8.md index c7dcac3e2..500bfd71e 100644 --- a/pages/overview/release_notes/1_2_8.md +++ b/pages/overview/release_notes/1_2_8.md @@ -240,7 +240,7 @@ The GP Connect API 1.2.8 release contains Appointment Management changes to supp **Description:** -- Add *SHOULD* requirement for consumer to send a HealthcareService reference (where available) in the Appointment resource in the request payload +- Add requirement for consumer to send a HealthcareService reference (where available) in the Appointment resource in the request payload - Add requirement for provider to return a HealthcareService reference in the Appointment resource response payload, where - the appointment is linked to a service @@ -251,3 +251,26 @@ The GP Connect API 1.2.8 release contains Appointment Management changes to supp **Pages changed:** - [Book an appointment](appointments_use_case_book_an_appointment.html) + +--- + +### Amend an appointment ### + +**Tickets:**  [#1088](https://github.com/nhsconnect/gpconnect/issues/1088) + +**Affects:**  Appointment Management + +**Impacts:** Provider systems, consumer systems + +**Description:** + +- Add requirement for provider to return a HealthcareService reference in the Appointment resource response payload, where + - the appointment is linked to a service + - and the organisation switch is ON + +- Reformat example + +**Pages changed:** + +- [Amend an appointment](appointments_use_case_amend_an_appointment.html) +