diff --git a/sale.py b/sale.py index a38ccbb..1224557 100644 --- a/sale.py +++ b/sale.py @@ -62,15 +62,24 @@ class CreateSubscription(Wizard): quantity=self.start.quantity, unit_price=self.start.unit_price) - + def _equipments_to_subscription(self): + sale = self.records[0] + equipments_to_subscription = [] + for line in sale.lines: + if line.product_equipment: + equipments_to_subscription.append(line.equipment) + + return equipments_to_subscription + def do_create_subscription(self, action): pool = Pool() Subscription = pool.get('sale.subscription') SubscriptionLine = pool.get('sale.subscription.line') - sale = self.records[0] + sale = self.records[0] a = self._subscription_start + equipments_to_subscription=self._equipments_to_subscription() subscription_lines = [SubscriptionLine( start_date=a['start_date'], end_date=a['end_date'], @@ -92,6 +101,7 @@ class CreateSubscription(Wizard): invoice_address=sale.invoice_address.id, payment_term=sale.payment_term.id if sale.payment_term else None, lines=subscription_lines, + equipments=equipments_to_subscription, ) subscription.save()