Commit Graph
16 Commits
Author SHA1 Message Date
GeorgeandClaude Sonnet 5.5 91d5135dc7 feat: Lotes (datos maestros de inventario): lista y formulario de BatchNumberDetails con clave numérica y sin «Nuevo»
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 07:59:22 -05:00
GeorgeandClaude Sonnet 5.5 3e27f370dc feat(api): módulo de consultas de solo lectura a la base de SAP (HANA con hdb): consultas registradas con parámetros con nombre, cola, auditoría y extensión por cliente
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 07:31:17 -05:00
GeorgeandClaude Sonnet 5.5 0f43e6cac7 feat: botón PDF de los documentos con los reportes del Gateway (formato por defecto y otros formatos, asociados en la matrícula)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 18:42:07 -05:00
GeorgeandClaude Sonnet 5.5 854ee58037 feat(web): Reportes Gateway (lista para ejecutar con parámetros y PDF, y matrícula de reportes) con los controles y ventanas de selección del proyecto
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 17:50:40 -05:00
George 03ccd97f99 feat: parámetros ocultos (títulos y separadores) de los reportes Crystal 2026-10-19 17:46:44 -05:00
GeorgeandClaude Sonnet 5.5 2a29c63e7d feat(api): módulo del API Gateway (reportes Crystal): sesión y cola propias, matrícula de reportes y ejecución con PDF
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 17:46:09 -05:00
GeorgeandClaude Sonnet 5.5 b85383dda1 feat: moneda y tipo de cambio del documento (debajo del Nº de referencia) y ajustes de moneda local de la empresa
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 14:40:14 -05:00
GeorgeandClaude Sonnet 5.5 e9e3ba03e5 feat: redondeo en el pie de los documentos de ventas y compras (visible según OADM.RoundMthd) y endpoint /api/company/settings
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 12:53:23 -05:00
GeorgeandClaude Sonnet 5.5 8bbd05d07b feat: módulo Finanzas (plan de cuentas y asientos contables con cancelación)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 14:36:24 -05:00
GeorgeandClaude Sonnet 5.5 369be317ab feat: base de bancos (recursos de pagos recibidos y efectuados, acción Cancel, menú Bancos, tabla con ventana de selección)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 13:23:27 -05:00
GeorgeandClaude Sonnet 5.5 fe8c080471 feat: auditoría (audit_log en SQLite, endpoint /api/audit y pantalla /admin/auditoria)
Registra sesiones, creaciones y modificaciones en SAP (solo nombres de campos), denegados y cambios de permisos.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 12:35:46 -05:00
GeorgeandClaude Sonnet 5.5 52dc1957b7 feat: facturas y boletas de reserva (ReserveInvoice); las facturas y boletas normales excluyen las de reserva
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 17:32:32 -05:00
GeorgeandClaude Sonnet 5.5 1834c64f6f feat: boletas de venta (Invoices con DocumentSubType bod_Bill); la lista de facturas las excluye
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 17:13:33 -05:00
GeorgeandClaude Sonnet 5.5 4d4df17d07 feat(web): pantalla de permisos de menú (/admin/permisos)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-13 22:17:50 -05:00
GeorgeandClaude Sonnet 5.5 4c8c499a72 feat(web): login, sesión, interceptor, guards y layout con menú por permisos
- Login contra POST /api/auth/login; SessionStore en localStorage con el
  timeout deslizante que informa el servidor (sessionTimeoutMinutes).
- Interceptor: Bearer en /api, renueva actividad y, ante 401, cierra la
  sesión y vuelve al login recordando la ruta (solo rutas internas).
- Guards: sesión, invitado y permiso por pantalla (data.path). Corrige que
  inject() no puede usarse tras un await en permissionGuard.
- Layout con barra superior (empresa, usuario, tema, salir) y menú lateral
  filtrado por GET /api/user/menu; plegable y con botón en pantallas angostas.
- Menú único en libs/sap-types (MENU, filterMenu); el backend verifica por
  test que las rutas de permiso de sus recursos existan en él.
- Una ruta por pantalla del menú; las no construidas muestran "no disponible".
- Verificado en Chrome headless contra el backend y SAP reales: redirección
  sin sesión, menú de 20 pantallas, navegación, plegado, tema oscuro y
  persistencia, vista móvil, salir, token inválido y credenciales malas.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-13 19:18:05 -05:00
GeorgeandClaude Sonnet 5.5 f1156929c7 feat(web): app Angular, librería compartida sap-types y sistema de temas
- apps/web: Angular 22 standalone, zoneless, OnPush, vitest; proxy /api
  hacia el backend; presupuesto de bundle (aviso 260 kB, error 400 kB).
- libs/sap-types: tipos de auth/permisos/Service Layer y el evaluador de
  patrones de menú, compartidos por api y web (se compila en postinstall).
  El backend deja de tener su propia copia del evaluador.
- Temas por variables CSS: claro por defecto con la paleta del mockup de
  Oferta de ventas, oscuro incluido; ThemeService + selector, con el tema
  guardado aplicado antes del primer pintado. Agregar un tema = 1 css +
  1 import + 1 entrada.
- Criterios de interfaz ligera en CLAUDE.md y README.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-13 19:11:05 -05:00