move constrain to product

This commit is contained in:
lreficent
2018-01-09 18:17:38 +01:00
committed by davidborromeo
parent 85df9dda60
commit 54217ef1cb
3 changed files with 25 additions and 4 deletions

View File

@@ -1,6 +1,5 @@
# -*- coding: utf-8 -*-
# Copyright 2016-17 Eficent Business and IT Consulting Services S.L.
# (http://www.eficent.com)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
from . import stock_warehouse_orderpoint
from . import product_template

View File

@@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
# Copyright 2018 Eficent Business and IT Consulting Services S.L.
# (http://www.eficent.com)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
from odoo import api, models, _
from odoo.exceptions import UserError
class ProductTemplate(models.Model):
_inherit = "product.template"
@api.constrains('uom_id')
def _check_orderpoint_procure_uom(self):
for rec in self:
orderpoint = self.env['stock.warehouse.orderpoint'].search([
('procure_uom_id.category_id', '!=',
rec.uom_id.category_id.id),
('product_id.product_tmpl_id', '=', rec.id)], limit=1)
if orderpoint:
raise UserError(
_("At least one reordering rule for this product has a "
"different Procurement unit of measure category."))

View File

@@ -13,8 +13,7 @@ class Orderpoint(models.Model):
procure_uom_id = fields.Many2one(comodel_name='product.uom',
string="Procurement UoM")
@api.constrains('product_id', 'product_id.product_tmpl_id.uom_id',
'procure_uom_id')
@api.constrains('product_id', 'procure_uom_id')
def _check_procure_uom(self):
if any(orderpoint.product_uom and
orderpoint.procure_uom_id and