Support canceling POL(s) through EBSCONET integration

Description

Purpose:

Support canceling purchase order lines through the EBSCONET integration such that order that are "canceled" or "not renewed" in EBSCONET are updated in FOLIO accordingly

Requirements:

https://folio-org.atlassian.net/wiki/display/ACQ/FOLIO+Order+Renewal+Integration

Approach:

EBSCONET data mapping includes a data point called "type" this will include a value of renewal or non-renewal.

  • If type = non-renewal then POL receipt status and payment status are updated to "canceled". 

    • If Payment status is set to "Payment not required" or "Fully paid" it is NOT changed to canceled

    • If Receipt status is set to "Receipt not required" or "Fully received" it is NOT changed to canceled

  • If type = renewal then POL receipt status and payment status ARE NOT updated.

  • If status can not be updated respond with "Order line was not automatically canceled because it is already complete."

Acceptance criteria:

  • When order is canceled in EBSCONET the related purchase order line is also marked as canceled

  • EBSCONET schema is updated to include "type"

  • User can change POL receipt or payment status to canceled even if the PO workflow state is Closed.

Environment

None

Potential Workaround

None

Checklist

hide

TestRail: Results

Activity

Show:

Andrei Makaranka May 30, 2022 at 3:02 PM

Dennis Bridges May 19, 2022 at 9:52 PM

Yes, I'm not sure there is a scenery when this PUT would be sent twice, but I think it would makes sense that the second time you get confirmation that it can't be canceled because the line is already canceled. Any other updates would be made.

Damien May 19, 2022 at 7:38 PM
Edited

So if the same PUT request is sent twice, and it cancels the line the first time, it should return an error the second time ?

Dennis Bridges May 19, 2022 at 6:07 PM

 422 (Unprocessable) seems like an appropriate code to use yes. This would actually happen when the line statuses both have "Resolved" states but none of them are "Canceled".

If one or more status = "Canceled" we would consider the line to be canceled already so the response should be different. Eg. Order line was not automatically canceled because it is already canceled.

Damien May 19, 2022 at 5:52 PM

Also, what if one is already cancelled but not the other ? Or both are already cancelled ?

Done

Details

Assignee

Reporter

Priority

Story Points

Sprint

Development Team

Thunderjet

Fix versions

Release

Morning Glory (R2 2022)

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created November 29, 2021 at 6:35 PM
Updated June 13, 2022 at 4:12 PM
Resolved May 30, 2022 at 3:02 PM
TestRail: Cases
TestRail: Runs