package com.iformall.service;

import com.github.pagehelper.PageInfo;
import com.iformall.domain.dto.MarkingCouponDataReportDto;
import com.iformall.domain.dto.WxOrderReportDto;
import com.iformall.domain.vo.*;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * Created by syf on 2018/8/28.
 */
public interface MarkingDataReportService {
    Map<String,Object> getCouponData(String tenantId);

    Map<String,Object> getSceneData(String tenantId);

    Map<String,Object> getSceneDataHistory(String tenantId,String startDate,String endDate);

    PageInfo<MarkingCouponDataReportVo> getCouponDataList(String tenantId, MarkingCouponDataReportDto markingCouponDataReportDto, Integer pageIndex, Integer pageSize);

    PageInfo<MarkingSceneDataVo> getSceneDataList(String tenantId, MarkingCouponDataReportDto markingCouponDataReportDto, Integer pageIndex, Integer pageSize);

    PageInfo<TouchUsersReportVo> getTouchUsersReportList(String tenantId, MarkingCouponDataReportDto markingCouponDataReportDto, Integer pageIndex, Integer pageSize);

    List<TouchUsersReportVo> getTouchUsersReportData(String tenantId);



    Map<String, Object> listOrderReportByDate(WxOrderReportDto wxOrderReportDto);

    List<WxOrderReportVo> listMicroPayOrderReportByDateAndMerchant(WxOrderReportDto wxOrderReportDto);

    PageInfo<WxMerchantMicroPayVo> listMerchantMicroPayOrderReportByDate(WxOrderReportDto wxOrderReportDto,Integer pageNum, Integer pageSize);

    void exportTouchUsersData(HttpServletRequest request, HttpServletResponse response, MarkingCouponDataReportDto markingCouponDataReportDto);

}
