Добавить ночь подал на Account.move.line - PullRequest
0 голосов
/ 18 апреля 2020

Я работаю на 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'],
            })
...