Files
stock-rma/rma/models/procurement.py
2020-01-14 16:35:27 +01:00

48 lines
1.8 KiB
Python

# Copyright (C) 2017 Eficent Business and IT Consulting Services S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from odoo import fields, models
class StockRule(models.Model):
_inherit = 'stock.rule'
rma_line_id = fields.Many2one(
comodel_name='rma.order.line', string='RMA line',
ondelete="set null",
)
def _get_stock_move_values(self, product_id, product_qty, product_uom,
location_id, name, origin, values, group_id):
res = super(StockRule, self)._get_stock_move_values(product_id,
product_qty,
product_uom,
location_id,
name, origin,
values, group_id)
if 'rma_line_id' in values:
line = self.env['rma.order.line'].browse(values.get('rma_line_id'))
res['rma_line_id'] = line.id
if line.delivery_address_id:
res['partner_id'] = line.delivery_address_id.id
else:
res['partner_id'] = line.rma_id.partner_id.id
dest_loc = self.env["stock.location"].browse([
res["location_dest_id"]])[0]
if dest_loc.usage == "internal":
res["price_unit"] = line.price_unit
return res
class ProcurementGroup(models.Model):
_inherit = 'procurement.group'
rma_id = fields.Many2one(
comodel_name='rma.order', string='RMA',
ondelete="set null",
)
rma_line_id = fields.Many2one(
comodel_name='rma.order.line', string='RMA line',
ondelete="set null",
)