Данный класс по id старого заказа копирует все товары в корзину
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
class repeatOrder{ public $MASS_ORDER;//масив заказов id+количество public $ORDER_ID;//масив заказов id+количество public function __construct($ORDER_ID) { $this->ORDER_ID=$ORDER_ID; $this->getDataOldOrder(); $this->setNewOrder(); } //выставляем данные нового private function setNewOrder(){ // выставляем новый заказ foreach ($this->MASS_ORDER as $ORDER_ITEM) { Add2BasketByProductID( $ORDER_ITEM['PRODUCT_ID'], $ORDER_ITEM['QUANTITY'] ); } } //получаем данные заказа private function getDataOldOrder() { $dbBasketItems = CSaleBasket::GetList(array(), array("ORDER_ID" => $this->ORDER_ID), false, false, array()); $MASS_ORDER=array(); while ($arItems = $dbBasketItems->Fetch()) { $MASS_ORDER[]=array('PRODUCT_ID'=>$arItems['PRODUCT_ID'],'QUANTITY'=>$arItems['QUANTITY']); } $this->MASS_ORDER= $MASS_ORDER; } } |
вызов: запустите и все сработает.
1 |
$order=new repeatOrder($ID_ORDER); |