Skip to content
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

Add appointment fields from VAMC facility health service to Service location #16348

Closed
9 of 14 tasks
omahane opened this issue Dec 7, 2023 · 24 comments
Closed
9 of 14 tasks
Assignees
Labels
Drupal engineering CMS team practice area Enhancement Issue type: New feature or request Facilities Facilities products (VAMC, Vet Center, etc) Regional office CMS managed VBA product owned by the Facilities team UX VAMC CMS managed product owned by Facilities team

Comments

@omahane
Copy link
Contributor

omahane commented Dec 7, 2023

User Story or Problem Statement

As an editor, I want to be able to create facility services with service locations specific the appropriate type of facility and service, whether VAMC or VBA.

Acceptance Criteria

  • The Service location paragraph is able to capture appointment information for facility services
  • Deprecated fields are hidden
  • The user interface for Service Options and Appointments follows the Figma design
  • This goes into an integration branch

Implementation steps

Service location - Service Options

  • A list field is added to Service location for Service options: Office visits, displayed on the form as radio buttons
  • A list field is added to Service location for Service options: Virtual support, displayed on the form as radio buttons

Service location - Appointments

  • A list field is added to Service location for Appointments: Appointment introduction text, displayed on the form as radio buttons
  • An entity reference field is added to Service Location for Appointments: Phone number for appointments
  • A list field is added to Service location for Appointments: Is online scheduling available for this service?", displayed as a dropdown field

Default appointment text per Service

  • A markup field field_vba_fac_serv_appt_default is added to VBA Facility service for "Appointment lead-in default" to hold the default text (a fraternal twin to the same field on the VAMC facility health service content type)
  • The markup field field_vba_serv_reg_appt_default is added to Service region for "Appointment lead-in default" to hold the default text
  • The markup field field_vamc_nonclin_appt_default is added to VAMC Facility Non-clinical Service for "Appointment lead-in default" to hold the default text
  • @davidmpickett determines text for all instances of field_hservices_lead_in_default I can't use this field, as it not from a paragraph, but a content type. Adding new markup for each, instead.
  • Code is refactored from va_gov_backend that handles the logic for the appointment introduction text for the new service location fields and accounts for the VAMC facility health service, VAMC facility non-clinical service, VBA facility service and Service region content types, with the new code going into va_gov_facilities.
@omahane omahane added Enhancement Issue type: New feature or request Facilities Facilities products (VAMC, Vet Center, etc) Needs refining Issue status labels Dec 7, 2023
@xiongjaneg xiongjaneg added the Drupal engineering CMS team practice area label Dec 7, 2023
@xiongjaneg
Copy link
Contributor

@davidmpickett Please review this ticket and share your wisdom

@omahane
Copy link
Contributor Author

omahane commented Dec 15, 2023

@davidmpickett

Are we doing ALL the updates to Service Location from that Figma file in this ticket? Or are we limiting the scope to the sub sections: Service Options and Appointments? (question by @davidmpickett )

I covered in the Implementation Steps the changes I planned to make. I'll update the AC to be more specific and clear.

Also, do we have a comprehensive list of the changes to Service Location, based on Figma?

@omahane
Copy link
Contributor Author

omahane commented Dec 15, 2023

@davidmpickett

Are we going to power these two list fields with the VA Service delivery options taxonomy that was created previously? (question by @davidmpickett)

No, we were going to make two new list fields.

@davidmpickett
Copy link
Contributor

Also, do we have a comprehensive list of the changes to Service Location, based on Figma?

No. There are still open feedback threads in #16154, so until that's wrapped up can't make a final list.

For changes that won't be covered by this ticket, those could be added to #16327

@davidmpickett
Copy link
Contributor

Just realized that there are two different Figma files covering Service Location both with active comments:

Before this ticket is picked up, @thejordanwood will need to indicate a single source of truth for Drupal devs to reference.

@davidmpickett
Copy link
Contributor

@davidmpickett

Are we going to power these two list fields with the VA Service delivery options taxonomy that was created previously? (question by @davidmpickett)

No, we were going to make two new list fields.

Then let's also retire that Taxonomy so we don't have a vestigial entity hanging around. Since it never got any data, might be able to full on Delete it?

@omahane
Copy link
Contributor Author

omahane commented Jan 18, 2024

@mmiddaugh @xiongjaneg I was adding the help text for the Service options and noticed the use of "if" where I would typically expect to see "whether":

  • Select if Veterans can travel to a physical location to receive services.
  • Select if Veterans can receive services by phone or video call.

I recommend that we use "whether" instead:

  • Select whether Veterans can travel to a physical location to receive services.
  • Select whether Veterans can receive services by phone or video call.

What do you think?

@xiongjaneg
Copy link
Contributor

@omahane Were you an English major? I was but I still can't figure this out so looked it up Merriam Webster online: "For clarity, it is best to use whether in reference to a choice or alternatives ("we're going whether it rains or not") and if when establishing a condition ("we will go if it doesn't rain")." So your recommendation sounds right since it's a choice.

@omahane
Copy link
Contributor Author

omahane commented Jan 18, 2024

I also was an English major, so it tripped my internal sensors. Obviously, in conversation, we substitute "if" for "whether" all the time, but in writing for external audiences, I'm a little more fastidious.

@jilladams
Copy link
Contributor

jilladams commented Jan 26, 2024

https://dsva.slack.com/archives/C0FQSS30V/p1706293907123389

To support the migration of service information to the Service Location paragraph, I have picked up this ticket: #16451. This means #16348 is on hold and the UX niceties may cross the finish line after this sprint.

