[DRAFT] Card Printing
Context
LoC patron registration workflow: The patron completes the pre-registration form online; pre-registration patron data is processed and stored in the FOLIO (https://folio-org.atlassian.net/browse/UXPROD-4663 ); patron visits the LoC in person to complete the registration process; library staff verifies the patron's identity, updates registration data, captures photos, and issues the library card.
The current feature aims to integrate badge printers FOLIO and enable the capability print a library card.
Requirements
Functional Requirements
https://folio-org.atlassian.net/browse/UXPROD-4723
Non-functional Requirements
Interoperability - The solution should allow seamless integration with Card Printing Hardware/Software
Auditability - The solution should provide capability of tracking what patron data was exported for printing by whom and when.
Assumptions
LoC uses Windows-based workstations at registration desks
LoC uses ZC100 Card Printer for printing cards and its native software (Zebra CardStudio)
The target solution may be implemented with the intermediate manual flow-based solution
Target Architecture
Context Diagram
FOLIO is a web based application and the UI is provided through web browser. This is limiting capability of interaction with hardware. The solution addressse interoperability NFR through implementation of desktop application that would provide middleware capability for synchronization of data between FOLIO and printing hardware.
Container Diagram
FOLIO should provide :
API to export data for printing in Excel format and related profile pictures
API to update patron’s record with print date and related details
Capability to track what patron data was exported for printing by whom and when.
Middleware should provide:
Capability to run on desktop machine in Windows-based OS
Capability to authorize requests to FOLIO
Capability to sync data with FOLIO for print details
Sequence Diagram
The key aspects:
Middleware is desktop application (windows service) that is aimed to synchronize local data for printing patron cards with FOLIO
User should be logged in his LC desktop and authorize Middleware to fetch the data from FOLIO
The export of newly created records should happen in background without interaction
User should be able to manually invoke synchronization with FOLIO
MVP
MVP for card printing excludes the middleware software system and implies that steps to refresh data from FOLIO to a Card Print system should be done manually by Librarians.