package com.ruoyi.system.mapper;

import java.util.List;
import com.ruoyi.system.domain.ClewMaterial;

/**
 * 素材Mapper接口
 *
 * @author ruoyi
 * @date 2023-10-07
 */
public interface ClewMaterialMapper
{
    /**
     * 查询素材
     *
     * @param id 素材主键
     * @return 素材
     */
    public ClewMaterial selectClewMaterialById(Long id);

    /**
     * 查询素材列表
     *
     * @param clewMaterial 素材
     * @return 素材集合
     */
    public List<ClewMaterial> selectClewMaterialList(ClewMaterial clewMaterial);

    /**
     * 新增素材
     *
     * @param clewMaterial 素材
     * @return 结果
     */
    public int insertClewMaterial(ClewMaterial clewMaterial);

    /**
     * 修改素材
     *
     * @param clewMaterial 素材
     * @return 结果
     */
    public int updateClewMaterial(ClewMaterial clewMaterial);

    /**
     * 删除素材
     *
     * @param id 素材主键
     * @return 结果
     */
    public int deleteClewMaterialById(Long id);

    /**
     * 批量删除素材
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteClewMaterialByIds(String[] ids);

    /**
     * 增加素材点击次数
     *
     * @param id 素材主键
     * @return 结果
     */
    public int incrementClickCount(Long id);

    /**
     * 增加素材提交次数
     *
     * @param id 素材主键
     * @return 结果
     */
    public int incrementSubmitCount(Long id);

    /**
     * 更新素材有效率
     *
     * @param id 素材主键
     * @return 结果
     */
    public int updateEfficiencyRate(Long id);
}
