后台会员组管理

This commit is contained in:
TL 2022-07-05 18:27:40 +08:00
parent fb7378ed52
commit 898750c916
2 changed files with 26 additions and 18 deletions

View File

@ -34,15 +34,7 @@ class CustomerGroupController extends Controller
public function store(CustomerGroupRequest $request)
{
$data = [
'total' => (int)$request->get('total', 0),
'reward_point_factor' => (float)$request->get('reward_point_factor', 0),
'use_point_factor' => (float)$request->get('use_point_factor', 0),
'discount_factor' => (float)$request->get('discount_factor', 0),
'level' => (int)$request->get('level', 0),
'descriptions' => $request->get('descriptions', [])
];
$customerGroup = CustomerGroupService::create($data);
$customerGroup = CustomerGroupService::create($request->all());
$customerGroup->load('descriptions');
return json_success('创建成功!', $customerGroup);
@ -50,15 +42,7 @@ class CustomerGroupController extends Controller
public function update(CustomerGroupRequest $request, int $id)
{
$data = [
'total' => (int)$request->get('total', 0),
'reward_point_factor' => (float)$request->get('reward_point_factor', 0),
'use_point_factor' => (float)$request->get('use_point_factor', 0),
'discount_factor' => (float)$request->get('discount_factor', 0),
'level' => (int)$request->get('level', 0),
'descriptions' => $request->get('descriptions', [])
];
$customerGroup = CustomerGroupService::update($id, $data);
$customerGroup = CustomerGroupService::update($id, $request->all());
$customerGroup->load('descriptions');
return json_success('更新成功!', $customerGroup);

View File

@ -22,6 +22,7 @@ class CustomerGroupService
*/
public static function create($data)
{
$data = self::getParams($data);
$customerGroup = CustomerGroupRepo::create($data);
$descriptions = [];
@ -36,6 +37,7 @@ class CustomerGroupService
public static function update($id, $data)
{
$data = self::getParams($data);
$customerGroup = CustomerGroupRepo::find($id);
if (!$customerGroup) {
throw New \Exception("您更新的ID不存在");
@ -53,4 +55,26 @@ class CustomerGroupService
return $customerGroup;
}
private static function getParams($data)
{
$descriptions = [];
foreach ($data['name'] as $locale => $value) {
$descriptions[$locale]['name'] = $value;
}
foreach ($data['description'] as $locale => $value) {
$descriptions[$locale]['description'] = $value;
}
$params = [
'total' => (int)$data['total'] ?? 0,
'reward_point_factor' => (float)$data['reward_point_factor'] ?? 0,
'use_point_factor' => (float)$data['use_point_factor'] ?? 0,
'discount_factor' => (float)$data['discount_factor'] ?? 0,
'level' => (int)$data['level'] ?? 0,
'descriptions' => $descriptions,
];
return $params;
}
}