diff --git a/src/sideshow/web/views/orders.py b/src/sideshow/web/views/orders.py index d38b728..71907a6 100644 --- a/src/sideshow/web/views/orders.py +++ b/src/sideshow/web/views/orders.py @@ -1025,6 +1025,11 @@ class OrderView(MasterView): # pylint: disable=too-many-public-methods session = self.Session() return session.query(model.OrderItem).filter(model.OrderItem.order == order) + def get_row_parent(self, row): # pylint: disable=empty-docstring + """ """ + item = row + return item.order + def configure_row_grid(self, grid): # pylint: disable=empty-docstring """ """ g = grid diff --git a/tests/web/views/test_orders.py b/tests/web/views/test_orders.py index 7e01411..598f418 100644 --- a/tests/web/views/test_orders.py +++ b/tests/web/views/test_orders.py @@ -1503,6 +1503,28 @@ class TestOrderView(WebTestCase): self.assertEqual(len(items), 1) self.assertEqual(items[0].product_scancode, "07430500132") + def test_get_row_parent(self): + model = self.app.model + enum = self.app.enum + view = self.make_view() + + user = model.User(username="barney") + self.session.add(user) + order = model.Order(order_id=42, created_by=user) + self.session.add(order) + self.session.flush() + item = model.OrderItem( + product_id="07430500132", + product_scancode="07430500132", + order_qty=1, + order_uom=enum.ORDER_UOM_UNIT, + status_code=enum.ORDER_ITEM_STATUS_INITIATED, + ) + order.items.append(item) + self.session.flush() + + self.assertIs(view.get_row_parent(item), order) + def test_configure_row_grid(self): model = self.app.model enum = self.app.enum