Advertisement
SpeakeazyYT

Untitled

Jul 21st, 2019
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.40 KB | None | 0 0
  1.         if (empty($search_id) && in_array($articul, $sortArtsOcs)) {
  2.             if (!empty($amount_new)) {
  3.                 // добавляем товар
  4.                 $add_chk++;
  5.                 $id = $el->Add($arLoadProductAdd);
  6.                 array_push($marketArr, array(
  7.                     "ID" => $id,
  8.                     (!is_numeric($ocsItem["NAME"]) ? "NAME" : "") => (!is_numeric($ocsItem["NAME"]) ? html_entity_decode($ocsItem["NAME"]) : ""),
  9.                     "IBLOCK_SECTION_ID" => $sid,
  10.                     "PROPERTY_39_VALUE" => $ocsItem["PROPERTY_39_VALUE"],
  11.                     "PROPERTY_68_VALUE" => $amount_new,
  12.                     "PROPERTY_30_VALUE" => $ocsItem["PROPERTY_30_VALUE"],
  13.                     "PROPERTY_65_VALUE" => $articul,
  14.                     "sys_OCS" => 1, // отмечаем в текущем элементе, что текущий артикул уже получен из инфоблока вендора
  15.                 ));
  16.             }
  17.         } else {
  18.             // обновляем секцию свойств
  19.             foreach ($marketArr as $i => $elemArr) {
  20.                 if ($elemArr["ID"] == $search_id) {
  21.                     // если [sys_VENDORNAME] равно 1,то выполняем блок условий для сплита одинаковых артикулов вендора или делаем пуш
  22.                     if ($elemArr["sys_OCS"]<>1) // если не было взаимодействия по текущему артикулу
  23.                     {
  24.                         unset($marketArr[$i]);
  25.                         array_push($marketArr, array(
  26.                             "ID" => $search_id,
  27.                             (!is_numeric($ocsItem["NAME"]) ? "NAME" : "") => (!is_numeric($ocsItem["NAME"]) ? html_entity_decode($ocsItem["NAME"]) : ""),
  28.                             "IBLOCK_SECTION_ID" => $sid,
  29.                             "PROPERTY_39_VALUE" => $ocsItem["PROPERTY_39_VALUE"],
  30.                             "PROPERTY_68_VALUE" => $amount_new,
  31.                             "PROPERTY_30_VALUE" => $ocsItem["PROPERTY_30_VALUE"],
  32.                             "PROPERTY_65_VALUE" => $articul,
  33.                             "sys_OCS" => 1, // отмечаем в текущем элементе, что текущий артикул уже получен из инфоблока вендора
  34.                         ));
  35.                         $el_upd->Update($search_id, [(!is_numeric($ocsItem["NAME"]) ? "NAME" : "") => (!is_numeric($ocsItem["NAME"]) ? html_entity_decode($ocsItem["NAME"]) : ""),
  36.                             "IBLOCK_SECTION_ID" => $sid,
  37.                         ]);
  38.                         $el->SetPropertyValuesEx($search_id, 4, $propsUpdateOCS);
  39.                         $edit_chk++;
  40.                     }
  41.                     else
  42.                     {
  43.                         // Блок обработки дубликата товара по артикулу для текущего вендора
  44.                         $dub_chk++;
  45.                        
  46.                         if ($elemArr["PROPERTY_68_VALUE"] < $amount_new) {
  47.                             unset($marketArr[$i]);
  48.                             array_push($marketArr, array(
  49.                                 "ID" => $search_id,
  50.                                 (!is_numeric($ocsItem["NAME"]) ? "NAME" : "") => (!is_numeric($ocsItem["NAME"]) ? html_entity_decode($ocsItem["NAME"]) : ""),
  51.                                 "IBLOCK_SECTION_ID" => $sid,
  52.                                 "PROPERTY_39_VALUE" => $ocsItem["PROPERTY_39_VALUE"],
  53.                                 "PROPERTY_68_VALUE" => $amount_new,
  54.                                 "PROPERTY_30_VALUE" => $ocsItem["PROPERTY_30_VALUE"],
  55.                                 "PROPERTY_65_VALUE" => $articul,
  56.                                 "sys_OCS" => 1, // отмечаем в текущем элементе, что текущий артикул уже получен из инфоблока вендора
  57.                             ));
  58.                             $el_upd->Update($search_id, [(!is_numeric($ocsItem["NAME"]) ? "NAME" : "") => (!is_numeric($ocsItem["NAME"]) ? html_entity_decode($ocsItem["NAME"]) : ""),
  59.                                 "IBLOCK_SECTION_ID" => $sid,
  60.                             ]);
  61.                             $el->SetPropertyValuesEx($search_id, 4, $propsUpdateOCS);
  62.                         }
  63.                     }
  64.                 }
  65.             }
  66.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement