package jnpf.cultivate.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import jnpf.entity.cultivate.TeachingSkill;
import jnpf.model.cultivate.v2.exam.vo.ImportObjectVo;
import jnpf.model.cultivate.v2.exam.vo.SkillVo;
import jnpf.model.cultivate.vo.teaching.SkillInfoVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface TeachingSkillMapper extends BaseMapper<TeachingSkill> {

    /**
     * 查询重复的技能点index
     * @param list 技能点导入数据
     * @return java.util.List<java.lang.Integer>
     */
    List<Integer> getDistinctCountBatch(@Param("list") List<ImportObjectVo> list);

    /**
     * 查询技能点列表[下拉]
     * @param skillId 技能点id
     * @param categoryId 分类id(为null查询所有的技能点, 为-1查询没有分类的技能点)
     * @return java.util.List<jnpf.model.cultivate.v2.exam.vo.SkillVo>
     */
    List<SkillVo> getDownSkillList(@Param("skillId") String skillId, @Param("categoryId") String categoryId);

    /**
     * 查询所有技能点
     * @return java.util.List<jnpf.model.cultivate.vo.teaching.SkillInfoVo>
     */
    List<SkillInfoVo> getAllSkillList();

    /**
     * 查询有子级的分类
     * @param categoryIds 分类ids
     * @return java.util.List<java.lang.String>
     */
    List<String> getCategoryHasChild(@Param("categoryIds") List<String> categoryIds);
}