Allow for the creation and management of organization records (UXPROD-1139)

[UXPROD-1544] Pivot Vendor App into Organizations App Created: 27/Feb/19  Updated: 16/Sep/20  Resolved: 14/Jun/19

Status: Closed
Project: UX Product
Components: None
Affects versions: None
Fix versions: Q2 2019
Parent: Allow for the creation and management of organization records

Type: New Feature Priority: P3
Reporter: Dennis Bridges Assignee: Dennis Bridges
Resolution: Done Votes: 0
Labels: acquisitions, crossrmapps, vendors
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original estimate: Not Specified

Issue links:
Cloners
is cloned by UXPROD-1773 Updates and bug fixes for Organizatio... Closed
Relates
relates to FOLIO-1938 Create organizations github repositor... Closed
relates to UIORG-156 Rename ui-organization Closed
relates to UIORGS-1 Project Setup Closed
relates to MODGOBI-67 Switch to mod-organizations-storage Closed
relates to MODORGSTOR-1 Schema Updates Closed
relates to MODORGSTOR-2 Project Setup Closed
relates to MODORGSTOR-3 Sample and Reference Data Closed
relates to MODORGSTOR-4 Refactor APIs Closed
relates to MODORGSTOR-16 Spike: Vendor UI and Backend Refactoring Closed
relates to MODORGSTOR-23 Sample data: add non-vendor organizat... Closed
relates to UIORGS-2 Restructure "view details" screen for... Closed
relates to UIORGS-3 Restructure "create vendor" screen fo... Closed
relates to UIORGS-6 Add (assign) "contact person" to orga... Closed
relates to UIORGS-7 Organization checkbox for indicating ... Closed
relates to UIORGS-8 Make organization form responsive to ... Closed
relates to UIORGS-12 Update UI-Vendors to reference mod-ve... Closed
relates to UIORGS-34 Create and Edit interfaces Closed
relates to UIORGS-35 Assign Interfaces Closed
relates to UIORGS-36 Un-assign and delete interface form V... Closed
relates to UIORGS-37 Project Setup - Part 2 Closed
relates to UIORGS-42 Create/edit "contact person" from org... Closed
relates to UIORGS-43 View "contact person" on organization... Closed
relates to UIORGS-56 View interface Closed
relates to UIORGS-57 un-assign from organization edit Closed
relates to UIORGS-67 Add note field to contact person Closed
relates to UIORGS-72 Add “Is Vendor” column to Organizatio... Closed
relates to UIV-100 Update ACQ interface fields Document ... Closed
relates to UXPROD-1139 Allow for the creation and management... Closed
relates to UXPROD-1578 Organizations: Search and filter enha... Closed
relates to MODORDERS-225 Switch to mod-organizations-storage Closed
relates to MODVEND-78 Rename mod-vendors to mod-vendors-sto... Closed
relates to MODVEND-91 Dereference contacts from vendor model Closed
relates to UIOR-189 Update vendor dropdown in E and Physi... Closed
relates to UIOR-209 Switch to mod-organizations-storage Closed
relates to UIORGS-4 Restructure "edit vendor" screen for ... Closed
relates to UIORGS-31 App UI changes related to Vendor pivot Closed
relates to UIORGS-32 Settings UI changes related to Vendor... Closed
relates to UIORGS-44 Focus does not scroll down to require... Closed
relates to UIORGS-51 Select and add multiple contacts at once Closed
Requires
is required by ERM-165 Display interfaces for each linked Or... Closed
is required by UXPROD-1601 Support Organisations app as source o... Closed
Epic Link: Allow for the creation and management of organization records
Front End Estimate: Medium < 5 days
Front-End Confidence factor: Medium
Back End Estimate: XL < 15 days
Back End Estimator: Craig McNally
Estimation Notes and Assumptions: See comments
Development Team: Thunderjet
Rank: Chalmers (Impl Aut 2019): R1
Rank: Chicago (MVP Sum 2020): R1
Rank: Cornell (Full Sum 2021): R1
Rank: 5Colleges (Full Jul 2021): R1
Rank: hbz (TBD): R1
Rank: Lehigh (MVP Summer 2020): R1
Rank: Leipzig (Full TBD): R1
Rank: Leipzig (ERM Aut 2019): R1
Rank: MO State (MVP June 2020): R1
Rank: TAMU (MVP Jan 2021): R1
Rank: U of AL (MVP Oct 2020): R1

 Description   

