ncoronel
d0424c5589
feat(notification): enhance email logging and refactor event handling to use scalar identifiers
2026-08-26 09:38:19 -03:00
ncoronel
eb50e65fef
feat(purchase): add filtering for multiple statuses in purchase index and order by status then date
2026-08-25 10:47:53 -03:00
ncoronel
5548fe8511
feat(purchase): restore in-review transfer lifecycle
2026-08-21 16:15:55 -03:00
ncoronel
afd69b8393
feat(checkout): track current cart purchase
2026-08-21 14:05:33 -03:00
ncoronel
1650176aa0
refactor(checkout): keep source cart active
2026-08-21 13:42:30 -03:00
ncoronel
79e721ae63
refactor(checkout): disable purchase item editing
2026-08-21 11:03:48 -03:00
ncoronel
4e7e42d16e
refactor(checkout): materialize purchase item snapshots at start
2026-08-21 11:03:39 -03:00
ncoronel
3a2dc8b7e0
feat(cart): implement restoration and reservation of source cart on expired checkout modification
2026-08-21 10:10:28 -03:00
ncoronel
9d870be294
feat(checkout): restore source cart on cancellation
2026-08-21 09:29:23 -03:00
ncoronel
eafb02ffd5
fix(purchase): enhance handling of cart items for created and pending payment purchases
2026-08-21 08:58:51 -03:00
ncoronel
cb56e33685
fix(purchase): unify expired checkout errors
2026-08-21 08:58:51 -03:00
ncoronel
6775fb110c
feat: simplify cart restoration logic in ReleaseCheckoutService and SourceCartService
2026-08-20 13:53:04 -03:00
ncoronel
9c46eff880
feat: add checkout editing policy to tenants and update related logic across services and resources
2026-08-20 12:38:22 -03:00
ncoronel
c8ce3b0da3
feat(checkout): enforce editing policy on items
2026-08-20 10:56:19 -03:00
ncoronel
2de02dfd31
feat: add item editing preparation and enhance payment intent handling in PurchaseController
2026-08-20 09:46:32 -03:00
ncoronel
f9a766dee1
feat: enhance purchase loading logic to include cart items when purchase items are empty
2026-08-20 08:48:03 -03:00
ncoronel
8bc57cf0ff
fix: update import statements in EditCheckoutService for clarity and consistency
2026-08-19 17:22:02 -03:00
ncoronel
5c0b3503b7
feat(purchase): implement purchase limit enforcement and custom exception handling
2026-08-19 16:48:32 -03:00
ncoronel
8537d2ed0a
feat(catalog): implement maximum addable quantity logic and user quota sharing across variants
2026-08-19 16:48:32 -03:00
ncoronel
d97cc12af6
Merge branch 'feature/cart_editing_policy' into dev
2026-08-19 16:47:30 -03:00
ncoronel
93c99afb13
feat(telepagos): enhance webhook handling and add TenantTransactionResetService
2026-08-19 15:23:22 -03:00
ncoronel
58cbeae9d3
Squashed commit of the following:
...
commit 1dc4e29c69
Author: ncoronel <ncoronel@quo.ar>
Date: Wed Aug 19 13:58:03 2026 -0300
refactor(reservations): unify expiration command
commit 093e894cc3
Author: ncoronel <ncoronel@quo.ar>
Date: Wed Aug 19 13:48:09 2026 -0300
feat(cart): expire abandoned stock reservations
commit fdf0f3328f
Author: ncoronel <ncoronel@quo.ar>
Date: Wed Aug 19 12:53:12 2026 -0300
refactor(stock): implement expiration for stock reservations and add configuration
commit 8d6bcdcc43
Author: ncoronel <ncoronel@quo.ar>
Date: Wed Aug 19 12:38:21 2026 -0300
refactor(cart): invalidate payment on actual changes
commit 3206e293eb
Author: ncoronel <ncoronel@quo.ar>
Date: Wed Aug 19 12:24:48 2026 -0300
refactor(cart): own checkout item editing
commit aed99bd05e
Author: ncoronel <ncoronel@quo.ar>
Date: Wed Aug 19 12:14:57 2026 -0300
refactor(checkout): remove legacy purchase item reservations
commit f1649e0e4b
Author: ncoronel <ncoronel@quo.ar>
Date: Wed Aug 19 12:06:29 2026 -0300
refactor(checkout): materialize purchase items on confirmation
commit e6c4b40a37
Author: ncoronel <ncoronel@quo.ar>
Date: Wed Aug 19 12:06:19 2026 -0300
feat(inventory): add traceable cart stock reservations
2026-08-19 13:59:25 -03:00
ncoronel
d6574bfd0d
feat(logging): implement dedicated logging for Telepagos events and update logging configuration
2026-08-19 13:37:21 -03:00
ncoronel
7cea8d3495
feat(cart): enhance item update functionality to support variant changes and improve cart editing policies
2026-08-19 10:46:19 -03:00
ncoronel
8e26611097
feat: add display_cart_item_images feature to tenants and update related resources
2026-08-18 16:46:45 -03:00
ncoronel
a12b3dd0c8
feat(purchase): refactor imports and add test for InsufficientStockException handling
2026-08-12 15:22:19 -03:00
ncoronel
1b22989252
feat(purchase): implement InsufficientStockException for handling stock errors in checkout process
2026-08-12 14:45:55 -03:00
ncoronel
8e94cf7856
feat(inventory): add InventorySubject enum and integrate into catalog item management
2026-08-12 14:42:30 -03:00
ncoronel
5b089e71b2
feat(purchase): update direct item handling to support multiple items in checkout
2026-08-12 14:29:10 -03:00
ncoronel
02cf3f3773
Add tests for ticket validity and event date formatting
...
- Create TicketValiditySchemaTest to verify database schema for ticket validity.
- Update CatalogModelsTest to include tests for event date attributes and selection options.
- Introduce EventDateTextFormatterTest for formatting event dates in Spanish.
- Refactor EventModelsTest to include validity time relationships.
- Add SaleDetailResourceTest to ensure correct serialization of purchase items.
- Enhance TicketTest with validity time checks and status management.
- Implement ValidityTimeResourceTest to validate resource output for different validity types.
- Add ValidityTimeTest to verify casting and validity checks for validity time types.
2026-08-11 12:41:35 -03:00
ncoronel
8aa3a26ee7
feat: Add event association to purchases; implement event relationship in models, update migration, and enhance tests
2026-08-04 11:45:03 -03:00
ncoronel
1de08c1ca4
feat: Implement sale management features including controllers, services, resources, and routes; add PDF generation for sales and modifications
2026-08-04 11:44:13 -03:00
ncoronel
3f9bcd84c4
feat: Add tenant code to value changes; implement PurchaseController and related services for tenant-specific purchase management
2026-08-04 10:27:33 -03:00
ncoronel
96f26e2e9d
feat: Remove 'in_review' status from purchase workflow; implement logging for status changes and update related tests
2026-08-03 17:04:39 -03:00
ncoronel
45553dc514
feat(purchase): add review submission for pending purchases and update related logic
2026-07-29 09:11:00 -03:00
ncoronel
1c870d9cfa
feat(tickets): add source_purchase_id to tickets and update related logic
2026-07-28 16:10:37 -03:00
ncoronel
4eacff86bc
feat(purchase): update customer data for pending payment purchases
2026-07-28 15:06:00 -03:00
ncoronel
ff9d7728e8
Implement localization for API responses and error messages
...
- Added localization support for API responses in English and Spanish.
- Introduced a middleware to set the API locale based on the Accept-Language header.
- Updated various exception messages and validation responses to use localized strings.
- Created new language files for English and Spanish translations.
- Refactored existing code to replace hardcoded messages with localized strings.
- Added tests to verify localization functionality and response correctness.
2026-07-28 10:19:39 -03:00
ncoronel
8b26a2b63e
feat(purchase): add checkout expiration settings and reservation status to purchase items
...
- Introduced a new configuration file for purchase settings, including checkout and payment expiration times.
- Added a migration to include a `reservation_status` column in the `compra_items` table, defaulting to 'active' and updating existing records based on purchase status.
- Created a migration to add an `expires_at` timestamp to the `compras` table, updating it for existing records based on their status.
- Scoped unique indexes in the `carritos` table to only active carts, adding virtual columns for active user and guest tokens.
- Implemented a console command to expire overdue purchases and release stock reservations, scheduled to run every minute.
- Added tests for Google token exchange and login functionality, ensuring proper cart handling and user authentication.
- Updated purchase-related tests to reflect changes in item handling and customer data validation.
2026-07-27 12:49:27 -03:00
ncoronel
c0978033c1
feat(ticket): implement ticket generation on purchase payment and add related tests
2026-07-21 11:23:17 -03:00
ncoronel
29a2ca19a3
refactor(catalog): Complete catalog refactor to simplify its data model and its querying.
...
source commits: refactor/catalog
2026-07-21 09:23:19 -03:00
ncoronel
84c9fa4c9d
feat: update purchase status to pending payment in payment intent and related test
2026-07-16 12:13:48 -03:00
ncoronel
b3d06431e5
feat: rename payer_dni to transfer_payer_dni across purchase handling and update related tests
2026-07-16 11:45:34 -03:00
ncoronel
379c2bdbeb
Merge branch 'dev' of https://gitea.quo.ar/tbianchini/shopit-back into dev
2026-07-16 10:00:12 -03:00
ncoronel
6fc6ed1fac
feat: refactor cart and purchase handling to support polymorphic buyable types and improve code readability
2026-07-16 09:55:38 -03:00
ncoronel
c05206cc51
feat: refactor cart item handling to use mapped buyable types and improve method signatures
2026-07-16 09:19:38 -03:00
ncoronel
480ee70393
feat: refactor cart and bundle handling to support Buyable interface for improved flexibility
2026-07-16 09:19:03 -03:00
ncoronel
1d56d27350
feat: implement Bundle and BundleItem models, migrations, and polymorphic relationships for cart and purchase items
2026-07-16 09:11:00 -03:00
ncoronel
10157d7c63
feat: Implement inventory policy for product variants
...
- Introduced InventoryPolicy enum to manage tracked and unlimited inventory types.
- Updated ProductVariant model to include inventory_policy and cantidad_vendida attributes.
- Modified addItem and updateItem methods in Cart to check available quantity based on inventory policy.
- Added migration to include inventory_policy and cantidad_vendida in productos_variantes table.
- Enhanced tests to validate inventory behavior for both tracked and unlimited policies.
- Updated various request and resource classes to handle new inventory fields.
2026-07-16 08:36:59 -03:00
nahu
ca7a2ae55c
feat: add payer_dni field and validation for transfer payments, update related logic and tests
2026-07-12 19:48:56 +00:00