# US-MGN-008-003-002: Calcular Distribuciones Automáticas por Reglas **RF Asociado:** [RF-MGN-008-003](../../02-modelado/requerimientos-funcionales/mgn-008/RF-MGN-008-003-distribución-analítica-multi-cuenta.md) **Módulo:** MGN-008 - Contabilidad Analítica **Epic:** Distribuciones Analíticas **Prioridad:** P1 **Story Points:** 3 **Sprint:** Sprint 19 **Estado:** Ready for Development **Fecha:** 2025-11-24 --- ## User Story **Como** contador, **Quiero** configurar reglas de distribución automática, **Para** asignar dimensiones sin intervención manual. ## Descripción Detallada Reglas automáticas: - Por cuenta contable: Cuenta 6.1.01 → siempre Dpto IT - Por partner: Cliente ABC → siempre Proyecto A - Por producto: Producto X → siempre Categoría Desarrollo ## Criterios de Aceptación ### Escenario 1: Regla por cuenta **Dado que** cuenta 6.1.01 tiene regla "Dpto IT por defecto", **Cuando** creo línea contable en 6.1.01 sin distribución, **Entonces** sistema aplica Dpto IT (100%) automáticamente. ### Escenario 2: Múltiples reglas **Dado que** cuenta tiene regla A (60%), regla B (40%), **Cuando** creo línea, **Entonces** sistema aplica ambas reglas automáticamente. ### Escenario 3: Sobrescribir regla manual **Dado que** cuenta tiene regla automática, **Cuando** especifico distribución manual diferente, **Entonces** sistema usa la manual (ignora automática). ## Reglas de Negocio - **RN-1:** Reglas se aplican si no hay distribución manual. - **RN-2:** Reglas configurables por cuenta/partner/producto. - **RN-3:** Suma de reglas automáticas debe ser 100%. ## Tareas Técnicas ### Backend - [ ] Service: `AnalyticalRuleService.getApplicableRules(line)` - [ ] Service: `AnalyticalRuleService.applyRules(line)` - [ ] CRUD de reglas - [ ] Unit tests ### Frontend - [ ] Página: `AnalyticalRulesPage.tsx` - [ ] Formulario de reglas - [ ] Preview de reglas aplicadas ### Database - [ ] Tabla: `analytics.rules` (trigger_type, trigger_id, account_id, percentage) ## Estimación Detallada | Tarea | Horas | |-------|-------| | Backend | 1.5 | | Frontend | 1 | | Testing | 1 | | **TOTAL** | **3.5 horas = 3 SP** | ## Definition of Done - [ ] Reglas automáticas funcionan - [ ] Tests >80% - [ ] QA/PO aprobado ## Referencias - [RF-MGN-008-003](../../02-modelado/requerimientos-funcionales/mgn-008/RF-MGN-008-003-distribución-analítica-multi-cuenta.md)