# -*- encoding: utf-8 -*- ############################################################################## # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published # by the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see http://www.gnu.org/licenses/. # ############################################################################## from openerp import models, api class ProductTemplate(models.Model): _inherit = 'product.template' @api.multi def write(self, vals): res = {} for product_tmpl in self: write_vals = {} if 'uom_po_id' in vals: write_vals['uom_po_id'] = vals.pop("uom_po_id", None) write_vals['uom_id'] = vals.pop("uom_id", None) if vals: res = super(ProductTemplate, self).write(vals) if write_vals: product_obj = self.env['product.product'] st_mv_obj = self.env['stock.move'] product_lst = product_obj.search([('product_tmpl_id', '=', product_tmpl.id)]) if not st_mv_obj.search([('product_id', 'in', product_lst.ids)]): models.Model.write(self, write_vals) else: res = super(ProductTemplate, self).write(write_vals) return res