THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Bonjour,

Nous aimerions ajouter des stats dans le block "STATISTIQUES DE VENTE". On voudrait afficher les montants de la TVA à 5.5% et 20% entres autres
Apparement le ligne de code qui récupère les valeurs sont de type

{$salesNoShipping = {stats key="sales" startDate="today" endDate="today" includeShipping="false"}}

stats semble appeler la fonction statsAccess de thelia\local\modules\TheliaSmarty\Template\Plugins\DataAccessFunctions.php.

Je me dit qu'il faudrait mettre une copie de "...../DataAccessFunctions.php" dans Thelia\templates\backOffice\montemplateperso\Plugins\DataAccessFunctions.php.

Dans la fonction statsAccess, il y a :

        switch ($params['key']) {
            case 'sales':
                return OrderQuery::getSaleStats($startDate, $endDate, $includeShipping);
                break;
            case 'orders':
                return OrderQuery::getOrderStats($startDate, $endDate, array(1,2,3,4));
                break;
        }

Je pense que c'est là que ça se joue. mais je vais devoir utiliser mes propres méthodes. Pour cela, je pense créer un modules avec une class qui étendrais la class OrderQuery et y ajouter mes méthodes de caculs et ajouter des cas dans le switch. Puis appelé tout ça dans le template smarty.

Suis-je clair ?

Qu'en pensez-vous ?

Est ce que cela vous parait être la bonne méthode ?

Merci d'avance de vos réponses !

Offline


J'ai eu la même problématique que toi, et je l'ai résolu quasiment comme tu le suggères :

1) Implémenter une classe qui extends OrderQuery, et qui assure le calcul des stats
2) Ecrire un plugin Smarty similaire à DataAccessFunctions qui permet d'invoquer les méthodes de calcul écrites en 1)

Donc pour moi, mis à part la recopie de DataAccessFunctions, tu emplois la bonne méthode.


OpenStudio Toulouse