package cn.pluss.platform.fansConsumReturn;

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

import cn.pluss.platform.entity.FansConsumReturn;
import cn.pluss.platform.vo.FansInfoCountVO;

public interface FansConsumReturnService {

    public FansConsumReturn queryFansConsumReturn(FansConsumReturn fansConsumReturn);

    public List<FansConsumReturn> queryFansConsumReturnList(FansConsumReturn fansConsumReturn);

    public void saveFansConsumReturn(FansConsumReturn fansConsumReturn);

    public void updateFansConsumReturn(FansConsumReturn fansConsumReturn);

    public void deleteFansConsumReturn(FansConsumReturn fansConsumReturn);

    public List<FansConsumReturn> queryFansConsumReturnPage(Map map);

    public Integer queryFansConsumReturnPageCount(Map map);

    public void saveFansConsumReturnBatch(List<FansConsumReturn> fansConsumReturnList);
    
    /**
     * 统计粉丝消费金额  统计粉丝消费奖励金额
     * @param merchantCode
     * @return
     */
    public FansInfoCountVO sumFansConsumReturnInfo(String merchantCode);
    
    /**
     * 可提现总金额（提现规则  超过一个月的时间）
     * @param map
     * @return
     */
    public Double sumFansAllowCashMoney(Map map);
    

    /**
     * 不可提现总金额（提现规则 不超过一个月）
     * @param map
     * @return
     */
    public Double sumFansNotAllowCashMoney( Map map);
    
    /**
     * 今日分润
     * @param map
     * @return
     */
    public Double sumNowDayShareMoney(Map map);
    
    /**
     * 累计总分润
     * @param map
     * @return
     */
    public Double sumAllShareMoney(Map map);
    
    /**
     * 累计总分润
     * @param merchantCode
     * @return
     */
    public Double sumShareMoney();
    
    /**
     * 今日奖励
     * @param merchantCode
     * @return
     */
    public Double sumNowReturnMoney();
    
    
    public Double sumReturnMoneyByTime(Map map);
}

