Commit Graph

460 Commits

Author SHA1 Message Date
ncoronel 6d077647ba feat(storefront): configure checkout summary type 2026-09-21 10:59:28 -03:00
ncoronel 14c81fec1b feat(migrations): add migration for grouping Pyme Rural tenants and updating client associations 2026-09-21 09:35:40 -03:00
ncoronel 9a14b8fbbd feat(menus): add storefront category permissions 2026-09-21 09:24:19 -03:00
ncoronel c665222837 refactor(bootstrap): separate event category data 2026-09-21 09:24:18 -03:00
ncoronel 8395c7f24d feat(menus): assign event routes to OnTicket 2026-09-21 09:16:33 -03:00
ncoronel 79d402e210 feat(events): add event categories and filtering 2026-09-21 09:16:28 -03:00
ncoronel 801d25b218 test(events): add explicit OnTicket demo event seeder 2026-09-18 14:33:35 -03:00
ncoronel 22ef5619f3 Refactor Catalog API: Remove Create Catalog Item Endpoint and Update Related Logic
- Removed the "Create Catalog" endpoint from the Postman collection.
- Updated the CatalogController to handle tenant-specific catalog items based on active events.
- Refactored CatalogItem model to automatically set event_id based on tenant's active_event_id during creation.
- Deleted StoreCatalogItemRequest and CatalogItemResource as they are no longer needed.
- Updated various services and controllers to utilize the new tenant-based catalog item retrieval logic.
- Added tests to ensure that catalog reads are limited to items associated with the active event.
2026-09-18 13:51:13 -03:00
ncoronel cdc17a13e2 feat(catalog): add event_id to catalog items and backfill existing records 2026-09-18 12:19:03 -03:00
ncoronel ee9f2ba538 fix(event): backfill active event social media 2026-09-18 11:32:10 -03:00
ncoronel 1e67d27a90 refactor(backend): reorganize domains into Core, Commerce, Ticketing and Shared 2026-09-18 10:15:57 -03:00
ncoronel 49be167029 feat(onticket): add immersive hero configuration and carousel, update tenant seeder and tests 2026-09-18 09:39:25 -03:00
ncoronel 164187f47b feat(tenant): add hero carousel images and update related services and tests 2026-09-17 16:47:49 -03:00
ncoronel 5aad43f2e3 feat(migration): enhance foreign key constraints and ensure migration integrity 2026-09-17 16:13:06 -03:00
ncoronel eb1e4df63f feat(tenant): enhance storefront website types with header_type and multi-event support 2026-09-17 16:02:21 -03:00
ncoronel 486129a92f test(tenant): cover split website types and migration 2026-09-17 14:25:54 -03:00
ncoronel b9b5f8ec9c feat(tenant): add onticket tenant seeding with branding and assets 2026-09-17 13:48:12 -03:00
ncoronel 5503559899 feat(refund): implement backfill command for historical ticket refunds reconciliation 2026-09-17 12:29:33 -03:00
ncoronel 830f65c402 feat(refund): add support for event date suspension in cart invalidation process 2026-09-17 11:42:33 -03:00
ncoronel df6892c662 feat(checkout): enhance cancellation logic to handle unavailable variants and update cart status 2026-09-17 11:34:26 -03:00
ncoronel de08ee4ac7 feat(cart): implement InvalidateEventDateCartsService to handle cart invalidation for rescheduled event dates 2026-09-17 10:27:27 -03:00
ncoronel 1269ebcda0 feat(ticket): exclude cancelled status from common ticket filter fields 2026-09-17 09:38:57 -03:00
ncoronel a46bf905e8 feat(refund): enhance refund process by adding backfill for refunded_units and updating inventory restoration logic 2026-09-16 15:00:41 -03:00
ncoronel 353fd34db2 feat(inventory): add refunded_units to inventory model and update related services 2026-09-16 15:00:28 -03:00
ncoronel f8a3296821 feat(event): add effective date resolution for rescheduled events and update tests 2026-09-16 14:27:35 -03:00
ncoronel 708037677a feat(entry): add validation for single non-replaced variant in EntryResource and update tests 2026-09-16 10:08:39 -03:00
ncoronel 3d6548ce4a feat(entry): refine variant selection logic to exclude replaced variants and add unit tests for replacement behavior 2026-09-16 09:34:02 -03:00
ncoronel 8ad9b3a4e3 Revert "feat(variants): implement restoration of previously suspended variants with usable dates"
This reverts commit 3a4f6b64d2.
2026-09-16 09:08:43 -03:00
ncoronel 3a4f6b64d2 feat(variants): implement restoration of previously suspended variants with usable dates 2026-09-16 09:05:21 -03:00
ncoronel 44178d72a5 feat(variants): enhance disableForSuspension method to manage variant replacements and inventory merging 2026-09-16 08:56:01 -03:00
ncoronel d02ad5fce2 feat(event): add per-user date change notices 2026-09-15 17:06:12 -03:00
ncoronel 69f2dbe056 refactor(event): remove date notices from tenant config 2026-09-15 17:06:06 -03:00
ncoronel 24d87623cc feat(event): implement EventDateGroupingService to group historical dates and update related resources and tests 2026-09-15 16:28:39 -03:00
ncoronel 51937ca93f feat(event): add EventDateInfoFormatter to format event date messages and implement related tests 2026-09-15 16:08:42 -03:00
ncoronel dcf4383fbf feat(variants): implement inventory cloning for historical stock updates and adjust related tests 2026-09-15 15:15:18 -03:00
ncoronel ff43ba32f3 feat(food): add endpoint to update historical stock and separate current and historical food variants 2026-09-15 15:03:41 -03:00
ncoronel 9fa4da7de2 feat(variants): add filtering for inactive event dates in visibleVariants method 2026-09-14 16:52:34 -03:00
ncoronel c27d9628fd feat(event): filter event dates to exclude rescheduled and suspended entries 2026-09-14 16:48:06 -03:00
ncoronel b1e09b71ad feat(migrations): implement backfill for legacy refunds and add migration tests 2026-09-14 15:13:16 -03:00
ncoronel 7d45734ad7 feat(forms): add entry form event dates 2026-09-14 15:00:29 -03:00
ncoronel 91022c5897 fix(forms): hide inactive food event dates 2026-09-14 15:00:23 -03:00
ncoronel 61314d5166 feat(storefront): expose event date notices 2026-09-14 14:49:30 -03:00
ncoronel 0d54887602 feat(event): audit suspended event dates 2026-09-14 14:19:29 -03:00
ncoronel 54827fbc58 feat(event): record date reschedules 2026-09-14 14:13:46 -03:00
ncoronel b4a7b80430 test: cover event variant replacements 2026-09-14 14:11:24 -03:00
ncoronel aa14129fe7 feat(catalog): track variant replacements 2026-09-14 14:07:55 -03:00
ncoronel 289ceba3af fix(tests): isolate databases in memory and reject persistent connections 2026-09-14 12:35:34 -03:00
ncoronel 67deca095e refactor(ticket): use refunds as amount source 2026-09-14 12:29:13 -03:00
ncoronel caed44fcc8 feat(ticket): persist and expose refund details 2026-09-14 11:57:31 -03:00
ncoronel a62e989bb4 feat(ticket): enhance ticket name resolution to follow event date reschedules 2026-09-14 11:33:20 -03:00
ncoronel 9c14153199 feat(notification): implement idempotent email delivery system and update related services 2026-09-14 09:41:40 -03:00
ncoronel 756f4dad0a feat(notification): email event date changes 2026-09-14 08:53:51 -03:00
ncoronel 205d77bc0b feat(event): dispatch date change notifications 2026-09-14 08:53:45 -03:00
ncoronel 4f7ede1072 feat(purchase,sale,ticket): expose refunded total summary in admin sales and tickets 2026-09-11 16:23:23 -03:00
ncoronel 4bb4f526e4 feat(event): support ticket refund configuration in event endpoints 2026-09-11 16:22:46 -03:00
ncoronel c0c19c9c01 feat(tenant): add master toggle for ticket refunds 2026-09-11 16:22:27 -03:00
ncoronel b4da6e3747 feat(event): omit rescheduled and suspended dates from tenant resource 2026-09-11 16:21:37 -03:00
ncoronel 1880fc8147 feat(event): suspend event dates instead of cancelling 2026-09-11 15:57:17 -03:00
ncoronel 96df431d60 feat(event): implement admin date creation, rescheduling, and cancellation endpoints 2026-09-11 12:28:51 -03:00
ncoronel 106cf017dc feat(ticket): resolve effective event dates and handle reschedule chains 2026-09-11 12:28:37 -03:00
ncoronel d5fdae9a24 feat(event): add rescheduling and cancellation state to event dates 2026-09-11 12:28:29 -03:00
ncoronel 4abb6c67fd feat(ticket): add refund calculation functionality and corresponding tests 2026-09-11 10:43:03 -03:00
ncoronel 2ddb046c26 feat(ticket): add action capability helpers and expose them in admin resource 2026-09-11 09:25:19 -03:00
ncoronel 5d00dc439e feat(ticket): implement refund functionality and expose allow_refund flag 2026-09-10 17:05:57 -03:00
ncoronel 210c854fee feat(tenant): add allow_refund and allow_partial_refund methods 2026-09-10 17:04:34 -03:00
ncoronel beb5d18b29 feat(ticket): add cancel ticket functionality and corresponding tests 2026-09-10 16:28:45 -03:00
ncoronel de259f4286 feat(ticket): implement terminal status management and validation 2026-09-10 16:20:35 -03:00
ncoronel f19bca64d0 feat(admin): expose ticket refund states 2026-09-10 16:10:17 -03:00
ncoronel 18f739b712 feat(ticket): add refundable terminal states 2026-09-10 16:10:08 -03:00
ncoronel 1564985259 feat(tenant): expose ticket refund configuration 2026-09-10 15:29:41 -03:00
ncoronel 4c647968cb Merge branch 'fix/admin_title' into dev 2026-09-09 16:30:00 -03:00
ncoronel 55dcc2e37f feat(website): add site_title to AdminAppBootstrapResource and related tests 2026-09-09 16:29:37 -03:00
ncoronel cac4fcf2b2 feat(scanner): update scan handling to return results for invalid QR data and other scan conditions 2026-09-09 12:49:27 -03:00
ncoronel 64e965aff7 feat(scanner): update scan attempt result labels for consistency 2026-09-09 08:47:10 -03:00
ncoronel 002f08a8fa feat(staff): expose scanner attempt history 2026-09-08 10:56:27 -03:00
ncoronel 531dbe52b9 feat(scanner): expose scan result labels 2026-09-08 10:24:28 -03:00
ncoronel a885a2fc0e feat(scanner): expose assigned scan categories 2026-09-08 10:01:18 -03:00
ncoronel 0c49bae752 feat(scanner): add scan attempt detail endpoint 2026-09-08 08:51:19 -03:00
ncoronel 67bcb420e4 feat(scanner): return scan attempt result context 2026-09-08 08:51:10 -03:00
ncoronel 34058e6a81 feat(scanner): implement scan attempt endpoint and update routes and tests 2026-09-07 16:56:12 -03:00
ncoronel 8a65d358a4 feat(scanner): implement scan attempt tracking with new request and resource classes 2026-09-07 16:55:52 -03:00
ncoronel 193e10dc48 feat(scan): implement scan attempt tracking and validation logic 2026-09-07 16:39:14 -03:00
ncoronel b607c1b673 feat(scanner): refactor ticket scanning endpoint to accept UUID in request body and add validation 2026-09-07 16:18:16 -03:00
ncoronel e9521e65d0 Merge branch 'refactor/integrations' into dev 2026-09-07 11:12:16 -03:00
ncoronel d0625f25e5 refactor(integration): enhance association logic to delete unused instances and improve transaction handling 2026-09-07 11:09:08 -03:00
ncoronel 1fdcfc1547 Merge branch 'fix/sonder_bugs' into dev 2026-09-07 09:34:13 -03:00
ncoronel ca4ea0aa6c feat(tenant): add asset URL to tenant resource response 2026-09-07 09:20:46 -03:00
ncoronel 99fe94fa6a refactor(integration): streamline integration management by removing IntegrationInstanceController and updating related requests and services 2026-09-04 16:00:19 -03:00
ncoronel a4b5c2eb19 refactor(auth): remove role-based logic from scanner authentication and permissions 2026-09-04 15:33:01 -03:00
ncoronel a35ff69140 feat(users): enforce active email uniqueness per role 2026-09-04 14:17:37 -03:00
ncoronel 99594b17e7 fix(auth): resolve login identities by active email and role 2026-09-04 14:17:19 -03:00
ncoronel ab5ea7dd33 feat(integration): administrar instancias y asociaciones con permisos
Agrega endpoints para crear, editar y asociar instancias a clientes y tipos de sitio. Valida las credenciales contra el esquema del catalogo y devuelve metadatos sin secretos.

