package com.hzya.frame.cbs8.util;

/**
 * @Description 币种枚举表
 * @Author xiangerlin
 * @Date 2024/6/25 10:20
 **/
public enum CurrencyEnum {

    CNY("10", "人民币", "CNY", "￥"),
    ASF("11", "记帐瑞士法朗", "ASF", "ASF"),
    BRL("12", "巴西里亚尔", "BRL", "BRL"),
    IDR("13", "印度尼西亚卢比", "IDR", "rps"),
    INR("14", "印度卢比", "INR", "rs"),
    IRR("15", "伊朗里亚尔", "IRR", "ri"),
    JOD("16", "约旦第纳尔", "JOD", "jdr"),
    KRW("17", "韩国圆", "KRW", "$"),
    KWD("18", "科威特第纳尔", "KWD", "kd"),
    MOP("19", "澳门元", "MOP", "pat"),
    MXN("20", "墨西哥比索", "MXN", "mex$"),
    HKD("21", "港币", "HKD", "HK$"),
    MYR("22", "马来西亚林吉特", "MYR", "m$"),
    NPR("23", "尼泊尔卢比", "NPR", "nrs"),
    NZD("24", "新西兰元", "NZD", "$nz"),
    PHP("25", "菲律宾比索", "PHP", "phil"),
    PKR("26", "巴基斯坦卢比", "PKR", "prs"),
    RUB("27", "俄罗斯卢布", "RUB", "RUB"),
    AUD("29", "澳元", "AUD", "A$"),
    THB("30", "泰国铢", "THB", "bt"),
    TWD("31", "台湾元", "TWD", "$"),
    USD("32", "美元", "USD", "US$"),
    TZS("33", "坦桑尼亚先令", "TZS", "tsh"),
    EUR("35", "欧元", "EUR", "EUR"),
    CAD("39", "加拿大元", "CAD", "CAN$"),
    GBP("43", "英镑", "GBP", "￡"),
    JPY("65", "日元", "JPY", "J"),
    SGD("69", "新加坡元", "SGD", "S$"),
    NOK("83", "挪威克朗", "NOK", "nkr"),
    DKK("85", "丹麦克朗", "DKK", "DKr"),
    AED("86", "阿联酋迪拉姆", "AED", "AED"),
    CHF("87", "瑞士法朗", "CHF", "SF"),
    SEK("88", "瑞典克朗", "SEK", "SKR"),
    ZAR("89", "南非兰特", "ZAR", "ZAR"),
    AOA("71", "安哥拉宽扎", "AOA", "kz"),
    DZD("72", "阿尔及利亚第纳尔", "DZD", "AD."),
    GHS("73", "塞地", "GHS", "￠"),
    KES("74", "肯尼亚先令", "KES", "K.Sh"),
    NGN("75", "奈拉", "NGN", "N"),
    QAR("76", "卡塔尔里亚尔", "QAR", "QR."),
    VND("77", "越南盾", "VND", "D."),
    PES("78", "新索尔", "PES", "S/."),
    PLZ("79", "兹罗提", "PLZ", "ZL."),
    TRY("80", "土耳其镑", "TRY", "￡T."),
    SAR("81", "亚尔", "SAR", "SAR."),
    KZT("82", "哈萨克斯坦腾格", "KZT", "〒"),
    CDF("90", "刚果法郎", "CDF", "FC"),
    LYD("91", "利比亚第纳尔", "LYD", "LD."),
    EGP("92", "埃及镑", "EGP", "￡E."),
    VEF("93", "委内瑞拉玻利瓦尔", "VEF", "B"),
    OMR("94", "阿曼里尔", "OMR", "RO."),
    PLN("95", "波兰兹罗提", "PLN", "Zl"),
    HUF("96", "匈牙利福林", "HUF", "Ft"),
    BDT("97", "孟加拉塔卡", "BDT", "TK"),
    LAK("98", "老挝基普", "LAK", "K"),
    ZMW("37", "赞比亚克瓦查", "ZMW", "ZM"),
    ETB("28", "埃塞俄比亚比尔", "ETB", "Br"),
    PRK("34", "巴基斯坦卢比", "PRK", "Rs."),
    BND("36", "文莱元", "BND", "B$"),
    XOF("38", "西非法郎", "XOF", "XOF"),
    PGK("41", "巴布亚新几内亚基纳", "PGK", "PGK"),
    LKR("40", "斯里兰卡卢比", "LKR", "LK"),
    GNF("46", "几内亚法郎", "GNF", "GNF"),
    TND("42", "突尼斯第纳尔", "TND", "TN"),
    UZS("44", "乌兹别克斯坦苏姆", "UZS", "UZ"),
    XAF("45", "中非法郎", "XAF", "XA"),
    SDG("49", "苏丹磅", "SDG", "￡S"),
    GE("47", "格鲁吉亚拉里", "GEL", "GE"),
    MN("48", "蒙图", "MNT", "MN"),
    TJS("50", "塔吉克索莫尼", "TJS", "TJS"),
    UGX("51", "乌干达先令", "UGX", "UGX"),
    CLP("52", "智利比索", "CLP", "CLP"),
    MMK("53", "缅元", "MMK", "MMK"),
    KHR("54", "柬埔寨瑞尔", "KHR", "KHR"),
    BHD("55", "巴林第纳尔", "BHD", "BHD"),
    RSD("56", "塞尔维亚第纳尔", "RSD", "RSD"),
    KGS("57", "吉尔吉斯斯坦索姆", "KGS", "KGS"),
    COP("58", "哥伦比亚比索", "COP", "COP"),
    GYD("59", "圭亚那元", "GYD", "GYD"),
    ARS("60", "阿根廷比索", "ARS", "ARS"),
    CZK("61", "捷克克朗", "CZK", "CZK"),
    PEN("62", "秘鲁索尔", "PEN", "PEN"),
    RON("63", "罗马尼亚列伊", "RON", "RON"),
    UAH("64", "乌克兰格里夫纳", "UAH", "UAH"),
    ILS("66", "以色列新谢克尔", "ILS", "ILS"),
    IQD("67", "伊拉克第纳尔", "IQD", "IQD"),
    ERN("68", "厄立特里亚纳克法", "ERN", "ERN"),
    CNH("84", "离岸人民币", "CNH", "CNH"),
    MKD("99", "马其顿第纳尔", "MKD", "MKD");

    private final String code;
    private final String chineseName;
    private final String internationalCode;
    private final String symbol;

    CurrencyEnum(String code, String chineseName, String internationalCode, String symbol) {
        this.code = code;
        this.chineseName = chineseName;
        this.internationalCode = internationalCode;
        this.symbol = symbol;
    }

    public String getCode() {
        return code;
    }

    public String getChineseName() {
        return chineseName;
    }

    public String getInternationalCode() {
        return internationalCode;
    }

    public String getSymbol() {
        return symbol;
    }

    //根据币种code获取币种中文名
    public static String getChineseNameByCode(String code) {
        for (CurrencyEnum currency : values()) {
            if (currency.code.equals(code)) {
                return currency.chineseName;
            }
        }
        return null; // 或者抛出异常，表示找不到对应的币种
    }
}
