package cn.newfeifan.mall.module.distri.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

@Getter
@AllArgsConstructor
public enum CaclEnum {
    PLATFORM_SERVICE_FEE(1, "平台服务费"),
    PLATFORM_REVENUE(2, "平台收益"),
    RECOMMENDED_PERSON_QUOTA(3, "推荐人额度"),
    DIRECT_REFERRAL_QUOTA(4, "直推人额度"),
    TOGETHER_AWARD(5, "合赢奖"),
    HIGH_QUOTA(6, "最高可以获得积分"),
    SMALL_QUOTA_CRASH(7, "小区额度分配"),
    AFTER_CRASH_CALC_PT_TOTAL_QUOTA(8, "碰撞后计算平台总收益"),
    ORDER_PAY_INTEGRAL(9,"购物使用积分"),//支付了一部分积分作购物用
    ORDER_REFUND_INTEGRAL(10,"订单退款，退回积分"),//订单已支付，用户退款申请通过，则退回商品项使用的积分
    ORDER_INTEGRAL_UNFREEZE(11,"订单积分到账"),//购物收货7天后，冻结积分变为可用积分
    ORDER_GET_FREEZE_INTEGRAL(12,"购物返积分"),//购物获得冻结积分
    ORDER_CANCEL_BY_USER_REFUND_INTEGRAL(13,"取消订单，退回积分"),//用户手动取消未支付订单，退回购物使用的积分
    ORDER_CANCEL_BY_SYSTEM_REFUND_INTEGRAL(14,"订单超时未支付，退回积分"),//订单超时未支付，退回购物使用的积分
    ORDER_REFUND_CANCEL_INTEGRAL(15,"订单退款，减少冻结积分"),//订单已支付，用户退款申请通过，则减少之前给用户的冻结积分
    ;

    /**
     * 来源
     */
    private final Integer type;
    /**
     * 类型的名字
     */
    private final String name;

    public static CaclEnum getCaclEnumByValue(int value) {
        for (CaclEnum caclEnum : CaclEnum.values()) {
            if (caclEnum.getType() == value) {
                return caclEnum;
            }
        }
        return null;
    }

}