You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
851 B

  1. # Copyright 2021 Open Source Integrators
  2. # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
  3. import logging
  4. from odoo import SUPERUSER_ID, api
  5. _logger = logging.getLogger(__name__)
  6. def post_init_hook(cr, registry):
  7. """Set default Stage on partners"""
  8. env = api.Environment(cr, SUPERUSER_ID, {})
  9. Partner = env["res.partner"]
  10. default_stage = Partner._get_default_stage_id()
  11. missing_stages = Partner.search([("stage_id", "=", False)])
  12. if default_stage and missing_stages:
  13. _logger.info("Init stage_id for %d partner records...", len(missing_stages))
  14. cr.execute(
  15. """
  16. UPDATE res_partner
  17. SET stage_id = %(id)s, state = %(state)s
  18. WHERE stage_id IS NULL
  19. """,
  20. {"id": default_stage.id, "state": default_stage.state},
  21. )