Restringe la administracion al rol admin autenticado y mantiene inmutables los codigos de integracion. Incluye pruebas de API, permisos, prioridad de resolucion, edicion compartida y renovacion de tokens.
2026-09-04 12:48:06 -03:00
ncoronel c0057c237a refactor(integration): resolver credenciales mediante instancias
Resuelve primero la instancia del cliente y luego la del tipo de sitio cuando existe contexto de tenant. Adapta SMTP y Telepagos, con tokens identificados por instancia y version de credenciales.

Separa la edicion de instancias de sus asociaciones y conserva el guardado por cliente creando una instancia nueva. Impide eliminar instancias en uso y adapta las pruebas existentes, incluida la herencia SMTP.
2026-09-04 12:47:47 -03:00
ncoronel e4146288f1 refactor(integration): generalizar el requisito de configuracion
Renombra requires_client_configuration a requires_configuration conservando los valores existentes y su rollback. Actualiza el modelo, la validacion, los seeders y los consumidores del campo para permitir configuraciones de cliente o tipo de sitio.
2026-09-04 12:47:29 -03:00
ncoronel f11ba5a470 feat(integration): add IntegrationInstance and WebsiteTypeIntegration models with migrations; refactor ClientIntegration and Integration models 2026-09-04 12:17:30 -03:00
ncoronel ffa3f10b18 feat(scanner): implement category validation for AdminApp role and update tests 2026-09-04 10:40:46 -03:00
ncoronel 7acef66ee7 feat(notification): enhance password reset emails with custom templates for different scenarios 2026-09-04 10:31:16 -03:00
ncoronel 18f1217daa feat(admin): implement CRUD for administrators with role management and tenant restrictions 2026-09-04 10:28:33 -03:00
ncoronel deea4fd4af Merge branch 'test/stress' into dev 2026-09-04 08:21:50 -03:00
ncoronel c4ff695f2e refactor(ticket): simplify tenant validation and update command documentation 2026-09-03 14:30:38 -03:00