Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

Info
titleJira Link

https://jira.kuali.org/browse/OLE-1423

Info
titleRice2.x Framework

Patron code is going to be developed using the new Rice2.x codebase which offers rich UI via the KRAD framework. The various features pertaining to Patron will be tested and demonstrated independently of OLE_Rice1.x

1. Patron Maintenance

...

a. KRAD Design: A simple KRAD maintenance document will be used to create and update a new or an existing patron record. 

b. Participants: OlePatronDocument.java, OlePatronDefinition.java, OlePatronContract.java, OlePatronDocument.xml, OlePatronDocumentMaintenanceDocument.xml, OlePatronMaintenanceImpl.java, ojb-repository-krms.xml

c. Framework: Rice2.x

2. Patron Search

...

a. KRAD Design: A simple KRAD maintenance document document will be used to create and update a new or an search,edit and copy the existing patron recordrecords.

b. Participants: OlePatronLookupableImpl.java, OlePatronInquirableImpl.java

c. Framework: Rice2.x

3.

...

a. KRAD Design: Use the existing document framework

b. Participants:

...

Ingest

...

a. KRAD Design: The ingest screen is going to be similar to the Staff Upload screen in OLE_Rice2.x. Its a simple KRAD form with a view.xml and a controller.

b. Participants: OlePatronRecordForm.java, OlePatronRecordView.xml, OlePatronRecordController.java, OleNameTypes.java, OlePatron.java,

                        OlePatronEmailAddress.java, OlePatronGroup.java, OlePatronLevelPolicies.java, OlePatronNote.java, OlePatronPostalAddress.java,

                        OlePatronTelePhoneNumber.java, OlePatronConverterService.java

c. Framework: Rice2.x

d. Workflow

...

4. Security

...

a. Roles:

  • Patron Manager – full permissions over patron and borrower type
  • Full Circulation Attendent – view and edit patron document, view borrower type
  • Limited Circulation Attendent – view patron document, no access to borrower type

...

  • Create
  • Edit
  • View(Inquiry)

b. Participants:

  • ole_krim_role_t.csv oracle-ole-rice.sql (Defining roles such as Patron, Borrower type etc)
  • ole_krim_perm_t.csv (Define permissions)
  • ole_krim_role_perm_t.csv (Define , defining permissions, defining role/permissions mapping i.e for a particular role following permissions...)
  • ole_krim_role_mbr_t.csv (for the particular role who are the people ie. Patron - OLE-Jon-Doe)

...

  • mysql-ole-rice.sql (Defining roles such as Patron, Borrower type etc, defining permissions, defining role/permissions mapping)

5. Service(s): Will be published to KSB and also be accompanied by appropriate java docs

...

a. Creation/Updates:

OlePatronService:

...

  • getPatron(String barcodepatronId)
  • createPatron(OlePatron patronOlePatronDefinition olePatron)
  • updatePatron(OlePatron patronOlePatronDefinition olePatron)
  • inactivatePatron(OlePatron patronOlePatronDefinition olePatron)addPatronAddress(OlePatron patron
  • addNameToEntity(EntityName name, Entity entity)
  • updatePatronAddressupdateName(OlePatron patronEntityName name)inactivatePatronAddress
  • inactivateName(OlePatron patronString nameId)addPatronEmail(OlePatron patron
  • addEmailToEntity(List<EntityEmail> emails, EntityTypeContactInfo entityTypeContactInfo)
  • updatePatronEmailupdateEmail(OlePatron patronEntityEmail entityEmail)inactivatePatronEmail
  • inactivateEmail(OlePatron patronString emailId)addPatronPhone(OlePatron patron
  • addAddressToEntity(List<EntityAddress> entityAddress, EntityTypeContactInfo entityTypeContactInfo)
  • updatePatronPhoneupdateAddress(OlePatron patronEntityAddress entityAddress)inactivatePatronPhone
  • inactivateAddress(OlePatron patronString addressId)addPatronNote(OlePatron patron
  • addPhoneToEntity(List<EntityPhone> entityPhone, EntityTypeContactInfo entityTypeContactInfo)
  • updatePatronNoteupdatePhone(OlePatron patronEntityPhone entityPhone)inactivatePatronNote
  • inactivatePhone(OlePatron patronString phoneId)

OleIdentityService: Filter out the Patron(s)

  • public List<Person> findPeople(Map<String, String> criteria)
  • public List<Person> findPeople(Map<String, String> criteria, boolean unbounded)
  • protected List<Person> findPeopleInternal(Map<String,String> criteria, boolean
  • public List<Person> getPersonByExternalIdentifier(String externalIdentifierTypeCode, String externalId) unbounded )addNoteToPatron(OlePatronNotesDefinition patronNote)
  • updateNote(OlePatronNotesDefinition patronNote)
  • inactivateNote(String patronNoteId)
  • getPatrons()
  • findPatron(QueryByCriteria queryCriteria)
b. Lookups/Searches

OlePatronLookupableHelperServiceOlePatronLookupableImpl

  • public List<? extends BusinessObject> getSearchResults(Collection<?> performSearch(LookupForm form, Map<String, String> fieldValues)

OlePersonLookupableHelperService

  • public List<? extends BusinessObject> getSearchResults(Map<String, String> fieldValues) 

...

  • searchCriteria, boolean bounded)

6. Data Model : The DM for Patron is going to reside in the Rice2.x Schema

...

Image Modified

...

7. Sign-off

...

Review complete? Yes (Sr.Technical Architect) - Friday May 4th, 2012

Review with Core (Handoff #2)? No Yes (OLE Core Team/S&A Team) - Monday May 7th, 2012