diff --git a/app/AdminAgent/Controllers/OrderController.php b/app/AdminAgent/Controllers/OrderController.php index c196ad4..12771c5 100644 --- a/app/AdminAgent/Controllers/OrderController.php +++ b/app/AdminAgent/Controllers/OrderController.php @@ -32,6 +32,8 @@ class OrderController extends AdminController $grid->disableBatchDelete(); $grid->disableCreateButton(); $grid->disableRowSelector(); + $grid->disableEditButton(); + $grid->disableQuickEditButton(false); $grid->model()->where('agent_id', Admin::user()->id); @@ -136,6 +138,7 @@ class OrderController extends AdminController { return Show::make($id, new Order(['product.supplier:id,name']), function (Show $show) { $show->disableDeleteButton(); + $show->disableEditButton(); //不允许查看非自己的数据 if ($show->model()->agent_id != Admin::user()->id) { @@ -189,15 +192,18 @@ class OrderController extends AdminController return $form->response()->error('数据不存在'); } - //不允许编辑的字段 - $form->ignore(['id', 'user_id', 'agent_id', 'agent_product_id', 'product_id', 'product_ids', 'order_no', - 'pay_type', 'paid_money', 'created_at', 'updated_at', 'deleted_at']); + //仅允许编辑name,mobile字段 + $forbid_field = array_diff(array_keys($form->input()), ['name', 'mobile']); + $form->ignore($forbid_field); + $form->deleteInput($forbid_field); //退款不能直接编辑 - if (in_array($form->status, [OrderStatus::REFUNDED, OrderStatus::REFUSED_REFUND])) { - return $form->response()->error('请通过订单列表的”通过“和”拒绝“按钮来审核退款'); - } else if ($form->status != OrderStatus::OFFLINE_PAID) { - return $form->response()->error('操作禁止'); + if ($form->status !== null) { + if (in_array($form->status, [OrderStatus::REFUNDED, OrderStatus::REFUSED_REFUND])) { + return $form->response()->error('请通过订单列表的”通过“和”拒绝“按钮来审核退款'); + } else if ($form->status != OrderStatus::OFFLINE_PAID) { + return $form->response()->error('操作禁止'); + } } })->saved(function (Form $form) { return $form->response()->success('更新成功')->refresh();