package com.sv.mapper;

import com.sv.entity.VenueLessonTag;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * Mapper - 课程拥有的tag名称
 *
 * @author lihong
 * @since 2018-08-06
 */
public interface VenueLessonTagMapper {

    /**
     * 新建课程拥有的tag名称
     *
     * @param venueLessonTag 课程拥有的tag名称
     */
    void insert(VenueLessonTag venueLessonTag);

    /**
     * 更新课程拥有的tag名称
     *
     * @param venueLessonTag 课程拥有的tag名称
     */
    void update(VenueLessonTag venueLessonTag);

    /**
     * 删除课程拥有的tag名称
     *
     * @param id 编号
     * @return 删除数量
     */
    int delete(Integer id);

    /**
     * 删除课程拥有的tag名称
     *
     * @param ids 编号数组
     * @return 删除数量
     */
    int deleteByIds(Integer[] ids);

    /**
     * 查询课程拥有的tag名称
     *
     * @param id 编号
     * @return 课程拥有的tag名称
     */
    VenueLessonTag findById(Integer id);

    /**
     * 查询课程拥有的tag名称
     *
     * @return 课程拥有的tag名称集合
     */
    List<VenueLessonTag> findAll();

    void deleteByLessonId(@Param("lessonId") Integer lessonId);

    void insertTags(@Param("lessonId") Integer lessonId,@Param("tags") List<String> tags);

    /**
     * api
     * 查询课程拥有的tag
     */
    List<VenueLessonTag> findByLessonId(Integer lessonId);
}