Browse Source

新增商品banner

master
Lemon 5 years ago
parent
commit
5181d604d5
  1. 14
      app/Controller/v3/GoodsController.php
  2. 6
      app/Model/v3/GoodsBanner.php
  3. 99
      app/Service/v3/Implementations/GoodsService.php
  4. 1
      app/Service/v3/Interfaces/GoodsServiceInterface.php

14
app/Controller/v3/GoodsController.php

@ -109,6 +109,13 @@ class GoodsController extends BaseController
$data['is_infinite'] = $this->request->input('is_infinite',0);
$data['user_id'] = $this->request->input('user_id',0);
$res = $this->goodsService->update($data);
$banners = $this->request->input('banner',0);
if(!empty($banners)){
$banners = explode(',',$banners);
foreach ($banners as $banner){
$this->goodsService->bannerCreate($data['id'],$banner,1);
}
}
return $this->success($res);
}
@ -157,6 +164,13 @@ class GoodsController extends BaseController
$data['is_infinite'] = $this->request->input('is_infinite',0);
$data['user_id'] = $this->request->input('user_id',0);
$res = $this->goodsService->create($data);
$banners = $this->request->input('banner',0);
if(!empty($banners)){
$banners = explode(',',$banners);
foreach ($banners as $banner){
$this->goodsService->bannerCreate($res['id'],$banner,1);
}
}
return $this->success($res);
}

6
app/Model/v3/GoodsBanner.php

@ -24,6 +24,12 @@ class GoodsBanner extends Model
'banner_url',
];
protected $fillable = [
'id',
'goods_id',
'path',
'type'
];
public function getBannerUrlAttribute()
{

99
app/Service/v3/Implementations/GoodsService.php

@ -6,7 +6,6 @@ use App\Commons\Log;
use App\Constants\v3\ErrorCode;
use App\Constants\v3\LogLabel;
use App\Exception\ErrorCodeException;
use App\Model\v3\Banner;
use App\Service\v3\Interfaces\GoodsInventoryServiceInterface;
use App\Service\v3\Interfaces\GoodsServiceInterface;
use App\Model\v3\Goods;
@ -109,28 +108,28 @@ class GoodsService implements GoodsServiceInterface
'on_sale' => $params['on_sale'],
'is_infinite' => $params['is_infinite']
];
$this->log->event(LogLabel::CREATE_GOODS_LOG, ['logData' => json_encode(
[
'id' => $params['id'],
'market_id' => $params['market_id'],
'store_id' => $params['store_id'],
'name' => $params['name'],
'category_id' => $params['category_id'],
'goods_category_id' => $params['goods_category_id'],
'goods_unit' => $params['goods_unit'],
'price' => $params['price'],
'original_price' => $params['original_price'],
'inventory' => $params['inventory'],
'restrict_num' => $params['restrict_num'],
'start_num' => $params['start_num'],
'spec' => $params['spec'],
'tags' => $params['tags'],
'remark' => $params['remark'],
'on_sale' => $params['on_sale'],
'is_infinite' => $params['is_infinite'],
'user_id' => $params['user_id']
]
)]);
// $this->log->event(LogLabel::CREATE_GOODS_LOG, ['logData' => json_encode(
// [
// 'id' => $params['id'],
// 'market_id' => $params['market_id'],
// 'store_id' => $params['store_id'],
// 'name' => $params['name'],
// 'category_id' => $params['category_id'],
// 'goods_category_id' => $params['goods_category_id'],
// 'goods_unit' => $params['goods_unit'],
// 'price' => $params['price'],
// 'original_price' => $params['original_price'],
// 'inventory' => $params['inventory'],
// 'restrict_num' => $params['restrict_num'],
// 'start_num' => $params['start_num'],
// 'spec' => $params['spec'],
// 'tags' => $params['tags'],
// 'remark' => $params['remark'],
// 'on_sale' => $params['on_sale'],
// 'is_infinite' => $params['is_infinite'],
// 'user_id' => $params['user_id']
// ]
// )]);
return Goods::create($data);
}
@ -161,28 +160,28 @@ class GoodsService implements GoodsServiceInterface
'on_sale' => $params['on_sale'],
'is_infinite' => $params['is_infinite']
]);
$this->log->event(LogLabel::UPDATE_GOODS_LOG, ['logData' => json_encode(
[
'id' => $params['id'],
'market_id' => $params['market_id'],
'store_id' => $params['store_id'],
'name' => $params['name'],
'category_id' => $params['category_id'],
'goods_category_id' => $params['goods_category_id'],
'goods_unit' => $params['goods_unit'],
'price' => $params['price'],
'original_price' => $params['original_price'],
'inventory' => $params['inventory'],
'restrict_num' => $params['restrict_num'],
'start_num' => $params['start_num'],
'spec' => $params['spec'],
'tags' => $params['tags'],
'remark' => $params['remark'],
'on_sale' => $params['on_sale'],
'is_infinite' => $params['is_infinite'],
'user_id' => $params['user_id']
]
)]);
// $this->log->event(LogLabel::UPDATE_GOODS_LOG, ['logData' => json_encode(
// [
// 'id' => $params['id'],
// 'market_id' => $params['market_id'],
// 'store_id' => $params['store_id'],
// 'name' => $params['name'],
// 'category_id' => $params['category_id'],
// 'goods_category_id' => $params['goods_category_id'],
// 'goods_unit' => $params['goods_unit'],
// 'price' => $params['price'],
// 'original_price' => $params['original_price'],
// 'inventory' => $params['inventory'],
// 'restrict_num' => $params['restrict_num'],
// 'start_num' => $params['start_num'],
// 'spec' => $params['spec'],
// 'tags' => $params['tags'],
// 'remark' => $params['remark'],
// 'on_sale' => $params['on_sale'],
// 'is_infinite' => $params['is_infinite'],
// 'user_id' => $params['user_id']
// ]
// )]);
return $goods;
}
@ -213,4 +212,14 @@ class GoodsService implements GoodsServiceInterface
{
return GoodsBanner::query()->where('id',$bannerId)->delete();
}
public function bannerCreate($goodsId,$path,$type = 1)
{
$date = [
'goods_id' => $goodsId,
'path' => $path,
'type' => $type
];
return GoodsBanner::create($date);
}
}

1
app/Service/v3/Interfaces/GoodsServiceInterface.php

@ -17,4 +17,5 @@ interface GoodsServiceInterface
public function getTags();
public function updateOnSale($goodsId);
public function bannerDelete($bannerId);
public function bannerCreate($goodsId, $path, $type = 1);
}
Loading…
Cancel
Save