Add packing list in account invoice

This commit is contained in:
2026-04-22 20:36:14 +02:00
parent d09d183cdc
commit 99782b5b0e
6 changed files with 1567 additions and 4 deletions

View File

@@ -959,6 +959,29 @@ class Invoice(metaclass=PoolMeta):
return 'Debit Note'
return 'Credit Note'
@property
def report_transportation(self):
shipment = self._get_report_shipment()
if not shipment:
return ''
supplier = getattr(shipment, 'supplier', None)
vessel = getattr(shipment, 'vessel', None)
supplier_name = (
getattr(supplier, 'name', None)
or getattr(supplier, 'rec_name', None)
or '')
vessel_name = getattr(vessel, 'vessel_name', None) or ''
note = getattr(shipment, 'note', None) or ''
if supplier_name and vessel_name:
transport = f"BY {supplier_name} ({vessel_name})"
elif supplier_name:
transport = f"BY {supplier_name}"
else:
transport = vessel_name
return ' '.join(part for part in [transport, note] if part).strip()
@property
def report_bl_date(self):
shipment = self._get_report_shipment()
@@ -1239,6 +1262,8 @@ class InvoiceReport(ReportTemplateMixin, BaseInvoiceReport):
if (report_path.endswith('/prepayment.fodt')
or action_name == 'Prepayment'):
field_name = 'invoice_prepayment_report_template'
elif report_path.endswith('/packing_list.fodt'):
field_name = 'invoice_packing_list_report_template'
elif (report_path.endswith('/payment_order.fodt')
or action_name == 'Payment Order'):
field_name = 'invoice_payment_order_report_template'