Do not fail when accessing sales or purchases attributes for UN/CEFACT Invoice

Closes #12873
(grafted from eae34c589a95fb888a003b5637345b3e89d7fd85)

--HG--
branch : 6.0
This commit is contained in:
Sergi Almacellas Abellana
2024-01-27 10:21:19 +01:00
parent 6eeab79c50
commit e887c85659
+6 -6
View File
@@ -157,12 +157,12 @@ class Invoice(Model):
@has_goods_assets
def ship_to_trade_party(self):
if self.invoice.type == 'out':
if getattr(self.invoice, 'sales'):
if getattr(self.invoice, 'sales', None):
sale = self.invoice.sales[0] # XXX
if sale.shipment_party != self.buyer_trade_party:
return sale.shipment_party
else:
if self.invoice.purchases:
if getattr(self.invoice, 'purchases', None):
purchase = self.invoice.purchases[0] # XXX
address = purchase.warehouse.address
if (address and address.party != self.buyer_trade_party):
@@ -172,12 +172,12 @@ class Invoice(Model):
@has_goods_assets
def ship_to_trade_address(self):
if self.invoice.type == 'out':
if getattr(self.invoice, 'sales'):
if getattr(self.invoice, 'sales', None):
sale = self.invoice.sales[0] # XXX
if sale.shipment_party != self.buyer_trade_party:
return sale.shipment_address
else:
if getattr(self.invoice, 'purchases'):
if getattr(self.invoice, 'purchases', None):
purchase = self.invoice.purchases[0] # XXX
address = purchase.warehouse.address
if (address and address.party != self.buyer_trade_party):
@@ -187,7 +187,7 @@ class Invoice(Model):
@has_goods_assets
def ship_from_trade_party(self):
if self.invoice.type == 'out':
if getattr(self.invoice, 'sales'):
if getattr(self.invoice, 'sales', None):
sale = self.invoice.sales[0] # XXX
address = sale.warehouse.address
if address and address.party != self.seller_trade_party:
@@ -197,7 +197,7 @@ class Invoice(Model):
@has_goods_assets
def ship_from_trade_address(self):
if self.invoice.type == 'out':
if getattr(self.invoice, 'sales'):
if getattr(self.invoice, 'sales', None):
sale = self.invoice.sales[0] # XXX
address = sale.warehouse.address
if address and address.party != self.seller_trade_party: