Files
bio-concept-pharma/web/modules/colissimosuivi/upgrade/upgrade-1.4.0.php
2019-11-17 19:14:07 +01:00

129 lines
9.0 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
/**
* NOTICE OF LICENSE
*
* module source file is subject to a commercial license.
* Use, copy, modification or distribution of module source file without written
* license agreement is strictly forbidden.
* In order to obtain a license, please contact us: simon@daig.re
* ...........................................................................
* INFORMATION SUR LA LICENCE D'UTILISATION
*
* L'utilisation de ce fichier source est soumise a une licence commerciale.
* Toute utilisation, reproduction, modification ou distribution du present
* fichier source sans contrat de licence ecrit est expressement interdite.
* Pour obtenir une licence, veuillez nous contacter a l'adresse: simon@daig.re
*
* @package Colissimo Suivi
* @author Agencya
* @copyright Copyright(c) 2015-2018
* @license See Readme.md
* Contact by Email : simon@daig.re
*/
if (!defined('_PS_VERSION_')) {
exit;
}
/**
* @param Module $module
* @return bool
*/
function upgrade_module_1_4_0($module)
{
/** @var array */
$laposte_libelles = array(
'COMCFM' => 'Votre colis est pris en charge par La Poste. Il est en cours d\'acheminement.',
'PCHMQT' => 'Votre colis est prêt à être expédié. Il n\'est pas encore pris en charge par La Poste.',
'PCHCFM' => 'Votre colis a été déposé au bureau de poste d\'expédition.',
'AARDVY' => 'Votre colis est arrivé par erreur sur un site. Il est en cours de réacheminement vers son site de distribution.',
'AARCFM' => 'Votre colis est arrivé sur son site de distribution.',
'LIVCFM' => 'Votre colis est livré.',
'LIVGAR' => 'Votre colis a été remis au gardien.',
'LIVREO' => 'Le colis est livré à l\'expéditeur suite à un retour.',
'RENNRV' => 'Le destinataire était absent lors de la livraison. Votre colis sera présenté une nouvelle fois le prochain jour ouvré.',
'RENAIN' => 'Votre colis na pas pu être distribué par manque dinformation. Merci de prendre contact avec notre Service Client via le formulaire disponible sur Internet, afin de fournir les compléments nécessaires.',
'RENAVA' => 'Le colis est retourné à lexpéditeur suite à un refus du destinataire.',
'RENAVI' => 'Votre colis est disponible dans votre bureau de poste. Le destinataire dispose de 10 jours ouvrés pour retirer son colis sur présentation de son bon de retrait et dune pièce didentité.',
'RENCAD' => 'L\'adresse de votre colis est incomplète. Nous recherchons la partie non renseignée pour le livrer.',
'RENDIA' => 'Le destinataire du colis nhabite pas à ladresse indiquée. Le colis est retourné à lexpéditeur.',
'RENDIV' => 'Le colis est retourné à lexpéditeur suite à un refus du destinataire.',
'RENLNA' => 'Le colis est réexpédié à la demande du destinataire vers l\'adresse de son choix.',
'RENSNC' => 'Le colis est retourné à lexpéditeur suite à un refus du destinataire.',
'RENSRB' => 'Le colis est retourné à l\'expéditeur. Le destinataire a refusé de payer le contre-remboursement.',
'RENTAR' => 'Le colis est retourné à l\expéditeur suite à un refus du destinataire.',
'RSTBRT' => 'Votre colis est disponible au bureau de poste. Le destinataire, une fois l\'avis d\'instance reçu, dispose de 10 jours ouvrés pour retirer le colis sur présentation d\une pièce d\identité.',
'RENACP' => 'La livraison de votre colis a été reportée pour absence du destinataire ou cas de force majeure.',
'RSTNCG' => 'Votre colis est en attente de distribution et sera livré prochainement. Le colis est retourné à lexpéditeur.',
'SOLREO' => 'Le colis na pu être livré, il est retourné à lexpéditeur.',
'CITCFM' => 'Votre colis est disponible dans l\'espace Cityssimo pendant 5 jours.',
'CITDOC' => 'La livraison de votre colis dans un espace Cityssimo est impossible. Le destinataire n\'est pas abonné à ce service.',
'CITLPT' => 'La livraison de votre colis dans un espace Cityssimo est impossible. Il est réexpédié au domicile du destinataire.',
'CITNCG' => 'Votre colis n\'est pas compatible avec une livraison dans un espace Cityssimo. Il est réexpédié au domicile du destinataire.',
'CITPAM' => 'Il n\'y a plus de casier disponible dans l\'espace Cityssimo. Le colis est réexpédié au domicile du destinataire.',
'CITSPO' => 'Votre colis est défectueux et ne peut être livré dans un espace Cityssimo. Il est réexpédié au domicile du destinataire.',
'CHGCFM' => 'Votre colis est arrivé en France.',
'DCHCFM' => 'Votre colis est arrivé dans le pays de destination.',
'DCHDDT' => 'Votre colis est sorti du bureau d\'échange. Il est en cours d\'acheminement dans le pays de destination.',
'DOUAGV' => 'Formulaire douanier manquant (DAU), votre colis est retenu en douane. Etude du dossier par la douane.',
'DOUCOI' => 'Certificat d\'origine incorrect, votre colis est retenu en douane. Etude du dossier par la douane.',
'DOUCOM' => 'Certificat d\'origine manquant, votre colis est retenu en douane. Etude du dossier par la douane.',
'DOUCRR' => 'Certificat d\'origine manquant, votre colis est retenu en douane. Etude du dossier par la douane.',
'DOUDDI' => 'Formulaire de déclaration douanière CN23 incorrect, votre colis est retenu en douane. Etude du dossier par la douane.',
'DOUDDM' => 'Formulaire de déclaration douanière CN23 manquant, votre colis est retenu en douane. Etude du dossier par la douane.',
'DOUDOU' => 'Votre colis est retenu en douane pour dédouanement.',
'DOUDVR' => 'Données de virements demandées par la douane, votre colis est retenu en douane.',
'DOUEXI' => 'Vos colis sont retenus en douane. Le nombre de colis ne correspond pas à la déclaration. Etude du dossier par la douane.',
'DOUFCI' => 'Facture incorrecte, votre colis est retenu en douane. Etude du dossier par la douane.',
'DOUFCM' => 'Facture manquante, votre colis est retenu en douane. Etude du dossier par la douane.',
'DOUIDD' => 'Identification du contenu de votre colis en cours, il est retenu en douane.',
'DOUIIR' => 'Informations de dédouanement requises, votre colis est retenu en douane. Etude du dossier par la douane.',
'DOUNIR' => 'En attente du numéro de TVA ou du numéro d\'import, votre colis estretenu en douane. Etude du dossier par la douane.',
'DOUPRO' => 'Le contenu de votre colis est prohibé dans le pays de destination, il est retenu en douane. Etude du dossier par la douane.',
'DOURES' => 'Licence d\'importation requise, votre colis est retenu en douane. Etude du dossier par la douane.',
'EXPCFM' => 'Votre colis s\'apprête à sortir du pays d\'origine.',
'PCHCEX' => 'Votre colis est pris en charge par La Poste. Il est en cours d\'acheminement.',
'SOLREI' => 'Le colis est retourné à l\'expéditeur.',
'LIVVOI' => 'Votre colis a été livré au voisin indiqué sur l\'avis déposé dans la boite aux lettres du destinataire.',
'LIVRTI' => 'Votre colis a été livré au gardien ou à un voisin.',
'MLVARS' => 'Votre colis est disponible dans le point de retrait sélectionné. La date limite de retrait du colis a été précisée au destinataire.',
'DEPGUI' => 'Votre colis a été déposé dans un point postal.',
'RSTFHB' => 'Votre colis ne peut être livré ce jour, l\'accès à l\'adresse de livraison étant impossible. Il sera remis en livraison au plus tôt.',
);
/** @var array */
$laposte_erreurs = array(
'101' => 'Numéro de colis invalide.',
'103' => 'Numéro de colis datant de plus de 30 jours.',
'104' => 'Numéro de colis hors plage client.',
'105' => 'Numéro de colis inconnu.',
'201' => 'Identifiant / mot de passe invalide.',
'202' => 'Service non autorisé pour cet identifiant.',
'1000' => 'Erreur système (erreur technique).',
);
Db::getInstance()->execute('ALTER TABLE `'._DB_PREFIX_.'colissimo_suivi` ADD COLUMN `event_libelle` VARCHAR(256) NULL');
Db::getInstance()->execute('ALTER TABLE `'._DB_PREFIX_.'colissimo_suivi` CHANGE COLUMN `num_suivi` `tracking` VARCHAR(13) NOT NULL');
$trackings = Db::getInstance()->executeS('SELECT id_colissimo_suivi FROM '._DB_PREFIX_.'colissimo_suivi');
foreach ($trackings as $trackingId) {
$tracking = new ColissimoSuiviModel((int)$trackingId['id_colissimo_suivi']);
if ($tracking->error_code == 0) {
if (array_key_exists($tracking->event_code, $laposte_libelles)) {
$tracking->event_libelle = $laposte_libelles[$tracking->event_code];
}
} else {
$tracking->event_libelle = $laposte_erreurs[$tracking->error_code];
}
if (!Validate::isDate($tracking->event_date)) {
$tracking->event_date = date('Y-m-d');
}
$tracking->update();
}
return true;
}