package org.jeecg.ctop.material.mapper;

import com.alibaba.fastjson.JSONObject;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface KuaishouAccountReportDailyDwMapper {

    JSONObject getTotalCharge(Map<String, Object> paramsMap);

    Long getYesterdayUploadNewMaterialCount(Map<String, Object> paramsMap);

    List<JSONObject> getHourcharge(@Param("projectId") Long projectId, @Param("startTime") Integer startTime);

    List<JSONObject> getDatacharge(@Param("projectId") Long projectId, @Param("startTime") Integer startTime, @Param("endTime") Integer endTime);

    Long getProjectToDayReportTotal(@Param("projectId") Long projectId, @Param("startTime") Integer startTime, @Param("hour") Integer hour);

    List<JSONObject> getProjectToDayReport(@Param("category") String category, @Param("projectId") Long projectId, @Param("startTime") Integer startTime, @Param("hour") Integer hour, @Param("sortCode") String sortCode, @Param("order") String order);

    Long getProjectMoreDaysReportTotal(@Param("projectId") Long projectId, @Param("startTime") Integer startTime, @Param("endTime") Integer endTime, @Param("hour") Integer hour);

    List<JSONObject> getProjectMoreDaysReport(@Param("projectId") Long projectId, @Param("startTime") Integer startTime, @Param("endTime") Integer endTime, @Param("hour") Integer hour, @Param("sortCode") String sortCode, @Param("order") String order);

    List<JSONObject> getProjectNoByDays(@Param("startTime") Integer startTimeInt, @Param("endTime") Integer endTimeInt);

    List<JSONObject> getAdvertiserNoByDays(@Param("startTime") Integer startTimeInt, @Param("endTime") Integer endTimeInt);

    List<JSONObject> getUnitNoByHours(@Param("startTime") Integer startTimeInt);

    List<JSONObject> getUnitNoByDays(@Param("startTime") Integer startTimeInt, @Param("endTime") Integer endTimeInt);

}
