- Implement tests for product publication status.
- Add tests for product orderability based on various conditions.
- Enhance pricing calculation tests for different discount scenarios.
- Remove outdated PricingServiceTest and refactor ProductAvailabilityServiceTest.
- Condition strikethrough price display on showStrippedPrice in ProductCard.vue
- Add showStrippedPrice to product Zod schemas, TypeScript types, repositories and store
- Optimize showStrippedPrice in FilteredProductResource using eager-loaded validDiscount
- Add unit tests for productModelSchema and integration tests in ProductsControllerTest
test(casts): add tests for ShopperEstablishmentCodeCast functionality
test(casts): add tests for ShopperServiceCodeCast functionality
test(casts): add tests for ShopperSiteCodeCast functionality
test(dto): update ProductDtoTest to include additional fields
test(dto): update SettingDtoTest to remove arcadiaSites assertions
test(events): update AnOrderHasBeenPlacedTest to use value objects
test(entities): update OrderTest to use value objects for employee details
test(value-objects): update EmployeeUpsertDataTest to use value objects
test(pagination): update PaginationTest to access value properties
test(services): update AppCustomerAuthServiceTest to use CrmHashcode
test(services): update CrmServiceTest to use CrmHashcode for customer retrieval
- Implement automated synchronization of employees via Arcadia API (EmployeeSyncService, SynchronizeEmployeesWithArcadiaApi, FetchAndUpsertArcadiaEmployees)
- Add Back-Office application settings for employee sites (Setting singleton, GetSettingsQuery, UpdateSettings, SettingsController, EmployeeSitesInputComponent.vue)
- Strongly type Employee attributes using Domain Value Objects (ShopperEstablishmentCode, ShopperSiteCode, ShopperServiceCode) and Eloquent Casts
- Migrate pagination from Domain to Shared\Pagination namespace across queries and inputs
- Remove legacy and dead CSV employee import/export code
- Restore Domain\Ports\Services\CsvGenerator interface for Regate order generation
- Add comprehensive Pest unit, integration, and feature test coverage
- Add ImportEmployees Action and ImportEmployeesInput
- Add GetEmployeeImportColumnsQuery
- Encapsulate toImportEmployeesInput in ImportRequest
- Use Executor in Bo\EmployeesController
- Add feature tests for Bo\EmployeesController
Added GetAvailableTimeslotsQuery, GetAvailableTimeslotsQueryInput, and GetAvailableTimeslotsQueryOutput
to handle fetching available timeslots for a shop, improving the structure and separation of concerns.
This commit introduces new actions for adding, removing, and emptying items in the basket, along with their corresponding input classes. It also updates the BasketController to utilize these new actions, enhancing the basket management functionality.
Adds UpdateCustomer action, input, and output classes to handle customer information updates.
Integrates with existing services and updates the CustomerController to utilize the new action.
- Added UnsubscribeFromNewsletter action and input/output classes.
- Introduced CrmHashcode value object and its cast.
- Updated NewsletterController to use the new unsubscribe action.
- Enhanced validation in UnsubscribeNewsletterRequest.
- Updated DataTableService to accept a Pagination object for pagination parameters.
- Refactored paginateQuery method to utilize pageSize and pageNumber from Pagination.
refactor: replace ActionExecutor with Executor in controller traits
- Updated ChangesModelOrder, TogglesModelStar, and TogglesModelStatus traits to use Executor interface instead of ActionExecutor.
feat: add PictureMetadata and Slug value objects
- Introduced PictureMetadata for managing image metadata with validation.
- Added Slug value object for slug generation and validation.
feat: update breadcrumbs to support RangeDto
- Modified breadcrumbs-bo.php to accept RangeDto in the edit route.
test: add tests for RangesController
- Added tests for accessing, creating, updating, and deleting ranges.
- Included tests for toggling range status.
test: add integration tests for range actions
- Created tests for CreateRange, DeleteRange, and UpdateRange actions.
- Validated input handling and database interactions.
test: add unit tests for range input classes
- Implemented tests for CreateRangeInput and UpdateRangeInput to validate input constraints.
test: add unit tests for value objects
- Added tests for PictureMetadata and Slug to ensure proper validation and instantiation.
test: add unit tests for RangeDto
- Created tests to verify RangeDto mapping from Range model.
test: add unit tests for RangePolicy
- Implemented tests for RangePolicy to validate permissions based on user roles.