[11.0] MIG: rma_purchase

This commit is contained in:
Bhavesh Odedra
2018-02-09 22:55:14 +05:30
committed by Chanakya Soni
parent ff51a37933
commit d2ea82d0f0
17 changed files with 84 additions and 162 deletions

View File

@@ -1,18 +1,21 @@
# -*- coding: utf-8 -*-
# © 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 api, fields, models
from odoo import api, fields, models, _
from odoo.exceptions import ValidationError
class RmaOrder(models.Model):
_inherit = "rma.order"
@api.depends('rma_line_ids', 'rma_line_ids.procurement_ids')
@api.multi
def _compute_po_count(self):
for rec in self:
purchases = rec.mapped('rma_line_ids.procurement_ids.purchase_id')
rec.po_count = len(purchases)
po_count = 0
for line in rec.rma_line_ids:
po_count += len(self.env['purchase.order'].search(
[('origin', '=', line.name)]).ids)
rec.po_count = po_count
@api.multi
def _compute_origin_po_count(self):
@@ -30,7 +33,10 @@ class RmaOrder(models.Model):
def action_view_purchase_order(self):
action = self.env.ref('purchase.purchase_rfq')
result = action.read()[0]
po_ids = self.mapped('rma_line_ids.procurement_ids.purchase_id').ids
po_ids = self.env['purchase.order'].search(
[('origin', '=', self.name)]).ids
if not po_ids:
raise ValidationError(_("No purchase order found!"))
result['domain'] = [('id', 'in', po_ids)]
return result
@@ -40,5 +46,7 @@ class RmaOrder(models.Model):
result = action.read()[0]
po_ids = self.mapped(
'rma_line_ids.purchase_order_line_id.order_id').ids
if not po_ids:
raise ValidationError(_("No purchase order found!"))
result['domain'] = [('id', 'in', po_ids)]
return result