Choisir La nouvelle vente

Les produits doivent déjà se trouver dans la nouvelle catégorie (vente).

'; } elseif($step == 2) { $html .= '

Les produits de la catégorie

'; if(Tools::getValue('id_category')) { $id_category = Tools::getValue('id_category'); $id_sale = Tools::getValue('id_sale'); // Getting 3 level of category $categories = Category::getChildren($id_category, 2); $id_categories = array((int)$id_category); foreach ($categories as $category) { $id_categories[] = (int)$category['id_category']; if($subcats = Category::getChildren((int)$category['id_category'], 2)) { foreach ($subcats as $subcat) { $id_categories[] = (int)$subcat['id_category']; } } } $product_ids = array(); $sale_ids = array(); $products = Db::getInstance()->ExecuteS(' SELECT p.`id_product`, ps.`id_sale` FROM `'._DB_PREFIX_.'product` p LEFT JOIN `'._DB_PREFIX_.'product_ps_cache` ps ON (p.`id_product` = ps.`id_product`) WHERE p.`id_category_default` IN ('.implode(',', $id_categories).') '); foreach($products as $row) { $product_ids[(int)$row['id_product']] = (int)$row['id_product']; $sale_ids[(int)$row['id_sale']] = (int)$row['id_sale']; } if(count($product_ids)>0) { $html .= '

Produits Concernés ('.count($product_ids).') :

'; foreach ($products as $product) { $html .= ''; } $html .= '
ID Produit ID Vente (old)
'.$product['id_product'].' '.$product['id_sale'].'

Cliquer sur suivant pour réassocier les produits à la nouvelle vente

'; } else { $html .= '

Pas de produits trouvés dans cette catégorie

'; } } else { $html .= '

Vous devez choisir une catégorie

'; } } elseif($step == 3) { if(Tools::getValue('id_products')) { $products_ids = Tools::getValue('id_products'); $id_category = Tools::getValue('id_category'); $id_sale = Tools::getValue('id_sale'); Db::getInstance()->ExecuteS(' DELETE FROM `'._DB_PREFIX_.'product_ps_cache` WHERE `id_product` IN ('.$products_ids.') '); Db::getInstance()->ExecuteS(' INSERT IGNORE INTO `'._DB_PREFIX_.'product_ps_cache` ( SELECT p.id_product, IFNULL( ( SELECT s.id_sale FROM `'._DB_PREFIX_.'privatesale_category` s WHERE s.`id_category` = p.`id_category_default` LIMIT 1) , 0 ) FROM `ps_product` p WHERE p.`id_category_default` = '.(int)$id_category.' ) '); $html .= '

Réassociation Réussie

Vous devez maintenant activer la vente pour que la synchronisation vers Philéa se fasse.

(Pensez bien à vérifier vos stocks avec Philéa, la synchronisation ne s\'en charge pas)

'; } else { $html .= '

Pas de produits à associer

'; } } elseif($step == 4) { $id_sale = Tools::getValue('id_sale'); if($id_sale) { $sql = ' UPDATE `'._DB_PREFIX_.'philea_sync` SET `status` = 2, `products` = 2 WHERE `id_sale` = '.(int)$id_sale; if(Db::getInstance()->execute($sql)){ $sql = ' INSERT INTO `'._DB_PREFIX_.'philea_auto_sync` VALUES ( '.(int) $id_sale.', 1, "0000-00-00 00:00:00" ) ON DUPLICATE KEY UPDATE `active` = 1'; if(Db::getInstance()->execute($sql)){ $html .= '

Activation de la synchronisation Philéa

La vente est activée et automatiquement synchronisée
'; } else { $html .= '

La synchronisation auto n\'a pas pu se faire (faites appel à votre maintenance)

'; } } else { $html .= '

L\'acitvation n\'a pas pu se faire (faites appel à votre maintenance)

'; } } else { $html .= '

Une erreur est survenue

'; } } echo $html; } function getReport($type) { //global $cookie; $id_sale = (int)Tools::getValue('id_sale', false); if (!$id_sale) { http_response_code(500); return json_encode(array( 'error'=> 'true', 'message'=> Tools::displayError('Vente non trouvée') )); } $report = Db::getInstance()->getRow(' SELECT `report_data`, `report_date`, `id_sale` FROM `'._DB_PREFIX_.'philea_syncreport` WHERE `id_sale` = '.$id_sale.' AND `filename` LIKE "'.$type.'%" '); if(empty($report['report_data'])){ $report['report_data'] = Tools::displayError('Pas encore de rapport '.$type.' disponible'); } if(isset($report) && $report != false) { return json_encode(array( 'error' => 'false', 'report' => $report )); } else { return json_encode(array( 'error'=> 'true', 'message' => Tools::displayError('Pas encore de rapport '.$type.' disponible') )); } }