public function execute($order_id = null)
 {
     $om = new shopOrderModel();
     $order = $om->getById($order_id);
     if ($order['paid_year']) {
         shopAffiliate::cancelBonus($order_id);
     }
     return true;
 }
 public function postExecute($order_id = null, $result = null)
 {
     $data = parent::postExecute($order_id, $result);
     $order_model = new shopOrderModel();
     if (is_array($order_id)) {
         $order = $order_id;
         $order_id = $order['id'];
     } else {
         $order = $order_model->getById($order_id);
     }
     shopCustomers::recalculateTotalSpent($order['contact_id']);
     if ($order_id != null) {
         $log_model = new waLogModel();
         $log_model->add('order_refund', $order_id);
         $order_model = new shopOrderModel();
         $order_model->updateById($order_id, array('paid_date' => null, 'paid_year' => null, 'paid_month' => null, 'paid_quarter' => null));
         // for logging changes in stocks
         shopProductStocksLogModel::setContext(shopProductStocksLogModel::TYPE_ORDER, 'Order %s was refunded', array('order_id' => $order_id));
         $order_model->returnProductsToStocks($order_id);
         shopAffiliate::cancelBonus($order_id);
         $order_model->recalculateProductsTotalSales($order_id);
     }
     return $data;
 }
Example #3
0
<?php

$order_model = new shopOrderModel();
$sql = "SELECT * FROM shop_order WHERE state_id = 'deleted' AND paid_date IS NOT NULL";
foreach ($order_model->query($sql) as $order) {
    $order_id = $order['id'];
    shopCustomers::recalculateTotalSpent($order['contact_id']);
    $order_model->updateById($order_id, array('paid_date' => null, 'paid_year' => null, 'paid_month' => null, 'paid_quarter' => null));
    $order_model->returnProductsToStocks($order_id);
    shopAffiliate::cancelBonus($order_id);
    $order_model->recalculateProductsTotalSales($order_id);
}