Merchant Opening Hours feature: Domain model

Edit on GitHub

By using the ‘Merchant Opening Hours’ feature, merchants can save their opening hours in the system and make them accessible to customers. A merchant may have a weekday schedule, which is an opening schedule for every day of the week, as well as date-based exceptions, such as during the holiday season when opening hours may be different.

Module dependency graph

The following diagram illustrates the dependencies between the modules for the Merchant Opening Hours feature.

Module Dependency Graph

MODULE DESCRIPTION
MerchantOpeningHours Provides merchants with the ability to schedule opening hours.
MerchantOpeningHoursDataImport Data importer for the MerchantOpeningHours.
MerchantOpeningHoursStorage Manages storage for merchant opening hours entities.
WeekdaySchedule Configures weekdays and dates based on your schedule.
MerchantOpeningHoursWidget Provides a widget to show merchant opening hours.
MerchantOpeningHoursRestApi Provides REST API endpoints to manage merchant opening hours.
Merchant Provides database structure and facade methods to save/update/remove merchants.
MerchantStorage Manages storage for merchant entities.

Domain model

The following schema illustrates the Merchant Opening Hours domain model:

Domain Model