Files
tryton/invoice.py
T
2012-03-25 00:18:10 +01:00

51 lines
1.6 KiB
Python

#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
from trytond.model import Model, fields
from trytond.pool import Pool
class Invoice(Model):
_name = 'account.invoice'
purchases = fields.Many2Many('purchase.purchase-account.invoice',
'invoice', 'purchase', 'Purchases', readonly=True)
def copy(self, ids, default=None):
if default is None:
default = {}
default = default.copy()
default.setdefault('purchases', False)
return super(Invoice, self).copy(ids, default=default)
def paid(self, ids):
pool = Pool()
purchase_obj = pool.get('purchase.purchase')
super(Invoice, self).paid(ids)
invoices = self.browse(ids)
purchase_obj.process(p.id for i in invoices for p in i.purchases)
def cancel(self, ids):
pool = Pool()
purchase_obj = pool.get('purchase.purchase')
super(Invoice, self).cancel(ids)
invoices = self.browse(ids)
purchase_obj.process(p.id for i in invoices for p in i.purchases)
Invoice()
class InvoiceLine(Model):
_name = 'account.invoice.line'
purchase_lines = fields.Many2Many('purchase.line-account.invoice.line',
'invoice_line', 'purchase_line', 'Purchase Lines', readonly=True)
def copy(self, ids, default=None):
if default is None:
default = {}
default = default.copy()
default.setdefault('purchase_lines', False)
return super(InvoiceLine, self).copy(ids, default=default)
InvoiceLine()