ANG YU 5 лет назад
Родитель
Сommit
5168a801f4

+ 10 - 3
app/Services/LogisticSFService.php

@@ -120,12 +120,15 @@ xml;
 
     /**
      * 转换快递路由信息
-     * @param array $routs 快递路由
+     * @param  $routs 快递路由
      * @return array
      */
-    public function transformRoutes(array $routs): array
+    public function transformRoutes($routs): array
     {
         $result = [];
+        if (!is_array($routs)) {
+            $routs = [$routs];
+        }
         foreach ($routs as $route) {
             $route = get_object_vars($route)['@attributes'];
             $data['accept_time'] = $route['accept_time'];
@@ -155,7 +158,6 @@ xml;
                 case 36:
                     $data['status'] = '在途';
                     break;
-                case 70:
                 case 33:
                     $data['status'] = '派送异常';
                     $data['exception_type'] = '派件异常';
@@ -178,6 +180,11 @@ xml;
                 case 99:
                     $data['status'] = '返回中';
                     break;
+                case 70:
+                    $data['status'] = '无';
+                    $data['exception'] = '是';
+                    $data['exception_type'] = '其他';
+                    break;
                 default:
                     throw new WarningException("未知的丰桥状态码: {$lastRoute['opcode']}->{json_encode($lastRoute)}");
             }

+ 1 - 1
tests/Services/LogisticQiaoSFService/LogisticQiaoSFServiceTest.php

@@ -25,7 +25,7 @@ class LogisticQiaoSFServiceTest extends TestCase
 //        factory(\App\OrderPackage::class)->create(['logistic_number' => 'SF1335376515904',]);
 //        factory(\App\OrderPackage::class)->create(['logistic_number' => 'SF2050377278135',]);
 //        factory(\App\OrderPackage::class)->create(['logistic_number' => 'SF2060390000049',]);
-        $response = $this->logisticQiaoSFService->get(['SF2010424528947']);
+        $response = $this->logisticQiaoSFService->get(['SF2040457612903']);
         dd($response);
         $this->assertCount(3, $response);
     }