package com.fs.course.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.fs.course.domain.FsUserCourseComplaintRecord;
import com.fs.course.param.UserCourseComplaintRecordParam;
import com.fs.course.vo.FsUserCourseComplaintRecordPageListVO;

import java.util.List;

/**
 * 看课投诉记录Service接口
 *
 * @author fs
 * @date 2025-06-04
 */
public interface IFsUserCourseComplaintRecordService extends IService<FsUserCourseComplaintRecord>{
    /**
     * 查询看课投诉记录
     *
     * @param recordId 看课投诉记录主键
     * @return 看课投诉记录
     */
    FsUserCourseComplaintRecord selectFsUserCourseComplaintRecordByRecordId(Long recordId);

    /**
     * 查询看课投诉记录列表
     *
     * @param fsUserCourseComplaintRecord 看课投诉记录
     * @return 看课投诉记录集合
     */
    List<FsUserCourseComplaintRecordPageListVO> selectFsUserCourseComplaintRecordList(FsUserCourseComplaintRecord fsUserCourseComplaintRecord);

    /**
     * 新增看课投诉记录
     *
     * @param fsUserCourseComplaintRecord 看课投诉记录
     * @return 结果
     */
    int insertFsUserCourseComplaintRecord(FsUserCourseComplaintRecord fsUserCourseComplaintRecord);

    /**
     * 修改看课投诉记录
     *
     * @param fsUserCourseComplaintRecord 看课投诉记录
     * @return 结果
     */
    int updateFsUserCourseComplaintRecord(FsUserCourseComplaintRecord fsUserCourseComplaintRecord);

    /**
     * 批量删除看课投诉记录
     *
     * @param recordIds 需要删除的看课投诉记录主键集合
     * @return 结果
     */
    int deleteFsUserCourseComplaintRecordByRecordIds(Long[] recordIds);

    /**
     * 删除看课投诉记录信息
     *
     * @param recordId 看课投诉记录主键
     * @return 结果
     */
    int deleteFsUserCourseComplaintRecordByRecordId(Long recordId);

    /**
     * 提交投诉记录
     * @param userCourseComplaintRecordParam 入参
     * @return int
     */
    int submitRecord(UserCourseComplaintRecordParam userCourseComplaintRecordParam);

}
