Sfoglia il codice sorgente

[智价云] 数据清洗省份城市名称存在时逆推失败置空错误信息

tangyuanwang 11 ore fa
parent
commit
895d466633

+ 20 - 2
app/Jobs/Manager/Process/LowPriceGoodsDataJobs.php

@@ -173,13 +173,18 @@ class LowPriceGoodsDataJobs implements ShouldQueue
                 $db_province_id = $CitysModel->where([['name', '=', $province_name], ['level', '=', '1']])->value('id');
                 if (!empty($db_province_id)) {
                     $product_data['province_id'] = $db_province_id;
+                }else{
+                    //逆推省份ID失败,则置空省份名称
+                    $province_name ='';
                 }
             } else {
                 //尝试从地区详情里面匹配省份名称
-                $db_province_name_list = $CitysModel->where([['level', '=', '1']])->pluck('name')->toarray();
-                foreach ($db_province_name_list as $db_province_name) {
+                $db_province_data_list = $CitysModel->where([['level', '=', '1']])->select(['id','name'])->get()->toarray();
+                foreach ($db_province_data_list as $db_province_data) {
+                    $db_province_name = $db_province_data['name'];
                     if (strpos($product_data['area_info'], $db_province_name) !== false) {
                         $province_name = $db_province_name;
+                        $product_data['province_id'] = $db_province_data['id'];
                         break;
                     }
                 }
@@ -198,11 +203,15 @@ class LowPriceGoodsDataJobs implements ShouldQueue
                     $db_city_id = $CitysModel->where([['name', '=', $city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_city_id)) {
                         $product_data['city_id'] = $db_city_id;
+                    }else{
+                        $city_name ='';
                     }
                 } else {
                     $db_city_id = $CitysModel->where([['name', '=', $city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_city_id)) {
                         $product_data['city_id'] = $db_city_id;
+                    }else{
+                        $city_name ='';
                     }
                 }
             } else {
@@ -268,6 +277,9 @@ class LowPriceGoodsDataJobs implements ShouldQueue
                 $db_shipment_province_id = $CitysModel->where([['name', '=', $shipment_province_name], ['level', '=', '1']])->value('id');
                 if (!empty($db_shipment_province_id)) {
                     $product_data['shipment_province_id'] = $db_shipment_province_id;
+                }else{
+                    //逆推省份ID失败,则置空省份名称
+                    $shipment_province_name = '';
                 }
             }
             if (trim($shipment_city_name) != '') {
@@ -284,11 +296,17 @@ class LowPriceGoodsDataJobs implements ShouldQueue
                     $db_shipment_city_id = $CitysModel->where([['name', '=', $shipment_city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_shipment_city_id)) {
                         $product_data['shipment_city_id'] = $db_shipment_city_id;
+                    }else{
+                        //逆推市ID失败,则置空市名称
+                        $shipment_city_name = '';
                     }
                 } else {
                     $db_shipment_city_id = $CitysModel->where([['name', '=', $shipment_city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_shipment_city_id)) {
                         $product_data['shipment_city_id'] = $db_shipment_city_id;
+                    }else{
+                        //逆推市ID失败,则置空市名称
+                        $shipment_city_name = '';
                     }
                 }
             }

+ 20 - 2
app/Jobs/Manager/Process/ViolationCompanyDataJobs.php

@@ -143,13 +143,18 @@ class ViolationCompanyDataJobs implements ShouldQueue
                 $db_province_id = $CitysModel->where([['name', '=', $province_name], ['level', '=', '1']])->value('id');
                 if (!empty($db_province_id)) {
                     $product_data['province_id'] = $db_province_id;
+                }else{
+                    //逆推省份ID失败,则置空省份名称
+                    $province_name ='';
                 }
             } else {
                 //尝试从地区详情里面匹配省份名称
-                $db_province_name_list = $CitysModel->where([['level', '=', '1']])->pluck('name')->toarray();
-                foreach ($db_province_name_list as $db_province_name) {
+                $db_province_data_list = $CitysModel->where([['level', '=', '1']])->select(['id','name'])->get()->toarray();
+                foreach ($db_province_data_list as $db_province_data) {
+                    $db_province_name = $db_province_data['name'];
                     if (strpos($product_data['area_info'], $db_province_name) !== false) {
                         $province_name = $db_province_name;
+                        $product_data['province_id'] = $db_province_data['id'];
                         break;
                     }
                 }
@@ -168,11 +173,15 @@ class ViolationCompanyDataJobs implements ShouldQueue
                     $db_city_id = $CitysModel->where([['name', '=', $city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_city_id)) {
                         $product_data['city_id'] = $db_city_id;
+                    }else{
+                        $city_name ='';
                     }
                 } else {
                     $db_city_id = $CitysModel->where([['name', '=', $city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_city_id)) {
                         $product_data['city_id'] = $db_city_id;
+                    }else{
+                        $city_name ='';
                     }
                 }
             } else {
@@ -238,6 +247,9 @@ class ViolationCompanyDataJobs implements ShouldQueue
                 $db_shipment_province_id = $CitysModel->where([['name', '=', $shipment_province_name], ['level', '=', '1']])->value('id');
                 if (!empty($db_shipment_province_id)) {
                     $product_data['shipment_province_id'] = $db_shipment_province_id;
+                }else{
+                    //逆推省份ID失败,则置空省份名称
+                    $shipment_province_name = '';
                 }
             }
             if (trim($shipment_city_name) != '') {
@@ -254,11 +266,17 @@ class ViolationCompanyDataJobs implements ShouldQueue
                     $db_shipment_city_id = $CitysModel->where([['name', '=', $shipment_city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_shipment_city_id)) {
                         $product_data['shipment_city_id'] = $db_shipment_city_id;
+                    }else{
+                        //逆推市ID失败,则置空市名称
+                        $shipment_city_name = '';
                     }
                 } else {
                     $db_shipment_city_id = $CitysModel->where([['name', '=', $shipment_city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_shipment_city_id)) {
                         $product_data['shipment_city_id'] = $db_shipment_city_id;
+                    }else{
+                        //逆推市ID失败,则置空市名称
+                        $shipment_city_name = '';
                     }
                 }
             }

+ 20 - 2
app/Jobs/Manager/Process/ViolationStoreDataJobs.php

@@ -140,13 +140,18 @@ class ViolationStoreDataJobs implements ShouldQueue
                 $db_province_id = $CitysModel->where([['name', '=', $province_name], ['level', '=', '1']])->value('id');
                 if (!empty($db_province_id)) {
                     $product_data['province_id'] = $db_province_id;
+                }else{
+                    //逆推省份ID失败,则置空省份名称
+                    $province_name ='';
                 }
             } else {
                 //尝试从地区详情里面匹配省份名称
-                $db_province_name_list = $CitysModel->where([['level', '=', '1']])->pluck('name')->toarray();
-                foreach ($db_province_name_list as $db_province_name) {
+                $db_province_data_list = $CitysModel->where([['level', '=', '1']])->select(['id','name'])->get()->toarray();
+                foreach ($db_province_data_list as $db_province_data) {
+                    $db_province_name = $db_province_data['name'];
                     if (strpos($product_data['area_info'], $db_province_name) !== false) {
                         $province_name = $db_province_name;
+                        $product_data['province_id'] = $db_province_data['id'];
                         break;
                     }
                 }
@@ -165,11 +170,15 @@ class ViolationStoreDataJobs implements ShouldQueue
                     $db_city_id = $CitysModel->where([['name', '=', $city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_city_id)) {
                         $product_data['city_id'] = $db_city_id;
+                    }else{
+                        $city_name ='';
                     }
                 } else {
                     $db_city_id = $CitysModel->where([['name', '=', $city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_city_id)) {
                         $product_data['city_id'] = $db_city_id;
+                    }else{
+                        $city_name ='';
                     }
                 }
             } else {
@@ -235,6 +244,9 @@ class ViolationStoreDataJobs implements ShouldQueue
                 $db_shipment_province_id = $CitysModel->where([['name', '=', $shipment_province_name], ['level', '=', '1']])->value('id');
                 if (!empty($db_shipment_province_id)) {
                     $product_data['shipment_province_id'] = $db_shipment_province_id;
+                }else{
+                    //逆推省份ID失败,则置空省份名称
+                    $shipment_province_name = '';
                 }
             }
             if (trim($shipment_city_name) != '') {
@@ -251,11 +263,17 @@ class ViolationStoreDataJobs implements ShouldQueue
                     $db_shipment_city_id = $CitysModel->where([['name', '=', $shipment_city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_shipment_city_id)) {
                         $product_data['shipment_city_id'] = $db_shipment_city_id;
+                    }else{
+                        //逆推市ID失败,则置空市名称
+                        $shipment_city_name = '';
                     }
                 } else {
                     $db_shipment_city_id = $CitysModel->where([['name', '=', $shipment_city_name], ['level', '=', '2']])->value('id');
                     if (!empty($db_shipment_city_id)) {
                         $product_data['shipment_city_id'] = $db_shipment_city_id;
+                    }else{
+                        //逆推市ID失败,则置空市名称
+                        $shipment_city_name = '';
                     }
                 }
             }