Commit Graph

1662 Commits

Author SHA1 Message Date
0b16f9eb6b docs: README para plantilla Workspace 2026-06-04 11:34:53 -05:00
880999b03a feat: plantilla base workspace SaaS
Some checks failed
Build Producción & Push a Harbor / test (push) Failing after 2s
Build Producción & Push a Harbor / build (push) Has been skipped
Convierte el repositorio de Anexo76 en una plantilla limpia y reutilizable
para nuevos proyectos del ecosistema Workspace de Aduanasoft.

Cambios principales:
- Elimina módulos específicos de Anexo76: a76, a24, sitar, public
- Agrega módulo example/ con patrón CRUD de referencia (models/dto/service/routes)
- Limpia migraciones Alembic: solo quedan las 6 de core (users, tenants, permissions)
- Reemplaza todas las rutas del dashboard con stubs genéricos
- Elimina lógica de negocio aduanera: shortcuts, CSV imports, permisos, catálogos
- Simplifica variables de entorno: una sola WORKSPACE_URL deriva Hub y Keycloak
- Agrega scripts/auth-mode.sh para alternar entre auth local y workspace
- Configura docker-compose con nombres genéricos (app-*)
- Corrige flujo SSO: elimina system-gate SCAF/SCAII que bloqueaba el login
- Modo DEV_LOCAL_AUTH para desarrollo sin Keycloak ni Hub

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-04 10:55:17 -05:00
9fae110c11 fix/AS-487-merge-main-development (#490)
Some checks failed
Build Producción & Push a Harbor / test (push) Failing after 3s
Build Producción & Push a Harbor / build (push) Has been skipped
Co-authored-by: Galindo97 <agalindo@aduanasoft.com.mx>
Reviewed-on: ADUANASOFT/anexo76#490
Co-authored-by: AlexeerCT <acazares@aduanasoft.com.mx>
Co-committed-by: AlexeerCT <acazares@aduanasoft.com.mx>
2026-06-03 15:02:02 +00:00
d5643ec0e9 fix/permisos-custom-broker (#486)
permisos marcaba error de permisos aunque si los tuviera, solo era visual y mal consulta de roles

Reviewed-on: ADUANASOFT/anexo76#486
Co-authored-by: hreyes <hreyes@aduanasoft.com.mx>
Co-committed-by: hreyes <hreyes@aduanasoft.com.mx>
2026-06-03 14:10:17 +00:00
c5aa6630ee fix/secciones-aduanales-en-custom-brokers (#484)
ajuste en pestana de custom brokers de secciones aduanales, correcciones visuales y consulta de datos

Reviewed-on: ADUANASOFT/anexo76#484
Co-authored-by: hreyes <hreyes@aduanasoft.com.mx>
Co-committed-by: hreyes <hreyes@aduanasoft.com.mx>
2026-06-03 13:49:47 +00:00
47e3f36f5c fix/AS-prosec-revertir-boolean (#483)
alembic seed para empresas ya existentes

Reviewed-on: ADUANASOFT/anexo76#483
Co-authored-by: hreyes <hreyes@aduanasoft.com.mx>
Co-committed-by: hreyes <hreyes@aduanasoft.com.mx>
2026-06-02 21:21:01 +00:00
26c5a97c04 fix/AS-prosec-revertir-boolean (#482)
prosec revertir boolean y uso de catalogo

Reviewed-on: ADUANASOFT/anexo76#482
Co-authored-by: hreyes <hreyes@aduanasoft.com.mx>
Co-committed-by: hreyes <hreyes@aduanasoft.com.mx>
2026-06-02 21:06:23 +00:00
96b3beed4f fix/etiquetas-y-ajustes-en-parametros-invoices (#480)
detelles en parametros de facturas, ajuste de posiciones y etiqueta de numero de factura

Reviewed-on: ADUANASOFT/anexo76#480
Co-authored-by: hreyes <hreyes@aduanasoft.com.mx>
Co-committed-by: hreyes <hreyes@aduanasoft.com.mx>
2026-06-02 18:28:33 +00:00
bdfcac4f94 Merge pull request 'fix(multimoneda): formato fijo DD/MM/YYYY en campo de fecha' (#476) from fix/catalogos-multimoneda into development
Reviewed-on: ADUANASOFT/anexo76#476
2026-06-02 17:17:29 +00:00
c8b3c23564 Merge pull request 'fix/generacion-xml-nuevos' (#472) from fix/generacion-xml-nuevos into development
Reviewed-on: ADUANASOFT/anexo76#472
2026-06-02 17:17:09 +00:00
3d32dfe3f2 Merge pull request 'feauture/catalogo-clases-inventario-UME' (#479) from feauture/catalogo-clases-inventario-UME into development
Reviewed-on: ADUANASOFT/anexo76#479
2026-06-02 17:14:58 +00:00
5e60000152 Merge pull request 'fix/uso-de-catalogo-sectores-empresa' (#471) from fix/uso-de-catalogo-sectores-empresa into development
Reviewed-on: ADUANASOFT/anexo76#471
2026-06-02 17:14:35 +00:00
e0b08dfa8a feauture/catalogo-clases-inventario-UME 2026-06-02 11:12:38 -06:00
e612037668 fix/conceptos-agente-aduanal-bugs-filtros-y-modal 2026-06-02 10:40:15 -06:00
c5a77fb30a fix/INP-filtros-y-modal 2026-06-02 10:28:18 -06:00
ae6517bcb4 fix(multimoneda): formato fijo DD/MM/YYYY en campo de fecha
Reemplaza <input type="date"> por componente DateInputDMY que siempre
muestra DD/MM/YYYY sin depender del locale del navegador. El picker
nativo sigue funcionando vía input oculto. Se elimina el texto
auxiliar "Se guarda como entero (YYYYMMDD)".

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-02 11:04:52 -05:00
7b95c6da86 fix/conceptos-detalles-corregir 2026-06-02 10:00:34 -06:00
f56b2ca784 fix/modulo-bultos-filtros-y-detalles 2026-06-02 09:46:13 -06:00
963425074e Merge branch 'development' into feature/separacion-de-tax-id-de-rfc 2026-06-02 09:07:42 -06:00
619ef8d7d8 feature/separacion-de-tax-id-de-rfc 2026-06-02 09:05:29 -06:00
f5aa9dd614 Merge branch 'development' of https://git.aduanasoft.com/ADUANASOFT/anexo76 into fix/generacion-xml-nuevos 2026-06-02 09:11:34 -05:00
64bf1fee0b chore: ignorar carpeta de archivos generados en runtime
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 09:11:00 -05:00
0a39d54619 Merge pull request 'fix/filtros-busqueda-secciones-aduanales' (#470) from fix/filtros-busqueda-secciones-aduanales into development
Reviewed-on: ADUANASOFT/anexo76#470
2026-06-02 14:02:38 +00:00
08f99f102e fix/uso-de-catalogo-sectores-empresa 2026-06-02 07:59:12 -06:00
6cf74c3bbd fix(exchange-rate-guard): evitar SSR de CreateEditDialog con {#if browser}
Dialog.Portal intenta instanciar clases del DOM durante SSR causando
'Class constructors cannot be invoked without new' en GET /dashboard.
El diálogo es puramente client-side, no necesita renderizado en servidor.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 08:56:01 -05:00
7ee5200cfa chore(reports-transmission): eliminar triggerXmlRbSystemsImpo sin usar
No hay opción en el modal que lo llame. Solo existen las 8 interfaces
del select y los 4 regímenes de importación XML_RB_SYSTEMS.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 08:48:25 -05:00
4bbc93534c fix(reports-transmission): migrar todos los métodos a api.post/get con silent refresh
Todos los métodos del archivo usaban fetch() directo con localStorage,
bypaseando el silent refresh automático. Ahora todos usan api.post()/api.get()
de $lib/api para manejo uniforme de 401 → refresh → retry en toda la interfaz.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 08:44:20 -05:00
237ed17bdd fix(xml-rb-systems): migrar fetch directo a api.post para silent refresh automático
Los 4 métodos XML RB Systems usaban fetch() con localStorage, bypaseando
el fetchApi() de $lib/api que tiene 401 → silent refresh → retry automático.
Ahora el token expirado se renueva de forma transparente sin interrumpir al usuario.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 08:38:51 -05:00
7a8028ac81 fix(xml-rb-systems): mostrar toast de sesión expirada en error 401
Detecta respuestas 401 en los 4 métodos XML RB Systems (impo-temp, impo-def,
impo, expo) y lanza un mensaje claro en lugar del error genérico de generación.
Además elimina entry_port/exit_port del tipo de request de exportación.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 08:35:04 -05:00
ddd0635af6 fix(xml-rb-systems): ocultar puertos en exportación y mover validación a importación
Para exportación los puertos vienen del manifiesto en BD (entry_port/foreign_exit_port),
no del request. El selector de puertos ahora solo aparece cuando movementType === 'Importacion'.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 08:33:24 -05:00
86d0012a17 fix/filtros-busqueda-secciones-aduanales 2026-06-02 07:15:30 -06:00
2e7007a7c4 Merge pull request 'ix/firmas-electronicas' (#469) from ix/firmas-electronicas into development
Reviewed-on: ADUANASOFT/anexo76#469
2026-06-01 22:29:46 +00:00
af6c0698da Se aniado el boton para subir fotografias desde el equipo, ademas de guardardo en minio 2026-06-01 17:13:00 -05:00
2ccf1b4879 Merge pull request 'fix/modulos-ingles' (#468) from fix/modulos-ingles into development
Reviewed-on: ADUANASOFT/anexo76#468
2026-06-01 21:56:37 +00:00
d76af1438f Merge pull request 'feature/parametros-datos-faltantes' (#467) from feature/parametros-datos-faltantes into development
Reviewed-on: ADUANASOFT/anexo76#467
2026-06-01 21:56:16 +00:00
d2ad309f6f Merge pull request 'feature/app-launcher-login-sso' (#466) from feature/app-launcher-login-sso into development
Reviewed-on: ADUANASOFT/anexo76#466
2026-06-01 21:56:03 +00:00
96cd0ebbe4 Merge branch 'development' of https://git.aduanasoft.com/ADUANASOFT/anexo76 into fix/modulos-ingles 2026-06-01 16:17:09 -05:00
cb202ddd14 feat(i18n): traducir Biblioteca de Conocimiento (help-center)
- Página principal: título, subtítulo, búsqueda, tarjetas, diálogo de eliminar, toasts
- Lector de capítulo: navegación, PDF/video/documento, descargas, TOC
- Editor: formulario completo (labels, placeholders), toolbar markdown, subida de archivos, toasts
- ~70 claves common nuevas (help_*)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-01 16:14:18 -05:00
543fefb743 feat(i18n): traducir encabezados de mercancías, pedimentos, usuarios, reportes, settings y export
- Títulos y subtítulos de goods, pedimentos, customs_brokers, users, admin/roles, settings, account, reports
- Componente Maintenance (cubre 6 páginas de export)
- Corrección de imports de m faltantes en fixed-asset-classes y tariff-fractions/american
- Nuevas claves common (botones, subtítulos, títulos de página)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-01 16:06:58 -05:00
1fbac4d883 Traducciones en primera partes 2026-06-01 15:50:02 -05:00
6f0511f79a Merge branch 'development' into feature/app-launcher-login-sso 2026-06-01 14:33:41 -06:00
c6c0be5683 feature/parametros-datos-faltantes 2026-06-01 14:32:14 -06:00
1ae0bd05b3 feature/app-launcher-login-sso 2026-05-29 15:29:55 -06:00
c1ad135cf3 Merge pull request 'fix(invites): logging detallado cuando Hub invite creation falla' (#464) from fix/hub-invite-credentials into development
Reviewed-on: ADUANASOFT/anexo76#464
2026-05-29 21:16:31 +00:00
73aa55646b feat(invites): usar token del usuario actual para crear invite en Hub
Elimina la dependencia de HUB_ADMIN_EMAIL/HUB_ADMIN_PASSWORD del flujo
de invitaciones. Ahora se usa el Bearer token del usuario autenticado,
que debe tener role='admin' en su tenant dentro del Hub.

Esto hace el flujo compatible con instalaciones self-hosted donde el
cliente no debe tener acceso a credenciales del Workspace Hub.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-29 15:51:31 -05:00
28eaee2980 Merge pull request 'feature/app-laucher-mejoras' (#465) from feature/app-laucher-mejoras into development
Reviewed-on: ADUANASOFT/anexo76#465
2026-05-29 19:22:16 +00:00
496068ba1c feature/app-laucher-mejoras 2026-05-29 13:10:23 -06:00
02a5ac07ed fix(invites): logging detallado cuando Hub invite creation falla
Antes los fallos del Hub login y invite creation eran silenciosos o con
warning genérico. Ahora loguea status code, body y nombre de campo para
facilitar diagnóstico en producción.

- Detecta HUB_ADMIN_EMAIL/PASSWORD vacíos con error explícito
- Loguea status+body cuando login falla (401/403)
- Loguea status+body+tenant/email cuando invite falla (404/403)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-29 14:06:49 -05:00
6d545da31c Merge pull request 'feature/copias-envoices' (#463) from feature/copias-envoices into development
Reviewed-on: ADUANASOFT/anexo76#463
2026-05-29 18:50:00 +00:00
0448f84e80 feature/copias-envoices 2026-05-29 12:47:40 -06:00