package com.bb.dao;

import java.util.HashMap;
import java.util.List;

import com.bb.model.ReportSearch;
import com.bb.model.Site;
import com.bb.model.SiteSearch;

import jakarta.validation.Valid;


public interface StatDao {

	int getSiteDailyReportListCnt(SiteSearch search);

	List<HashMap> getSiteDailyReportList(SiteSearch search);

	int getVendorDailyReportListCnt(SiteSearch search);

	List<HashMap> getVendorDailyReportList(SiteSearch search);

	List<HashMap> getBottomSiteDailyReportList(SiteSearch search);

	HashMap getMonthCredit(SiteSearch search);

	List<HashMap> getUserDailyReportList(SiteSearch search);

	List<HashMap> getUserReportSum(SiteSearch search);

	List<HashMap> getAdminPushInfo();

	int getAgentReportCnt(SiteSearch search);

	List<HashMap> getAgentReportList(SiteSearch search);

	int getAgentReportCnt2(SiteSearch search);

	List<HashMap> getAgentReportList2(SiteSearch search);

	HashMap getAgentReportTotal(SiteSearch search);
	


	String getlastMonth(SiteSearch search);

	List<HashMap> getVendorDailyReportListDay(SiteSearch search);

	List<HashMap> getVendorDailyReportListMonth(SiteSearch search);

	List<HashMap> getVendorDailyReportListDaySUM(SiteSearch search);

	List<HashMap> getVendorDailyReportListMonthSUM(SiteSearch search);

	List<HashMap> getSiteReportList(SiteSearch search);

	List<HashMap> getSiteReportListSum(SiteSearch search);

	List<HashMap> getSiteReportMemList(SiteSearch search);

	List<HashMap> getSiteReportMemListSum(SiteSearch search);

	List<HashMap> getSiteReportListToDay(SiteSearch search);

	List<HashMap> getSiteReportListSumToDay(SiteSearch search);

	List<HashMap> getDashBoardList(SiteSearch search);

	List<HashMap> getDashBoardMonth(SiteSearch search);

	HashMap getYdayBetInfoBySite(Site targetSite);

	HashMap getMonthBetInfoBySite(Site targetSite);

	HashMap getYdayBetInfoByUser(HashMap targetUser);

	HashMap getMonthBetInfoByUser(HashMap targetUser);

	HashMap getVendorDailyReportMonthByParse(SiteSearch search);

	List<HashMap> getVendorDailyReportListDayByParse(SiteSearch search);

	HashMap getHybridReport(ReportSearch search);

	List<HashMap> getHybridReportList(@Valid ReportSearch search);

	HashMap getHybridReportTotal(@Valid ReportSearch search);
	
}