@jilladams jilladams added VAMC CMS managed product owned by Facilities team Regional office CMS managed VBA product owned by the Facilities team labels Jan 26, 2024
@omahane
Copy link
Contributor Author

omahane commented Jan 29, 2024

@jilladams @xiongjaneg (cc: @swirtSJW ) I have discovered another area in need of refactoring related to this change:
docroot/modules/custom/va_gov_post_api/src/Service/PostFacilityServiceVamc.php
It sets the appointment introduction text that we send to Lighthouse.

This needs some more investigation, though, as I'm not 100% how the new post_api data should look.

I stubbed a ticket: #17081

@swirtSJW
Copy link
Contributor

@omahane Good catch. I forgot we are sending intro text to lighthouse.
I wrote that code three years ago. The context is, Facility Locator V1 is not using it. It was in anticipation of V2 (and any other consumers of the Facility API V1).

It was not accounting for different service locations / modality. At the time, that was not even a twinkle in @davidmpickett 's eyes.

We should discuss, but I think we are going to need to move this output into the service location(s)

@swirtSJW
Copy link
Contributor

@xiongjaneg and @jilladams ^^
This is a bit of a mess due to Lighthouse API versioning because V1 is already locked in. This may be a blocker that I completely missed. :(

@xiongjaneg
Copy link
Contributor

@swirtSJW Let us know whatever needs doing. Will add to next 16th minute.

@davidmpickett
Copy link
Contributor

@xiongjaneg and @jilladams ^^ This is a bit of a mess due to Lighthouse API versioning because V1 is already locked in. This may be a blocker that I completely missed. :(

@swirtSJW Is this the bullet we dodged? 🤞🏻 https://dsva.slack.com/archives/C0FQSS30V/p1706569480675859

@omahane
Copy link
Contributor Author

omahane commented Jan 30, 2024

@davidmpickett Do we have appointment lead-in default text for:

  • VAMC Facility Non-clinical service
  • Service Region
  • VBA Facility service
    • Figma has "Contact us to schedule, reschedule, or cancel your appointment." // Is that right? If so, should I use the same for Service region?

@omahane
Copy link
Contributor Author

omahane commented Jan 31, 2024

I found a couple more places where the VAMC Facility Health Service field is being used:
field_hservice_appt_intro_select is in

  • docroot/modules/custom/va_gov_backend/va_gov_backend.module
    • unsetting form fields
    • validating text
  • docroot/modules/custom/va_gov_vamc/src/EventSubscriber/VAMCEntityEventSubscriber.php
    • clearing the text

@davidmpickett
Copy link
Contributor

@davidmpickett Do we have appointment lead-in default text for:

  • VAMC Facility Non-clinical service

  • Service Region

  • VBA Facility service

    • Figma has "Contact us to schedule, reschedule, or cancel your appointment." // Is that right? If so, should I use the same for Service region?

I think that default text works for those three content types for now. The main reason we needed to split these apart is that the VAMC Facility Health Service has the additional sentence of "If a referral is required, you’ll need to contact your primary care provider first." which wouldn't apply to the three other types.

@mmiddaugh @xiongjaneg - might be something to chat with VBA about as you get closer having editors adding services.

@davidmpickett
Copy link
Contributor

This might not technically be part of this ticket, but documenting what I find as I find it.

Node View

  • The Service Location section is disorganized
  • New fields appear after previous field sections
  • The order and grouping of fields here should match the Node Edit screen

screencapture-cms-admiczzm3omzebumtehckicvnqr8dcdc-ci-cms-va-gov-node-33088-latest-2024-02-02-15_09_43

@davidmpickett
Copy link
Contributor

davidmpickett commented Feb 2, 2024

Service Options

@omahane - I'm not sure how much control you have over margins but wanted to call out these discrepancies
ccing @thejordanwood in since this is more her expertise.

  • The margin between the field label and help text should be 4 px not 8px

Screenshot 2024-02-02 at 3 29 08 PM

  • The margin between the help text and the radio buttons should be 8 px not 16px

Screenshot 2024-02-02 at 3 21 40 PM

  • The margin between the radio buttons and the following field label should be 16px not 12px

Screenshot 2024-02-02 at 3 24 17 PM

Because the margins are wrong the gestalt is breaking and it's not immediately clear how the radio buttons relate the field labels

Screenshot 2024-02-02 at 3 17 52 PM

@davidmpickett
Copy link
Contributor

Phone number for appointments

Any chance of getting rid of the multiple nested boxes?

Screenshot
Screenshot 2024-02-02 at 3 39 56 PM

vs Figma
Screenshot 2024-02-02 at 3 40 05 PM

@omahane
Copy link
Contributor Author

omahane commented Feb 2, 2024

Service Options

@omahane - I'm not sure how much control you have over margins but wanted to call out these discrepancies ccing @thejordanwood in since this is more her expertise.

The margin of these elements is sitewide and really belongs to CMS Platform.

@omahane
Copy link
Contributor Author

omahane commented Feb 2, 2024

This might not technically be part of this ticket, but documenting what I find as I find it.

Node View

  • The Service Location section is disorganized
  • New fields appear after previous field sections
  • The order and grouping of fields here should match the Node Edit screen

I can clean this up in this ticket.

@omahane
Copy link
Contributor Author

omahane commented Feb 2, 2024

Phone number for appointments

Any chance of getting rid of the multiple nested boxes?

Sure, but I think this is also a CMS Platform issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Drupal engineering CMS team practice area Enhancement Issue type: New feature or request Facilities Facilities products (VAMC, Vet Center, etc) Regional office CMS managed VBA product owned by the Facilities team UX VAMC CMS managed product owned by Facilities team
Projects
None yet
Development

No branches or pull requests

5 participants