- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/classes/general/rating_rule.php
- Класс: CRatingRule
- Вызов: CRatingRule::GetList
static function GetList($aSort=array(), $arFilter=Array())
{
global $DB;
$arSqlSearch = Array();
$strSqlSearch = "";
$err_mess = (CRatingRule::err_mess())."
Function: GetList
Line: ";
if (is_array($arFilter))
{
$filter_keys = array_keys($arFilter);
for ($i=0; $i$val)
{
$ord = (mb_strtoupper($val) <> "ASC"? "DESC":"ASC");
switch(mb_strtoupper($key))
{
case "ID":
$sOrder .= ", PR.ID ".$ord;
break;
case "NAME":
$sOrder .= ", PR.NAME ".$ord;
break;
case "CREATED":
$sOrder .= ", PR.CREATED ".$ord;
break;
case "LAST_MODIFIED":
$sOrder .= ", PR.LAST_MODIFIED ".$ord;
break;
case "LAST_APPLIED":
$sOrder .= ", PR.LAST_APPLIED ".$ord;
break;
case "ACTIVE":
$sOrder .= ", PR.ACTIVE ".$ord;
break;
case "CALCULATION_METHOD":
$sOrder .= ", PR.CALCULATION_METHOD ".$ord;
break;
case "ENTITY_TYPE_ID":
$sOrder .= ", PR.ENTITY_TYPE_ID ".$ord;
break;
}
}
if ($sOrder == '')
$sOrder = "PR.ID DESC";
$strSqlOrder = " ORDER BY ".TrimEx($sOrder,",");
$strSqlSearch = GetFilterSqlSearch($arSqlSearch);
$strSql = "
SELECT
PR.ID, PR.NAME, PR.ACTIVE, PR.ENTITY_TYPE_ID,
".$DB->DateToCharFunction("PR.CREATED")." CREATED,
".$DB->DateToCharFunction("PR.LAST_APPLIED")." LAST_APPLIED,
".$DB->DateToCharFunction("PR.LAST_MODIFIED")." LAST_MODIFIED
FROM
b_rating_rule PR
WHERE
".$strSqlSearch."
".$strSqlOrder;
$res = $DB->Query($strSql, false, $err_mess.__LINE__);
return $res;
}