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

import com.seer.teach.common.PageListBean;
import com.seer.teach.mall.entity.GoodsCommentEntity;
import com.baomidou.mybatisplus.extension.service.IService;
import com.seer.teach.mall.request.GoodsCommentListCreateReq;
import com.seer.teach.mall.request.GoodsCommentPageReqVO;
import com.seer.teach.mall.response.GoodsCommentResp;

/**
 * <p>
 * 商品评论 服务类
 * </p>
 *
 * @author Wang
 * @since 2025-07-03 10:22:05
 */
public interface IAppGoodsCommentService extends IService<GoodsCommentEntity> {

    /**
     * 创建商品评论列表
     *
     * @param reqVO 商品评论列表创建请求对象，包含创建商品评论列表所需的信息
     * @return 返回一个布尔值，表示列表是否成功创建
     */
    boolean createList(GoodsCommentListCreateReq reqVO);

    /**
     * 获取用户商品评论分页列表
     * 根据用户ID和商品评论分页请求对象，获取该用户的商品评论分页列表
     *
     * @param userId 用户ID，用于确定哪个用户的商品评论要获取
     * @param isVisible 是否显示隐藏的评论，true表示显示，false表示隐藏
     * @param reqVO  商品评论分页请求对象，包含分页查询所需的信息
     * @return 返回一个商品评论响应的分页列表对象，包含查询到的商品评论信息
     */
    PageListBean<GoodsCommentResp> getOrderPage(Integer userId,Boolean isVisible, GoodsCommentPageReqVO reqVO);

}