Jump to content

Perte de données order_states


Recommended Posts

Bonjour,

je me débats depuis un mois avec la création du site de commerce.
Après avoir du changer le nom du répertoire indiqué lors de l'installation, j'ai ajouté le module checkout.

Le premier paiement test a provoqué un code erreur 500 et retour au panier avec l'impression que la transaction n'avait pas abouti. Repaiement, re page d'erreur 500, sans que le panier ne soit validé et là ... c'est le drame... je reçois 2 mail de confirmation de paypal comme quoi les paiements avaient bien été reçus ... mais rien dans prestashop !!!

après plusieurs relance du support paypal qui me dit d'aller voir du côté du support checkout, et plusieurs échanges avec checkout, checkout m'indique, qu'il me manque les 3/4 des codes de status d'achat et que seuls ce de checkout apparaissent. mais pas de solutions de résolution!

A la réflexion je pense que cela provient de la désinstallation du module checkout. mais aucun log n'est disponible pour en avoir le coeur net ...

Donc, comment faire pour repopuler la table order_state sachant que la table order_state_lang contient bien les plus de 30 id_order_state * 6 langues activées sur le site?

dans le zip d'installation j'ai bien trouvé un fichier xml décrivant une 15ne de status, les autres provenants sans doute de chronopost et autres transporteurs.

 

Je voudrais éviter d'avoir à réinstaller pour ne pas avoir à recréer toutes les catégories et produits!

A mois qu'il n'y ait un moyen d'exporter tout cela avec une méthode de réimport...

Une idée?

 

Merci

Link to comment
Share on other sites

Ce n’est pas possible que ce module ai supprimé vos statuts de commandes https://github.com/PrestaShopCorp/ps_checkout/blob/7dbf9729f65f8c3197ec0131244da86b1b8e1ad8/ps_checkout.php#L224

Il ne supprime pas lors de la désinstallation comme on peut le voir dans le code.

Le plus simple je pense, est d’installer un PrestaShop vierge quelque part, d’exporter le contenu des tables ps_order_state et ps_order_state_lang pour en-suite importer sur la base de données de votre boutique.

Link to comment
Share on other sites

Merci de ta réponse Janett.

Est ce que le fonctionnement de prestashop s'appuie sur les id_order_state ou sur les libellés du champs name de order_state_lang pour faire matcher les codes retours?

autrement dit, est ce que les id sont fixes, ou bien est ce un champ incrémental dépendant de l'ordre dans lequel on importe les données?

Link to comment
Share on other sites

Oui, il y a une correspondance entre les id_order_state et des clés de configuration stockées dans ps_configuration

define('_PS_OS_CHEQUE_', Configuration::get('PS_OS_CHEQUE'));

define('_PS_OS_PAYMENT_', Configuration::get('PS_OS_PAYMENT'));

define('_PS_OS_PREPARATION_', Configuration::get('PS_OS_PREPARATION'));

define('_PS_OS_SHIPPING_', Configuration::get('PS_OS_SHIPPING'));

define('_PS_OS_DELIVERED_', Configuration::get('PS_OS_DELIVERED'));

define('_PS_OS_CANCELED_', Configuration::get('PS_OS_CANCELED'));

define('_PS_OS_REFUND_', Configuration::get('PS_OS_REFUND'));

define('_PS_OS_ERROR_', Configuration::get('PS_OS_ERROR'));

define('_PS_OS_OUTOFSTOCK_', Configuration::get('PS_OS_OUTOFSTOCK'));

define('_PS_OS_OUTOFSTOCK_PAID_', Configuration::get('PS_OS_OUTOFSTOCK_PAID'));

define('_PS_OS_OUTOFSTOCK_UNPAID_', Configuration::get('PS_OS_OUTOFSTOCK_UNPAID'));

define('_PS_OS_BANKWIRE_', Configuration::get('PS_OS_BANKWIRE'));

define('_PS_OS_PAYPAL_', Configuration::get('PS_OS_PAYPAL'));

define('_PS_OS_WS_PAYMENT_', Configuration::get('PS_OS_WS_PAYMENT'));

define('_PS_OS_COD_VALIDATION_', Configuration::get('PS_OS_COD_VALIDATION'));

Et pour le module PrestaShop Checkout

    const ORDER_STATES = [
        'PS_CHECKOUT_STATE_WAITING_PAYPAL_PAYMENT' => self::DARK_BLUE_HEXA_COLOR,
        'PS_CHECKOUT_STATE_WAITING_CREDIT_CARD_PAYMENT' => self::DARK_BLUE_HEXA_COLOR,
        'PS_CHECKOUT_STATE_WAITING_LOCAL_PAYMENT' => self::DARK_BLUE_HEXA_COLOR,
        'PS_CHECKOUT_STATE_AUTHORIZED' => self::BLUE_HEXA_COLOR,
        'PS_CHECKOUT_STATE_PARTIAL_REFUND' => self::GREEN_HEXA_COLOR,
        'PS_CHECKOUT_STATE_WAITING_CAPTURE' => self::BLUE_HEXA_COLOR,
    ];

 

  • Like 1
Link to comment
Share on other sites

J'avais fait un essai d'installation sur un san perso avant de me lancer. je n'avais pas encore supprimer l'instance, qui est dans une version certes un peu ancienne puisqu'en 1.7.2.5.

La table order_state ne comporte que 6 états de commandes ...

J'allais désinstaller la 1.7.5.1 de la boutique en ligne pour tout réinstaller, du coup, je suis dubitatif quant au nombre d'état qui apparaitront et à la potentielle résolution de mon problème avec checkout ...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...