Uecko_ERP/modules/companies
2026-07-15 18:09:41 +02:00
..
src feat: Implement Sequelize mappers and repository for Proforma V2 2026-07-10 13:59:44 +02:00
package.json v0.9.3 2026-07-15 18:09:41 +02:00
README.md Docs 2026-07-06 17:47:05 +02:00
tsconfig.json Login + selección de empresas 2026-07-06 12:57:33 +02:00

modules/companies

companies es el módulo independiente y fuente de verdad de la ficha operativa de empresa.

Responsabilidades

Gestiona la entidad Company funcional del ERP:

  • datos legales
  • datos operativos básicos
  • slug
  • status

Separación arquitectónica:

  • modules/identity: autenticación, cuentas, memberships, acceso account-company
  • modules/companies: ficha real de empresa y validación de company activa

Tabla companies

Campos actuales:

id
legal_name
trade_name
tin
slug
email
phone
website
status
created_at
updated_at

Índices esperados:

UNIQUE(slug)
INDEX(status)
INDEX(tin)

Servicios públicos

El módulo expone:

companies:general

Responsabilidad:

  • validar existencia y estado activo de la company
  • devolver datos públicos/operativos de empresa

No debe asumir:

  • memberships
  • autenticación por cuenta
  • roles/permisos de identity

Dependencias

modules/companies depende de identity.

Uso actual:

  • sus endpoints usan requireIdentityAuthenticated(params)
  • GET /companies/available no usa requireIdentityTenant(params)

Reglas

  • CompanyMembership vive en identity.
  • No mover memberships a companies.
  • No usar customers para representar la empresa tenant.
  • companySlug no debe venir de token, X-Company-Slug ni req.user.companySlug.