6
0
Fork 0

添加订单管理权限

release
vine_liutk 2021-12-18 13:40:40 +08:00
parent 89dcaa96d0
commit 62981ea357
3 changed files with 53 additions and 10 deletions

View File

@ -4,7 +4,9 @@ namespace App\Admin\Controllers;
use App\Admin\Renderable\PackageProductSimpleTable;
use App\Admin\Repositories\OrderPackage;
use App\Exceptions\BizException;
use App\Models\Order;
use App\Models\OrderPackage as OrderPackageModel;
use Dcat\Admin\Admin;
use Dcat\Admin\Form;
use Dcat\Admin\Grid;
@ -36,8 +38,27 @@ class OrderPackageController extends AdminController
$grid->column('shipping_company');
$grid->column('shipping_number');
$grid->column('is_failed')->bool();
$grid->column('status');
// $grid->column('remarks');
$grid->column('status')->using([
OrderPackageModel::STATUS_WAIT => '揽收',
OrderPackageModel::STATUS_ONTHEWAY =>'途中',
OrderPackageModel::STATUS_DISTRIBUTE=>'派送',
OrderPackageModel::STATUS_CHECK=>'签收',
OrderPackageModel::STATUS_QUESTION => '疑难',
OrderPackageModel::STATUS_REFUND => '退签',
OrderPackageModel::STATUS_REFUSE => '拒签',
OrderPackageModel::STATUS_OTHER => '其他',
OrderPackageModel::STATUS_AUTOCHECK => '自动签收',
])->dot([
OrderPackageModel::STATUS_REFUND =>'danger',
OrderPackageModel::STATUS_REFUSE =>'danger',
OrderPackageModel::STATUS_AUTOCHECK =>'success',
OrderPackageModel::STATUS_CHECK =>'success',
OrderPackageModel::STATUS_WAIT =>'primary',
OrderPackageModel::STATUS_ONTHEWAY =>'primary',
OrderPackageModel::STATUS_DISTRIBUTE=>'primary',
OrderPackageModel::STATUS_QUESTION =>'warning',
]);
$grid->column('remarks');
$grid->column('created_at')->sortable();
// $grid->column('updated_at');
@ -48,11 +69,10 @@ class OrderPackageController extends AdminController
// $grid->disableCreateButton(false);
// $grid->enableDialogCreate();
// }
//修改
$grid->showQuickEditButton(Admin::user()->can('dcat.admin.order_packages.edit'));
//删除以及自定义操作
$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'));
});
/** 查询 **/
@ -102,11 +122,7 @@ class OrderPackageController extends AdminController
if ($order) {
return [$order->id => $order->sn];
}
})->ajax(admin_route('api.orders'))->load('order_product_id', admin_route('api.order_products'));
$form->hasMany('pageProducts', function ($form) {
$form->select('order_product_id');
$form->number('quantity')->min(0)->default(1);
});
})->ajax(admin_route('api.orders'))->load('order_product_id', admin_route('api.order_products'))->disable();
$form->text('shipping_company');
$form->text('shipping_number');
@ -116,4 +132,13 @@ class OrderPackageController extends AdminController
$form->display('updated_at');
});
}
public function destroy($id)
{
//如果有子分类或者分类下有文章则不允许删除
if (!OrderPackageModel::findOrFail($id)?->is_failed) {
throw new BizException(__('无法删除未作废的货运单'));
}
return parent::destroy($id);
}
}

View File

@ -96,7 +96,7 @@ Route::group([
]);
$router->resource('order-packages', 'OrderPackageController')->only([
'index', 'show', 'edit', 'update', 'destroy',
'index', 'edit', 'update', 'destroy',
])->names('order_packages');
/** api接口 **/

View File

@ -188,6 +188,24 @@ class AdminPermissionSeeder extends Seeder
'name' =>'商品分区',
'curd' => ['index', 'create', 'store', 'edit', 'update', 'destroy'],
],
'orders'=>[
'name' =>'订单管理',
'curd' => ['index', 'show'],
'children'=>[
'pay'=>['name' =>'支付订单'],
'reduce'=>['name' =>'订单改价'],
'remark'=>['name' =>'订单备注'],
'consignee'=>['name' =>'修改地址'],
'create_package'=>['name' =>'发货'],
],
],
'order_packages'=>[
'name' =>'发货单',
'curd' =>['index', 'edit', 'update', 'destroy'],
'children' => [
'failed' => ['name' =>'作废'],
],
],
];
try {
DB::begintransaction();