feat : spu
This commit is contained in:
@@ -168,6 +168,7 @@ class GoodCache
|
||||
private function buildData(&$list): mixed
|
||||
{
|
||||
$spuIds = array_column($list, 'id');
|
||||
$spuImage = array_column($list, 'image_id');
|
||||
|
||||
$skuList = $this->skuModel->getListBySpuIds($spuIds);
|
||||
|
||||
@@ -176,7 +177,7 @@ class GoodCache
|
||||
$skuList = $skuList->toArray();
|
||||
|
||||
$imageIdArr = array_column($skuList,'image_ids');
|
||||
$imageList = $this->getOssObjects($imageIdArr);
|
||||
$imageList = $this->getOssObjects(array_merge($spuImage,$imageIdArr));
|
||||
|
||||
$chefIds = array_column($skuList,'chef_id');
|
||||
$chefList = $this->adminUserModel->getDataByIds($chefIds);
|
||||
@@ -209,6 +210,7 @@ class GoodCache
|
||||
|
||||
foreach ($list as &$item) {
|
||||
$item['sku_list'] = $skuListArr[$item['id']] ?? [];
|
||||
$item['spu_image_url'] = $imageList[$item['image_id']] ?? '';
|
||||
$item['image_list'] = $imageArr[$item['id']] ?? [];
|
||||
$item['price'] = !empty($price[$item['id']]) ? (min($price[$item['id']]) ?? 0) : 0;
|
||||
}
|
||||
|
||||
@@ -17,6 +17,7 @@ use Hyperf\DbConnection\Model\Model;
|
||||
* @property int $kitchen_id
|
||||
* @property int $chef_id
|
||||
* @property int $caterer_id
|
||||
* @property int $image_id
|
||||
* @property string $title
|
||||
* @property string $sub_title
|
||||
* @property int $category_id
|
||||
@@ -85,7 +86,7 @@ class Spu extends Model
|
||||
->where('type',$type)
|
||||
->where('saleable',GoodCode::LISTING)
|
||||
->orderBy('sort')
|
||||
->select(['id','cycle_id','chef_id','title','title','sub_title','category_id','favorable'])
|
||||
->select(['id','cycle_id','chef_id','title','title','sub_title','category_id','favorable','image_id'])
|
||||
->get();
|
||||
}
|
||||
|
||||
|
||||
@@ -156,6 +156,9 @@ class SpuService extends BaseService
|
||||
|
||||
if (!empty($info)) throw new ErrException('该菜品在当前城市已存在');
|
||||
|
||||
$imageId = $this->request->input('image_id');
|
||||
|
||||
$this->updateOssObjects([$imageId]);
|
||||
|
||||
$insertModel = new Spu();
|
||||
|
||||
@@ -170,6 +173,7 @@ class SpuService extends BaseService
|
||||
$insertModel->saleable = $this->request->input('saleable');
|
||||
$insertModel->type = $this->request->input('type');
|
||||
$insertModel->sort = $this->request->input('sort');
|
||||
$insertModel->image_id = $imageId;
|
||||
$insertModel->favorable = GoodCode::NOT_FAVORABLE;
|
||||
|
||||
if (!$insertModel->save()) throw new ErrException('添加菜品失败');
|
||||
@@ -233,6 +237,8 @@ class SpuService extends BaseService
|
||||
|
||||
$this->checkInfo();
|
||||
|
||||
|
||||
|
||||
$kitchenId = (int)$this->request->input('kitchen_id');
|
||||
$oldKitchenId = (int)$info->kitchen_id;
|
||||
|
||||
@@ -245,6 +251,12 @@ class SpuService extends BaseService
|
||||
$info->saleable = $this->request->input('saleable');
|
||||
$info->type = $this->request->input('type');
|
||||
$info->sort = $this->request->input('sort');
|
||||
$requestOssId = $this->request->input('image_id',0);
|
||||
if ($requestOssId != $info->image_id) {
|
||||
$info->image_id = $requestOssId;
|
||||
$this->updateOssObjects([$requestOssId]);
|
||||
$this->updateOssObjectsDisable([$info->image_ids]);
|
||||
}
|
||||
|
||||
if (!$info->save()) throw new ErrException('修改菜品失败');
|
||||
|
||||
|
||||
Reference in New Issue
Block a user