后台客户管理

This commit is contained in:
TL 2022-08-11 19:12:30 +08:00
parent e247632af2
commit 0bf5b06163
2 changed files with 35 additions and 4 deletions

View File

@ -13,6 +13,7 @@ namespace Beike\Admin\Http\Controllers;
use Beike\Admin\Http\Requests\CustomerRequest;
use Beike\Admin\Http\Resources\AddressResource;
use Beike\Admin\Http\Resources\CustomerGroupDetail;
use Beike\Admin\Http\Resources\CustomerResource;
use Beike\Admin\Services\CustomerService;
use Beike\Models\Customer;
@ -29,8 +30,8 @@ class CustomerController extends Controller
$customers = CustomerRepo::list($request->only(['name', 'email', 'status', 'from', 'customer_group_id']));
$data = [
'customers' => CustomerResource::collection($customers),
'customer_groups' => CustomerGroupRepo::list(),
'customers' => CustomerResource::collection($customers)->jsonSerialize(),
'customer_groups' => CustomerGroupDetail::collection(CustomerGroupRepo::list())->jsonSerialize(),
];
return view('admin::pages.customers.index', $data);
@ -49,8 +50,8 @@ class CustomerController extends Controller
$addresses = AddressRepo::listByCustomer($customer->id);
$data = [
'customer' => $customer,
'customer_groups' => CustomerGroupRepo::list(),
'addresses' => AddressResource::collection($addresses),
'customer_groups' => CustomerGroupDetail::collection(CustomerGroupRepo::list())->jsonSerialize(),
'addresses' => AddressResource::collection($addresses)->jsonSerialize(),
'countries' => CountryRepo::all(),
'country_id' => system_setting('base.country_id'),
'_redirect' => $this->getRedirect(),

View File

@ -0,0 +1,30 @@
<?php
namespace Beike\Admin\Http\Resources;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;
class CustomerGroupDetail extends JsonResource
{
/**
* Transform the resource into an array.
*
* @param Request $request
* @return array
*/
public function toArray($request): array
{
$data = [
'id' => $this->id,
'total' => $this->total,
'reward_point_factor' => $this->reward_point_factor,
'use_point_factor' => $this->use_point_factor,
'discount_factor' => $this->discount_factor,
'level' => $this->level,
'name' => $this->description->name ?? '',
];
return $data;
}
}