15 KiB
Mapeo Completo: Odoo → ERP Genérico (MGN)
Proyecto: ERP Genérico Fecha: 2025-11-23 Versión: 1.0.0
Objetivo
Mapear funcionalidades de los 12 módulos Odoo analizados a los 14 módulos del ERP Genérico (MGN-001 a MGN-014).
Tabla de Mapeo General
| Módulo Odoo | Módulo MGN | Nombre MGN | Prioridad | Reutilización |
|---|---|---|---|---|
| base | MGN-001 | Fundamentos | P0 | 90% |
| auth_signup | MGN-001 | Fundamentos | P0 | 85% |
| base (res.company) | MGN-002 | Empresas y Organizaciones | P0 | 90% |
| base (partners, countries, uom) | MGN-003 | Catálogos Maestros | P0 | 95% |
| account | MGN-004 | Financiero Básico | P0 | 70% |
| stock | MGN-005 | Inventario Básico | P0 | 80% |
| purchase | MGN-006 | Compras Básico | P0 | 85% |
| sale | MGN-007 | Ventas Básico | P0 | 85% |
| analytic | MGN-008 | Contabilidad Analítica | P0 | 95% |
| crm | MGN-009 | CRM Básico | P1 | 75% |
| hr | MGN-010 | RRHH Básico | P1 | 70% |
| project | MGN-011 | Proyectos Genéricos | P1 | 80% |
| account (reports) | MGN-012 | Reportes y Analytics | P1 | 60% |
| portal | MGN-013 | Portal de Usuarios | P1 | 80% |
| MGN-014 | Mensajería y Notificaciones | P0 | 85% |
Mapeo Detallado por Módulo MGN
MGN-001: Fundamentos
Fuentes Odoo:
base(res.users, res.groups, ir.model.access, ir.rule)auth_signup(signup, reset password)
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-001 | Descripción | Prioridad |
|---|---|---|---|
| Autenticación usuarios | RF-AUTH-001 | Login con JWT | P0 |
| Gestión de usuarios | RF-AUTH-002 | CRUD usuarios, perfiles | P0 |
| Sistema RBAC | RF-AUTH-003 | Roles, permisos por modelo, RLS | P0 |
| Multi-tenancy | RF-AUTH-004 | Schema-level isolation | P0 |
| Registro usuarios | RF-AUTH-005 | Signup con validación | P0 |
| Reset password | RF-AUTH-006 | Token seguro, expiración 24h | P0 |
| Cambio contraseña | RF-AUTH-007 | Validación password fuerte | P0 |
| Verificación email | RF-AUTH-008 | Token de verificación | P1 |
Modelos Odoo → Tablas MGN:
res.users→auth.usersres.groups→auth.rolesir.model.access→auth.model_permissionsir.rule→ PostgreSQL RLS policies
Patrones a Adoptar:
- ✅ RBAC con herencia de roles
- ✅ Permisos CRUD granulares
- ✅ RLS (Row Level Security)
- ✅ Soft delete (active=true/false)
Patrones a Adaptar:
- 🔧 Sesiones → JWT tokens
- 🔧 Python decorators → TypeScript decorators
- 🔧 XML-RPC → REST APIs
MGN-002: Empresas y Organizaciones
Fuente Odoo:
base(res.company)
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-002 | Descripción | Prioridad |
|---|---|---|---|
| Gestión de empresas | RF-COMP-001 | CRUD empresas, holdings | P0 |
| Multi-company | RF-COMP-002 | Usuario acceso a múltiples empresas | P0 |
| Configuración empresa | RF-COMP-003 | Logo, datos fiscales, moneda | P0 |
Modelos Odoo → Tablas MGN:
res.company→core.companies
Patrones a Adoptar:
- ✅ Holdings (parent_id)
- ✅ Empresa vinculada a partner
- ✅ Moneda principal por empresa
MGN-003: Catálogos Maestros
Fuente Odoo:
base(res.partner, res.currency, res.country, uom.uom)
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-003 | Descripción | Prioridad |
|---|---|---|---|
| Gestión de partners | RF-CAT-001 | Clientes, proveedores, contactos (patrón universal) | P0 |
| Catálogo monedas | RF-CAT-002 | ISO 4217, tasas de cambio | P0 |
| Catálogo países | RF-CAT-003 | ISO 3166-1, estados/provincias | P0 |
| Unidades de medida | RF-CAT-004 | Categorías, conversiones | P0 |
Modelos Odoo → Tablas MGN:
res.partner→core.partnersres.currency→core.currenciesres.country→core.countriesres.country.state→core.statesuom.uom→core.units_of_measureuom.category→core.uom_categories
Patrones a Adoptar:
- ✅ Partner universal (is_customer, is_vendor, is_employee)
- ✅ Estructura jerárquica (parent_id)
- ✅ Conversiones de UoM
MGN-004: Financiero Básico
Fuente Odoo:
account
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-004 | Descripción | Prioridad |
|---|---|---|---|
| Plan de cuentas | RF-FIN-001 | Chart of accounts, tipos de cuenta | P0 |
| Asientos contables | RF-FIN-002 | Journal entries, débito/crédito | P0 |
| Facturas | RF-FIN-003 | Facturas cliente/proveedor | P0 |
| Pagos | RF-FIN-004 | Pagos, conciliación | P0 |
| Reportes financieros | RF-FIN-005 | Balance, P&L | P1 |
| Multi-moneda | RF-FIN-006 | Tasas de cambio, gain/loss | P1 |
Modelos Odoo → Tablas MGN:
account.account→financial.accountsaccount.move→financial.journal_entriesaccount.move.line→financial.journal_entry_linesaccount.journal→financial.journalsaccount.payment→financial.payments
Patrones a Adoptar:
- ✅ Doble entrada (débito = crédito)
- ✅ Estados: draft → posted
- ✅ Conciliación bancaria
MGN-005: Inventario Básico
Fuente Odoo:
stock
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-005 | Descripción | Prioridad |
|---|---|---|---|
| Gestión almacenes | RF-INV-001 | Warehouses, configuración | P0 |
| Ubicaciones | RF-INV-002 | Estructura jerárquica, tipos | P0 |
| Movimientos | RF-INV-003 | Stock moves, origen/destino | P0 |
| Pickings | RF-INV-004 | Albaranes, agrupación movimientos | P0 |
| Trazabilidad | RF-INV-005 | Lotes, números de serie | P1 |
| Valoración | RF-INV-006 | FIFO, Average Cost | P1 |
Modelos Odoo → Tablas MGN:
stock.warehouse→inventory.warehousesstock.location→inventory.locationsstock.move→inventory.stock_movesstock.picking→inventory.pickingsstock.quant→inventory.stock_quants
Patrones a Adoptar:
- ✅ Doble movimiento (origen → tránsito → destino)
- ✅ Ubicaciones virtuales
- ✅ Estrategias de inventario
MGN-006: Compras Básico
Fuente Odoo:
purchase
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-006 | Descripción | Prioridad |
|---|---|---|---|
| Gestión proveedores | RF-COM-001 | Catálogo, condiciones pago | P0 |
| RFQ | RF-COM-002 | Solicitudes de cotización | P0 |
| Órdenes de compra | RF-COM-003 | Purchase orders, aprobación | P0 |
| Recepciones | RF-COM-004 | Integración con inventario | P0 |
| Facturación compras | RF-COM-005 | Facturas de proveedor | P0 |
Modelos Odoo → Tablas MGN:
purchase.order→purchase.orderspurchase.order.line→purchase.order_lines- Partners con
supplier_rank > 0→ Vendors
Patrones a Adoptar:
- ✅ Workflow: RFQ → PO → Recepción → Factura
- ✅ Integración automática con stock
- ✅ Control cantidades recibidas vs facturadas
MGN-007: Ventas Básico
Fuente Odoo:
sale
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-007 | Descripción | Prioridad |
|---|---|---|---|
| Gestión clientes | RF-VEN-001 | Catálogo, condiciones pago | P0 |
| Cotizaciones | RF-VEN-002 | Quotations, envío a cliente | P0 |
| Órdenes de venta | RF-VEN-003 | Sales orders, aprobación | P0 |
| Entregas | RF-VEN-004 | Integración con inventario | P0 |
| Facturación ventas | RF-VEN-005 | Facturas de cliente | P0 |
| Portal clientes | RF-VEN-006 | Aprobación online, firma | P1 |
Modelos Odoo → Tablas MGN:
sale.order→sales.orderssale.order.line→sales.order_lines- Partners con
customer_rank > 0→ Customers
Patrones a Adoptar:
- ✅ Workflow: Cotización → Venta → Entrega → Factura
- ✅ Portal de aprobación
- ✅ Firma electrónica
MGN-008: Contabilidad Analítica
Fuente Odoo:
analytic
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-008 | Descripción | Prioridad |
|---|---|---|---|
| Cuentas analíticas | RF-ANA-001 | Proyectos, centros de costo | P0 |
| Líneas analíticas | RF-ANA-002 | Registro de costos/ingresos | P0 |
| Reportes analíticos | RF-ANA-003 | Balance por proyecto | P0 |
| Integración módulos | RF-ANA-004 | Compras, ventas, nómina → analytic | P0 |
Modelos Odoo → Tablas MGN:
account.analytic.account→analytics.accountsaccount.analytic.line→analytics.lines
Patrones a Adoptar:
- ✅ Campo
analytic_account_iden TODOS los módulos transaccionales - ✅ Reportes consolidados por proyecto
- ✅ Integración universal
Aplicabilidad: ⭐⭐⭐⭐⭐ - CRÍTICO para ERP de proyectos
MGN-009: CRM Básico
Fuente Odoo:
crm
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-009 | Descripción | Prioridad |
|---|---|---|---|
| Gestión de leads | RF-CRM-001 | Leads/oportunidades | P1 |
| Pipeline ventas | RF-CRM-002 | Stages, probabilidad | P1 |
| Actividades | RF-CRM-003 | Seguimiento, recordatorios | P1 |
| Conversión | RF-CRM-004 | Lead → Cotización | P1 |
| Reportes CRM | RF-CRM-005 | Rendimiento vendedores | P2 |
Modelos Odoo → Tablas MGN:
crm.lead→crm.leadscrm.stage→crm.stagescrm.team→crm.teams
Patrones a Adoptar:
- ✅ Pipeline kanban drag-and-drop
- ✅ Lead scoring automático
- ✅ Actividades de seguimiento
MGN-010: RRHH Básico
Fuente Odoo:
hr,hr_contract,hr_attendance
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-010 | Descripción | Prioridad |
|---|---|---|---|
| Gestión empleados | RF-HR-001 | Datos personales, puestos | P1 |
| Departamentos | RF-HR-002 | Estructura jerárquica | P1 |
| Contratos | RF-HR-003 | Tipo, salario, fechas | P1 |
| Asistencias | RF-HR-004 | Check-in/out, horas trabajadas | P1 |
| Timesheet | RF-HR-005 | Horas por proyecto/tarea | P2 |
Modelos Odoo → Tablas MGN:
hr.employee→hr.employeeshr.department→hr.departmentshr.contract→hr.contractshr.attendance→hr.attendances
Patrones a Adoptar:
- ✅ Empleado vinculado a partner y user
- ✅ Departamentos jerárquicos
- ✅ Integración timesheet → analytic accounts
MGN-011: Proyectos Genéricos
Fuente Odoo:
project
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-011 | Descripción | Prioridad |
|---|---|---|---|
| Gestión proyectos | RF-PRO-001 | Proyectos, manager | P1 |
| Tareas | RF-PRO-002 | Tasks, subtasks, asignación | P1 |
| Stages | RF-PRO-003 | Pipeline personalizable | P1 |
| Timesheet | RF-PRO-004 | Horas por tarea | P2 |
| Portal proyectos | RF-PRO-005 | Vista cliente | P2 |
Modelos Odoo → Tablas MGN:
project.project→projects.projectsproject.task→projects.tasksproject.task.type→projects.task_stages
Patrones a Adoptar:
- ✅ Vista kanban de tareas
- ✅ Integración con analytic accounts
- ✅ Portal de clientes
Aplicabilidad: ⭐⭐⭐⭐⭐ - CRÍTICO para construcción/proyectos
MGN-012: Reportes y Analytics
Fuente Odoo:
account(reportes)
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-012 | Descripción | Prioridad |
|---|---|---|---|
| Reportes financieros | RF-REP-001 | Balance, P&L | P1 |
| Dashboards | RF-REP-002 | KPIs, gráficos | P1 |
| Reportes personalizados | RF-REP-003 | Query builder | P2 |
| Exportación | RF-REP-004 | PDF, Excel, CSV | P1 |
Patrones a Adoptar:
- ✅ Reportes con filtros dinámicos
- ✅ Caching de reportes pesados
- ✅ Exportación multi-formato
MGN-013: Portal de Usuarios
Fuente Odoo:
portal
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-013 | Descripción | Prioridad |
|---|---|---|---|
| Portal clientes | RF-POR-001 | Dashboard, login | P1 |
| Vista documentos | RF-POR-002 | Órdenes, facturas | P1 |
| Aprobación cotizaciones | RF-POR-003 | Firma electrónica | P1 |
| Vista proyectos | RF-POR-004 | Tareas, comentarios | P2 |
Modelos Odoo → Tablas MGN:
- Usuarios con
share=true→ Rolportal_user
Patrones a Adoptar:
- ✅ RLS estricto (usuario solo ve sus registros)
- ✅ Permisos read-only + acciones permitidas
- ✅ Firma electrónica (canvas HTML5)
Aplicabilidad: ⭐⭐⭐⭐⭐ - CRÍTICO para portal derechohabientes INFONAVIT
MGN-014: Mensajería y Notificaciones
Fuente Odoo:
mail
Funcionalidades a Migrar:
| Funcionalidad Odoo | RF MGN-014 | Descripción | Prioridad |
|---|---|---|---|
| Sistema notificaciones | RF-NOT-001 | Notificaciones en tiempo real | P0 |
| Mensajería interna | RF-NOT-002 | Chat, mensajes por registro | P1 |
| Tracking cambios | RF-NOT-003 | Auditoría automática | P0 |
| Actividades | RF-NOT-004 | Recordatorios, tareas | P1 |
| Followers | RF-NOT-005 | Suscripción a registros | P2 |
Modelos Odoo → Tablas MGN:
mail.message→notifications.messagesmail.followers→notifications.followersmail.activity→notifications.activities- Tracking implícito →
notifications.tracking
Patrones a Adoptar:
- ✅ Tracking automático de campos (tracking=true)
- ✅ Chatter UI por registro
- ✅ Followers + notificaciones
Patrones a Mejorar:
- 🔧 Polling → WebSocket (Socket.IO)
- 🔧 Mejor UX de notificaciones
Aplicabilidad: ⭐⭐⭐⭐⭐ - ESENCIAL para auditoría y colaboración
Resumen de Reutilización
| Módulo MGN | % Reutilización Odoo | Esfuerzo Adaptación | Prioridad |
|---|---|---|---|
| MGN-001 | 90% | Bajo | P0 |
| MGN-002 | 90% | Bajo | P0 |
| MGN-003 | 95% | Muy Bajo | P0 |
| MGN-004 | 70% | Medio | P0 |
| MGN-005 | 80% | Bajo-Medio | P0 |
| MGN-006 | 85% | Bajo | P0 |
| MGN-007 | 85% | Bajo | P0 |
| MGN-008 | 95% | Muy Bajo | P0 |
| MGN-009 | 75% | Medio | P1 |
| MGN-010 | 70% | Medio | P1 |
| MGN-011 | 80% | Bajo-Medio | P1 |
| MGN-012 | 60% | Alto | P1 |
| MGN-013 | 80% | Bajo-Medio | P1 |
| MGN-014 | 85% | Bajo | P0 |
Promedio de reutilización: 81%
Conclusión
Los 12 módulos de Odoo analizados proporcionan una base sólida para implementar los 14 módulos del ERP Genérico.
Principales beneficios del análisis:
- Lógica de negocio probada en miles de empresas
- Patrones arquitectónicos consolidados
- Funcionalidades completas y bien diseñadas
- Reducción de riesgo en decisiones de diseño
Próximos pasos:
- Usar este mapeo para crear RF de MGN-001 a MGN-014
- Diseñar BD basándose en modelos Odoo
- Adaptar patrones Odoo a stack Node.js + React + PostgreSQL
Fecha: 2025-11-23 Analista: Architecture-Analyst Estado: ✅ Mapeo completo