]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
Заполнение таблицы данными
authorfomichev <vladimir.fomichev@erp-flowers.ru>
Tue, 19 Nov 2024 10:58:30 +0000 (13:58 +0300)
committerfomichev <vladimir.fomichev@erp-flowers.ru>
Tue, 19 Nov 2024 10:58:30 +0000 (13:58 +0300)
erp24/api2/controllers/DataController.php

index 708d2d332eddb6f81e27c02e77025b51191743d5..59465e2a23f7c80e43f6b4cbbcd95e2a56ff188a 100644 (file)
@@ -28,7 +28,9 @@ use yii_app\records\PaymentTypes;
 use yii_app\records\Prices;
 use yii_app\records\PricesDynamic;
 use yii_app\records\PricesZakup;
+use yii_app\records\Product1cPropType;
 use yii_app\records\Products1c;
+use yii_app\records\Products1cAdditionalCharacteristics;
 use yii_app\records\Sales;
 use yii_app\records\SalesItems;
 use yii_app\records\SalesProducts;
@@ -48,7 +50,9 @@ class DataController extends BaseController {
     const OUT_DIR =
 //        __DIR__ . "/../json";
        // "/www/api2/json";
-    "/var/www/erp24/api2/json";
+    //"/var/www/erp24/api2/json";
+    "/www/api2/json";
+
 //          "/var/www/www-root/data/www/api.bazacvetov24.ru/data/json";
 
     public function actionRequest() {
@@ -571,6 +575,39 @@ class DataController extends BaseController {
                     if ($products1c6->getErrors()) {
                         LogService::apiErrorLog(json_encode(["error_id" => 8, "error" => $products1c6->getErrors()], JSON_UNESCAPED_UNICODE));
                     }
+
+                    if (!empty($arr["AdditionCharacteristics"])) {
+                        foreach ($arr["AdditionCharacteristics"] as $characteristic) {
+
+                            $propertyType = Product1cPropType::findOne(['id' => $characteristic["id"]]);
+                            if (!$propertyType) {
+                                $propertyType = new Product1cPropType();
+                                $propertyType->id = $characteristic["id"];
+                                $propertyType->name = $characteristic["name"];
+                                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' => $characteristic["id"]
+                            ]);
+
+                            if (!$additionalCharacteristic) {
+                                $additionalCharacteristic = new Products1cAdditionalCharacteristics();
+                                $additionalCharacteristic->product_id = $arr["id"];
+                                $additionalCharacteristic->property_id = $characteristic["id"];
+                            }
+
+                            $additionalCharacteristic->value_name = $characteristic["value_name"];
+                            if (!$additionalCharacteristic->save()) {
+                                LogService::apiErrorLog(json_encode(["error_id" => 8.2, "error" => $additionalCharacteristic->getErrors()], JSON_UNESCAPED_UNICODE));
+                            }
+                        }
+                    }
                 }
             }