Я работаю на Odoo 13. У меня есть проблема, когда я добавляю новое целое число целое поле на Account.move.line
, но он не работает.
На sels.order
это работает, нет проблем. Это код заказа на продажу
код ## 3
class SaleOrderLine(models.Model):
_inherit = 'sale.order.line'
departure_date = fields.Datetime(string='Departure Date')
arrival_date = fields.Datetime(string='Arrival Date')
nights = fields.Integer(string='Number of Nights')
_inherit = 'sale.order.line'
departure_date = fields.Datetime(string='Departure Date')
arrival_date = fields.Datetime(string='Arrival Date')
nights = fields.Integer(string='Number of Nights')
@api.onchange('departure_date', 'arrival_date')
def _onchange_departure_arrival_date(self):
self.nights = 0
if self.arrival_date and not self.departure_date:
self.departure_date = fields.Datetime.now()
if self.arrival_date and self.departure_date:
self.nights = (self.departure_date - self.arrival_date).days
def _prepare_invoice_line(self):
return_dict = super(SaleOrderLine, self)._prepare_invoice_line()
if self.arrival_date and self.departure_date:
return_dict.update({
'arrival_date': self.arrival_date,
'departure_date': self.departure_date,
})
return return_dict
@api.depends('product_uom_qty', 'discount', 'price_unit', 'tax_id', 'nights')
def _compute_amount(self):
"""
Compute the amounts of the SO line.
"""
for line in self:
price = line.price_unit * (1 - (line.discount or 0.0) / 100.0)
taxes = line.tax_id.compute_all(price, line.order_id.currency_id, line.product_uom_qty * (line.nights or 1),
product=line.product_id, partner=line.order_id.partner_shipping_id)
line.update({
'price_tax': sum(t.get('amount', 0.0) for t in taxes.get('taxes', [])),
'price_total': taxes['total_included'],
'price_subtotal': taxes['total_excluded'],
})