Report Plugin for Sylius. This plugin add a report interface to the Sylius administration. Some reports comes with this bundle but you can create your custom reports.
Switch branches/tags
Nothing to show
Clone or download

README.md

Odiseo
Odiseo Sylius Report Plugin

Description

This plugin add data reports to the Sylius administration interface. It is highly inspired on the past SyliusReportBundle bundle and Report component using its good architecture.

Architecture

Basically you have a DataFetcherInterface and RendererInterface interfaces. The first one defines how to fetch the Data according on a configuration provided. And the second one uses the Data returned by the fetcher and returns a rendered view.

Some DataFetchers and Renderers come with this plugin but you can create your own by implementing their interfaces.

Reports admin

Demo

You can see this plugin in action in our Sylius Demo application.

Installation

  1. Run composer require odiseoteam/sylius-report-plugin.

  2. Add the plugin to the AppKernel but add it before SyliusResourceBundle. To do that you need change the registerBundles like this:

public function registerBundles(): array
{
    $preResourceBundles = [
        new \Odiseo\SyliusReportPlugin\OdiseoSyliusReportPlugin(),
    ];

    $bundles = [
        ...
    ];

    return array_merge($preResourceBundles, parent::registerBundles(), $bundles);
}
  1. Import the configurations on your config.yml:
    - { resource: "@OdiseoSyliusReportPlugin/Resources/config/config.yml" }
  1. Add the admin routes:
odiseo_sylius_report_plugin_admin:
    resource: "@OdiseoSyliusReportPlugin/Resources/config/routing/admin.yml"
    prefix: /admin
  1. Finish the installation updatating the database schema and installing assets:
php bin/console doctrine:schema:update --force
php bin/console assets:install
php bin/console sylius:theme:assets:install

Test the plugin

You can follow the instructions to test this plugins in the proper documentation page: Test the plugin.

Credits

This plugin is maintained by Odiseo. Want us to help you with this plugin or any Sylius project? Contact us on team@odiseo.com.ar.