1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <?php
- namespace app\api\controller\mall;
- use app\common\controller\Api;
- use app\common\model\GoodsSku;
- /**
- * 商城收藏接口
- * @inheritdoc
- */
- class GoodsFav extends Api
- {
- protected $noNeedRight = '*';
- /**
- * 收藏商品列表
- * @ApiParams (name=page,dexcription=分页)
- * @ApiParams (name=limit,dexcription=分页)
- */
- public function index(){
- $user=$this->auth->getUser();
- $list=$user->favourite()
- ->order('id','desc')
- ->with(['goods'])
- ->paginate(input('limit',15))->toArray();
- foreach ($list['data'] as &$item){
- $item['sku']=GoodsSku::find($item['goods_sku_id']);
- }
- $this->success('',$list);
- }
- /**
- * 添加收藏
- * @ApiParams (name=goods_id,dexcription=商品id)
- * @ApiParams (name=goods_sku_id,dexcription=商品skuid)
- */
- public function store(){
- $user=$this->auth->getUser();
- $data=$this->_validate([
- 'goods_id'=>['require'],
- 'goods_sku_id'=>['require'],
- ]);
- GoodsSku::where('goods_id',$data['goods_id'])->where('id',$data['goods_sku_id'])->findOrFail();
- if(!$user->favourite()->where('fav_id',$data['goods_id'])->where('goods_sku_id',$data['goods_sku_id'])->find()){
- $user->favourite()->save([
- 'fav_type'=>'goods',
- 'fav_id'=>$data['goods_id'],
- 'goods_sku_id'=>$data['goods_sku_id'],
- ]);
- }
- $this->success();
- }
- /**
- * 删除收藏
- * @ApiParams (name=goods_id,dexcription=商品id)
- * @ApiParams (name=goods_sku_id,dexcription=商品skuid)
- */
- public function del(){
- $user=$this->auth->getUser();
- $data=$this->_validate([
- 'goods_id'=>['require'],
- 'goods_sku_id'=>['require'],
- ]);
- $user->favourite()->where('fav_id',$data['goods_id'])->where('goods_sku_id',$data['goods_sku_id'])->delete();
- $this->success();
- }
- }
|