如何消除odoo采购订单产品系列中的重复产品?

时间:2015-08-03 06:30:39

标签: python python-2.7 odoo-8 odoo

创建采购订单时,如果我添加两次相同的产品,则会创建两个不同的产品系列,而不是更新同一产品的数量。

请有人帮助我。

1 个答案:

答案 0 :(得分:2)

您可以创建一个继承自purchase.order.line的模型,并以这种方式覆盖其创建函数:

class purchase_order_line(models.Model):
    _inherits = 'purchase.order.line'

    @api.one
    def create(self, vals):
        same_line = self.search([('product_id', '=', vals.get('product_id', False)),
                                 ('order_id', '=', vals.get('order_id', False))])
        if same_line:
            total_qty = same_line.product_qty + vals.get('product_qty', 0)
            vals.update({
                'product_qty': total_qty,
            })
            same_line.write(vals)
            return same_line
        else:
            return super(purchase_order_line, self).create(vals)