product_template.py 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. # -*- coding: utf-8 -*-
  2. # Copyright© 2016 ICTSTUDIO <http://www.ictstudio.eu>
  3. # License: AGPL-3.0 or later (http://www.gnu.org/licenses/agpl)
  4. import logging
  5. from openerp import models, fields, api, _
  6. _logger = logging.getLogger(__name__)
  7. class ProductTemplate(models.Model):
  8. _inherit = 'product.template'
  9. @api.one
  10. def _get_pricelists(self):
  11. self.pricelists = self.env['product.pricelist'].search(
  12. [
  13. ('show_on_products', '=', True),
  14. ('type', '=', 'sale')
  15. ]
  16. )
  17. def _set_pricelists(self):
  18. for pricelist in self.pricelists:
  19. if pricelist.product_price:
  20. _logger.debug("Updating Price: %s", pricelist.product_price)
  21. pricelist.price_set(self, pricelist.product_price)
  22. @api.one
  23. def _get_purchase_pricelists(self):
  24. self.purchase_pricelists = self.env['product.pricelist'].search(
  25. [
  26. ('show_on_products', '=', True),
  27. ('type', '=', 'purchase')
  28. ]
  29. )
  30. def _set_purchase_pricelists(self):
  31. for pricelist in self.purchase_pricelists:
  32. if pricelist.product_price:
  33. _logger.debug("Updating Price: %s", pricelist.product_price)
  34. pricelist.price_set(self, pricelist.product_price)
  35. pricelists = fields.One2many(
  36. comodel_name="product.pricelist",
  37. string="Pricelists",
  38. compute="_get_pricelists",
  39. inverse="_set_pricelists"
  40. )
  41. purchase_pricelists = fields.One2many(
  42. comodel_name="product.pricelist",
  43. string="Purchase Pricelists",
  44. compute="_get_purchase_pricelists",
  45. inverse="_set_purchase_pricelists"
  46. )