Revertir cambio: eliminar cálculo duplicado de impuestos
El método _get_price() del addon OCA ya maneja correctamente los impuestos según la configuración de Odoo. El cálculo adicional con compute_all() estaba duplicando los impuestos cuando price_include estaba activado. Cambios: - Eliminado método _compute_price_with_taxes() - Revertido eskaera_shop() para usar directamente _get_price() - Revertido add_to_eskaera_cart() para usar directamente _get_price() El precio mostrado ahora respeta la configuración de impuestos de Odoo sin duplicación.
This commit is contained in:
parent
3cb0af6a7b
commit
4d23e98f7b
30 changed files with 3611 additions and 1004 deletions
74
TEST_MANUAL.md
Normal file
74
TEST_MANUAL.md
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
# Test Manual - Verificar Precios con IVA
|
||||
|
||||
## Para verificar que la corrección funciona:
|
||||
|
||||
### 1. Reiniciar Odoo y actualizar el módulo
|
||||
|
||||
```bash
|
||||
cd /home/snt/Documentos/lab/odoo/kidekoop/addons-cm
|
||||
|
||||
# Actualizar el módulo
|
||||
docker-compose restart odoo
|
||||
docker-compose exec odoo odoo -c /etc/odoo/odoo.conf -d odoo -u website_sale_aplicoop --stop-after-init
|
||||
docker-compose restart odoo
|
||||
```
|
||||
|
||||
### 2. Verificar en el navegador
|
||||
|
||||
1. Ir a: http://localhost:8069
|
||||
2. Iniciar sesión
|
||||
3. Navegar a la tienda: http://localhost:8069/eskaera
|
||||
4. Verificar que los precios mostrados incluyen IVA
|
||||
|
||||
### 3. Test de ejemplo
|
||||
|
||||
**Producto:** Pan integral (ejemplo)
|
||||
- **Precio base:** 2.50 €
|
||||
- **IVA (10%):** 0.25 €
|
||||
- **Precio esperado en tienda:** **2.75 €**
|
||||
|
||||
## Cambios Realizados
|
||||
|
||||
### Archivo modificado: `controllers/website_sale.py`
|
||||
|
||||
1. **Nuevo método agregado (línea ~20)**:
|
||||
```python
|
||||
def _compute_price_with_taxes(self, product_variant, base_price, pricelist=None, fposition=None):
|
||||
"""Calcula el precio con impuestos incluidos."""
|
||||
```
|
||||
|
||||
2. **Método `eskaera_shop()` actualizado (línea ~516)**:
|
||||
- Ahora calcula `price_with_taxes` usando el nuevo método
|
||||
- Retorna precios CON IVA incluido
|
||||
|
||||
3. **Método `add_to_eskaera_cart()` actualizado (línea ~720)**:
|
||||
- Calcula precio CON IVA antes de retornar
|
||||
- Garantiza consistencia en carrito
|
||||
|
||||
## Verificación de Sintaxis
|
||||
|
||||
```bash
|
||||
# Verificar que no hay errores de sintaxis
|
||||
cd /home/snt/Documentos/lab/odoo/kidekoop/addons-cm
|
||||
python3 -m py_compile website_sale_aplicoop/controllers/website_sale.py
|
||||
echo "✓ Sin errores de sintaxis"
|
||||
```
|
||||
|
||||
## Tests Unitarios Creados
|
||||
|
||||
Archivo: `website_sale_aplicoop/tests/test_price_with_taxes_included.py`
|
||||
|
||||
Contiene 13 tests que verifican:
|
||||
- Cálculo correcto de IVA 21%
|
||||
- Cálculo correcto de IVA 10%
|
||||
- Productos sin IVA
|
||||
- Múltiples impuestos
|
||||
- Posiciones fiscales
|
||||
- Y más...
|
||||
|
||||
## Problema Solucionado
|
||||
|
||||
**ANTES:** Los precios mostraban 100.00 € (sin IVA)
|
||||
**DESPUÉS:** Los precios muestran 121.00 € (con IVA 21%)
|
||||
|
||||
✅ **Corrección aplicada exitosamente**
|
||||
Loading…
Add table
Add a link
Reference in a new issue