Uploaded image for project: 'mod-circulation'
  1. mod-circulation
  2. CIRC-1060

Return a full list of errors when create/update request action fails

    XMLWordPrintable

Details

    • Story
    • Status: Closed (View Workflow)
    • TBD
    • Resolution: Done
    • None
    • 20.0.0
    • None
    • EPAM-Veg Sprint 105, EPAM-Veg Sprint 106, EPAM-Veg Sprint 107
    • 8
    • Vega
    • R1 2021
    • Medium

    Description

      Currently, when create or update request action (POST /circulation/requests and PUT /circulation/requests) runs into an error, it stops processing and responds with information about this error.

      This behavior needs to be changed. Request endpoints should return a full list (or as many as possible) of errors that prevent the user from completing a request action. Also, it should differentiate between overridable blocks and errors that can't be overridden. According to the design doc https://wiki.folio.org/display/DD/Overriding+blocks+in+mod-circulation :

      If there are overridable blocks, an error needs to be added to the errors field with parameter array containing:

      • key: "overridableBlocks", value: comma-separated string
        A list of blocks that need to be overridden in order to complete this action. If this is the only error returned by the server and there are no other parameters, the client will know that it is possible to complete this action by overriding existing blocks. Existence of other kinds of errors tells the client that it doesn't make sense to override these blocks.
      • key: "missingOverridePermissions", value: comma-separated string (optional)
        If there are overridableBlocks, server may also include a list of missing override permissions. The user won't be able to complete this action, but he or she may want to request permission escalation ( UXPROD-2645 - Permission escalation for override OPEN ) based on this information.

      Overridable blocks keys:

      • patron-block
      • item-limit-block
      • item-not-loanable-block

      Override permissions:

      • circulation.override-patron-block
      • circulation.override-item-limit-block
      • circulation.override-item-not-loanable-block

      TestRail: Results

        Attachments

          Issue Links

            Activity

              People

                OleksandrVidinieiev Oleksandr Vidinieiev
                oleksandrkurash Alexander Kurash
                Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  TestRail: Runs

                    TestRail: Cases