Skip to content
This repository was archived by the owner on Aug 8, 2022. It is now read-only.

Commit 38f89db

Browse files
committed
finder method on repo [for_order_method]
1 parent 074c820 commit 38f89db

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

src/allocation/adapters/repository.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,17 @@ def _get_by_batchref(self, batchref):
5252
return (
5353
self.session.query(model.Product)
5454
.join(model.Batch)
55-
.filter(orm.batches.c.reference == batchref)
55+
.filter(
56+
orm.batches.c.reference == batchref,
57+
)
5658
.first()
5759
)
60+
61+
def for_order(self, orderid):
62+
order_lines = self.session.query(model.OrderLine).filter_by(orderid=orderid)
63+
skus = {l.sku for l in order_lines}
64+
return (
65+
self.session.query(model.Product)
66+
.join(model.Batch)
67+
.filter(model.Batch.sku.in_(skus))
68+
)

0 commit comments

Comments
 (0)