package org.jeecg.modules.bytedance.advertise.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.bytedance.advertise.entity.ByteDanceVideoInfo;

import java.util.List;

/**
 * @Description: 今日头条视频素材信息
 * @Author: jeecg-boot
 * @Date: 2019-07-29
 * @Version: V1.0
 */
public interface ByteDanceVideoInfoMapper extends BaseMapper<ByteDanceVideoInfo> {
    void replaceBatch(@Param(value = "videoList") List<ByteDanceVideoInfo> videoInfoList);
    void updateVideoVerticalType();
    void updateVideoHorizonType();

    /**
     * 查询规定时间段内尚未创建创意的素材信息
     * @param accountId
     * @param startTime
     * @param endTime
     * @param videoCnt
     * @return
     */
    List<ByteDanceVideoInfo> getNewVideoByParams(@Param(value = "projectId") Long projectId,@Param(value = "accountId") Long accountId, @Param(value = "imageMode") String imageMode,@Param(value = "startTime")String startTime, @Param(value = "endTime")String endTime, @Param(value = "videoCnt")Long videoCnt,@Param(value = "creativeCnt")Long creativeCnt,@Param(value = "now") String now);

    List<ByteDanceVideoInfo> topMatByParams(@Param(value = "projectId")Long projectId, @Param(value = "accountId")Long accountId, @Param(value = "imageMode") String imageMode,@Param(value = "startTime")String startTime, @Param(value = "endTime")String endTime, @Param(value = "videoCnt")Long videoCnt,@Param(value = "now") String now);

    List<ByteDanceVideoInfo>historyMatByParams(@Param(value = "projectId")Long projectId, @Param(value = "accountId")Long accountId, @Param(value = "imageMode") String imageMode,@Param(value = "startTime")String startTime, @Param(value = "endTime")String endTime, @Param(value = "videoCnt")Long videoCnt,@Param(value = "now") String now);


    /**
     *图片 上新 遗漏
     */
    List<ByteDanceVideoInfo> imageListByParams(@Param(value = "projectId") Long projectId,@Param(value = "accountId") Long accountId, @Param(value = "imageMode") String imageMode,@Param(value = "startTime")String startTime, @Param(value = "endTime")String endTime, @Param(value = "videoCnt")Long videoCnt,@Param(value = "creativeCnt")Long creativeCnt,@Param(value = "now") String now);

    /**
     * 图片 跑量
     */
    List<ByteDanceVideoInfo> imageTopMatByParams(@Param(value = "projectId")Long projectId, @Param(value = "accountId")Long accountId, @Param(value = "imageMode") String imageMode,@Param(value = "startTime")String startTime, @Param(value = "endTime")String endTime, @Param(value = "videoCnt")Long videoCnt,@Param(value = "now") String now);

    /**
     * 图片 打捞
     */
    List<ByteDanceVideoInfo>imageHistoryMatByParams(@Param(value = "projectId")Long projectId, @Param(value = "accountId")Long accountId, @Param(value = "imageMode") String imageMode,@Param(value = "startTime")String startTime, @Param(value = "endTime")String endTime, @Param(value = "videoCnt")Long videoCnt,@Param(value = "now") String now);


    /**
     * 通投智选 - 横版视频
     * @param accountId
     * @param startTime
     * @param endTime
     * @param videoCnt
     * @return
     */
    List<ByteDanceVideoInfo> getModeVideo(@Param(value = "accountId") Long accountId,@Param(value = "startTime")String startTime, @Param(value = "endTime")String endTime, @Param(value = "videoCnt")Long videoCnt);

    /**
     * 通投智选 - 横图大图
     * @param accountId
     * @param startTime
     * @param endTime
     * @param videoCnt
     * @return
     */
    List<ByteDanceVideoInfo> getModeImageLarge(@Param(value = "accountId") Long accountId,@Param(value = "startTime")String startTime, @Param(value = "endTime")String endTime, @Param(value = "videoCnt")Long videoCnt);




}
