feat: cycle

This commit is contained in:
2025-01-08 11:28:08 +08:00
parent fd70dfabf5
commit 4c10e8ed71
5 changed files with 140 additions and 9 deletions

View File

@@ -27,9 +27,33 @@ class SkuService extends BaseService
#[Inject]
protected Sku $skuModel;
public function handle()
/**
* @return array
*/
public function handle(): array
{
//todo Write logic
$limit = (int)$this->request->input('limit', 10);
$spuId = (int)$this->request->input('spu_id');
$list = $this->skuModel->where('spu_id',$spuId)->paginate($limit)->toArray();
$imageIdArr = array_column($list['data'],'image_ids');
$imageIds = array_unique(explode(',',implode(',',$imageIdArr)));
$imageList = $this->getOssObjects($imageIds);
foreach ($list['data'] as &$item) {
$imageOneArr = [];
foreach (explode(',',$item['image_ids']) as $imageId) {
$imageOneArr[] = [
'id' => $imageId,
'url' => $imageList[$imageId]['url']
];
}
$item['image_list'] = $imageOneArr;
}
return $this->return->success('success', ['list' => $list]);
}
/**
@@ -93,7 +117,7 @@ class SkuService extends BaseService
if ($skuInfo->order_num > 0 && $skuInfo->price != $this->request->input('price')) throw new ErrException('已有订单不可改价,退单后即可操作');
else $skuInfo->price = $this->request->input('price');
$requestOssIds = $this->request->input('oss_ids');
$requestOssIds = $this->request->input('image_ids');
$updateOssIds = array_diff(explode(',',$requestOssIds), explode(',',$skuInfo->image_ids));
$delOssIds = array_diff(explode(',',$skuInfo->image_ids), explode(',',$requestOssIds));
@@ -113,7 +137,8 @@ class SkuService extends BaseService
if (!$skuInfo->save()) throw new ErrException('修改失败');
if ($forceCleanStockCache == 1) return $this->return->success();//todo 修改缓存
if ($forceCleanStockCache == 1) return $this->return->success();
//todo 修改缓存
return $this->return->success();
}
@@ -153,7 +178,7 @@ class SkuService extends BaseService
$res = $skuInfo->toArray();
$res['image_list'] = $imageList;
$res['image_list'] = array_values($imageList);
return $this->return->success('success',$res);
}