package com.hzs.common.core.constant;

import java.math.BigDecimal;
import java.util.Arrays;
import java.util.List;

/**
 * 新零售商品常量类
 */
public class RetailConstants {

    /**
     * 会员 推 会员 60
     * VIP 推 会员 80
     * 合伙人 推 会员 100
     * 博羚店主 推 会员 200
     * 高级店主 推 会员 208
     * 分公司 推 会员 220
     * 总公司 推 会员 240
     */
    public static final BigDecimal V1_V1 = new BigDecimal("60");
    public static final BigDecimal V2_V1 = new BigDecimal("80");
    public static final BigDecimal V3_V1 = new BigDecimal("100");
    public static final BigDecimal V4_V1 = new BigDecimal("200");
    public static final BigDecimal V5_V1 = new BigDecimal("208");
    public static final BigDecimal V6_V1 = new BigDecimal("220");
    public static final BigDecimal V7_V1 = new BigDecimal("240");

    /**
     * 会员 推 VIP 300
     * VIP 推 VIP 400
     * 合伙人 推 VIP 500
     * 博羚店主 推 VIP 1000
     * 高级店主 推 VIP 1040
     * 分公司 推 VIP 1100
     * 总公司 推 VIP 1200
     */
    public static final BigDecimal V1_V2 = new BigDecimal("300");
    public static final BigDecimal V2_V2 = new BigDecimal("400");
    public static final BigDecimal V3_V2 = new BigDecimal("500");
    public static final BigDecimal V4_V2 = new BigDecimal("1000");
    public static final BigDecimal V5_V2 = new BigDecimal("1040");
    public static final BigDecimal V6_V2 = new BigDecimal("1100");
    public static final BigDecimal V7_V2 = new BigDecimal("1200");

    /**
     * 会员 推 合伙人 600
     * VIP 推 合伙人 800
     * 合伙人1 推 合伙人 1000
     * 合伙人2 推 合伙人 1200
     * 合伙人3 推 合伙人 1300
     * 博羚店主 推 合伙人 2000
     * 高级店主 推 合伙人 2080
     * 分公司 推 合伙人 2200
     * 总公司 推 合伙人 2400
     */
    public static final BigDecimal V1_V3 = new BigDecimal("600");
    public static final BigDecimal V2_V3 = new BigDecimal("800");
    public static final BigDecimal V3_V3_1 = new BigDecimal("1000");
    public static final BigDecimal V3_V3_2 = new BigDecimal("1200");
    public static final BigDecimal V3_V3_3 = new BigDecimal("1300");
    public static final BigDecimal V4_V3 = new BigDecimal("2000");
    public static final BigDecimal V5_V3 = new BigDecimal("2080");
    public static final BigDecimal V6_V3 = new BigDecimal("2200");
    public static final BigDecimal V7_V3 = new BigDecimal("2400");

    /**
     * 会员 推 博羚店主 1200
     * VIP 推 博羚店主 1600
     * 合伙人1 推 博羚店主 2000
     * 合伙人2 推 博羚店主 2400
     * 合伙人3 推 博羚店主 2600
     * 博羚店主 推 博羚店主 4000
     * 高级店主 推 博羚店主 4160
     * 分公司 推 博羚店主 4400
     * 总公司 推 博羚店主 4800
     */
    public static final BigDecimal V1_V4 = new BigDecimal("1200");
    public static final BigDecimal V2_V4 = new BigDecimal("1600");
    public static final BigDecimal V3_V4_1 = new BigDecimal("2000");
    public static final BigDecimal V3_V4_2 = new BigDecimal("2400");
    public static final BigDecimal V3_V4_3 = new BigDecimal("2600");
    public static final BigDecimal V4_V4 = new BigDecimal("4000");
    public static final BigDecimal V5_V4 = new BigDecimal("4160");
    public static final BigDecimal V6_V4 = new BigDecimal("4400");
    public static final BigDecimal V7_V4 = new BigDecimal("4800");

    /**
     * 博羚店主 推 分公司 50000
     * 高级店主 推 分公司 52000
     * 分公司 推 分公司 55000
     * 总公司 推 分公司 60000
     */
    public static final BigDecimal V4_V6 = new BigDecimal("50000");
    public static final BigDecimal V5_V6 = new BigDecimal("52000");
    public static final BigDecimal V6_V6 = new BigDecimal("55000");
    public static final BigDecimal V7_V6 = new BigDecimal("60000");

    /**
     * 复购：
     * 会员 拿 6
     * VIP 拿 8
     * 合伙人1 拿 10
     * 合伙人2 拿 12
     * 合伙人3 拿 13
     * 博羚店主 拿 20
     * 高级店主 拿 20.8
     * 分公司 拿 22
     * 总公司 拿 24
     */
    public static final BigDecimal REPURCHASE_V1 = new BigDecimal("6");
    public static final BigDecimal REPURCHASE_V2 = new BigDecimal("8");
    public static final BigDecimal REPURCHASE_V3_1 = new BigDecimal("10");
    public static final BigDecimal REPURCHASE_V3_2 = new BigDecimal("12");
    public static final BigDecimal REPURCHASE_V3_3 = new BigDecimal("13");
    public static final BigDecimal REPURCHASE_V4 = new BigDecimal("20");
    public static final BigDecimal REPURCHASE_V5 = new BigDecimal("20.8");
    public static final BigDecimal REPURCHASE_V6 = new BigDecimal("22");
    public static final BigDecimal REPURCHASE_V7 = new BigDecimal("24");

    /**
     * 会员、VIP、合伙人 每月可购买1套（4盒）
     * 博羚店主、高级店主 每月可购买10套（40盒）
     * 分公司 每月可购买25套（100盒）
     * 总公司 不限购给一个很大的值
     */
    public static final Integer V1_LIMIT = 1;
    public static final Integer V4_LIMIT = 10;
    public static final Integer V6_LIMIT = 25;
    public static final Integer V7_LIMIT = 10000;

    /**
     * 盒数产品列表
     */
    public static final List<String> BOX_PRODUCT_LIST = Arrays.asList(
            // 注册
            "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", "SP02410006",
            // 升级
            "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", "SP02420006",
            // 复消
            "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", "SP02430006",
            // 重消
            "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", "SP02440006"
    );

    /**
     * 盒数产品列表
     */
    public static final List<String> ALL_BOX_WARES_LIST = Arrays.asList(
            // 注册
            "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", "SP02410006",
            // 升级
            "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", "SP02420006",
            // 复消
            "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", "SP02430006",
            // 重消
            "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", "SP02440006"
    );

}
