...
The following functionality covers the case when a patron comes to LoC registration desk without prior creation of Tier 1/2 Locate account. The Kiosk should be implemented in Locate as a separate form allowing patrons to directly fill in Tier 2 registration data and proceed with registration without e-mail address verification.
Drawio | ||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Work Breakdown Structure
Create a staging table with fields:
First name
Last name
Email
Tier: 1,2
Status: describes if the patron has verified their email address (true/false)
Etc. fields from Tier 2 registration form
Add (edge) GET API to check the registration status in users table:
When the record is found in FOLIO
Return 200 - If active
Return 404 - If inactive (With a message indicating that it's expired)
When the record is NOT found in FOLIO
Return 404 - (With a message indicating that it's NOT FOUND)
Modify (edge) POST API to store data in the staging table and accept:
Tier 1 data (insert): only store First/Last name and email address
Tier1 data (update): the record is activated on Locate side
Tier 2 data (update): store full data
Create GET API for staging table to search/filter data by email/first name/last name
Create UI for staging table to search/filter data by email/first name/last name
Create PUT API to link patron record with staging record
Create a patron record if not present in user table and move it from staging to user table
Update existing patron record with staging record and remove staging record
Create UI dialog to:
Confirmation to update existing patron record with staging data
Dialog to choose one of the existing patron records and update it with staging data
Go to user app with the selected patron record
...