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

Clinician portal for SPARC #1874

Draft
wants to merge 33 commits into
base: dev
Choose a base branch
from
Draft

Clinician portal for SPARC #1874

wants to merge 33 commits into from

Conversation

marta-
Copy link
Contributor

@marta- marta- commented Jan 7, 2025

WORK IN PROGRESS. Includes the locking feature. Replaces branch clin-portal-with-locking (#1792).

To test with sparc:

  • build this cards branch with mvn clean install
  • build sparc (main or other branch) with mvn clean install
  • from the cards directory, start with PROJECT_VERSION=1.0.0-SNAPSHOT ./start_cards.sh --dev --project sparc --locking
  • create patient information and visit information forms
  • navigate to the patient subject/visit subject pages

acrowthe and others added 30 commits December 17, 2024 17:42
Initial implementation including:
- Locking restriction
  - TODO: Once lock and unlock rights are implemented, apply locked restriction to everyone by default
- Lock node on subjects
  - Includes author who locked the node
  - Only locked subjects with a child lock node can be unlocked and only if their parent is unlocked
    to prevent partially unlocked child trees
  - TODO: add time to lock node
- Basic UI for locking and unlocking
  - Single lock/unlock button based on current lock state
  - TODO: list any incomplete forms
  - TODO: update UI when locking or unlocking successfull to reflect new lock state
  - TODO: list current user and timestamp

Other tasks TODO:
- Make locking opt-in
- Make subject actions extensible to move the locking button into the locking modules
Lock button will now update the subject view so changes to locked status will
be displayed to the user without needing to refresh the page
Switch to LOCK and UNLOCK HTTP methods rather than Post
Create new Subject Action extension
- Move lock button into locking module and access it through the extension
- Restrict form and child subject creation for locked subjects
- Improve locking UI
  - Simplify subject actions extension
  - Add list of incomplete forms to lock UI
  - Update child form display when a subject is locked or unlocked
Improve locking UI
- Split locking dialog into up to 2 dialogs:
  - List of incomplete forms + continue
  - Sign off
- Convert username and date into disabled inputs
- Convert list of incomplete forms into Material UI list
Refactor lock handling into LockManager rather than built into LockServlet
Remove extraneous lock action extension definition
[wip] Add stub views for a form/patient/visit
[refactoring] Moved all clinician-related ui components into a new `clinician-portal` directory
CARDS-2558: New "clinician-portal" module
For clinicians, display forms with a simplified menu
For clinicians, reorganize visit pages to display the associated forms in the order specified by the Questionnaire set, and with simplified actions
Fix error with forms not switching between view and edit mode correctly
Fetch all visit information forms for a patient
Declare frontent dependencies
Visit page - added link to patient survey, better visit info icon
[cleanup] Removed unnecessary code from the clinician portal form
Display patient info and visits on the Patient page
Simpler queries for populating the Patient page
Better icon and position for the Patient Survey Linky
Added lock functionality on visit pages
marta- and others added 3 commits December 19, 2024 13:58
Separate clinician forms and patient surveys on visit page
For incomplete navigable paginated forms, show which pages are completed
@sashaandjic sashaandjic added the testing... Testing in progress label Jan 9, 2025
@sashaandjic
Copy link
Contributor

Not sure why the last 3 pages do not have required fields; 7. DN4 and 9. Neurological Examination should have all of the fields required. For page 8. Mechanism Pain Features, we need to figure out when to mark the form as complete. Curently the alast 3 [ages are marked as complete as soon as the form is created.
image

@marta-
Copy link
Contributor Author

marta- commented Jan 9, 2025

Not sure why the last 3 pages do not have required fields

https://phenotips.atlassian.net/browse/SPARC-46

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
testing... Testing in progress
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants