- Instalar pre-commit con 25 hooks configurados - Configurar black 26.1.0 para formateo de código Python - Configurar isort 7.0.0 para ordenación de imports - Configurar flake8 7.3.0 con flake8-bugbear - Configurar pylint 3.1.1 con pylint-odoo 9.1.2 - Añadir autoflake y pyupgrade para mejoras automáticas - Configurar prettier para formateo de XML/JSON/YAML - Crear .editorconfig para consistencia de editor - Crear Makefile con comandos útiles - Crear check_addon.sh para verificación rápida de addons - Actualizar configuración de VS Code con extensiones recomendadas - Añadir documentación completa de uso - Aplicar formateo automático a archivos existentes - Deshabilitar setuptools-odoo (no soporta Odoo 18.0 aún) - Deshabilitar fix-encoding-pragma (obsoleto, usar pyupgrade)
27 lines
877 B
Python
27 lines
877 B
Python
# Copyright 2024-Today - Sylvain Le GAL (GRAP)
|
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
|
|
|
import logging
|
|
|
|
_logger = logging.getLogger(__name__)
|
|
|
|
|
|
def post_init_hook(env):
|
|
_logger.info("Initializing column discount1 on table account_move_line")
|
|
env.cr.execute("""
|
|
UPDATE account_move_line
|
|
SET discount1 = discount
|
|
WHERE discount != 0
|
|
""")
|
|
# if discounts are : 10% - 20% - 30% main discount is : 49.6 %
|
|
# if discounts are : 05% - 09% - 13% main discount is : 24.7885 %
|
|
env.cr.execute("""
|
|
UPDATE account_move_line
|
|
SET discount = 100 * (
|
|
1 - (
|
|
(100 - COALESCE(discount1, 0.0)) / 100
|
|
* (100 - COALESCE(discount2, 0.0)) / 100
|
|
* (100 - COALESCE(discount3, 0.0)) / 100
|
|
)
|
|
);
|
|
""")
|