199 lines
6.0 KiB
YAML
199 lines
6.0 KiB
YAML
# Grafo de Dependencias del Proyecto
|
|
# Proyecto: clinica-dental
|
|
|
|
version: "1.0.0"
|
|
proyecto: "clinica-dental"
|
|
fecha_creacion: "2026-01-16"
|
|
|
|
# ============================================================================
|
|
# DEPENDENCIAS EXTERNAS (NPM, etc.)
|
|
# ============================================================================
|
|
dependencias_externas:
|
|
backend:
|
|
framework: "NestJS"
|
|
version: "^10.0.0"
|
|
principales:
|
|
- nombre: "@nestjs/core"
|
|
version: "^10.0.0"
|
|
uso: "Framework core"
|
|
- nombre: "@nestjs/typeorm"
|
|
version: "^10.0.0"
|
|
uso: "ORM integration"
|
|
- nombre: "typeorm"
|
|
version: "^0.3.0"
|
|
uso: "ORM"
|
|
- nombre: "pg"
|
|
version: "^8.0.0"
|
|
uso: "PostgreSQL driver"
|
|
|
|
frontend:
|
|
framework: "React"
|
|
version: "^18.0.0"
|
|
principales:
|
|
- nombre: "react"
|
|
version: "^18.0.0"
|
|
- nombre: "react-router-dom"
|
|
version: "^6.0.0"
|
|
|
|
database:
|
|
tipo: "PostgreSQL"
|
|
version: "15+"
|
|
orm: "TypeORM"
|
|
|
|
# ============================================================================
|
|
# DEPENDENCIAS INTERNAS (Entre modulos del proyecto)
|
|
# ============================================================================
|
|
dependencias_internas:
|
|
modulos:
|
|
DENTAL-001:
|
|
nombre: "Odontograma"
|
|
depende_de: ["CL-002"]
|
|
dependientes: ["DENTAL-002", "DENTAL-004"]
|
|
descripcion: "Depende de Pacientes (CL-002)"
|
|
|
|
DENTAL-002:
|
|
nombre: "Tratamientos"
|
|
depende_de: ["DENTAL-001", "CL-002", "CL-004"]
|
|
dependientes: ["DENTAL-006"]
|
|
descripcion: "Depende de Odontograma, Pacientes, Consultas"
|
|
|
|
DENTAL-003:
|
|
nombre: "Ortodoncia"
|
|
depende_de: ["CL-002", "CL-003"]
|
|
dependientes: []
|
|
descripcion: "Depende de Pacientes y Citas"
|
|
|
|
DENTAL-004:
|
|
nombre: "Protesis"
|
|
depende_de: ["CL-002", "DENTAL-001"]
|
|
dependientes: []
|
|
descripcion: "Depende de Pacientes y Odontograma"
|
|
|
|
DENTAL-005:
|
|
nombre: "Radiografias"
|
|
depende_de: ["CL-002", "CL-004", "CL-012"]
|
|
dependientes: []
|
|
descripcion: "Depende de Pacientes, Consultas, Imagenologia"
|
|
|
|
DENTAL-006:
|
|
nombre: "Presupuestos"
|
|
depende_de: ["CL-002", "DENTAL-002"]
|
|
dependientes: []
|
|
descripcion: "Depende de Pacientes y Tratamientos"
|
|
|
|
# ============================================================================
|
|
# DEPENDENCIAS DE WORKSPACE
|
|
# ============================================================================
|
|
dependencias_workspace:
|
|
definiciones:
|
|
- "@WS_DEF_CCA"
|
|
- "@WS_DEF_VAL_BE"
|
|
- "@WS_DEF_VAL_FE"
|
|
- "@WS_DEF_VAL_DDL"
|
|
|
|
catalogos:
|
|
- "shared/catalog/auth/"
|
|
- "shared/catalog/notifications/"
|
|
|
|
# ============================================================================
|
|
# DEPENDENCIAS DE OTROS PROYECTOS (Herencia)
|
|
# ============================================================================
|
|
dependencias_proyectos:
|
|
proyectos:
|
|
- proyecto: "erp-clinicas"
|
|
tipo: "herencia"
|
|
nivel: 2
|
|
modulos_usados:
|
|
- { id: "CL-001", nombre: "Fundamentos", uso: "100%" }
|
|
- { id: "CL-002", nombre: "Pacientes", uso: "extendido" }
|
|
- { id: "CL-003", nombre: "Citas", uso: "extendido" }
|
|
- { id: "CL-004", nombre: "Consultas", uso: "extendido" }
|
|
- { id: "CL-005", nombre: "Recetas", uso: "100%" }
|
|
- { id: "CL-006", nombre: "Laboratorio", uso: "parcial" }
|
|
- { id: "CL-008", nombre: "Facturacion", uso: "100%" }
|
|
- { id: "CL-009", nombre: "Reportes", uso: "extendido" }
|
|
- { id: "CL-011", nombre: "Expediente", uso: "extendido" }
|
|
- { id: "CL-012", nombre: "Imagenologia", uso: "extendido" }
|
|
|
|
- proyecto: "erp-core"
|
|
tipo: "herencia indirecta"
|
|
nivel: 1
|
|
modulos_usados:
|
|
core:
|
|
- { id: "MGN-001", nombre: "Authentication" }
|
|
- { id: "MGN-002", nombre: "Users" }
|
|
- { id: "MGN-003", nombre: "Roles" }
|
|
- { id: "MGN-004", nombre: "Tenants" }
|
|
- { id: "MGN-005", nombre: "Catalogs" }
|
|
- { id: "MGN-007", nombre: "Audit" }
|
|
- { id: "MGN-008", nombre: "Notifications" }
|
|
- { id: "MGN-009", nombre: "Reports" }
|
|
- { id: "MGN-010", nombre: "Financial" }
|
|
saas:
|
|
- { id: "MGN-016", nombre: "Billing" }
|
|
- { id: "MGN-017", nombre: "Plans" }
|
|
- { id: "MGN-018", nombre: "Webhooks" }
|
|
- { id: "MGN-019", nombre: "Feature Flags" }
|
|
ia:
|
|
- { id: "MGN-020", nombre: "AI Integration" }
|
|
- { id: "MGN-021", nombre: "WhatsApp Business" }
|
|
- { id: "MGN-022", nombre: "MCP Server" }
|
|
|
|
# ============================================================================
|
|
# GRAFO VISUAL
|
|
# ============================================================================
|
|
grafo:
|
|
formato: "mermaid"
|
|
diagrama: |
|
|
graph TD
|
|
subgraph "Nivel 1: erp-core"
|
|
CORE[MGN-001..022<br/>Core + SaaS + IA]
|
|
end
|
|
|
|
subgraph "Nivel 2: erp-clinicas"
|
|
CL002[CL-002<br/>Pacientes]
|
|
CL003[CL-003<br/>Citas]
|
|
CL004[CL-004<br/>Consultas]
|
|
CL012[CL-012<br/>Imagenologia]
|
|
end
|
|
|
|
subgraph "Nivel 3: clinica-dental"
|
|
D001[DENTAL-001<br/>Odontograma]
|
|
D002[DENTAL-002<br/>Tratamientos]
|
|
D003[DENTAL-003<br/>Ortodoncia]
|
|
D004[DENTAL-004<br/>Protesis]
|
|
D005[DENTAL-005<br/>Radiografias]
|
|
D006[DENTAL-006<br/>Presupuestos]
|
|
end
|
|
|
|
CORE --> CL002
|
|
CORE --> CL003
|
|
CORE --> CL004
|
|
CORE --> CL012
|
|
|
|
CL002 --> D001
|
|
D001 --> D002
|
|
CL004 --> D002
|
|
D002 --> D006
|
|
|
|
CL002 --> D003
|
|
CL003 --> D003
|
|
|
|
D001 --> D004
|
|
CL002 --> D004
|
|
|
|
CL002 --> D005
|
|
CL004 --> D005
|
|
CL012 --> D005
|
|
|
|
# ============================================================================
|
|
# ESTADISTICAS
|
|
# ============================================================================
|
|
estadisticas:
|
|
total_dependencias_externas: 6
|
|
total_dependencias_internas: 12
|
|
total_dependencias_workspace: 6
|
|
total_modulos_heredados: 26
|
|
total_modulos_propios: 6
|
|
ultima_actualizacion: "2026-01-16"
|