const OUT_DIR =
// __DIR__ . "/../json";
- // "/www/api2/json";
- "/var/www/erp24/api2/json";
+ "/www/api2/json";
+ // "/var/www/erp24/api2/json";
// "/var/www/www-root/data/www/api.bazacvetov24.ru/data/json";
LogService::apiErrorLog(json_encode(["error_id" => 8, "error" => $products1c6->getErrors()], JSON_UNESCAPED_UNICODE));
}
+ foreach ($arr as $key => $property) {
+ if (!in_array($key, Products1c::PRODUCT1C_FIELDS)) {
+ if (empty($property)) continue;
+ $propertyType = Products1cPropType::findOne(['id' => $key]);
+ if (!$propertyType) {
+ $propertyType = new Products1cPropType();
+ $propertyType->id = $key;
+ $propertyType->name = $key;
+ if (!$propertyType->save()) {
+ LogService::apiErrorLog(json_encode(["error_id" => 8.1,
+ "error" => $propertyType->getErrors()],
+ JSON_UNESCAPED_UNICODE));
+ continue;
+ }
+ }
+ $additionalCharacteristic = Products1cAdditionalCharacteristics::findOne([
+ 'product_id' => $arr["id"],
+ 'property_id' => $key
+ ]);
+ if (!$additionalCharacteristic && !empty($property)) {
+ $additionalCharacteristic = new Products1cAdditionalCharacteristics();
+ $additionalCharacteristic->product_id = $arr["id"];
+ $additionalCharacteristic->property_id = $key;
+ }
+ $additionalCharacteristic->value = $property;
+ if (!$additionalCharacteristic->save()) {
+ LogService::apiErrorLog(json_encode(["error_id" => 8.2,
+ "error" => $additionalCharacteristic->getErrors()],
+ JSON_UNESCAPED_UNICODE));
+ }
+ }
+ }
+
if (!empty($arr["AdditionCharacteristics"])) {
$passedCharacteristics = array_column($arr["AdditionCharacteristics"], null, "id");
$currentCharacteristics = Products1cAdditionalCharacteristics::find()