Sfoglia il codice sorgente

快递包裹添加仓库筛选和查询

zengjun 3 anni fa
parent
commit
c59ebea192

+ 10 - 0
app/Filters/OrderPackageFilters.php

@@ -7,6 +7,7 @@ use App\OracleDOCOrderHeader;
 use App\Order;
 use App\OrderIssue;
 use App\Services\UserService;
+use App\Traits\ModelSearchWay;
 use Illuminate\Database\Eloquent\Builder;
 use Illuminate\Http\Request;
 use Illuminate\Support\Carbon;
@@ -15,6 +16,7 @@ use phpDocumentor\Reflection\Types\Boolean;
 
 class OrderPackageFilters
 {
+    use ModelSearchWay;
     protected $request;
     /** @var $queryBuilder Builder */
     protected $queryBuilder;
@@ -30,6 +32,7 @@ class OrderPackageFilters
         'is_weighed',//是否称重
         'logistic',//承运商
         'owner',//货主
+        'warehouse',//货主
         'sent_at_start',//复核时间开始
         'created_at_start',//创建时间开始
         'created_at_end',//创建时间开始
@@ -270,6 +273,13 @@ class OrderPackageFilters
         });
     }
 
+    public function warehouse($warehouseId){
+        $this->queryBuilder->whereIn('order_id', function ($query) use ($warehouseId) {
+            $query->from('orders')->select('id');
+            $this->searchWay($query, $warehouseId, 'orders.warehouse_id');
+        });
+    }
+
     public function virtual_receive()
     {
         $this->queryBuilder->where('collecting_status', 1)->where('route_length', '<', 3);

+ 4 - 4
app/Http/Controllers/PackageLogisticController.php

@@ -7,12 +7,10 @@ use App\Exceptions\Exception;
 use App\Filters\OrderPackageFilters;
 use App\Logistic;
 use App\OrderPackage;
-use App\Owner;
-use App\Services\common\ExportService;
 use App\Services\OwnerService;
 use App\Services\UserService;
+use App\Warehouse;
 use Illuminate\Http\Request;
-use Illuminate\Support\Carbon;
 use Oursdreams\Export\Export;
 
 class PackageLogisticController extends Controller
@@ -50,6 +48,7 @@ class PackageLogisticController extends Controller
                     $query->with('user')->orderByDesc('created_at');
                 },
                 'order.owner',
+                'order.warehouse',
                 'order.issue' => function ($query) {
                     $query->with(['issueType', 'logs' => function ($query) {
                         $query->with('user')->orderBy('created_at', 'DESC');
@@ -58,8 +57,9 @@ class PackageLogisticController extends Controller
             ->orderByDesc('id')
             ->simplePaginate($request->paginate ?? 50);
         $logistics = Logistic::all();
+        $warehouses = Warehouse::all();
         $owners = app("OwnerService")->getIntersectPermitting();
-        return view('package.logistic.index', compact('orderPackages', 'logistics', 'owners', 'paginateParams'));
+        return view('package.logistic.index', compact('orderPackages', 'logistics', 'owners','warehouses', 'paginateParams'));
     }
 
     /**

+ 16 - 0
resources/views/package/logistic/index.blade.php

@@ -172,6 +172,7 @@
                     <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.warehouse.name : '#' }}</td>
                     <td>@{{ package.order != null ? package.order.province : '#' }}</td>
                     <td>@{{ package.created_at }}</td>
                     <td>@{{ package.sent_at }}</td>
@@ -317,6 +318,13 @@
                     },
                     @endforeach
                 ],
+                warehouses:[
+                        @foreach($warehouses as $warehouse)
+                    {
+                        name: '{{$warehouse->id}}', value: '{{$warehouse->name}}'
+                    },
+                    @endforeach
+                ],
                 showList: {},
                 showRemarkList: {},
                 selectTr: 0,
@@ -427,6 +435,13 @@
                             placeholder: ['货主', '定位或多选货主'],
                             data: _this.owners
                         },
+                        {
+                            name: 'warehouse',
+                            type: 'select_multiple_select',
+                            tip: ['输入关键词快速定位下拉列表,回车确定', '选择要显示的货主'],
+                            placeholder: ['仓库', '定位或多选仓库'],
+                            data: _this.warehouses
+                        },
                         {
                             name: 'has_transfer_status',
                             type: 'select',
@@ -525,6 +540,7 @@
                     {name: 'exception_status', value: '异常状态'},
                     {name: 'logistic_name', value: '快递公司'},
                     {name: 'owner_name', value: '货主'},
+                    {name: 'warehouse_name', value: '仓库'},
                     {name: 'province', value: '省份'},
                     {name: 'created_at', value: '订单生成日期'},
                     {name: 'sent_at', value: '发出日期'},