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->disableEdit();
$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());
}
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());
if ($show->model()->type == AfterSaleModel::TYPE_FILL) {
@ -204,7 +204,7 @@ class AfterSaleController extends AdminController
$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])) {
$tools->append(new AfterSaleFinance());
} 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\UserWalletLogSimpleTable;
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\UserInfo;
use Dcat\Admin\Admin;
@ -44,6 +47,7 @@ class UserController extends AdminController
{
$builder = User::with(['userInfo', 'wallet', 'balance', 'userInfo.inviterInfo.user']);
return Grid::make($builder, function (Grid $grid) {
$grid->model()->whereNotNull('phone');
$grid->column('id')->sortable()->if(function () {
return Admin::user()->can('dcat.admin.users.show');
})->then(function (Column $column) {
@ -104,7 +108,7 @@ class UserController extends AdminController
//删除以及自定义操作
$grid->actions(function (Grid\Displayers\Actions $actions) {
$actions->disableView(Admin::user()->cannot('dcat.admin.users.show'));
$actions->disableDelete(Admin::user()->cannot('dcat.admin.users.destroy'));
if ($actions->row->status == 1) {
if (Admin::user()->can('dcat.admin.users.disable')) {
$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)
{
$phone = $request->input('q');

View File

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