package com.iamberry.wechat.face.integral;

import com.iamberry.wechat.core.entity.PageBean;
import com.iamberry.wechat.core.entity.ResultMsg;
import com.iamberry.wechat.core.entity.integral.IntegralConfig;
import com.iamberry.wechat.core.entity.integral.MemberIntegral;
import com.iamberry.wechat.core.entity.integral.RankRule;
import com.iamberry.wechat.core.entity.integral.UseIntegral;

import java.util.List;

public interface UseIntegralService {
    /**
     * 全部积分记录
     * @param useIntegral
     * @return
     */
    List<UseIntegral> listIntegralInfo(UseIntegral useIntegral);

    /**
     * 获得的总积分数
     * @param userOpenId
     * @return
     */
    int getGainIntegralCount(String userOpenId);

    /**
     * 使用的总积分数
     * @param openid
     * @return
     */
    int getUseIntegralCount(String openid);

    /**
     * 待入账的总积分数
     * @param userOpenId
     * @return
     */
    int getStayIntegralCount(String userOpenId);

    /**
     * 查询积分来源信息
     * @param integralConfig
     * @return
     */
    List<IntegralConfig> listIntegralConfig(IntegralConfig integralConfig);

    /**
     * 获取会员信息.会员等级名称
     * @param openId
     * @return
     */
    MemberIntegral getMemberInfoAndRankName(String openId);

    /**
     * 查询会员等级信息
     * @return
     */
    List<RankRule> getRankRule();
}
