Set shipment cost on lines

This commit is contained in:
Adrià Tarroja Caubet 2023-02-14 16:10:42 +01:00
parent 24e4d8e2c7
commit 390c90ccd2
3 changed files with 16 additions and 0 deletions

View File

@ -25,3 +25,7 @@ def register():
module='web_shop_woocommerce', type_='wizard')
Pool.register(
module='web_shop_woocommerce', type_='report')
Pool.register(
web.Shop_SaleShipmentCost,
depends=['sale_shipment_cost'],
module='web_shop_woocommerce', type_='model')

View File

@ -7,6 +7,8 @@ depends:
product_price_list
sale
web_shop
extras_depend:
sale_shipment_cost
xml:
message.xml
product.xml

10
web.py
View File

@ -529,3 +529,13 @@ class Sale(metaclass=PoolMeta):
for sale in to_check:
if sale.woocommerce_completed:
sale.web_shop.update_woocommerce_status([sale], 'completed')
class Shop_SaleShipmentCost(metaclass=PoolMeta):
__name__ = 'web.shop'
def woocommerce_shipping_line(self, order, item, sale):
line = super().woocommerce_shipping_line(order, item, sale)
# TODO compute based on carrier, not total
line.shipment_cost = round_price(Decimal(str(item['total'])))
return line