add function _equipment_to_subscription to wizard create_subscription

This commit is contained in:
sinergia 2022-07-16 11:30:04 -05:00
parent 41ec228407
commit 11473f11ba

14
sale.py
View File

@ -62,15 +62,24 @@ class CreateSubscription(Wizard):
quantity=self.start.quantity, quantity=self.start.quantity,
unit_price=self.start.unit_price) 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): def do_create_subscription(self, action):
pool = Pool() pool = Pool()
Subscription = pool.get('sale.subscription') Subscription = pool.get('sale.subscription')
SubscriptionLine = pool.get('sale.subscription.line') SubscriptionLine = pool.get('sale.subscription.line')
sale = self.records[0] sale = self.records[0]
a = self._subscription_start a = self._subscription_start
equipments_to_subscription=self._equipments_to_subscription()
subscription_lines = [SubscriptionLine( subscription_lines = [SubscriptionLine(
start_date=a['start_date'], start_date=a['start_date'],
end_date=a['end_date'], end_date=a['end_date'],
@ -92,6 +101,7 @@ class CreateSubscription(Wizard):
invoice_address=sale.invoice_address.id, invoice_address=sale.invoice_address.id,
payment_term=sale.payment_term.id if sale.payment_term else None, payment_term=sale.payment_term.id if sale.payment_term else None,
lines=subscription_lines, lines=subscription_lines,
equipments=equipments_to_subscription,
) )
subscription.save() subscription.save()