添加后台客户管理 hook
This commit is contained in:
parent
0b118df670
commit
1b1fbf3a4c
|
|
@ -62,8 +62,13 @@ class CustomerController extends Controller
|
|||
|
||||
public function store(CustomerRequest $request)
|
||||
{
|
||||
$data = $request->only(['email', 'name', 'password', 'status', 'customer_group_id']);
|
||||
$customer = CustomerService::create($data);
|
||||
$requestData = $request->all();
|
||||
|
||||
hook_action('admin.customer.store.before', ['request_data' => $requestData]);
|
||||
|
||||
$customer = CustomerService::create($requestData);
|
||||
|
||||
hook_action('admin.customer.store.after', ['customer_id' => $customer->id, 'request_data' => $requestData]);
|
||||
|
||||
return json_success(trans('common.success'), new CustomerResource($customer));
|
||||
}
|
||||
|
|
@ -87,13 +92,17 @@ class CustomerController extends Controller
|
|||
|
||||
public function update(CustomerRequest $request, int $customerId)
|
||||
{
|
||||
$data = $request->only(['email', 'name', 'status', 'customer_group_id']);
|
||||
if ($request->get('password')) {
|
||||
$data['password'] = $request->get('password');
|
||||
$requestData = $request->all();
|
||||
$password = $requestData['password'] ?? '';
|
||||
if (empty($password)) {
|
||||
unset($requestData['password']);
|
||||
}
|
||||
$customer = CustomerRepo::update($customerId, $data);
|
||||
|
||||
hook_action('admin.customer.update.after', $customer);
|
||||
hook_action('admin.customer.update.before', ['customer_id' => $customerId, 'request_data' => $requestData]);
|
||||
|
||||
$customer = CustomerRepo::update($customerId, $requestData);
|
||||
|
||||
hook_action('admin.customer.update.after', ['customer_id' => $customerId, 'request_data' => $requestData]);
|
||||
|
||||
return json_success(trans('common.updated_success'), $customer);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
namespace Beike\Admin\Http\Resources;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Resources\Json\JsonResource;
|
||||
|
||||
class CustomerResource extends JsonResource
|
||||
|
|
@ -9,8 +10,9 @@ class CustomerResource extends JsonResource
|
|||
/**
|
||||
* Transform the resource into an array.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return array|\Illuminate\Contracts\Support\Arrayable|\JsonSerializable
|
||||
* @param Request $request
|
||||
* @return mixed
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function toArray($request)
|
||||
{
|
||||
|
|
@ -27,6 +29,11 @@ class CustomerResource extends JsonResource
|
|||
'delete' => admin_route('customers.destroy', $this->id),
|
||||
];
|
||||
|
||||
return $data;
|
||||
$params = [
|
||||
'object' => $this,
|
||||
'data' => $data,
|
||||
];
|
||||
|
||||
return hook_filter('resource.customer', $params)['data'];
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue