Quellcode durchsuchen

Merge branch 'yang'

yuang vor 4 Jahren
Ursprung
Commit
8131d27665

+ 7 - 5
app/Http/Controllers/PackageLogisticController.php

@@ -173,11 +173,13 @@ class PackageLogisticController extends Controller
         $json = [];
         foreach ($orderPackages as $orderPackage) {
             $transfer_status = "";
-            if (is_array($orderPackage->transfer_status) && !empty($orderPackage->transfer_status)) {
-                foreach ($orderPackage->transfer_status as $transfer) {
-                    $transferItemStr = "";
-                    $transferItemStr = $transferItemStr . $transfer['accept_address'] ?? '' . "   " . $transfer['remark'] ?? '' . "   " . $transfer['accept_time'] ?? '';
-                    $transfer_status = $transfer_status . $transferItemStr . ",\r\n";
+            if ($orderPackage->orderPackageExpressRoute != null) {
+                if (is_array($orderPackage->orderPackageExpressRoute->order_package_express_routes) && !empty($orderPackage->orderPackageExpressRoute->order_package_express_routes)) {
+                    foreach ($orderPackage->orderPackageExpressRoute->order_package_express_routes as $transfer) {
+                        $transferItemStr = "";
+                        $transferItemStr = $transferItemStr . $transfer['accept_address'] ?? '' . "   " . $transfer['remark'] ?? '' . "   " . $transfer['accept_time'] ?? '';
+                        $transfer_status = $transfer_status . $transferItemStr . ",\r\n";
+                    }
                 }
             }
             $remark = "";

+ 0 - 2
app/OrderPackage.php

@@ -36,7 +36,6 @@ class OrderPackage extends Model
         'status',
         'sent_at',
         'received_at',
-        'transfer_status',
         'owner_id',
         'uploaded_to_wms',
         'sync_routes_flag',//同步物流信息标记
@@ -49,7 +48,6 @@ class OrderPackage extends Model
     ];
 
     protected $casts = [
-        'transfer_status' => 'array',
         'sync_routes_flag' => 'boolean',
         'is_manual_update' => 'boolean',
         'is_delay_deliver' => 'boolean',

+ 9 - 1
app/Services/OrderPackageReceivedSyncService.php

@@ -10,6 +10,7 @@ use App\Jobs\LogisticYDSync;
 use App\Jobs\LogisticYTOSync;
 use App\Jobs\LogisticZopSync;
 use App\OrderPackage;
+use App\OrderPackageExpressRoute;
 use Carbon\Carbon;
 use Exception;
 use Illuminate\Database\Eloquent\Collection;
@@ -34,6 +35,8 @@ class OrderPackageReceivedSyncService
         if (empty($logistic_numbers)) {
             $query = OrderPackage::query()
                 ->select(['logistic_number', 'order_id', 'id'])
+                ->whereIn('status', [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, null])
+                ->whereIn('exception_status', [0, 1, 2, 3, 4, 5, 6, 7, null])
                 ->with(['order' => function ($query) {
                     return $query->select(['id', 'logistic_id'])->with('logistic:id,name,code');
                 }]);
@@ -100,6 +103,8 @@ class OrderPackageReceivedSyncService
             ini_set('max_execution_time', 2 * 60 * 60);
             $query = OrderPackage::query()
                 ->select(['logistic_number', 'order_id', 'id'])
+                ->whereIn('status', [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, null])
+                ->whereIn('exception_status', [0, 1, 2, 3, 4, 5, 6, 7, null])
                 ->whereIn('order_id', function ($query) {
                     $query->from('orders')->selectRaw('id')->whereIn('logistic_id', function ($builder) {
                         $builder->from('logistics')->selectRaw('id')->where('type', '=', '快递')->whereNotIn('belong_company', ['顺丰', '中通', '韵达', '圆通', '京东']);
@@ -193,7 +198,7 @@ class OrderPackageReceivedSyncService
             $orderPackage = OrderPackage::query()->where('logistic_number', $logisticResponse['logistic_number'])->first();
             $orderPackage->update($logisticResponse);
             if (isset($logisticResponse['transfer_status']) && isset($logisticResponse['logistic_number'])) {
-                $orderPackage->orderPackageExpressRoute()->updateOrCreate(
+                $orderPackageExpressRoute = OrderPackageExpressRoute::query()->updateOrCreate(
                     [
                         'logistics_number' => $logisticResponse['logistic_number'],
                     ],
@@ -201,7 +206,10 @@ class OrderPackageReceivedSyncService
                         'order_package_express_routes' => $logisticResponse['transfer_status'],
                         'logistics_number' => $logisticResponse['logistic_number'],
                     ]);
+                $orderPackage->order_package_express_route_id = $orderPackageExpressRoute->id;
+                $orderPackage->save();
             }
+            $orderPackage->save();
         }
     }
 

+ 32 - 0
database/migrations/2021_12_15_160341_drop_column_transfer_status_to_order_packages_table.php

@@ -0,0 +1,32 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class DropColumnTransferStatusToOrderPackagesTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::table('order_packages', function (Blueprint $table) {
+            $table->dropColumn("transfer_status");
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::table('order_packages', function (Blueprint $table) {
+            $table->text("transfer_status");
+        });
+    }
+}

+ 10 - 10
resources/views/package/logistic/index.blade.php

@@ -167,8 +167,8 @@
                     <td :style="package.exception_status=='单号异常'?'color:red':''">@{{ package.logistic_number }}</td>
                     <td>@{{ package.status }}</td>
                     <td>@{{ package.exception_status }}</td>
-{{--                    <td>@{{ package.order != null ? package.order.logistic.name : '#' }}</td>--}}
-{{--                    <td>@{{ package.order != null ? package.order.owner.name : '#' }}</td>--}}
+                    <td>@{{ package.order != null ? package.order.logistic.name : '#' }}</td>
+                    <td>@{{ package.order != null ? package.order.owner.name : '#' }}</td>
                     <td>@{{ package.order != null ? package.order.province : '#' }}</td>
                     <td>@{{ package.created_at }}</td>
                     <td>@{{ package.sent_at }}</td>
@@ -205,13 +205,13 @@
                        <table class="table m-0 p-0 ">
                            <tr v-show="package.order_package_remarks.length > 0 && package.showMoreRemark===true" v-for="(item,index) of package.order_package_remarks" :key="item.id">
                                <td :title="item.content" style="width: 100px;overflow:hidden !important;">@{{ item.content }}</td>
-{{--                               <td class="text-secondary">@{{ item.user.name }}</td>--}}
+                               <td class="text-secondary">@{{ item.user.name }}</td>
                                <td class="text-secondary remark-created_at">@{{ item.created_at }}</td>
                                <td class="destroy"><button   class="btn-destroy-remark" @click="destroyRemark(package,item.id)">删</button></td>
                            </tr>
                            <tr v-show="(!package.showMoreRemark) && package.order_package_remarks.length > 0" >
                                <td :title="package.order_package_remarks[0]? package.order_package_remarks[0].content:''" style="width: 100px;overflow:hidden !important;">@{{ package.order_package_remarks[0]?package.order_package_remarks[0].content:'' }}</td>
-{{--                               <td class="text-secondary">@{{ package.order_package_remarks[0]?package.order_package_remarks[0].user.name:'' }}</td>--}}
+                               <td class="text-secondary">@{{ package.order_package_remarks[0]?package.order_package_remarks[0].user.name:'' }}</td>
                                <td class="text-secondary remark-created_at">@{{ package.order_package_remarks[0]?package.order_package_remarks[0].created_at:'' }}</td>
                                <td class="destroy"><button   class="btn-destroy-remark" @click="destroyRemark(package,package.order_package_remarks[0].id)">删</button></td>
                            </tr>
@@ -231,7 +231,7 @@
                     <td class="text-overflow-warp-200"><span v-if="package.order && package.order.issue">@{{ package.order.issue.result_explain }}</span>
                     </td>
                     <td class="text-overflow-warp-200">
-{{--                        <span v-if="package.order && package.order.issue && package.order.issue.issue_type">@{{ package.order.issue.issue_type.name }}</span>--}}
+                        <span v-if="package.order && package.order.issue && package.order.issue.issue_type">@{{ package.order.issue.issue_type.name }}</span>
                     </td>
                     <td class="text-overflow-warp-200">@{{ package.order && package.order.batch &&
                         package.order.batch.wms_type }}
@@ -242,16 +242,16 @@
                     <td class="text-overflow-warp-200"><span
                             v-if="package.order && package.order.issue && package.order.issue.logs.length >0"><span
                                 v-for="log in package.order.issue.logs">@{{ log.content }}<br></span></span></td>
-{{--                    <td class="text-overflow-warp-200"><span--}}
-{{--                            v-if="package.order && package.order.issue && package.order.issue.logs.length >0"><span--}}
-{{--                                v-for="log in package.order.issue.logs">@{{ log && log.user && log.user.name }}<br></span></span>--}}
-{{--                    </td>--}}
+                    <td class="text-overflow-warp-200"><span
+                            v-if="package.order && package.order.issue && package.order.issue.logs.length >0"><span
+                                v-for="log in package.order.issue.logs">@{{ log && log.user && log.user.name }}<br></span></span>
+                    </td>
                     <td class="text-overflow-warp-200"><span
                             v-if="package.order && package.order.issue && package.order.issue.logs.length >0"><span
                                 v-for="log in package.order.issue.logs">@{{ log.created_at }}<br></span></span></td>
                 </tr>
             </table>
-        {{--            <div class="text-info h5 btn btn">{{$orderPackages->count()}}/{{$orderPackages->total()}}</div>--}}
+{{--            <div class="text-info h5 btn btn">{{$orderPackages->count()}}/{{$orderPackages->total()}}</div>--}}
         {{$orderPackages->appends($paginateParams)->links()}}
         <!-- Modal -->
             <div class="modal fade" id="staticBackdrop" data-backdrop="static" data-keyboard="false" tabindex="-1"