6
0
Fork 0

添加物流详情查看

release
vine_liutk 2021-12-20 20:01:02 +08:00
parent 1fffe87887
commit 478a32d9c0
3 changed files with 67 additions and 8 deletions

View File

@ -0,0 +1,27 @@
<?php
namespace App\Admin\Actions\Grid;
use App\Models\KuaidiLog;
use App\Models\OrderPackage;
use Dcat\Admin\Support\LazyRenderable;
use Dcat\Admin\Widgets\Card;
class KuaidiInfo extends LazyRenderable
{
public function render()
{
// 获取ID
$id = $this->key;
$package = OrderPackage::findOrFail($id);
$kuaidiLog = KuaidiLog::where([
'number'=>$package->shipping_number,
'code'=>$package->shipping_code,
])->first();
$data = admin_view('admin.kuaidi-info', compact('kuaidiLog'));
return Card::make('标题', $data);
}
}

View File

@ -2,6 +2,7 @@
namespace App\Admin\Controllers;
use App\Admin\Actions\Grid\KuaidiInfo;
use App\Admin\Actions\Grid\OrderPackageFailed;
use App\Admin\Renderable\PackageProductSimpleTable;
use App\Admin\Repositories\OrderPackage;
@ -65,6 +66,10 @@ class OrderPackageController extends AdminController
OrderPackageModel::STATUS_DISTRIBUTE=>'primary',
OrderPackageModel::STATUS_QUESTION =>'warning',
]);
$grid->column('kuaidi_info', '物流详情')->display('详情')->modal(function ($modal) {
$modal->title('物流详情');
return KuaidiInfo::make();
});
$grid->column('remarks');
$grid->column('created_at')->sortable();
// $grid->column('updated_at');
@ -80,7 +85,7 @@ class OrderPackageController extends AdminController
$grid->actions(function (Grid\Displayers\Actions $actions) {
$actions->disableDelete(Admin::user()->cannot('dcat.admin.order_packages.destroy'));
$actions->disableQuickEdit(Admin::user()->cannot('dcat.admin.order_packages.edit'));
if (!in_array($actions->row->status, [OrderPackageModel::STATUS_CHECK, OrderPackageModel::STATUS_AUTOCHECK])) {
if (!$actions->row->is_failed && !in_array($actions->row->status, [OrderPackageModel::STATUS_CHECK, OrderPackageModel::STATUS_AUTOCHECK])) {
$actions->append(new OrderPackageFailed());
}
});
@ -125,19 +130,17 @@ class OrderPackageController extends AdminController
*/
protected function form()
{
return Form::make(new OrderPackage(), function (Form $form) {
$builder = OrderPackage::with('order');
return Form::make($builder, function (Form $form) {
$form->display('id');
$form->select('order_id')->options(function ($id) {
$order = Order::find($id);
if ($order) {
return [$order->id => $order->sn];
}
})->ajax(admin_route('api.orders'))->load('order_product_id', admin_route('api.order_products'))->disable();
$form->text('order.sn')->disable();
$form->text('shipping_company');
$form->text('shipping_number');
$form->text('remarks');
$form->hidden('order_id');
$form->display('created_at');
$form->display('updated_at');
});

View File

@ -0,0 +1,29 @@
<!-- The time line -->
@if($kuaidiLog)
@if(count($kuaidiLog->info) > 0)
<div class="timeline">
@foreach($kuaidiLog->info as $log)
<!-- timeline time label -->
<div class="time-label" style="margin-left: 15px;">
<span class="bg-green">{{$log['status']}}</span>
</div>
<!-- /.timeline-label -->
<!-- timeline item -->
<div>
<i class="fa fa-envelope bg-blue"></i>
<div class="timeline-item">
<span class="time"><i class="fas fa-clock"></i> {{$log['time']}}</span>
<div class="timeline-body">{{$log['context']}}</div>
</div>
</div>
<!-- ./ timeline item -->
@endforeach
<div>
<i class="fas fa-clock bg-gray"></i>
</div>
</div>
@endif
@endif