Fork me on GitHub






Hack Oledrion pour un meilleur suivi des commandes
Aspirant
Inscrit: 04/02/2003 13:31
Messages: 81
Bonjour,

nous avons réalisé une petite modification dans Oledrion afin de mieux suivre les commandes payées par chèque (c'est à dire non réglées en ligne).
En effet, d'une part, le module ne gardait pas de trace en base de données de l'information sur les paiements. D'autre part, il n'y avait pas la trace de la date de validation de la commande.

Les modifs suivantes ont donc été réalisées (sur une version 2.31 d'Oledrion)

Ajout de deux champs dans les tables d'Oledrion

- un pour garder en mémoire le type de paiement utilisé (en ligne ou par chèque). En effet, cette information recueillie lors de la commande
n'est pas enregistré alors qu'il pourrait être utile de l'avoir pour les statistiques pour la suite ou pour savoir si une commande en attente été payée par chèque
- un pour stocker la date de validation de la commande. Toujours dans le cas où le payement n’est pas effectué directement en ligne.

Ces deux nouvelles informations sont visibles lorsque l'on liste les commandes dans la partie administration du module.


1 - Ajout des champs dans la requête de construction

Dans sql\mysql.sql, ajout de deux champs dans la table oledrion_commands

ligne 137
'cmd_date_validation' date NOT NULL,
'cmd_paiement_mode' tinyint(1) unsigned NOT NULL,

2 - Ajout des champs dans la classe commande

Dans class\oledrion_commands.php
Lignes 66-67
$this->initVar('cmd_date_validation',XOBJ_DTYPE_TXTBOX,null,false);
$this->initVar('cmd_paiement_mode',XOBJ_DTYPE_INT,null,false);

On renseigne le champs cmd_date_validation lors de la validation

Ligne 248
function validateOrder(oledrion_commands $order, $comment = '')
{
$retval = false;
$order->setVar('cmd_state', OLEDRION_STATE_VALIDATED);
$order->setVar('cmd_comment', $comment);



$order->setVar('cmd_date_validation', date("Y-m-d"));

$retval = $this->insert($order, true);
if($retval) {
$this->updateStocks($order);
$this->notifyOrderValidated($order, $comment);
}
return $retval;
}


3 - Sauvegarde des informations de ces deux champs

checkout.php - ligne 163
if (intval($_POST['offline_payment']) == 0) {
$commande->setVar('cmd_paiement_mode', '1');}



4 - Modification de l'administration

Dans admin\actions\orders.php
On rappatrie les deux champs supplémentaires de la base de données pour pouvoir les afficher
Ligne 90
$date_validation = formatTimestamp(strtotime($item->getVar('cmd_date_validation')), 's');
if ($date_validation=='01/01/1970'){$date_validation="-";}
$paiement_mode = $item->getVar('cmd_paiement_mode');
if ($paiement_mode == 0){$paiement_mode="En ligne";} else {$paiement_mode="Chèque";}



On modifie l'affichage du tableau

Ligne 82 - les entêtes
echo "<tr><th align='center'>"._AM_OLEDRION_ID."</th><th align='center'>"._AM_OLEDRION_DATE."</th><th
align='center'>"._AM_OLEDRION_DATE_VALIDATION."</th><th align='center'>"._AM_OLEDRION_PAIEMENT_MODE."</th><th
align='center'>"._AM_OLEDRION_CLIENT."</th><th align='center'>"._AM_OLEDRION_TOTAL_SHIPP."</th><th
align='center'>"._AM_OLEDRION_ACTION."</th></tr>";

Ligne 96 - les données

echo "<td align='right'>".$id."</td><td align='center'>".$date."</td><td align='center'>".$date_validation."</td><td
align='center'>".$paiement_mode."</td><td align='center'>".$item->getVar('cmd_lastname').' '.$item->getVar('cmd_firstname')."</td><td
align='center'>".$oledrion_Currency->amountForDisplay($item->getVar('cmd_total', 'n')).' /
'.$oledrion_Currency->amountForDisplay($item->getVar('cmd_shipping'))."</td><td align='center'>".implode(' ', $actions)."</td>\n";


5 - On met à jour le fichier langage admin.php

define('_AM_OLEDRION_PAIEMENT_MODE', "Paiement");
define('_AM_OLEDRION_DATE_VALIDATION', "Date validation");

Posté le : 21/05/2010 14:19

Planet'Anim, le portail de l'animation
http://www.planetanim.com
Partager Twitter Partagez cette article sur GG+
Re: Hack Oledrion pour un meilleur suivi des commandes
Supporter Xoops
Inscrit: 17/12/2005 01:41
De Alpes Maritimes
Messages: 1682
Merci pour le partage je suis sur que ce hack va faire des heureux

Posté le : 21/05/2010 18:09
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

40 Personne(s) en ligne (32 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 40 | Plus ...