Commit Graph

403 Commits

Author SHA1 Message Date
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 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 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 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 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
ncoronel 703158bd06 feat(ticket): implement LoadTestTicketDatasetService for generating load test datasets
- Added LoadTestTicketDatasetService to prepare disposable scanner tickets and generate a Postman importable dataset.
- Introduced console command `load-test🎟️prepare` for executing the dataset preparation.
- Updated README documentation with usage instructions for the load test command.
- Enhanced Postman collection generation script to include new parameters.
- Created tests for the load test command to ensure proper functionality and validation.
2026-09-03 14:15:23 -03:00
ncoronel eda2343380 fix(user): update hidden attributes and handle soft-deleted users in registration 2026-09-03 10:31:43 -03:00
ncoronel 0baad641d5 fix(auth): scope email uniqueness to active users 2026-09-03 09:59:21 -03:00
ncoronel ddb8c3743f fix(staff): preserve scanner history on deletion 2026-09-03 09:58:08 -03:00
ncoronel c2233389d0 feat(sale): implement modifications filtering and validation for admin sales 2026-09-03 08:39:45 -03:00
ncoronel 334ffe92e7 Merge branch 'fix/cancelledpurchase' into feature/tickets_adminapp 2026-09-02 15:53:12 -03:00
ncoronel a19ace3115 fix(purchase): handle cancellation of expired purchases and update test cases 2026-09-02 15:52:18 -03:00
ncoronel dcf105c316 feat(sales): filter and serialize admin statuses 2026-09-02 12:42:11 -03:00
ncoronel f74bf41931 feat(forms): expose grouped admin sale statuses 2026-09-02 12:42:00 -03:00
ncoronel ee906d2d2e Squashed commit of the following:
commit 6ae625d4fdc11989950ef0678db62fdb52be7c8c
Author: ncoronel <ncoronel@quo.ar>
Date:   Wed Sep 2 09:46:18 2026 -0300

    refactor(tickets): enhance search functionality for tickets by client names and formatted amounts

commit 098e525d32be9cb6487bc01a3d120aa0f2386a15
Author: ncoronel <ncoronel@quo.ar>
Date:   Wed Sep 2 09:09:30 2026 -0300

    fix(tickets): protect referenced purchase items

commit 210db17f2f6a6a4a509297b773a2b5d3e3149a3d
Author: ncoronel <ncoronel@quo.ar>
Date:   Wed Sep 2 08:59:24 2026 -0300

    test(tickets): cover purchase item references

commit 6a004713c4bad622dfa5e26394458925db1cb5a7
Author: ncoronel <ncoronel@quo.ar>
Date:   Wed Sep 2 08:59:02 2026 -0300

    refactor(tickets): reference purchase items directly
2026-09-02 09:47:04 -03:00
ncoronel 836aa1afd7 feat(tickets): refine FFI variant filters 2026-09-01 14:29:26 -03:00
ncoronel 80b8707771 fix(tickets): show numeric id and remove date column 2026-09-01 11:53:47 -03:00
ncoronel 2e9355c85c fix(tickets): disable inconsistent FFI product and type sorting 2026-08-31 13:54:30 -03:00
ncoronel fa1e11a69f feat(tickets): add tenant-aware server-side sorting 2026-08-31 13:54:30 -03:00
ncoronel fbfcb5cf63 feat(tickets): expose normalized values for dynamic columns 2026-08-31 13:54:30 -03:00
ncoronel adce4ab59e feat(tickets): define tenant-specific table columns 2026-08-31 13:54:30 -03:00
ncoronel 5250d1a818 feat(tickets): add PDF and Excel export endpoints 2026-08-31 13:54:30 -03:00
ncoronel 52b0b339d6 feat(tickets): add query_param to ticket filter fields in TicketFilterFormService and update related tests 2026-08-31 13:54:30 -03:00
ncoronel 9175df1d7f feat(tickets): enhance AdminAppTicketIndexRequest and AdminAppTicketService with additional filters and update tests for ticket filtering functionality 2026-08-31 13:54:30 -03:00
ncoronel 38341b2bda feat(tickets): update TicketFilterFormService to use getForFilters method and enhance TicketFormService with historical data handling 2026-08-31 13:54:30 -03:00
ncoronel 34a0a14404 feat(tickets): add TicketFilterFormController, TicketFilterFormService, and TicketFilterFormResource with routes and tests 2026-08-31 13:54:29 -03:00
ncoronel af516ce9e3 feat(tickets): add TicketFormController, TicketFormService, and TicketFormResource with related routes and tests 2026-08-31 13:53:18 -03:00
ncoronel dca35e7b0c feat(tickets): enhance AdminAppTicketResource and service with purchase details and update tests 2026-08-31 13:53:18 -03:00
ncoronel df853de843 feat(tickets): implement AdminAppTicketResource and update ticket collection to use it 2026-08-31 13:53:18 -03:00
ncoronel 4ba464bf85 feat(tickets): enhance ticket search functionality and add ticket counts to response 2026-08-31 13:53:18 -03:00
ncoronel 208e929262 feat(tickets): implement admin app ticket management with listing and search functionality 2026-08-31 13:53:17 -03:00
ncoronel ffe47d903e feat(menu): add tickets menu and update related seeder and tests 2026-08-31 13:53:17 -03:00
ncoronel 71c914a389 Merge branch 'main' into homo 2026-08-31 11:35:52 +00:00
ncoronel d4ec34db1a fix: update seating allocation for VIP section and adjust related test assertions 2026-08-28 13:41:37 -03:00
ncoronel 351178d9da Merge branch 'feature/candidate_payments' into homo_experimental 2026-08-27 16:52:08 -03:00
ncoronel b617285148 feat(payments): rename match reason from 'exact_amount_different_dni' to 'exact_amount_near_dni' 2026-08-27 16:40:32 -03:00
ncoronel 9bca41bfa5 feat(payments): filter candidates by DNI distance 2026-08-27 16:04:12 -03:00