LP#
1879983: Curbside application: open-ils.curbside
This commit adds the Curbside OpenSRF application, open-ils.curbside,
which provides all the business logic and data retrieval APIs. The
open-ils.curbside service must be registered with the public routeri
in order for the feature to function.
The methods in this service are:
* open-ils.curbside.fetch_mine: retrieve the active appointments
for the current login session; this is meant for OPAC use.
* open-ils.curbside.open_user_appointments_at_lib: retrieve
appointments for the specified user at a given library.
* open-ils.curbside.patron.ready_holds_at_lib.count: count
available holds for a patron at a specified library; this is
needed because there is no other single method that provides
this.
* open-ils.curbside.fetch_to_be_staged
* open-ils.curbside.fetch_staged
* open-ils.curbside.fetch_arrived
* open-ils.curbside.fetch_delivered
Retrieve appointments in various states. These methods are streaming
and also have .atomic variants.
* open-ils.circ.curbside.claim_staging
* open-ils.circ.curbside.unclaim_staging
Allow a staff member to claim responsibility for staging items
for an appointment or to release a claim.
* open-ils.curbside.fetch_to_be_staged.latest
* open-ils.curbside.fetch_staged.latest
* open-ils.curbside.fetch_arrived.latest
* open-ils.curbside.fetch_delivered.latest
Retrieve a hash of apopintments in various states; used to determine
if the UI should be updated.
* open-ils.curbside.times_for_date
Retrieve available times for curbside appointments at the specified
date.
* open-ils.curbside.update_appointment
* open-ils.curbside.create_appointment
* open-ils.curbside.delete_appointment
CUD.
* open-ils.curbside.mark_staged
* open-ils.curbside.mark_unstaged
* open-ils.curbside.mark_arrived
Update the state of appointments.
* open-ils.curbside.mark_delivered
Update the state of an appointment to mark it delivered AND check
out all of the available holds.
In addition to Mike Rylander, significant contributions to this
patch were made by Galen Charlton.
Sponsored-by: PaILS
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org>