package com.seer.teach.mall.app.good.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.seer.teach.common.PageListBean;
import com.seer.teach.mall.entity.GoodsCollectEntity;
import com.seer.teach.mall.request.GoodsCollectPageReq;
import com.seer.teach.mall.request.GoodsCollectReq;
import com.seer.teach.mall.response.GoodsCollectResp;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author Sir-G
 * @since 2025-06-10
 */
public interface IAppCollectService extends IService<GoodsCollectEntity> {

    /**
     * 收藏商品
     * @param params
     * @return
     */
    void collectGoods(GoodsCollectReq params);

    /**
     * 收藏商品分页查询
     * @param params
     * @return
     */
    PageListBean<GoodsCollectResp> getGoodsCollectPage(GoodsCollectPageReq params);

    /**
     * 取消收藏商品
     * @param goodIds
     * @return
     */
    boolean cancelCollect(List<Integer> goodIds);

    /**
     * 获取收藏商品详情
     *
     * @param userId
     * @param params
     * @return 收藏商品详情
     */
    GoodsCollectResp getGoodsCollect(int userId, GoodsCollectReq params);
}
