package cc.mrbird.febs.ai.service; import cc.mrbird.febs.ai.entity.AiMemberAnswer; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; /** * AI用户答题记录 Service接口 * * @author yourname * @date 2025-07-29 */ public interface AiMemberAnswerService extends IService { /** * 根据ID查询答题记录 * @param id 答题记录ID * @return 答题记录信息 */ AiMemberAnswer getById(String id); /** * 根据用户ID查询答题记录列表 * @param memberId 用户ID * @return 答题记录列表 */ List getByMemberId(String memberId); /** * 根据产品ID查询答题记录列表 * @param productId 产品ID * @return 答题记录列表 */ List getByProductId(String productId); /** * 根据公司ID查询答题记录列表 * @param companyId 公司ID * @return 答题记录列表 */ List getByCompanyId(String companyId); /** * 根据状态查询答题记录列表 * @param state 状态 0-进行中 1-已结束 * @return 答题记录列表 */ List getByState(Integer state); /** * 根据用户ID和状态查询答题记录列表 * @param memberId 用户ID * @param state 状态 0-进行中 1-已结束 * @return 答题记录列表 */ List getByMemberIdAndState(String memberId, Integer state); /** * 根据公司ID和用户ID查询答题记录列表 * @param companyId 公司ID * @param memberId 用户ID * @return 答题记录列表 */ List getByCompanyIdAndMemberId(String companyId, String memberId); /** * 根据评分范围查询答题记录列表 * @param minScore 最低分 * @param maxScore 最高分 * @return 答题记录列表 */ List getByScoreRange(Integer minScore, Integer maxScore); /** * 保存答题记录 * @param aiMemberAnswer 答题记录实体 * @return 是否保存成功 */ boolean saveAnswer(AiMemberAnswer aiMemberAnswer); /** * 批量保存答题记录 * @param answers 答题记录列表 * @return 是否保存成功 */ boolean saveBatchAnswers(List answers); /** * 更新答题记录 * @param aiMemberAnswer 答题记录实体 * @return 是否更新成功 */ boolean updateAnswer(AiMemberAnswer aiMemberAnswer); /** * 根据ID删除答题记录 * @param id 答题记录ID * @return 是否删除成功 */ boolean deleteById(String id); /** * 根据用户ID删除答题记录 * @param memberId 用户ID * @return 是否删除成功 */ boolean deleteByMemberId(String memberId); }