package com.hzs.member.statis.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hzs.common.domain.member.statis.CuBonusStatis;
import com.hzs.member.statis.vo.CuBonusStatisColumnarVO;
import com.hzs.member.statis.vo.CuBonusStatisRoundVO;
import com.hzs.member.statis.vo.CuBonusStatisVO;

import java.util.List;

/**
 * 奖金拨比统计 服务类
 */
public interface ICuBonusStatisService extends IService<CuBonusStatis> {

    /**
     * 查询国外奖金拨比
     **/
    List<CuBonusStatisVO> queryForeignCountryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO);

    /**
     * 查询国外奖金拨比合计
     **/
    CuBonusStatisVO queryForeignCountryCuBonusStatisSum(CuBonusStatisVO cuBonusStatisVO);


    /**
     * 查询奖金拨比图形数据-柱形图
     **/
    CuBonusStatisColumnarVO pillarRatio(CuBonusStatisColumnarVO columnarVO);

    /**
     * 查询一年注册、升级、复购、嗨粉合计
     **/
    CuBonusStatisColumnarVO queryYearData(CuBonusStatisColumnarVO columnarVO);

    /**
     * 查询奖金拨比(饼状图)
     **/
    CuBonusStatisRoundVO queryDiallingRatio(CuBonusStatisRoundVO roundVO);

    /**
     * 查询小于当天全部已支付或撤单订单信息
     **/
    List<CuBonusStatisVO> querySaOrderByLessDay(CuBonusStatisVO cuBonusStatisVO);

    /**
     * 统计历史奖金拨比数据
     **/
    Boolean statisHistoryBonus(String startDate, String endDate);

    /**
     * 删除奖金拨比统计表数据
     **/
    Boolean delStatis(String startDate, String endDate);

    /**
     * 查询奖金扣项配置参数
     **/
    List<CuBonusStatisVO> bonusDeductlist(CuBonusStatisVO cuBonusStatisVO);

    /**
     * 查询分红比例配置
     **/
    List<CuBonusStatisVO> bonusDividendRatiolist(CuBonusStatisVO cuBonusStatisVO);

    /**
     * 查询国外奖金
     **/
    List<CuBonusStatisVO> queryForeignCountryBonus(CuBonusStatisVO cuBonusStatisVO);

    /**
     * 查询生效国外国家列表
     **/
    List<CuBonusStatisVO> countrylist(CuBonusStatisVO cuBonusStatisVO);

}
