« Export do zbo?í a Heureka - modul zbo?í snad zase o něco lep?í | GoPay modul pro Prestashop 1.5 » |
V Prestashop 1.4 existoval jednoduchý trik jak v administraci zpřístupnit popelnici na mazání objednávek. V nověj?í verzi 1.5 lze tého? výsledku dosáhnout hůře. Původně jsem se domníval ?e je to velmi jednoduché. Na prestashop foru je tomuto problému věnována řada postů které končí tvrzením "přidejte jeden řádek s delete".
Nicméně věci jsou slo?itěj?í, alespoň v Prestashop 1.5.6 . Nevím zda je to záměr, proto?e mazat objednávky mů?e být v rozporu s pravidly EU, v ka?dém případě takto přidaná akce "deleteorder" sma?e jen vlastní objednávku bez přidru?ených záznamů. Důsledek? V následných objednávkách se mohou náhodně objevovat extra produkty pocházející právě ze smazaných objednávek. Jinými slovy, pokud nechcete mít v objednávkách zbo?í které si zákazník neobjednal, postupujte takto:
<?php
class AdminOrdersController extends AdminOrdersControllerCore
{
public function __construct()
{ $this->addRowAction('delete');
parent::__construct();
}
}
<?php
class Order extends OrderCore {
public function delete() {
$result=parent::delete();
if($result) {
$this-> deleteAssociations();
}
return $result;
}
}
Summary: deleting orders in Prestashop 1.5.6
Deleting orders is not supported in Prestashop and merely adding the delete action may result in unwanted extra products in successive orders. To delete orders safely, you need to override both /override/controllers/admin/AdminOrdersController.php and /override/classes/orders/Order.php
Trackback URL (right click and copy shortcut/link location)
This post has 22788 feedbacks awaiting moderation...