- Add methods to convert OrderLine and DeliveryAddress to DTOs.
- Introduce toPlacedEvent method in Order to generate domain event.
- Enhance OrderUnit with Regate code mapping.
- Implement tests for new functionality and ensure correctness.
Updated the OrderService to utilize the new fromBasket method for creating orders, enhancing code clarity and maintainability. Removed the ProductAvailabilityService as its functionality is now integrated into the ProductRepository.
- 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.
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