6
0
Fork 0

添加用户删除动作

release
vine_liutk 2022-01-24 13:48:08 +08:00
parent 145807e9ff
commit fd5b3b0998
3 changed files with 44 additions and 5 deletions

View File

@ -190,10 +190,10 @@ class AfterSaleController extends AdminController
->tools(function (Show\Tools $tools) use ($show) { ->tools(function (Show\Tools $tools) use ($show) {
$tools->disableEdit(); $tools->disableEdit();
$tools->disableDelete(); $tools->disableDelete();
if ($show->model()->state == AfterSaleModel::STATE_VERIFY) { if ($show->model()->state == AfterSaleModel::STATE_VERIFY && Admin::user()->can('dcat.admin.after_sales.verify')) {
$tools->append(new AfterSaleVerify()); $tools->append(new AfterSaleVerify());
} }
if ($show->model()->state == AfterSaleModel::STATE_SHIPPING) { if ($show->model()->state == AfterSaleModel::STATE_SHIPPING && Admin::user()->can('dcat.admin.after_sales.shipping')) {
//拒绝确认收货 //拒绝确认收货
$tools->append(new AfterSaleShippingFail()); $tools->append(new AfterSaleShippingFail());
if ($show->model()->type == AfterSaleModel::TYPE_FILL) { if ($show->model()->type == AfterSaleModel::TYPE_FILL) {
@ -204,7 +204,7 @@ class AfterSaleController extends AdminController
$tools->append(new AfterSaleShipping()); $tools->append(new AfterSaleShipping());
} }
} }
if ($show->model()->state == AfterSaleModel::STATE_FINANCE) { if ($show->model()->state == AfterSaleModel::STATE_FINANCE && Admin::user()->can('dcat.admin.after_sales.finance')) {
if (in_array($show->model()->type, [AfterSaleModel::TYPE_REFUND_AND_RETURN, AfterSaleModel::TYPE_REFUND])) { if (in_array($show->model()->type, [AfterSaleModel::TYPE_REFUND_AND_RETURN, AfterSaleModel::TYPE_REFUND])) {
$tools->append(new AfterSaleFinance()); $tools->append(new AfterSaleFinance());
} elseif (in_array($show->model()->type, [AfterSaleModel::TYPE_CHANGE])) { } elseif (in_array($show->model()->type, [AfterSaleModel::TYPE_CHANGE])) {

View File

@ -19,6 +19,9 @@ use App\Admin\Renderable\UserFansSimpleTable;
use App\Admin\Renderable\UserInviterSimpleTable; use App\Admin\Renderable\UserInviterSimpleTable;
use App\Admin\Renderable\UserWalletLogSimpleTable; use App\Admin\Renderable\UserWalletLogSimpleTable;
use App\Admin\Repositories\User; use App\Admin\Repositories\User;
use App\Exceptions\BizException;
use App\Models\DealerOrder;
use App\Models\Order;
use App\Models\User as UserModel; use App\Models\User as UserModel;
use App\Models\UserInfo; use App\Models\UserInfo;
use Dcat\Admin\Admin; use Dcat\Admin\Admin;
@ -44,6 +47,7 @@ class UserController extends AdminController
{ {
$builder = User::with(['userInfo', 'wallet', 'balance', 'userInfo.inviterInfo.user']); $builder = User::with(['userInfo', 'wallet', 'balance', 'userInfo.inviterInfo.user']);
return Grid::make($builder, function (Grid $grid) { return Grid::make($builder, function (Grid $grid) {
$grid->model()->whereNotNull('phone');
$grid->column('id')->sortable()->if(function () { $grid->column('id')->sortable()->if(function () {
return Admin::user()->can('dcat.admin.users.show'); return Admin::user()->can('dcat.admin.users.show');
})->then(function (Column $column) { })->then(function (Column $column) {
@ -104,7 +108,7 @@ class UserController extends AdminController
//删除以及自定义操作 //删除以及自定义操作
$grid->actions(function (Grid\Displayers\Actions $actions) { $grid->actions(function (Grid\Displayers\Actions $actions) {
$actions->disableView(Admin::user()->cannot('dcat.admin.users.show')); $actions->disableView(Admin::user()->cannot('dcat.admin.users.show'));
$actions->disableDelete(Admin::user()->cannot('dcat.admin.users.destroy'));
if ($actions->row->status == 1) { if ($actions->row->status == 1) {
if (Admin::user()->can('dcat.admin.users.disable')) { if (Admin::user()->can('dcat.admin.users.disable')) {
$actions->append(new DisableUser()); $actions->append(new DisableUser());
@ -257,6 +261,41 @@ class UserController extends AdminController
}); });
} }
/**
* 修改删除判断
*
* @param [type] $id
* @return void
*/
public function destroy($id)
{
$user = UserModel::findOrFail($id);
//判断是否有下级
if (UserInfo::where('inviter_id', $user->id)->orWhere('real_inviter_id', $user->id)->exists()) {
throw new BizException('该用户存在下级,无法删除');
}
//判断是否有商城订单
if (Order::where('user_id', $user->id)->exists()) {
throw new BizException('该用户存在商城订单');
}
//判断是否有批零订单
if (DealerOrder::where('user_id', $user->id)->orWhere('consignor_id', $user->id)->exists()) {
throw new BizException('该用户存在批零订单');
}
//抹除用户手机号
$user->update([
'phone'=>null,
]);
// return response('删除成功');
return response()->json([
'status'=> true,
'data'=> [
'alert'=>true,
'message'=>'删除成功',
],
]);
}
public function users(Request $request) public function users(Request $request)
{ {
$phone = $request->input('q'); $phone = $request->input('q');

View File

@ -66,7 +66,7 @@ class AdminPermissionSeeder extends Seeder
], ],
'users'=>[ 'users'=>[
'name'=>'会员管理', 'name'=>'会员管理',
'curd'=>['index', 'show', 'create', 'store'], 'curd'=>['index', 'show', 'create', 'store', 'destroy'],
'children'=>[ 'children'=>[
'disable' =>['name'=>'禁用'], 'disable' =>['name'=>'禁用'],
'enable'=>['name' =>'启用'], 'enable'=>['name' =>'启用'],