Overview: The FOLIO system requires the ability to keep track of organizations, some of which are generic/non-vendor and others (vendors) which have more details specified.

Background: Whether an organization is considered a "vendor" has been identified as the main distinction here. In order to increase the flexibility of Vendors such that they can be used effectively by modules other than orders to represent both vendor and non-vendor organizations . This feature aims to convert what we call a "Vendor" into an "Organization" that can take on the role of "Vendor".

Requirements:

  • An organization with the "Vendor" flag enabled must be able to perform all the functions of the current Vendor
  • Update the labels in APIs, Schemas, and other Documentation accordingly

UI Stories needed:

  • When assigning an org to an order, limit to organizations that have function: can be assigned to orders (may have implication for organization lookup widget)
  • When assigning an org to an invoice, limit to organizations that have function: can be assigned to invoice (may have implication for organization lookup widget)
  • When assigning an org to an agreement, limit to organizations that have function: can be assigned to agreements (may have implication for organization lookup widget)
  • When assigning an org to a license, limit to organizations that have function: can be assigned to license (may have implication for organization lookup widget)
  • When assigning an org to an eUsage record, limit to organizations that have function: can be assigned to eUsage (may have implication for organization lookup widget)
  • Question: Any other record types that need organizations assigned to them?
  • Change the vendor lookup plugin to organizations lookup plugin (do we need to add some sort of understanding of function or role? should only suggest organizations that can be assigned to that particular type of record)
  • Clean up documentation (see MODORGSTOR-17 Closed )
  • Get rid of as many trivial bugs as we can (see small stories and bugs in UXPROD-1603 Closed )
    [no additional fields needed in Agreements or Interfaces in the short term]

Additional information to be provided as analysis continues.



 Comments   
Comment by Craig McNally [ 15/Mar/19 ]

Rough backend estimation notes/breakdown:

  • Rename module (mod-vendors -> mod-organizations) - github, JIRA - 1
  • Refactor schemas, examples - 2
    • Create role and function schemas
    • Rename vendor schema to organization
    • Update organization schema - include roles, etc.
  • Create/Update sample data (organziations) - 2
  • Create reference data (functions and roles) - 1
  • Refactor APIs, interfaces, perms (RAML, module descriptor, documentation (api listing, etc.)) - 2
    • change prefix from /vendor-storage to /organization-storage (org-storage?)
    • create CRUD APIs for role and functions
    • rename vendor API
    • add API for get orgs by role
  • Update code & unit tests
    • tenant API (reference data) - 1
    • vendor (org) API - 2
    • implement role and function APIs - 2
    • implement get orgs by role API - 2

Total: ~15 SP

Comment by Craig McNally [ 18/Mar/19 ]

Dennis Bridges I created stories for the backend work involved here... A few things to note:

  • The Acquisitions Interface Fields document needs to be updated.
  • The JIRA project MODORGS has been created, but we'll need a corresponding UI project.
  • The approach I'm suggesting we take here to renaming the module is to create a brand new repo (mod-orgs) and deprecate mod-vendors. This has been done in several other cases and seems cleaner than a rename, especially given that there have already been several versions of mod-vendors released. See MODORGSTOR-2 Closed .
  • I've broken things up slightly more coarsely than in the outline above. If needed stories can be split.
  • I'm guessing that the ui-plugin-find-vendors will need a story or two...
    • rename the repo/plugin? ui-plugin-find-organizations? ui-plugin-find-orgs?
    • Add ability to search by function. For the backend we plan to build this into the GET /organizations-storage/organizations endpoint, where you can search a view combining the orgs and roles table by CQL.
Comment by Craig McNally [ 25/Mar/19 ]

Dennis Bridges, Ann-Marie Breaux, Craig McNally Reminder: the feature level description needs to be updated.

Update:

  • I've updated the Purpose/Background, but did not touch the UI stories part.
  • I've updated the API listing (removed roles/functions previously added before the recent shift)
  • I've updated the 4 backend (mod) stories to reflect the shift away from roles/functions to an "isVendor" boolean.
Comment by Holly Mistlebauer [ 09/May/19 ]

Dennis Bridges, what should the "Development Team" be set to? I just noticed that it is blank and we need this field populated for capacity planning. Thanks!

Comment by Dennis Bridges [ 09/May/19 ]

thx Holly Mistlebauer It should be set to Thunderjet and it appears to be correct above. Are you referring to a spreadsheet?

Generated at Fri Feb 09 00:16:25 UTC 2024 using Jira 1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d.