mhinspeya/mhinspeya-hyva-personal-shopping
Composer 安装命令:
composer require mhinspeya/mhinspeya-hyva-personal-shopping
包简介
Experience personalized shopping like never before with our personal shopping module. Simply schedule an appointment with one of our expert stylists who will curate a tailored selection just for you, ensuring great fit and awesome new styles
关键字:
README 文档
README
Experience personalised shopping like never before. This Magento 2 / Hyvä-compatible module lets customers book one-on-one appointments with expert stylists directly from the storefront. Store administrators manage employees, departments, schedules, and appointment requests — all from the Magento Admin Panel.
Composer package:
mhinspeya/mhinspeya-hyva-personal-shoppingModule name:MHinspeya_AppointmentShoppingCurrent version: 1.0.3 License: OSL-3.0
Table of Contents
- Features
- Requirements
- Installation
- Configuration
- Admin Panel Management
- Frontend Booking Flow
- How to Embed the Booking Form
- REST API Endpoints
- Database Schema
- ACL Permissions
- Hyvä Theme Compatibility
- Translations
- Uninstallation
- Support
Features
Storefront
- Interactive appointment booking — customers browse available employees per department and select a date/time slot
- Dynamic calendar & time-slot picker — available days and slots are computed from each employee's configured schedule (weekly availability, start/end time, break windows, appointment duration)
- Duplicate booking prevention — the system checks existing appointments to prevent double bookings for the same slot
- Automatic email notifications — confirmation emails are sent to both the customer and the assigned employee upon booking
- Hyvä Theme compatible — ships with Hyvä Tailwind templates, Alpine.js integration, and auto-registers via the Hyvä config observer
- Configurable age limit — enforce a minimum customer age at the form level
- Timezone-aware scheduling — supports configurable timezone for accurate slot calculations
- Customisable heading & sub-heading — admin-configurable page title and description text
Admin Panel
- Department management — create and manage store departments (e.g. Menswear, Womenswear, Childrenswear) with individual email contacts, sort order, and status toggle
- Employee management — add employee profiles with name, department assignment, email, profile image upload, bio/content, weekly schedule configuration (available days, time range, break slots, appointment duration), sort order, and status
- Appointment management — view, confirm, or reject customer appointment requests from a dedicated admin grid
- Approve / Reject workflow — one-click confirm or disapprove with automatic notification emails sent to the customer
- UI Component grids & forms — fully integrated Magento Admin UI Component listing grids with inline editing support for all three entities
- Mass actions — mass delete and mass status change on employee listings
- Image uploader — dedicated image upload handler for employee profile photos
- Seed data — ships with sample CSV data for departments, employees, and appointment forms, imported via a modern Magento data patch
Requirements
| Requirement | Version |
|---|---|
| Magento | 2.4.x |
| PHP | 8.1 or higher |
| Hyvä Theme | 1.1.x or higher |
| MHinspeya BackendMod | ^1.0 (mhinspeya/backend-mod) |
Installation
Via Composer (Recommended)
# 1. Require the package
composer require mhinspeya/mhinspeya-hyva-personal-shopping
# 2. Enable the module
bin/magento module:enable MHinspeya_AppointmentShopping
# 3. Run setup upgrade (runs data patches and creates DB tables)
bin/magento setup:upgrade
# 4. Compile DI
bin/magento setup:di:compile
# 5. Deploy static content (production mode)
bin/magento setup:static-content:deploy -f
# 6. Flush cache
bin/magento cache:flush
Manual Installation (app/code)
# 1. Create the module directory
mkdir -p app/code/MHinspeya/AppointmentShopping
# 2. Copy or clone the module files into the directory
cp -r <source-path>/* app/code/MHinspeya/AppointmentShopping/
# 3. Enable the module
bin/magento module:enable MHinspeya_AppointmentShopping
# 4. Run setup upgrade
bin/magento setup:upgrade
# 5. Compile DI
bin/magento setup:di:compile
# 6. Deploy static content (production mode)
bin/magento setup:static-content:deploy -f
# 7. Flush cache
bin/magento cache:flush
Configuration
Navigate to Stores → Configuration → Personal Shopping → Personal Shopping Configuration in the Magento Admin Panel.
General Settings
| Field | Description |
|---|---|
| Enable | Enable or disable the Personal Shopping module (Yes/No) |
| Heading Title | Main heading text displayed on the booking page |
| Heading Sub Title | Subheading text displayed beneath the main heading |
| Age Limit | Minimum age requirement for customers filling the booking form |
| Timezone | Timezone used for appointment slot calculations |
Email Options
| Field | Description |
|---|---|
| Email Sender | Select the sender identity for all appointment emails |
| Customer Email Template | Email template sent to the customer upon booking |
| Employee Email Template | Email template sent to the employee upon a new booking |
| Appointment Approve Email Template | Email template sent to the customer when appointment is confirmed |
| Appointment Reject Email Template | Email template sent to the customer when appointment is rejected |
Admin Panel Management
All management grids are accessible under MHinspeya → Personal Shopping in the admin sidebar.
Manage Departments
Path: MHinspeya → Personal Shopping → Manage Departments
Create and manage store departments. Each department has:
| Field | Description |
|---|---|
| Department Name | Name of the department (e.g. Menswear, Womenswear) |
| Department Email | Contact email for the department |
| Appointment Status | Enable/disable appointment booking for this department |
| Sort Order | Display order on the frontend |
| Status | Active or inactive |
Manage Employees
Path: MHinspeya → Personal Shopping → Manage Employees
Add and configure employee/stylist profiles. Each employee has:
| Field | Description |
|---|---|
| Employee Name | Full name of the stylist/employee |
| Department | Assigned department |
| Employee email for appointment notifications | |
| Content/Bio | Description or biography text |
| Profile Image | Profile photo (uploaded via built-in image uploader) |
| Sort Order | Display order on the frontend |
| Status | Active or inactive |
| Appointment Schedule | JSON-configured weekly schedule with the following options: |
Schedule Configuration Fields:
| Field | Description |
|---|---|
| Date Range Start | First available date for bookings |
| Date Range End | Last available date for bookings |
| Duration | Appointment duration in minutes (e.g. 15, 30, 45, 60) |
| Available Days | Days of the week the employee is available |
| Time Start | Daily availability start time |
| Time End | Daily availability end time |
| Break Start | Break period start time (slots blocked) |
| Break End | Break period end time |
Manage Appointments
Path: MHinspeya → Personal Shopping → Manage Appointments
View and manage all customer booking submissions:
| Field | Description |
|---|---|
| Salutation | Customer salutation (Mr/Mrs) |
| First Name / Last Name | Customer name |
| Birth Date | Customer date of birth |
| Telephone | Customer phone number |
| Customer email address | |
| Customer Card Number | Optional loyalty/membership card number |
| Department | Selected department |
| Employee | Selected employee/stylist |
| Appointment Date | Booked date |
| Appointment Time | Booked time slot |
| Description | Customer's notes/requirements |
| Confirm / Disapprove | Admin actions to approve or reject the appointment |
Frontend Booking Flow
- Customer visits the personal shopping page (
/appointmentshopping/index/...) - Active departments and employees are displayed
- Customer selects a department → available employees are shown
- Customer selects an employee → the interactive calendar loads (AJAX call to
/appointmentshopping/index/appointmentcalender) - Available dates and time slots are computed from the employee's schedule configuration
- Customer fills in the booking form (name, email, phone, date of birth, preferred slot, optional message)
- Form is submitted via AJAX to
/appointmentshopping/index/appointmentbooking - System validates for duplicate bookings, saves the appointment, and sends confirmation emails to both the customer and the employee
- Success/error message is displayed to the customer
How to Embed the Booking Form
You can display the booking form on any CMS page, block, layout XML file, or PHTML template using the following methods:
1. In a CMS Page or Block (CMS Content)
Insert the template block markup inside your CMS page content or block editor:
{{block class="Magento\Framework\View\Element\Template" template="MHinspeya_AppointmentShopping::appointment.phtml"}}
2. In Layout XML
Add the block definition to your layout XML file (e.g., cms_page_view.xml):
<block class="Magento\Framework\View\Element\Template" name="appointment.shopping.form" template="MHinspeya_AppointmentShopping::appointment.phtml" />
3. In a PHTML Template (PHP code)
Call the layout class dynamically inside another PHTML template:
<?= $block->getLayout()->createBlock(\Magento\Framework\View\Element\Template::class)
->setTemplate('MHinspeya_AppointmentShopping::appointment.phtml')
->toHtml() ?>
ACL Permissions
The module provides granular ACL resources under MHinspeya_AppointmentShopping:
| Resource ID | Description |
|---|---|
MHinspeya_AppointmentShopping::main | Personal Shopping (top level) |
MHinspeya_AppointmentShopping::main_view | Access Personal Shopping |
MHinspeya_AppointmentShopping::EmployeeAppointment_view | View Employee Appointments |
MHinspeya_AppointmentShopping::EmployeeDepartment_view | View Employee Departments |
MHinspeya_AppointmentShopping::EmployeeAppointmentForm_view | View Appointment Forms |
MHinspeya_AppointmentShopping::appointmentConfig | Personal Shopping Configuration |
REST API endpoints are protected by corresponding CRUD ACL resources (_save, _update, _delete, _view).
Hyvä Theme Compatibility
This module is fully compatible with the Hyvä theme. It includes:
- A Hyvä config observer (
RegisterModuleForHyvaConfig) that auto-registers the module's frontend path with the Hyvä configuration system - Tailwind CSS integration via the
view/frontend/tailwind/directory - Alpine.js-ready
.phtmltemplates inview/frontend/templates/ - No RequireJS or Knockout.js dependencies on the frontend
Translations
The module ships with a German (de_DE) translation file located at:
i18n/de_DE.csv
To add additional translations, create a new CSV file in the i18n/ directory following the Magento convention (e.g. en_US.csv, fr_FR.csv).
Uninstallation
Composer Installation
bin/magento module:disable MHinspeya_AppointmentShopping
composer remove mhinspeya/mhinspeya-hyva-personal-shopping
bin/magento setup:upgrade
bin/magento cache:flush
Manual Installation
bin/magento module:disable MHinspeya_AppointmentShopping
rm -rf app/code/MHinspeya/AppointmentShopping
bin/magento setup:upgrade
bin/magento cache:flush
Note: Uninstalling the module does not automatically drop the database tables. To remove them manually, drop
mhinspeya_appointmentshopping_employeeappointment,mhinspeya_appointmentshopping_employeedepartment, andmhinspeya_appointmentshopping_employeeappointmentform.
Support
- Website: https://inspeya.com
- Author: MHinspeya — Magento 2 Extension Provider
For issues or feature requests, please contact us through our website.
mhinspeya/mhinspeya-hyva-personal-shopping 适用场景与选型建议
mhinspeya/mhinspeya-hyva-personal-shopping 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 10 次下载、GitHub Stars 达 0, 最近一次更新时间为 2026 年 06 月 09 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「magento」 「magento 2」 「MHinspeya」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 mhinspeya/mhinspeya-hyva-personal-shopping 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 mhinspeya/mhinspeya-hyva-personal-shopping 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 mhinspeya/mhinspeya-hyva-personal-shopping 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Magento 2 Social Login extension is designed for quick login to your Magento 2 store without procesing complex register steps
Magento - Clean up session extension
Magento - Force store code extension
Magento 2 module to optimize Compiled ObjectManager
Automatic Currency Switcher Extension for Magento 2
MHinspeya AppOutfit
统计信息
- 总下载量: 10
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 30
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: OSL-3.0
- 更新时间: 2026-06-09