package ink.wgink.module.examine.service.question;

import ink.wgink.module.examine.pojo.dtos.question.QuestionTypeQuestionDTO;

import java.util.List;

/**
 * @Description: 试题类型与试题
 * @Author: WenG
 * @Date: 2022/5/15 17:29
 * @Version: 1.0
 **/
public interface IQuestionTypeQuestionService {

    /**
     * 新增
     *
     * @param questionId
     * @param questionTypeId
     */
    void save(String questionId, String questionTypeId);

    /**
     * 新增
     *
     * @param questionId
     * @param questionTypeIds
     */
    void save(String questionId, List<String> questionTypeIds);

    /**
     * 删除
     *
     * @param questionId
     */
    void deleteByQuestionId(String questionId);

    /**
     * 删除
     *
     * @param questionIds
     */
    void deleteByQuestionIds(List<String> questionIds);

    /**
     * 删除
     *
     * @param questionTypeId
     */
    void deleteByQuestionTypeId(String questionTypeId);

    /**
     * 删除
     *
     * @param questionTypeIds
     */
    void deleteByQuestionTypeIds(List<String> questionTypeIds);

    /**
     * 试题类型ID列表
     *
     * @param questionId
     * @return
     */
    List<String> listQuestionTypeIdByQuestionId(String questionId);

    /**
     * 试题类型ID列表
     *
     * @param questionIds
     * @return
     */
    List<String> listQuestionTypeIdByQuestionIds(List<String> questionIds);

    /**
     * 试题类型列表
     *
     * @param questionId
     * @return
     */
    List<QuestionTypeQuestionDTO> listByQuestionId(String questionId);

    /**
     * 试题类型列表
     *
     * @param questionIds
     * @return
     */
    List<QuestionTypeQuestionDTO> listByQuestionIds(List<String> questionIds);

}
