ERP Provider
Das ERP Modul bietet jedem Modul die Möglichkeit sich in die zentrale Stellen einzuklinken. Damit die Grundlage funktioniert muss dein Modul ein ERPProvider zur Verfügung stellen.
ERP Provider anlegen
Als erstes erweitere deine package.xml um einen <provider>
Eintrag.
<quiqqer>
<package>
<!-- package daten -->
<provider>
<erp src="\QUI\ERP\Accounting\Invoice\ErpProvider"/>
</provider>
</package>
</quiqqer>
Danach musst du nur noch deine ERPKlasse deklarieren. Deine ERPKlasse muss von QUI\ERP\Api\AbstractErpProvider
erben.
<?php
/**
* This file contains QUI\ERP\Accounting\Invoice\ErpProvider
*/
namespace QUI\ERP\Accounting\Invoice;
use QUI\ERP\Api\AbstractErpProvider;
/**
* Class ErpProvider
*/
class ErpProvider extends AbstractErpProvider
{
}
Shop Panel erweitern
Wenn das ERP Modul installiert ist, erweitert dieses die Administration um ein Shop-Panel. In diesem Panel haben die Benutzer die Möglichkeit schnell auf die wichtigen Funktionen der ERP Module zuzugreifen. Dieses Panel kann von jedem Modul erweitert werden.
Die Erweiterung geht über den ERPProvider deines Modules. Hierzu musst du dein ERPProvider um eine Methode getMenuItems erweitern welche ein einfaches array mit den Menueinträgen zurück gibt.
<?php
/**
* Class ErpProvider
*
* @package QUI\ERP\Accounting\Invoice
*/
class ErpProvider extends AbstractErpProvider
{
/**
* @return array
*/
public static function getMenuItems()
{
$menu = array();
$menu[] = array(
'icon' => 'fa fa-money',
'text' => array('quiqqer/invoice', 'erp.panel.invoice.text'),
'panel' => 'package/quiqqer/invoice/bin/backend/controls/panels/Journal'
);
$menu[] = array(
'icon' => 'fa fa-money',
'text' => array('quiqqer/invoice', 'erp.panel.invoice.create.text'),
'panel' => 'package/quiqqer/invoice/bin/backend/controls/panels/TemporaryInvoices'
);
return $menu;
}
}
Jede Menüeintrag muss folgende Eigenschaften besitzen:
- icon - FontAwesome Eintrag
- text - Sprachvariable für den Text des Menüeintrags
- panel - PanelTyp welcher geöffnet werden soll