示例#1
0
                    LocalRedirect("/bitrix/admin/sale_order_edit.php?lang=" . LANGUAGE_ID . "&ID=" . $order->getId() . GetFilterParams("filter_", false));
                }
            } else {
                $result->addErrors($res->getErrors());
            }
        }
    } else {
        $result->addError(new \Bitrix\Main\Entity\EntityError("Can't create order!"));
    }
} elseif ($createWithProducts) {
    $formData = array("USER_ID" => $_GET["USER_ID"], "SITE_ID" => $_GET["SITE_ID"]);
    $formData["PRODUCT"] = array();
    $basketCode = 1;
    if (isset($_GET['FUSER_ID']) && intval($_GET['FUSER_ID']) > 0) {
        $basketFilter = array('filter' => array('LID' => $_GET['SITE_ID'], 'FUSER_ID' => intval($_GET['FUSER_ID']), 'ORDER_ID' => null, '!MODULE' => false), 'select' => array('PRODUCT_ID', 'QUANTITY'), 'order' => array('ID' => 'ASC'));
        $res = \Bitrix\Sale\Basket::getList($basketFilter);
        while ($basketItem = $res->fetch()) {
            $productParams = Blocks\OrderBasket::getProductDetails($basketItem['PRODUCT_ID'], $basketItem['QUANTITY'], $formData["USER_ID"], $formData["SITE_ID"]);
            if (!is_array($productParams) || empty($productParams)) {
                continue;
            }
            $formData["PRODUCT"][$basketCode] = $productParams;
            $formData["PRODUCT"][$basketCode]["BASKET_CODE"] = $basketCode;
            $basketCode++;
        }
    } elseif (isset($_GET["product"]) && is_array($_GET["product"])) {
        foreach ($_GET["product"] as $productId => $quantity) {
            $productParams = Blocks\OrderBasket::getProductDetails($productId, $quantity, $formData["USER_ID"], $formData["SITE_ID"]);
            if (!is_array($productParams) || empty($productParams) || intval($productParams["PRODUCT_ID"]) <= 0 || strlen($productParams["MODULE"]) <= 0) {
                continue;
            }