Последние темы


После повторения заказа создает пустой новый заказ

  • Привет всем.
    Купил дополнение UserOrders (История заказов).
    Дополнил его функционалом повторения заказа.

    $modx->addPackage('shopkeeper3', $modx->getOption('core_path').'components/shopkeeper3/model/');
    $order = $modx->getObject('shk_order',array('id'=>$order_id, 'userid' => $user_id));
    	if($order){
    	             
    		$new_order = $modx->newObject('shk_order');
    		$new_order->fromArray($order->toArray());
    		$new_order->set('status',1);
    		$new_order->set('date',strftime('%Y-%m-%d %H:%M:%S'));
    		$new_order->save();
    	             
    	}
    

    Новый заказ создается. Сумма дублированного верная, только в составе заказа пусто.
    краткий вид

    краткий вид
    Подскажите куда копать?

  • Скопировать заказ мало, надо ещё скопировать товары, которые хранятся в отдельной таблице.

    $purchase = $modx->newObject('shk_purchases');
    $purchase->fromArray( $insert_data );
    $purchase->save();
    

    Плюс у вас по коду, если заказ отменен или выполнен, то новый тоже будет такого же статуса.

  • Вот спасибо. Направил на путь истинный.
    Еще добавлю, что $insert_data это вот такой массив:

    $insert_data = array(
    	'p_id' => $p_data['id'],
    	'order_id' => $order->id,
    	'name' => $p_data['name'],
    	'price' => $p_data['price'],
    	'count' => $p_data['count'],
    	'class_name' => $p_data['className'],
    	'package_name' => $p_data['packageName'],
    	'data' => $fields_data_str,
    	'options' => $options
    );
    
 

Последние комментарии

  • G

    Отличная новость, Андрей, спасибо!
    Наконец-то настроил окружение для разработки SHK4 в винде через Vagrant, все работает достаточно шустро, глюков замечено не было. В скором времени планирую сделать свою инструкцию на эту тему, думаю будет полезна для начинающих.

    У меня вопрос - я далеко не искушенный пользователь git, для разработки магазина тупо создал форк с вашего репозитория shopkeeper4 v4.0.0, все коммиты и изменения заливаю в свой репо. Есть какая-то возможность отслеживать изменения в вашем репозитории и вносить в мой? Например, я бы хотел обновлять какие-то php файлы, но не трогать шаблоны *twig.

    Читать далее
  • редактироваться могут и старые. опубликованные, ресурсы, не хотелось бы чтобы к ним приписались дубли id

    В коде плагина можно всё учесть, а не всегда добавлять ID без проверок.

    Читать далее
  • L

    @Andchir редактироваться могут и старые. опубликованные, ресурсы, не хотелось бы чтобы к ним приписались дубли id. Есть событие OnDocPublished но по-моему оно не срабатывает...

    Читать далее
  • В принципе ресурс импортируется неопубликованным и потом публикуется вручную

    Есть событие редактирования ресурса, можно привязаться к этому событию.

    Читать далее