当前位置: 首页>>代码示例>>PHP>>正文


PHP LocationTable::delete方法代码示例

本文整理汇总了PHP中Bitrix\Sale\Location\LocationTable::delete方法的典型用法代码示例。如果您正苦于以下问题:PHP LocationTable::delete方法的具体用法?PHP LocationTable::delete怎么用?PHP LocationTable::delete使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Bitrix\Sale\Location\LocationTable的用法示例。


在下文中一共展示了LocationTable::delete方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: Delete

 /**
  * <p>Метод удаляет местоположение с кодом ID. Метод также удаляет город этого местоположения, страну этого местоположения (если она не входит больше ни в одно другое местоположение), а также связи этого местоположения с группами местоположений и службами доставки. Метод динамичный.</p>
  *
  *
  * @param int $ID  Код местоположения. </h
  *
  * @return bool <p>Метод возвращает <i>true</i> в случае успешного удаления
  * местоположения и <i>false</i> - в противном случае.</p> <a name="examples"></a>
  *
  * <h4>Example</h4> 
  * <pre>
  * &lt;?
  * if (!CSaleLocation::Delete(12))
  *    echo "Ошибка удаления местоположения";<br>?&gt;
  * </pre>
  *
  *
  * @static
  * @link http://dev.1c-bitrix.ru/api_help/sale/classes/csalelocation/csalelocation__delete.008e0aa2.php
  * @author Bitrix
  */
 public static function Delete($ID)
 {
     global $DB;
     $ID = IntVal($ID);
     if (!($arLocRes = CSaleLocation::GetByID($ID, LANGUAGE_ID))) {
         return false;
     }
     foreach (GetModuleEvents("sale", "OnBeforeLocationDelete", true) as $arEvent) {
         if (ExecuteModuleEventEx($arEvent, array($ID)) === false) {
             return false;
         }
     }
     if (IntVal($arLocRes["CITY_ID"]) > 0) {
         CSaleLocation::DeleteCity($arLocRes["CITY_ID"]);
     }
     $bDelCountry = True;
     $db_res = CSaleLocation::GetList(array("SORT" => "ASC"), array("COUNTRY_ID" => $arLocRes["COUNTRY_ID"], "!ID" => $ID), LANGUAGE_ID);
     if ($db_res->Fetch()) {
         $bDelCountry = false;
     }
     if ($bDelCountry && IntVal($arLocRes["COUNTRY_ID"]) > 0) {
         CSaleLocation::DeleteCountry($arLocRes["COUNTRY_ID"]);
     }
     $bDelRegion = True;
     $db_res = CSaleLocation::GetList(array("SORT" => "ASC"), array("REGION_ID" => $arLocRes["REGION_ID"], "!ID" => $ID), LANGUAGE_ID);
     if ($db_res->Fetch()) {
         $bDelRegion = false;
     }
     if ($bDelRegion && IntVal($arLocRes["REGION_ID"]) > 0) {
         CSaleLocation::DeleteRegion($arLocRes["REGION_ID"]);
     }
     $DB->Query("DELETE FROM b_sale_location2location_group WHERE LOCATION_ID = " . $ID . "", true);
     $DB->Query("DELETE FROM b_sale_delivery2location WHERE LOCATION_ID = " . $ID . " AND LOCATION_TYPE = 'L'", true);
     $DB->Query("DELETE FROM b_sale_location_zip WHERE LOCATION_ID = " . $ID . "", true);
     if (self::isLocationProMigrated()) {
         try {
             $res = Location\LocationTable::delete($ID);
             // the whole subtree will be deleted
             if (!$res->isSuccess()) {
                 return false;
             }
             $bDelete = true;
         } catch (Exception $e) {
             return false;
         }
     } else {
         $bDelete = $DB->Query("DELETE FROM b_sale_location WHERE ID = " . $ID . "", true);
     }
     foreach (GetModuleEvents("sale", "OnLocationDelete", true) as $arEvent) {
         ExecuteModuleEventEx($arEvent, array($ID));
     }
     return $bDelete;
 }
开发者ID:andy-profi,项目名称:bxApiDocs,代码行数:74,代码来源:location.php


注:本文中的Bitrix\Sale\Location\LocationTable::delete方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。