SPIKE: Store pop-up notes values
IN PROGRESS
Participants:
Role | Name | Approval |
|---|---|---|
Solution Architect | @Taras Spashchenko |
|
Java Lead | @Dima Tkachenko |
|
Product Owner | @Khalilah Gambrell |
|
Spike objective: show note pop-up on the Users/Check out app based on the flags
Spike goal: define a way to inform applications about showing a note pop-up
Proposed solution:
Extend an existing note schema by allowing users to set up an additional properties. As a result we will have a note with properties for applications. Once Users/Check out application gets note with specific property, it decides to show a note to user.
Proposed property values by app:
Users app - popUpOnUser
Check out app - popUpOnCheckOut
Example for note in mod-notes
{
"id" : "11111111-1111-1111-1111-111111111111",
"typeId" : "22222222-2222-2222-2222-222222222222",
"domain" : "users",
"title" : "test_title ",
"content" : "test_content",
"creator" : {
"lastName" : "TEST_LAST_NAME",
"firstName" : "TEST_FIRST_NAME"
},
"metadata" : {
"createdDate" : "2019-12-03T09:21:57.793+00:00",
"createdByUserId" : "00000000-0000-0000-0000-000000000000",
"createdByUsername" : "test_user",
"updatedDate" : "2019-12-03T09:21:57.793+00:00",
"updatedByUserId" : "00000000-0000-0000-0000-000000000000"
},
"links" : [ {
"id" : "55555555-5555-5555-5555-555555555555",
"type" : "user"
} ],
"popUpOnUser": true,
"popUpOnCheckOut": true
}Pros:
Simple solution with not much changes needed.
Filtering: should be investigated
Cons:
"popUpOnUser", "popUpOnCheckOut" tags considered as a specific case for marking notes and will not be stored to the "tags" table from the mod-tags. It means that on
GET .../tagsrequest, user will receive set of tags shared across FOLIO and they will not include pop-up tags for Users/Check out app.
Tags proposed for this solution will be known only for UI.
Questions & Answers:
| 1 | Will it be needed to search on those apps to find pop-up notes ? |
|
Implementation Stories:
Extend existing note schema to add tags (Back-end mod-notes) - https://folio-org.atlassian.net/browse/MODNOTES-165
Update Note pop-up by adding checkboxes for Users/Check out app (Front-end) - https://folio-org.atlassian.net/browse/UINOTES-97
Support note pop-up for Users app by tag (Front-end) - https://folio-org.atlassian.net/browse/UIU-2008
Support note pop-up for Check out app by tag (Front-end) -
@Natalia Zaitseva, are you proposing the following workflow?
Display a tag field on a User note record. Checkout app has no records or notes.
User can select system generated tags of popUponUser and popUponCheckout
If the user selects popUponCheckout then the frontend can use this value to trigger the display of the note assigned this tag to display on the Checkout app when the user selects the user with that note.
Was @Denys Bohdanrecommendation of using Note types considered?
And could this be a broader approach of integrating tags with notes?