<?php
// +----------------------------------------------------------------------
// | likeshop开源商城系统
// +----------------------------------------------------------------------
// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
// | gitee下载:https://gitee.com/likeshop_gitee
// | github下载:https://github.com/likeshop-github
// | 访问官网:https://www.likeshop.cn
// | 访问社区:https://home.likeshop.cn
// | 访问手册:http://doc.likeshop.cn
// | 微信公众号:likeshop技术社区
// | likeshop系列产品在gitee、github等公开渠道开源版本可免费商用,未经许可不能去除前后端官方版权标识
// |  likeshop系列产品收费版本务必购买商业授权,购买去版权授权后,方可去除前后端官方版权标识
// | 禁止对系统程序代码以任何目的,任何形式的再发布
// | likeshop团队版权所有并拥有最终解释权
// +----------------------------------------------------------------------
// | author: likeshop.cn.team
// +----------------------------------------------------------------------
namespace app\api\controller;

use app\common\basics\Api;
use app\common\server\JsonServer;
use think\facade\Validate;
use app\api\logic\GoodsCollectLogic;


class GoodsCollect extends Api
{
    /**
     * 商品: 收藏/取消收藏
     */
    public function changeStatus()
    {
        if($this->request->isPost()) {
            $goodsId = $this->request->post('goods_id', '', 'trim');
            $validate = Validate::rule('goods_id', 'require|integer|gt:0');
            if(!$validate->check(['goods_id'=>$goodsId])) {
                return JsonServer::error($validate->getError());
            }
            $data= GoodsCollectLogic::changeStatus($goodsId, $this->user_id);
            if($data['result']) {
                return JsonServer::success($data['msg']);
            }
            return JsonServer::error('操作失败');
        }else{
            return JsonServer::error('请求方式错误');
        }
    }

    /**
     * 商品收藏列表
     */
    public function lists()
    {
        $get = $this->request->get();
        $get['page_no'] = $this->page_no;
        $get['page_size'] = $this->page_size;
        $get['user_id'] = $this->user_id;

        $data = GoodsCollectLogic::lists($get);
        return JsonServer::success('', $data);
    }
}