NOTA DE DÉBITO EN PAGOS (DEBITO_EN_PAGOS) 1. ENTRADA DE DATOS - Controller datosDelMov['tipo_operacion'] = 'DEBITO_EN_PAGOS' datosDelMov['distribucion_solicitada'] = { formación: {...}, otros_conceptos: {...} } 2. REGISTRADOR FACTORY (RegistradorFactory.php) getRegistrador() → new RegistradorDebitoEnPago() que extiende de DebitoBase que extiende de RegistradorBase 3. REGISTRADOR BASE (RegistradorBase.php) registrarBase() ├── completaValoresDelMov() ├── getObjetoCuentaCorriente() ├── completaValoresDeEntorno() └── registrarParticular() → [delega a clase hija] 4. REGISTRADOR PARTICULAR (RegistradorDebitoEnPago.php) registrarParticular() └── parent::registrarDebitoBase() → [vuelve a DebitoBase] 5. DEBITO BASE (DebitoBase.php) registrarDebitoBase() ├── if (simular) → return respuestas └── else → impactarDebitos() 6. IMPACTAR DÉBITOS (DebitoBase.php) impactarDebitos() ├── CuentaCorrienteColeccion->altaGeneral() → [alta en BD] ├── AuditoriaColeccion->registrar() → [auditoría] └── impactarDebitoEspecifico() → [delega a clase hija] 7. IMPACTO ESPECÍFICO (RegistradorDebitoEnPago.php) impactarDebitoEspecifico() ├── foreach formación → relColeccion->actualizaRelacion() └── foreach otros_conceptos → relColeccion->nuevaRelacionOtroConcepto() 8. TABLA DE RELACIÓN (CuentaCorrienteElementoValuadoColeccion.php) actualizaRelacion() / nuevaRelacionOtroConcepto() └── altaGeneral() / modificacionactualizacionGeneral()