2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-04-28 11:36:44 +00:00

Bug fix: record shipment date (#8580) (#8581)

* Bug fix: record shipment date

- Ref: https://github.com/inventree/InvenTree/pull/6449

* Update unit test

(cherry picked from commit db128f93221c1715b921960f0bf6b870dcec9edf)

Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
This commit is contained in:
github-actions[bot] 2024-11-28 16:00:00 +11:00 committed by GitHub
parent a4894d9f4a
commit d0b87a1a12
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 12 additions and 0 deletions

View File

@ -1098,6 +1098,8 @@ class SalesOrder(TotalPriceMixin, Order):
self.status = SalesOrderStatus.COMPLETE.value self.status = SalesOrderStatus.COMPLETE.value
else: else:
self.status = SalesOrderStatus.SHIPPED.value self.status = SalesOrderStatus.SHIPPED.value
if self.shipment_date is None:
self.shipped_by = user self.shipped_by = user
self.shipment_date = InvenTree.helpers.current_date() self.shipment_date = InvenTree.helpers.current_date()

View File

@ -1576,6 +1576,8 @@ class SalesOrderTest(OrderTest):
so.refresh_from_db() so.refresh_from_db()
self.assertEqual(so.status, SalesOrderStatus.SHIPPED.value) self.assertEqual(so.status, SalesOrderStatus.SHIPPED.value)
self.assertIsNotNone(so.shipment_date)
self.assertIsNotNone(so.shipped_by)
# Now, let's try to "complete" the shipment again # Now, let's try to "complete" the shipment again
# This time it should get marked as "COMPLETE" # This time it should get marked as "COMPLETE"
@ -1591,9 +1593,14 @@ class SalesOrderTest(OrderTest):
# Next, we'll change the setting so that the order status jumps straight to "complete" # Next, we'll change the setting so that the order status jumps straight to "complete"
so.status = SalesOrderStatus.PENDING.value so.status = SalesOrderStatus.PENDING.value
so.shipment_date = None
so.shipped_by = None
so.save() so.save()
so.refresh_from_db() so.refresh_from_db()
self.assertEqual(so.status, SalesOrderStatus.PENDING.value) self.assertEqual(so.status, SalesOrderStatus.PENDING.value)
self.assertIsNone(so.shipped_by)
self.assertIsNone(so.shipment_date)
InvenTreeSetting.set_setting('SALESORDER_SHIP_COMPLETE', True) InvenTreeSetting.set_setting('SALESORDER_SHIP_COMPLETE', True)
@ -1603,6 +1610,9 @@ class SalesOrderTest(OrderTest):
so.refresh_from_db() so.refresh_from_db()
self.assertEqual(so.status, SalesOrderStatus.COMPLETE.value) self.assertEqual(so.status, SalesOrderStatus.COMPLETE.value)
self.assertIsNotNone(so.shipment_date)
self.assertIsNotNone(so.shipped_by)
class SalesOrderLineItemTest(OrderTest): class SalesOrderLineItemTest(OrderTest):
"""Tests for the SalesOrderLineItem API.""" """Tests for the SalesOrderLineItem API."""