ms3Pulse

Дашборд продаж и аналитика для MiniShop3: метрики, графики, экспорт
Автор дополнения
Ivan Bochkarev
Пакетов
7
Закачек
12
Обычно отвечает в течение 2 часов
Автор дополнения
Пакетов
7
Закачек
12
Обычно отвечает в течение 2 часов
Версия 1.0.3-pl
Дата выпуска 11.02.2026
Загрузки 1
Просмотры 63
Внимание, этот компонент требует PHP 8.1 или выше!
Внимание, этот компонент требует MODX 3 или выше.

Единая точка аналитики в менеджере MODX: метрики, графики, конструкторы графиков и таблиц и экспорт — без программирования.













Ключевые особенности


  • 5 метрик на дашборде: выручка, заказы, средний чек, товаров — сравнение с предыдущим периодом в %.
  • 15 типов графиков (ECharts 6): линия, ступенчатая линия, область, область с накоплением, столбцы, горизонтальные столбцы, столбцы с накоплением, точечный, круговая, роза (Nightingale), кольцевая, воронка, радар, спидометр, дерево.
  • 5 источников данных: заказы по дням, средний чек по дням, топ товаров, заказы по статусам.
  • Конструктор графиков: создание кастомных графиков без кода; 15 типов × 5 источников; сетка превью с демо-данными; размер 25–100%; перетаскивание; сохранение в localStorage.
  • Конструктор таблиц (Топы/Флопы): 6 типов таблиц (топ/флоп товаров, заказы по статусам/доставке/оплате, выручка по дням); настройка лимита строк, ширины, сортировка.
  • Фильтры: период (DatePicker), пресеты 7/30/90/180/365 дней, статусы заказов, группировка (день/неделя/месяц); панель свёрнута по умолчанию.
  • Экспорт: CSV таблиц и данных графиков; PNG изображений графиков.
  • Отчёты по расписанию: CSV на email через Scheduler.
  • Демо-данные: при отсутствии заказов — ознакомление с интерфейсом.
  • Тёмная тема: переключение без перезагрузки страницы.
  • Локализация: RU/EN/UA.

Дашборд


  • Вкладки: Обзор (метрики + сводные графики), Динамика (выручка/заказы/средний чек по дням), Товары и статусы, Топы/Флопы.
  • Тур по интерфейсу (driver.js) для быстрого знакомства.

Стек


Backend: PHP 8.1+, MODX 3, MiniShop3.
Frontend: Vue 3, Pinia, PrimeVue 4 (Aura), ECharts 6 (npm), driver.js, Vite 6.

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[1.0.3] - 2026-02-11

Added

  • Active tab (Overview/Dynamics/Products/Top-flops) is saved to localStorage and restored when reopening the dashboard page (e.g. after switching to another menu item)
  • Date filters: min date for "From" = earliest order date in DB (GetData returns order_date_min/order_date_max); max date for "To" = today (no future dates)
  • Chart type "Rose" (Nightingale / pie with roseType: 'area') in builder; supported for all data sources (by day, top products, orders by status)
  • Full scatter chart support for all sources in builder (revenue/orders/avg_check by day, top products, orders by status)
  • Instruction docs/restore-folders-from-symlinks.md for replacing symlinks with real directories in Extras repo

Changed

  • Top products chart on Products tab: single bar color instead of colorBy: 'data' (multicolored segments); barMaxWidth; clearer tooltip with shadow axisPointer
  • Toast notifications for "Chart removed" and "Table removed" now use severity success (green) instead of info (blue)
  • When user changes dates or statuses manually, period preset (7/30/90 days etc.) is cleared so clicking the same preset again correctly applies the period
  • GetData/GetChartsData: status_ids parsed from both string and array; getOrdersByStatus returns requested statuses with count 0 when no orders (filter list no longer disappears)
  • Resolver resolver_03_symlinks: does not replace real Extras directories with symlinks on install (preserves repo; symlinks only when path is missing)
  • .gitignore: MiniShop3-style (dependencies, build artifacts, vue-dist, *.md with exceptions, IDE, logs, env, PHPStan)

Fixed

  • Global box-sizing (border-box) from PrimeVue broke MODX manager layout — override with content-box !important globally; border-box only inside #ms3pulse-dashboard-app.vueApp
  • Avg check chart (and other Dynamics fixed charts) did not redraw with new data after applying filters — option builders now read store data at render time via getData()
  • Chart width/size and drag order not persisting after refresh — setChartSize, moveChart, and removeCustomChart now persist chart_layout to localStorage
  • Overview tab: selecting a single status in "All statuses" no longer showed empty data due to status list/parsing; statuses with zero orders in period now returned so filter stays consistent
  • Period preset (e.g. 90 days) not applying after custom date selection — preset value is reset on manual date change so clicking preset again works without page reload

[1.0.2] - 2026-02-10

Added

  • Pagination in Top/Flops tables: rows per page (5/10/50/100), Paginator under each table; rank column reflects position across pages
  • Builder: "Data limit" field (5/10/20/50/100) when adding a chart — limits displayed points (last N for time series, first N for top/statuses)
  • Optional package encryption for modstore.pro: EncryptedVehicle, resolve.encryption.php; set encrypt => true in _build/config.inc.php
  • Tooltip on "To builder" button describing the constructor

Changed

  • ECharts is now bundled with the dashboard (npm); the system setting for ECharts CDN URL has been removed
  • Button labels: "Go to constructor" → "To builder", "Go to dashboard" → "To dashboard"
  • Constructor header: description uses section lexicon; intro font size and panel padding increased
  • Skeleton placeholders on Dynamics and Products tabs match chart count and grid sizes (same size classes as cards)
  • Chart type respected for all sources: funnel, pie, donut, treemap now build correctly for revenue/orders/avg_check by day (previously fell back to line)

Fixed

  • Export chart to PNG on Products tab: correct DOM id for custom charts (ms3pulse-{id} instead of ms3pulse-chart-{id})
  • Custom chart type (e.g. Funnel) was ignored when source was "by day" — funnel/pie/treemap now render for time-series sources

Removed

  • "Export data (CSV)" option from chart context menu (only "Export image (PNG)" remains)

[1.0.1] - 2026-02-07

Added

  • Scheduled report by email: CSV attachment via SendScheduledReport (MODX mail or mail() fallback)
  • "Go to builder" button on Dynamics and Products & statuses tabs

Changed

  • Filter, Add table, and Add chart panels are collapsed by default (toggle to expand)
  • Filter panel: period presets as button group (7/30/90/180/365 days)
  • SendScheduledReport only runs when scheduled export is enabled in settings

Removed

  • System settings: connector URL, webhook URL, export CSV toggle; "Send to BI" button

[1.0.0] - 2026-01-31

Added

  • Dashboard: metrics (revenue, orders, avg check, items, margin), comparison with previous period
  • Filters: period (date picker), order statuses, group by (day/week/month), presets 7/30/90/180/365 days
  • Tabs: Overview, Dynamics, Products & statuses, Top/Flops, Builder
  • ECharts charts: revenue/orders/avg check by day, top products, orders by status; custom chart builder (type, source, size, localStorage); drag to reorder; sizes 100/75/50/25%
  • Export: CSV (Top/Flops and chart data), scheduled report via Scheduler
  • Permissions: ms3pulse_view; Settings menu (namespace ms3pulse)
  • Mock data when no orders; "Demo data" badge; tour (driver.js)

Fixed

  • Custom chart title in builder; chart size reactivity; Settings menu URL

Последние обсуждения в сообществе MODX.pro