package com.corewing.app.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.corewing.app.entity.Feedback;

import java.util.List;

/**
 * 问题反馈 Service 接口
 */
public interface FeedbackService extends IService<Feedback> {

    /**
     * 创建反馈
     *
     * @param feedback 反馈信息
     * @return 是否成功
     */
    boolean createFeedback(Feedback feedback);

    /**
     * 根据用户ID查询反馈列表
     *
     * @param userId 用户ID
     * @return 反馈列表
     */
    List<Feedback> listByUserId(Long userId);

    /**
     * 分页查询反馈列表
     *
     * @param page         分页参数
     * @param userId       用户ID（可选）
     * @param feedbackType 问题类型（可选）
     * @param status       状态（可选）
     * @return 分页结果
     */
    IPage<Feedback> pageList(Page<Feedback> page, Long userId, String feedbackType, Integer status);

    /**
     * 更新反馈状态
     *
     * @param id     反馈ID
     * @param status 状态
     * @return 是否成功
     */
    boolean updateStatus(Long id, Integer status);
}
