本文整理汇总了PHP中CSaleOrder::CanUserChangeOrderFlag方法的典型用法代码示例。如果您正苦于以下问题:PHP CSaleOrder::CanUserChangeOrderFlag方法的具体用法?PHP CSaleOrder::CanUserChangeOrderFlag怎么用?PHP CSaleOrder::CanUserChangeOrderFlag使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CSaleOrder
的用法示例。
在下文中一共展示了CSaleOrder::CanUserChangeOrderFlag方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: GetMessage
"TEXT" => GetMessage("SOE_TO_UNLOCK"),
"LINK" => "/bitrix/admin/sale_order_new.php?ID=".$ID."&unlock=Y&lang=".LANGUAGE_ID.GetFilterParams("filter_"),
);
}
$link = urlencode(DeleteParam(array("mode")));
$link = urlencode($APPLICATION->GetCurPage())."?mode=settings".($link <> "" ? "&".$link: "");
$bUserCanViewOrder = CSaleOrder::CanUserViewOrder($ID, $arUserGroups, $intUserID);
$bUserCanEditOrder = CSaleOrder::CanUserUpdateOrder($ID, $arUserGroups, $LID);
$bUserCanDeleteOrder = CSaleOrder::CanUserDeleteOrder($ID, $arUserGroups, $intUserID);
$bUserCanCancelOrder = CSaleOrder::CanUserCancelOrder($ID, $arUserGroups, $intUserID);
$bUserCanDeductOrder = CSaleOrder::CanUserChangeOrderFlag($ID, "PERM_DEDUCTION", $arUserGroups);
$bUserCanMarkOrder = CSaleOrder::CanUserMarkOrder($ID, $arUserGroups, $intUserID);
$bUserCanPayOrder = CSaleOrder::CanUserChangeOrderFlag($ID, "P", $arUserGroups);
$bUserCanDeliverOrder = CSaleOrder::CanUserChangeOrderFlag($ID, "D", $arUserGroups);
if ($bUserCanViewOrder && $ID > 0)
{
$aMenu[] = array(
"TEXT" => GetMessage("NEWO_DETAIL"),
"TITLE"=>GetMessage("NEWO_DETAIL_TITLE"),
"LINK" => "/bitrix/admin/sale_order_detail.php?ID=".$ID."&lang=".LANGUAGE_ID.GetFilterParams("filter_")
);
}
if ($ID > 0)
{
$aMenu[] = array(
"TEXT" => GetMessage("NEWO_TO_PRINT"),
"TITLE"=>GetMessage("NEWO_TO_PRINT_TITLE"),
示例2: array
if ($PARTIAL_SUBMIT == "Y") {
$bVarsFromForm = true;
$arInd = array();
$ids = array();
$allIDs = array();
$arIDs = explode(",", trim($_POST["BASKET_IDS"]));
foreach ($arIDs as $v) {
$ids[] = $v;
$allIDs[] = $v;
}
}
$bUserCanViewOrder = CSaleOrder::CanUserViewOrder($ID, $GLOBALS["USER"]->GetUserGroupArray(), $GLOBALS["USER"]->GetID());
$bUserCanEditOrder = CSaleOrder::CanUserUpdateOrder($ID, $GLOBALS["USER"]->GetUserGroupArray());
$bUserCanCancelOrder = CSaleOrder::CanUserCancelOrder($ID, $GLOBALS["USER"]->GetUserGroupArray(), $GLOBALS["USER"]->GetID());
$bUserCanPayOrder = CSaleOrder::CanUserChangeOrderFlag($ID, "P", $GLOBALS["USER"]->GetUserGroupArray());
$bUserCanDeliverOrder = CSaleOrder::CanUserChangeOrderFlag($ID, "D", $GLOBALS["USER"]->GetUserGroupArray());
$bUserCanDeleteOrder = CSaleOrder::CanUserDeleteOrder($ID, $GLOBALS["USER"]->GetUserGroupArray(), $GLOBALS["USER"]->GetID());
$simpleForm = COption::GetOptionString("sale", "lock_catalog", "Y");
$bSimpleForm = $simpleForm == "Y" ? True : False;
if ($action == "update" && $saleModulePermissions >= "U" && $_SERVER["REQUEST_METHOD"] == "POST" && check_bitrix_sessid() && $bUserCanEditOrder && $PARTIAL_SUBMIT != "Y" && empty($dontsave)) {
// *****************************************************************
// ***** Preparing ***********************************************
// *****************************************************************
$bTrabsactionStarted = False;
// Order params
$currentDate = Date(CDatabase::DateFormatToPHP(CLang::GetDateFormat("FULL", LANG)));
$dbOrderTmp = CSaleOrder::GetList(array(), array("ID" => $ID));
//GetByID($ID);
$arOrder = $dbOrderTmp->Fetch();
if (!$arOrder) {
$errorMessage .= GetMessage("SOE_NO_ORDER") . ". ";
示例3: GetMessage
"CC_CHARGE_OFF" => GetMessage("SOD_FROM_CARD"),
"OUT_CHARGE_OFF" => GetMessage("SOD_INPUT"),
"ORDER_UNPAY" => GetMessage("SOD_CANCEL_PAYMENT"),
"ORDER_CANCEL_PART" => GetMessage("SOD_CANCEL_SEMIPAYMENT"),
"MANUAL" => GetMessage("SOD_HAND"),
"DEL_ACCOUNT" => GetMessage("SOD_DELETE"),
"AFFILIATE" => GetMessage("SOD1_AFFILIATES_PAY"),
);
$bUserCanViewOrder = CSaleOrder::CanUserViewOrder($ID, $arUserGroups, $intUserID);
$bUserCanEditOrder = CSaleOrder::CanUserUpdateOrder($ID, $arUserGroups);
$bUserCanCancelOrder = CSaleOrder::CanUserCancelOrder($ID, $arUserGroups, $intUserID);
$bUserCanDeductOrder = CSaleOrder::CanUserChangeOrderFlag($ID, "PERM_DEDUCTION", $arUserGroups);
$bUserCanMarkOrder = CSaleOrder::CanUserMarkOrder($ID, $arUserGroups, $intUserID);
$bUserCanPayOrder = CSaleOrder::CanUserChangeOrderFlag($ID, "PERM_PAYMENT", $arUserGroups);
$bUserCanDeliverOrder = CSaleOrder::CanUserChangeOrderFlag($ID, "PERM_DELIVERY", $arUserGroups);
$bUserCanDeleteOrder = CSaleOrder::CanUserDeleteOrder($ID, $arUserGroups, $intUserID);
if (isset($_REQUEST["ORDER_AJAX"]) AND $_REQUEST["ORDER_AJAX"] == "Y" AND check_bitrix_sessid())
{
CUtil::DecodeUriComponent($_REQUEST);
$type = $_REQUEST["type"];
$order = CSaleOrder::getById($ID);
$allowIds = \Bitrix\Main\Config\Option::get("sale", "p2p_status_list", "");
if(strlen($allowIds))
$allowIds = unserialize($allowIds);
else
$allowIds = array();
/*
示例4: array
if (!$bUserCanDeliverOrder) {
break;
}
$arAdditionalFields = array();
if ($status_id && CSaleOrder::CanUserChangeOrderStatus($id, $status_id, $GLOBALS["USER"]->GetUserGroupArray())) {
$arAdditionalFields = array("STATUS_ID" => $status_id);
}
$deliver = isset($_REQUEST['deliver']) ? trim($_REQUEST['deliver']) : '';
if ($deliver) {
$result = CSaleOrder::DeliverOrder($id, $deliver, 0, $arAdditionalFields);
} elseif (!empty($arAdditionalFields)) {
$result = CSaleOrder::Update($id, $arAdditionalFields);
}
break;
case "order_pay":
$bUserCanPayOrder = CSaleOrder::CanUserChangeOrderFlag($id, "PERM_PAYMENT", $GLOBALS["USER"]->GetUserGroupArray());
if (!$bUserCanPayOrder) {
break;
}
$payed = isset($_REQUEST['payed']) ? trim($_REQUEST['payed']) : 'N';
$pay_from_account = isset($_REQUEST['pay_from_account']) ? trim($_REQUEST['pay_from_account']) : 'N';
$pay_from_account_back = isset($_REQUEST['pay_from_account_back']) ? trim($_REQUEST['pay_from_account_back']) : 'N';
$arAdditionalFields = array();
if ($status_id && CSaleOrder::CanUserChangeOrderStatus($id, $status_id, $GLOBALS["USER"]->GetUserGroupArray())) {
$arAdditionalFields = array("STATUS_ID" => $status_id);
}
$bWithdraw = true;
$bPay = true;
if ($_REQUEST["pay_from_account"] == "Y") {
$bPay = false;
}
示例5: htmlspecialcharsex
while($arStatusListTmp = $dbStatusListTmp->Fetch())
{
$arStatusList[$arStatusListTmp["ID"]] = "[".$arStatusListTmp["ID"]."] ".$arStatusListTmp["NAME"];
}
$row->AddSelectField("STATUS_ID", $arStatusList);
}
}
$row->AddField("PRICE_DELIVERY", htmlspecialcharsex(SaleFormatCurrency($arOrder["PRICE_DELIVERY"], $arOrder["CURRENCY"])));
$fieldValue = "";
if (in_array("ALLOW_DELIVERY", $arVisibleColumns))
{
if ($row->bEditMode != true
|| $row->bEditMode == true && !CSaleOrder::CanUserChangeOrderFlag($f_ID, "PERM_DELIVERY", $arUserGroups))
{
$fieldValue .= "<span id=\"allow_deliv_".$arOrder["ID"]."\">".(($arOrder["ALLOW_DELIVERY"] == "Y") ? GetMessage("SO_YES") : GetMessage("SO_NO"))."</span>";
$fieldValueTmp = $arOrder["DATE_ALLOW_DELIVERY"];
if (strlen($arOrder["DATE_ALLOW_DELIVERY"]) > 0)
{
if (IntVal($arOrder["EMP_ALLOW_DELIVERY_ID"]) > 0)
{
if (!isset($LOCAL_PAYED_USER_CACHE[$arOrder["EMP_ALLOW_DELIVERY_ID"]])
|| empty($LOCAL_PAYED_USER_CACHE[$arOrder["EMP_ALLOW_DELIVERY_ID"]]))
{
$dbUser = CUser::GetByID($arOrder["EMP_ALLOW_DELIVERY_ID"]);
if ($arUser = $dbUser->Fetch())
$LOCAL_PAYED_USER_CACHE[$arOrder["EMP_ALLOW_DELIVERY_ID"]] = htmlspecialcharsEx($arUser["NAME"].((strlen($arUser["NAME"])<=0 || strlen($arUser["LAST_NAME"])<=0) ? "" : " ").$arUser["LAST_NAME"]." (".$arUser["LOGIN"].")");
}
示例6: define
define('NO_AGENT_CHECK', true);
define("NO_AGENT_STATISTIC", true);
define("NOT_CHECK_PERMISSIONS", true);
define('DisableEventsCheck', true);
require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_before.php";
CComponentUtil::__IncludeLang(dirname($_SERVER["SCRIPT_NAME"]), "/ajax.php");
if (!CModule::IncludeModule('sale')) {
die(GetMessage("SMODE_SALE_NOT_INSTALLED"));
}
if (!CModule::IncludeModule('mobileapp')) {
die(GetMessage('SMODE_MOBILEAPP_NOT_INSTALLED'));
}
$arResult = array();
$arUserGroups = $USER->GetUserGroupArray();
$orderId = isset($_REQUEST['orderId']) ? trim($_REQUEST['orderId']) : 0;
$bUserCanDeductOrder = CSaleOrder::CanUserChangeOrderFlag($orderId, "PERM_DEDUCTION", $arUserGroups);
if ($USER->IsAuthorized() && check_bitrix_sessid() && $bUserCanDeductOrder) {
$action = isset($_REQUEST['action']) ? trim($_REQUEST['action']) : '';
switch ($action) {
case "order_deduct":
$deducted = isset($_REQUEST['deducted']) ? trim($_REQUEST['deducted']) : '';
$useStores = isset($_REQUEST['useStores']) && trim($_REQUEST['useStores']) == 'Y' ? true : false;
$undoReason = isset($_REQUEST['undoReason']) ? trim($_REQUEST['undoReason']) : '';
$arProducts = isset($_REQUEST['products']) ? $_REQUEST['products'] : array();
$arProducts = $APPLICATION->ConvertCharsetArray($arProducts, 'utf-8', SITE_CHARSET);
$arStoreInfo = array();
foreach ($arProducts as $prodId => $arProduct) {
$arStoresTmp = array();
if (isset($arProduct["STORES"]) && is_array($arProduct["STORES"])) {
foreach ($arProduct["STORES"] as $arStore) {
if ($arProduct["BARCODE_MULTI"] == "N") {
示例7: shipment
/**
* @param $id
* @param bool $value
* @param array $storeData
* @return Sale\Result
* @throws Main\ObjectNotFoundException
* @throws \Bitrix\Main\ArgumentNullException
* @throws \Bitrix\Main\NotSupportedException
*/
public static function shipment($id, $value, array $storeData = array())
{
global $USER;
$result = new Sale\Result();
/** @var Sale\Order $order */
if ($order = Sale\Order::load($id)) {
/** @var Sale\Basket $basket */
if (!($basket = $order->getBasket())) {
throw new Main\ObjectNotFoundException('Entity "Basket" not found');
}
/** @var Sale\ShipmentCollection $shipmentCollection */
if (!($shipmentCollection = $order->getShipmentCollection())) {
throw new Main\ObjectNotFoundException('Entity "ShipmentCollection" not found');
}
/** @var Sale\Shipment $shipment */
foreach ($shipmentCollection as $shipment) {
if ($shipment->isSystem()) {
continue;
}
/** @var Sale\ShipmentItemCollection $shipmentItemCollection */
if (!($shipmentItemCollection = $shipment->getShipmentItemCollection())) {
throw new Main\ObjectNotFoundException('Entity "ShipmentItemCollection" not found');
}
/** @var Sale\Result $r */
$r = static::fillShipmentItemCollectionFromRequest($shipmentItemCollection, $storeData, $basket);
if (!$r->isSuccess()) {
$result->addErrors($r->getErrors());
return $result;
}
if (!\CSaleOrder::CanUserChangeOrderFlag($id, "PERM_DEDUCTION", $USER->GetUserGroupArray())) {
$result->addError(new Sale\ResultError(Main\Localization\Loc::getMessage('SALE_COMPATIBLE_ORDER_DEDUCT_NO_PERMISSION'), 'SALE_COMPATIBLE_ORDER_DEDUCT_NO_PERMISSION'));
return $result;
}
/** @var Sale\Result $r */
$r = $shipment->setField('DEDUCTED', $value === true ? 'Y' : 'N');
if (!$r->isSuccess()) {
$result->addErrors($r->getErrors());
continue;
}
}
}
/** @var Sale\Result $r */
$r = $order->save();
if (!$r->isSuccess()) {
$result->addErrors($r->getErrors());
}
return $result;
}
示例8: array
if (!isset($arParams['MENU_ITEMS']['STATUS_CHANGE']) || $arParams['MENU_ITEMS']['STATUS_CHANGE'] != false) {
$arResult['MENU_ITEMS'] = array("STATUS_CHANGE");
}
$arStatusesData = array();
foreach ($arResult['STATUSES'] as $key => $status) {
$arStatusesData[$status["ID"]] = $status["~NAME"];
}
$arResult["DAILOG"]["STATUSES"] = array("ITEMS" => $arStatusesData, "TITLE" => GetMessage('SMOD_STATUS'), "RADIO_NAME" => "radio_statuses", "SELECTED" => $arResult['ORDER']['STATUS_ID']);
}
$bUserCanPayOrder = CSaleOrder::CanUserChangeOrderFlag($orderId, "PERM_PAYMENT", $GLOBALS["USER"]->GetUserGroupArray());
if ($bUserCanPayOrder && (!isset($arParams['MENU_ITEMS']['PAYMENT']) || $arParams['MENU_ITEMS']['PAYMENT'] != false)) {
$arResult['MENU_ITEMS'][] = "PAYMENT";
}
$bUserCanDeliverOrder = CSaleOrder::CanUserChangeOrderFlag($orderId, "PERM_DELIVERY", $GLOBALS["USER"]->GetUserGroupArray());
if ($bUserCanDeliverOrder && (!isset($arParams['MENU_ITEMS']['DELIVERY']) || $arParams['MENU_ITEMS']['DELIVERY'] != false)) {
$arResult['MENU_ITEMS'][] = "DELIVERY";
}
$bUserCanDeductOrder = CSaleOrder::CanUserChangeOrderFlag($orderId, "PERM_DEDUCTION", $GLOBALS["USER"]->GetUserGroupArray());
if ($bUserCanDeductOrder && (!isset($arParams['MENU_ITEMS']['DEDUCTION']) || $arParams['MENU_ITEMS']['DEDUCTION'] != false)) {
$arResult['MENU_ITEMS'][] = "DEDUCTION";
}
$bUserCanCancelOrder = CSaleOrder::CanUserCancelOrder($orderId, $GLOBALS["USER"]->GetUserGroupArray(), $GLOBALS["USER"]->GetID());
if ($bUserCanCancelOrder && (!isset($arParams['MENU_ITEMS']['ORDER_CANCEL']) || $arParams['MENU_ITEMS']['ORDER_CANCEL'] != false)) {
$arResult['MENU_ITEMS'][] = "ORDER_CANCEL";
}
if (isset($arParams["SHOW_UPPER_BUTTONS"]) && $arParams["SHOW_UPPER_BUTTONS"] != 'Y') {
$arResult["SHOW_UPPER_BUTTONS"] = false;
} else {
$arResult["SHOW_UPPER_BUTTONS"] = true;
}
$this->IncludeComponentTemplate();
示例9: array
$arResult['STATUSES'][] = $arStatusListTmp;
}
if (!isset($arParams['MENU_ITEMS']['STATUS_CHANGE']) || $arParams['MENU_ITEMS']['STATUS_CHANGE'] != false) {
$arResult['MENU_ITEMS'] = array("STATUS_CHANGE");
}
$arStatusesData = array();
foreach ($arResult['STATUSES'] as $key => $status) {
$arStatusesData[$status["ID"]] = $status["~NAME"];
}
$arResult["DAILOG"]["STATUSES"] = array("ITEMS" => $arStatusesData, "TITLE" => GetMessage('SMOD_STATUS'), "RADIO_NAME" => "radio_statuses", "SELECTED" => $arResult['ORDER']['STATUS_ID']);
}
$bUserCanPayOrder = CSaleOrder::CanUserChangeOrderFlag($orderId, "PERM_PAYMENT", $GLOBALS["USER"]->GetUserGroupArray());
if ($bUserCanPayOrder && (!isset($arParams['MENU_ITEMS']['PAYMENT']) || $arParams['MENU_ITEMS']['PAYMENT'] != false)) {
$arResult['MENU_ITEMS'][] = "PAYMENT";
}
$bUserCanDeliverOrder = CSaleOrder::CanUserChangeOrderFlag($orderId, "PERM_DELIVERY", $GLOBALS["USER"]->GetUserGroupArray());
if ($bUserCanDeliverOrder && (!isset($arParams['MENU_ITEMS']['DELIVERY']) || $arParams['MENU_ITEMS']['DELIVERY'] != false)) {
$arResult['MENU_ITEMS'][] = "DELIVERY";
}
$bUserCanCancelOrder = CSaleOrder::CanUserCancelOrder($orderId, $GLOBALS["USER"]->GetUserGroupArray(), $GLOBALS["USER"]->GetID());
if ($bUserCanCancelOrder && (!isset($arParams['MENU_ITEMS']['ORDER_CANCEL']) || $arParams['MENU_ITEMS']['ORDER_CANCEL'] != false)) {
$arResult['MENU_ITEMS'][] = "ORDER_CANCEL";
}
if (isset($arParams["SHOW_UPPER_BUTTONS"]) && $arParams["SHOW_UPPER_BUTTONS"] != 'Y') {
$arResult["SHOW_UPPER_BUTTONS"] = false;
} else {
$arResult["SHOW_UPPER_BUTTONS"] = true;
}
$this->IncludeComponentTemplate();
?>
示例10: array
if ($saleModulePermissions < "W") {
$arFilter["GROUP_ID"] = $GLOBALS["USER"]->GetUserGroupArray();
$arFilter["PERM_STATUS"] = "Y";
}
$arStatusList = array();
$dbStatusListTmp = CSaleStatus::GetList(array("SORT" => "ASC"), $arFilter, $arGroupByTmpS, false, array("ID", "NAME", "SORT"));
while ($arStatusListTmp = $dbStatusListTmp->Fetch()) {
$arStatusList[$arStatusListTmp["ID"]] = "[" . $arStatusListTmp["ID"] . "] " . $arStatusListTmp["NAME"];
}
$row->AddSelectField("STATUS_ID", $arStatusList);
}
}
$row->AddField("PRICE_DELIVERY", htmlspecialcharsex(SaleFormatCurrency($arOrder["PRICE_DELIVERY"], $arOrder["CURRENCY"])));
$fieldValue = "";
if (in_array("ALLOW_DELIVERY", $arVisibleColumns)) {
if ($row->bEditMode != true || $row->bEditMode == true && !CSaleOrder::CanUserChangeOrderFlag($f_ID, "PERM_DELIVERY", $GLOBALS["USER"]->GetUserGroupArray())) {
$fieldValue .= "<span id=\"allow_deliv_" . $arOrder["ID"] . "\">" . ($arOrder["ALLOW_DELIVERY"] == "Y" ? GetMessage("SO_YES") : GetMessage("SO_NO")) . "</span>";
$fieldValueTmp = $arOrder["DATE_ALLOW_DELIVERY"];
if (strlen($arOrder["DATE_ALLOW_DELIVERY"]) > 0) {
if (IntVal($arOrder["EMP_ALLOW_DELIVERY_ID"]) > 0) {
if (!isset($LOCAL_PAYED_USER_CACHE[$arOrder["EMP_ALLOW_DELIVERY_ID"]]) || empty($LOCAL_PAYED_USER_CACHE[$arOrder["EMP_ALLOW_DELIVERY_ID"]])) {
$dbUser = CUser::GetByID($arOrder["EMP_ALLOW_DELIVERY_ID"]);
if ($arUser = $dbUser->Fetch()) {
$LOCAL_PAYED_USER_CACHE[$arOrder["EMP_ALLOW_DELIVERY_ID"]] = htmlspecialcharsEx($arUser["NAME"] . (strlen($arUser["NAME"]) <= 0 || strlen($arUser["LAST_NAME"]) <= 0 ? "" : " ") . $arUser["LAST_NAME"] . " (" . $arUser["LOGIN"] . ")");
}
}
$fieldValueTmp .= "<br />[<a href=\"/bitrix/admin/user_edit.php?ID=" . $arOrder["EMP_ALLOW_DELIVERY_ID"] . "&lang=" . LANG . "\">" . $arOrder["EMP_ALLOW_DELIVERY_ID"] . "</a>] ";
$fieldValueTmp .= $LOCAL_PAYED_USER_CACHE[$arOrder["EMP_ALLOW_DELIVERY_ID"]];
}
if (!$bExport) {
$fieldValue .= "<script type=\"text/javascript\">\n\t\t\t\t\t\tnew top.BX.CHint({\n\t\t\t\t\t\t\tparent: top.BX('allow_deliv_" . $arOrder["ID"] . "'),\n\t\t\t\t\t\t\tshow_timeout: 10,\n\t\t\t\t\t\t\thide_timeout: 100,\n\t\t\t\t\t\t\tdx: 2,\n\t\t\t\t\t\t\tpreventHide: true,\n\t\t\t\t\t\t\tmin_width: 250,\n\t\t\t\t\t\t\thint: '" . CUtil::JSEscape($fieldValueTmp) . "'\n\t\t\t\t\t\t});\n\t\t\t\t\t</script>";