1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
auxiliary.php
См. документацию.
1<?php
2
3require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/sale/general/auxiliary.php");
4
6{
7 //********** SELECT **************//
8 public static function GetByID($ID)
9 {
10 global $DB;
11
12 $ID = intval($ID);
13 if ($ID <= 0)
14 return false;
15
16 $strSql =
17 "SELECT A.ID, A.USER_ID, A.ITEM, A.ITEM_MD5, ".
18 " ".$DB->DateToCharFunction("A.TIMESTAMP_X", "FULL")." as TIMESTAMP_X, ".
19 " ".$DB->DateToCharFunction("A.DATE_INSERT", "FULL")." as DATE_INSERT ".
20 "FROM b_sale_auxiliary A ".
21 "WHERE A.ID = ".$ID." ";
22
23 $dbAuxiliary = $DB->Query($strSql);
24 if ($arAuxiliary = $dbAuxiliary->Fetch())
25 return $arAuxiliary;
26
27 return false;
28 }
29
30 public static function GetByParams($userID, $itemMD5)
31 {
32 global $DB;
33
34 $userID = intval($userID);
35 if ($userID <= 0)
36 return false;
37
38 $itemMD5 = Trim($itemMD5);
39 if ($itemMD5 == '')
40 return false;
41
42 $itemMD5 = md5($itemMD5);
43
44 $strSql =
45 "SELECT A.ID, A.USER_ID, A.ITEM, A.ITEM_MD5, ".
46 " ".$DB->DateToCharFunction("A.TIMESTAMP_X", "FULL")." as TIMESTAMP_X, ".
47 " ".$DB->DateToCharFunction("A.DATE_INSERT", "FULL")." as DATE_INSERT ".
48 "FROM b_sale_auxiliary A ".
49 "WHERE A.USER_ID = ".$userID." ".
50 " AND A.ITEM_MD5 = '".$DB->ForSql($itemMD5)."' ";
51
52 $dbAuxiliary = $DB->Query($strSql);
53 if ($arAuxiliary = $dbAuxiliary->Fetch())
54 return $arAuxiliary;
55
56 return false;
57 }
58
59 public static function GetList($arOrder = array(), $arFilter = array(), $arGroupBy = false, $arNavStartParams = false, $arSelectFields = array())
60 {
61 global $DB;
62
63 if (count($arSelectFields) <= 0)
64 $arSelectFields = array("ID", "USER_ID", "TIMESTAMP_X", "ITEM", "ITEM_MD5", "DATE_INSERT");
65
66 // FIELDS -->
68 "ID" => array("FIELD" => "A.ID", "TYPE" => "int"),
69 "USER_ID" => array("FIELD" => "A.USER_ID", "TYPE" => "int"),
70 "TIMESTAMP_X" => array("FIELD" => "A.TIMESTAMP_X", "TYPE" => "datetime"),
71 "ITEM" => array("FIELD" => "A.ITEM", "TYPE" => "string"),
72 "ITEM_MD5" => array("FIELD" => "A.ITEM_MD5", "TYPE" => "string", "WHERE" => array("CSaleAuxiliary", "PrepareItemMD54Where")),
73 "DATE_INSERT" => array("FIELD" => "A.DATE_INSERT", "TYPE" => "datetime")
74 );
75 // <-- FIELDS
76
77 $arSqls = CSaleOrder::PrepareSql($arFields, $arOrder, $arFilter, $arGroupBy, $arSelectFields);
78
79 $arSqls["SELECT"] = str_replace("%%_DISTINCT_%%", "", $arSqls["SELECT"]);
80
81 if (is_array($arGroupBy) && count($arGroupBy)==0)
82 {
83 $strSql =
84 "SELECT ".$arSqls["SELECT"]." ".
85 "FROM b_sale_auxiliary A ".
86 " ".$arSqls["FROM"]." ";
87 if ($arSqls["WHERE"] <> '')
88 $strSql .= "WHERE ".$arSqls["WHERE"]." ";
89 if ($arSqls["GROUPBY"] <> '')
90 $strSql .= "GROUP BY ".$arSqls["GROUPBY"]." ";
91
92 //echo "!1!=".htmlspecialcharsbx($strSql)."<br>";
93
94 $dbRes = $DB->Query($strSql);
95 if ($arRes = $dbRes->Fetch())
96 return $arRes["CNT"];
97 else
98 return False;
99 }
100
101 $strSql =
102 "SELECT ".$arSqls["SELECT"]." ".
103 "FROM b_sale_auxiliary A ".
104 " ".$arSqls["FROM"]." ";
105 if ($arSqls["WHERE"] <> '')
106 $strSql .= "WHERE ".$arSqls["WHERE"]." ";
107 if ($arSqls["GROUPBY"] <> '')
108 $strSql .= "GROUP BY ".$arSqls["GROUPBY"]." ";
109 if ($arSqls["ORDERBY"] <> '')
110 $strSql .= "ORDER BY ".$arSqls["ORDERBY"]." ";
111
112 if (is_array($arNavStartParams) && intval($arNavStartParams["nTopCount"])<=0)
113 {
114 $strSql_tmp =
115 "SELECT COUNT('x') as CNT ".
116 "FROM b_sale_auxiliary A ".
117 " ".$arSqls["FROM"]." ";
118 if ($arSqls["WHERE"] <> '')
119 $strSql_tmp .= "WHERE ".$arSqls["WHERE"]." ";
120 if ($arSqls["GROUPBY"] <> '')
121 $strSql_tmp .= "GROUP BY ".$arSqls["GROUPBY"]." ";
122
123 //echo "!2.1!=".htmlspecialcharsbx($strSql_tmp)."<br>";
124
125 $dbRes = $DB->Query($strSql_tmp);
126 $cnt = 0;
127 if ($arSqls["GROUPBY"] == '')
128 {
129 if ($arRes = $dbRes->Fetch())
130 $cnt = $arRes["CNT"];
131 }
132 else
133 {
134 // FOR MYSQL!!! ANOTHER CODE FOR ORACLE
135 $cnt = $dbRes->SelectedRowsCount();
136 }
137
138 $dbRes = new CDBResult();
139
140 //echo "!2.2!=".htmlspecialcharsbx($strSql)."<br>";
141
142 $dbRes->NavQuery($strSql, $cnt, $arNavStartParams);
143 }
144 else
145 {
146 if (is_array($arNavStartParams) && intval($arNavStartParams["nTopCount"])>0)
147 $strSql .= "LIMIT ".intval($arNavStartParams["nTopCount"]);
148
149 //echo "!3!=".htmlspecialcharsbx($strSql)."<br><br>";
150
151 $dbRes = $DB->Query($strSql);
152 }
153
154 return $dbRes;
155 }
156
157 public static function DeleteByTime($periodLength, $periodType)
158 {
159 global $DB;
160
161 $periodLength = intval($periodLength);
162 if ($periodLength <= 0)
163 return False;
164
165 $periodType = Trim($periodType);
166 $periodType = mb_strtoupper($periodType);
167 if ($periodType == '')
168 return False;
169
170 $deleteVal = 0;
171 if ($periodType == "I")
172 $deleteVal = mktime(date("H"), date("i") - $periodLength, date("s"), date("m"), date("d"), date("Y"));
173 elseif ($periodType == "H")
174 $deleteVal = mktime(date("H") - $periodLength, date("i"), date("s"), date("m"), date("d"), date("Y"));
175 elseif ($periodType == "D")
176 $deleteVal = mktime(date("H"), date("i"), date("s"), date("m"), date("d") - $periodLength, date("Y"));
177 elseif ($periodType == "W")
178 $deleteVal = mktime(date("H"), date("i"), date("s"), date("m"), date("d") - 7 * $periodLength, date("Y"));
179 elseif ($periodType == "M")
180 $deleteVal = mktime(date("H"), date("i"), date("s"), date("m") - $periodLength, date("d"), date("Y"));
181 elseif ($periodType == "Q")
182 $deleteVal = mktime(date("H"), date("i"), date("s"), date("m") - 3 * $periodLength, date("d"), date("Y"));
183 elseif ($periodType == "S")
184 $deleteVal = mktime(date("H"), date("i"), date("s"), date("m") - 6 * $periodLength, date("d"), date("Y"));
185 elseif ($periodType == "Y")
186 $deleteVal = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y") - $periodLength);
187
188 if ($deleteVal <= 0)
189 return False;
190
191 return $DB->Query("DELETE FROM b_sale_auxiliary WHERE DATE_INSERT < '".Date("Y-m-d H:i:s", $deleteVal)."' ", true);
192 }
193
194 public static function Add($arFields)
195 {
196 global $DB;
197
198 $arFields1 = array();
199 foreach ($arFields as $key => $value)
200 {
201 if (mb_substr($key, 0, 1) == "=")
202 {
203 $arFields1[mb_substr($key, 1)] = $value;
204 unset($arFields[$key]);
205 }
206 }
207
209 return false;
210
211 $arInsert = $DB->PrepareInsert("b_sale_auxiliary", $arFields);
212
213 foreach ($arFields1 as $key => $value)
214 {
215 if ($arInsert[0] <> '') $arInsert[0] .= ", ";
216 $arInsert[0] .= $key;
217 if ($arInsert[1] <> '') $arInsert[1] .= ", ";
218 $arInsert[1] .= $value;
219 }
220
221 $strSql =
222 "INSERT INTO b_sale_auxiliary(".$arInsert[0].") ".
223 "VALUES(".$arInsert[1].")";
224 $DB->Query($strSql);
225
226 $ID = intval($DB->LastID());
227
228 return $ID;
229 }
230
231 public static function Update($ID, $arFields)
232 {
233 global $DB;
234
235 $ID = intval($ID);
236 if ($ID <= 0)
237 return False;
238
239 $arFields1 = array();
240 foreach ($arFields as $key => $value)
241 {
242 if (mb_substr($key, 0, 1) == "=")
243 {
244 $arFields1[mb_substr($key, 1)] = $value;
245 unset($arFields[$key]);
246 }
247 }
248
250 return false;
251
252 $strUpdate = $DB->PrepareUpdate("b_sale_auxiliary", $arFields);
253
254 foreach ($arFields1 as $key => $value)
255 {
256 if ($strUpdate <> '') $strUpdate .= ", ";
257 $strUpdate .= $key."=".$value." ";
258 }
259
260 $strSql = "UPDATE b_sale_auxiliary SET ".$strUpdate." WHERE ID = ".$ID." ";
261 $DB->Query($strSql);
262
263 return $ID;
264 }
265}
Определения auxiliary.php:11
static CheckFields($ACTION, &$arFields, $ID=0)
Определения auxiliary.php:79
static PrepareSql(&$arFields, $arOrder, &$arFilter, $arGroupBy, $arSelectFields, $obUserFieldsSql=false, $callback=false, $arOptions=array())
Определения order.php:1070
Определения auxiliary.php:6
static Add($arFields)
Определения auxiliary.php:194
static GetByID($ID)
Определения auxiliary.php:8
static GetList($arOrder=array(), $arFilter=array(), $arGroupBy=false, $arNavStartParams=false, $arSelectFields=array())
Определения auxiliary.php:59
static DeleteByTime($periodLength, $periodType)
Определения auxiliary.php:157
static GetByParams($userID, $itemMD5)
Определения auxiliary.php:30
static Update($ID, $arFields)
Определения auxiliary.php:231
$arFields
Определения dblapprove.php:5
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
if($ajaxMode) $ID
Определения get_user.php:27
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
global $DB
Определения cron_frame.php:29
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
Определения prolog_main_admin.php:393
if(empty($signedUserToken)) $key
Определения quickway.php:257
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
Определения waybill.php:936
$arRes
Определения options.php:104
$arFilter
Определения user_search.php:106
$dbRes
Определения yandex_detail.php:168