| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- from odoo import api, SUPERUSER_ID
- import logging
- _logger = logging.getLogger(__name__)
- def migrate(cr, version):
- env = api.Environment(cr, SUPERUSER_ID, {})
-
- # Corregir duplicados: asegurar que solo las aplicaciones principales tengan is_main_application=True
- # y que no haya duplicados por nombre
-
- # 1. Corregir módulo 'ai' - no debe ser aplicación principal
- ai_module = env['helpdesk.affected.module'].search([('code', '=', 'ai')], limit=1)
- if ai_module:
- ai_module.write({
- 'name': 'AI Base',
- 'is_main_application': False
- })
- _logger.info("Módulo 'ai' actualizado: marcado como no principal")
-
- # 2. Corregir account_accountant - no debe ser aplicación principal
- account_accountant = env['helpdesk.affected.module'].search([('code', '=', 'account_accountant')], limit=1)
- if account_accountant and account_accountant.is_main_application:
- account_accountant.write({
- 'name': 'Invoicing (Enterprise)',
- 'is_main_application': False
- })
- _logger.info("Módulo 'account_accountant' actualizado: marcado como no principal")
-
- # 3. Corregir sale_management - no debe ser aplicación principal
- sale_management = env['helpdesk.affected.module'].search([('code', '=', 'sale_management')], limit=1)
- if sale_management and sale_management.is_main_application:
- sale_management.write({
- 'name': 'Sales Management',
- 'is_main_application': False
- })
- _logger.info("Módulo 'sale_management' actualizado: marcado como no principal")
-
- cr.commit()
- _logger.info("Migración de duplicados completada")
|