package com.pcloud.book.applet.mapper;

import com.pcloud.book.applet.dto.AppletBookScoreTagInfoDTO;
import com.pcloud.book.applet.dto.AppletBookTagUserExportDTO;
import com.pcloud.book.applet.dto.AppletBookUserScoreExportDTO;
import com.pcloud.book.applet.entity.AppletBookUserScore;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

import java.util.List;

@Mapper
@Component
public interface AppletBookUserScoreMapper {
    int deleteByPrimaryKey(Long id);

    int insert(AppletBookUserScore record);

    int insertSelective(AppletBookUserScore record);

    AppletBookUserScore selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(AppletBookUserScore record);

    int updateByPrimaryKey(AppletBookUserScore record);

    Long selectPrimaryKey(AppletBookUserScore appletBookUserScore);

    List<AppletBookScoreTagInfoDTO> getSubTagChosen(@Param("wechatUserId") Long wechatUserId, @Param("bookId") Long bookId, @Param("channelId") Long channelId, @Param("adviserId") Long adviserId);

    void deleteChosen(AppletBookUserScore appletBookUserScore);

    List<AppletBookUserScoreExportDTO> listBookUserScore();

    List<AppletBookTagUserExportDTO> listTagUser();

    void deleteChosenTag(AppletBookUserScore appletBookUserScore);
}