package cn.com.ctop.kuaishou.modules.report.mapper;

import cn.com.ctop.common.module.vo.KuaishouImageCostVO;
import cn.com.ctop.common.module.vo.KuaishouImageCostVOEntity;
import cn.com.ctop.kuaishou.modules.report.entity.KuaishouReportDailyImage;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 快手图片报表
 * @author: jeecg-boot
 * @date:   2020-09-28
 * @cersion: V1.0
 */
public interface KuaishouReportDailyImageMapper extends BaseMapper<KuaishouReportDailyImage> {

    void loadImageDailyReport(Long accountId, String localPath);

    List<KuaishouImageCostVO> imageCost(@Param(value = "startDate") String startDate,
                                        @Param(value = "endDate")String endDate,
                                        @Param(value = "accountList")JSONArray accountList,
                                        @Param(value = "code")String code,
                                        @Param(value = "order")String order,
                                        @Param(value = "target")String target);

    KuaishouImageCostVO imageCostTotal(@Param(value = "startDate") String startDate,
                                        @Param(value = "endDate")String endDate,
                                        @Param(value = "accountList")JSONArray accountList,
                                        @Param(value = "code")String code);

    void updateImageReportCode();

    List<KuaishouImageCostVOEntity> imageCostEntity(@Param(value = "startDate") String startDate,
                                                    @Param(value = "endDate")String endDate,
                                                    @Param(value = "accountList")JSONArray accountList,
                                                    @Param(value = "code")String code,
                                                    @Param(value = "order")String order,
                                                    @Param(value = "target")String target);

    void updateImageReportUserId();

    void updateImageReportRealname();
}
