Skip to content

Instantly share code, notes, and snippets.

@jedie
Last active March 15, 2019 11:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jedie/455e3e7eba64a521d9fd8fe55fec1377 to your computer and use it in GitHub Desktop.
Save jedie/455e3e7eba64a521d9fd8fe55fec1377 to your computer and use it in GitHub Desktop.
import logging
from django.core.exceptions import SuspiciousOperation
from oscar_docdata.facade import Facade
from oscar_docdata.models import DocdataOrder
log = logging.getLogger(__name__)
class CustomDocdataFacade(Facade):
# ...
def update_order(self, order):
"""
Update order status by request new data from DocData.
Restrict to certain Order status codes
See also:
https://github.com/django-oscar/django-oscar-docdata/issues/51
"""
order_status = order.status
log.info("Update order: %s (status: %r)", order, order_status)
if order_status not in (DocdataOrder.STATUS_NEW, DocdataOrder.STATUS_IN_PROGRESS, DocdataOrder.STATUS_PENDING):
raise SuspiciousOperation("Wrong DocData Order status!")
super().update_order(order)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment