1. 程式人生 > >JAVA之微信支付渠道列舉WechatPayChannelEnum

JAVA之微信支付渠道列舉WechatPayChannelEnum

問題背景

微信支付成功之後有一個<bank_type><![CDATA[CFT]]></bank_type>的支付渠道型別,那麼針對這個渠道型別,我們有時候為了顯示,需要轉換為對應的中文字串,這個時候就需要用到列舉類。

具體型別可以參考【8、銀行型別】
https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=4_2

解決方案

一個Enum類就搞定,有點長而已,輸出結果如下:

AE(信用卡)
AE(信用卡)
零錢
零錢

通過列舉類的WechatPayChannelEnumanEnum=Enum.valueOf(WechatPayChannelEnum.class,xxx);

然後再重寫anEnum.toString()這裡就可以獲取對應的值了。這裡需要注意anEnum.value這個方法再外部無法呼叫。

/**
 * WechatPayChannelEnum
 * @Author blog.csdn.com/moshowgame
 */
public enum WechatPayChannelEnum {
    ICBC_DEBIT("工商銀行(借記卡)"),
    ICBC_CREDIT("工商銀行(信用卡)"),
    ABC_DEBIT("農業銀行(借記卡)"),
    ABC_CREDIT("農業銀行(信用卡)"),
    PSBC_DEBIT("郵政儲蓄銀行(借記卡)"),
    PSBC_CREDIT("郵政儲蓄銀行(信用卡)"),
    CCB_DEBIT("建設銀行(借記卡)"),
    CCB_CREDIT("建設銀行(信用卡)"),
    CMB_DEBIT("招商銀行(借記卡)"),
    CMB_CREDIT("招商銀行(信用卡)"),
    BOC_DEBIT("中國銀行(借記卡)"),
    BOC_CREDIT("中國銀行(信用卡)"),
    COMM_DEBIT("交通銀行(借記卡)"),
    COMM_CREDIT("交通銀行(信用卡)"),
    SPDB_DEBIT("浦發銀行(借記卡)"),
    SPDB_CREDIT("浦發銀行(信用卡)"),
    GDB_DEBIT("廣發銀行(借記卡)"),
    GDB_CREDIT("廣發銀行(信用卡)"),
    CMBC_DEBIT("民生銀行(借記卡)"),
    CMBC_CREDIT("民生銀行(信用卡)"),
    PAB_DEBIT("平安銀行(借記卡)"),
    PAB_CREDIT("平安銀行(信用卡)"),
    CEB_DEBIT("光大銀行(借記卡)"),
    CEB_CREDIT("光大銀行(信用卡)"),
    CIB_DEBIT("興業銀行(借記卡)"),
    CIB_CREDIT("興業銀行(信用卡)"),
    CITIC_DEBIT("中信銀行(借記卡)"),
    CITIC_CREDIT("中信銀行(信用卡)"),
    BOSH_DEBIT("上海銀行(借記卡)"),
    BOSH_CREDIT("上海銀行(信用卡)"),
    CRB_DEBIT("華潤銀行(借記卡)"),
    HZB_DEBIT("杭州銀行(借記卡)"),
    HZB_CREDIT("杭州銀行(信用卡)"),
    BSB_DEBIT("包商銀行(借記卡)"),
    BSB_CREDIT("包商銀行(信用卡)"),
    CQB_DEBIT("重慶銀行(借記卡)"),
    SDEB_DEBIT("順德農商行(借記卡)"),
    SZRCB_DEBIT("深圳農商銀行(借記卡)"),
    SZRCB_CREDIT("深圳農商銀行(信用卡)"),
    HRBB_DEBIT("哈爾濱銀行(借記卡)"),
    BOCD_DEBIT("成都銀行(借記卡)"),
    GDNYB_DEBIT("南粵銀行(借記卡)"),
    GDNYB_CREDIT("南粵銀行(信用卡)"),
    GZCB_DEBIT("廣州銀行(借記卡)"),
    GZCB_CREDIT("廣州銀行(信用卡)"),
    JSB_DEBIT("江蘇銀行(借記卡)"),
    JSB_CREDIT("江蘇銀行(信用卡)"),
    NBCB_DEBIT("寧波銀行(借記卡)"),
    NBCB_CREDIT("寧波銀行(信用卡)"),
    NJCB_DEBIT("南京銀行(借記卡)"),
    QHNX_DEBIT("青海農信(借記卡)"),
    ORDOSB_CREDIT("鄂爾多斯銀行(信用卡)"),
    ORDOSB_DEBIT("鄂爾多斯銀行(借記卡)"),
    BJRCB_CREDIT("北京農商(信用卡)"),
    BHB_DEBIT("河北銀行(借記卡)"),
    BGZB_DEBIT("貴州銀行(借記卡)"),
    BEEB_DEBIT("鄞州銀行(借記卡)"),
    PZHCCB_DEBIT("攀枝花銀行(借記卡)"),
    QDCCB_CREDIT("青島銀行(信用卡)"),
    QDCCB_DEBIT("青島銀行(借記卡)"),
    SHINHAN_DEBIT("新韓銀行(借記卡)"),
    QLB_DEBIT("齊魯銀行(借記卡)"),
    QSB_DEBIT("齊商銀行(借記卡)"),
    ZZB_DEBIT("鄭州銀行(借記卡)"),
    CCAB_DEBIT("長安銀行(借記卡)"),
    RZB_DEBIT("日照銀行(借記卡)"),
    SCNX_DEBIT("四川農信(借記卡)"),
    BEEB_CREDIT("鄞州銀行(信用卡)"),
    SDRCU_DEBIT("山東農信(借記卡)"),
    BCZ_DEBIT("滄州銀行(借記卡)"),
    SJB_DEBIT("盛京銀行(借記卡)"),
    LNNX_DEBIT("遼寧農信(借記卡)"),
    JUFENGB_DEBIT("臨朐聚豐村鎮銀行(借記卡)"),
    ZZB_CREDIT("鄭州銀行(信用卡)"),
    JXNXB_DEBIT("江西農信(借記卡)"),
    JZB_DEBIT("晉中銀行(借記卡)"),
    JZCB_CREDIT("錦州銀行(信用卡)"),
    JZCB_DEBIT("錦州銀行(借記卡)"),
    KLB_DEBIT("崑崙銀行(借記卡)"),
    KRCB_DEBIT("崑山農商(借記卡)"),
    KUERLECB_DEBIT("庫爾勒市商業銀行(借記卡)"),
    LJB_DEBIT("龍江銀行(借記卡)"),
    NYCCB_DEBIT("南陽村鎮銀行(借記卡)"),
    LSCCB_DEBIT("樂山市商業銀行(借記卡)"),
    LUZB_DEBIT("柳州銀行(借記卡)"),
    LWB_DEBIT("萊商銀行(借記卡)"),
    LYYHB_DEBIT("遼陽銀行(借記卡)"),
    LZB_DEBIT("蘭州銀行(借記卡)"),
    MINTAIB_CREDIT("民泰銀行(信用卡)"),
    MINTAIB_DEBIT("民泰銀行(借記卡)"),
    NCB_DEBIT("寧波通商銀行(借記卡)"),
    NMGNX_DEBIT("內蒙古農信(借記卡)"),
    XAB_DEBIT("西安銀行(借記卡)"),
    WFB_CREDIT("濰坊銀行(信用卡)"),
    WFB_DEBIT("濰坊銀行(借記卡)"),
    WHB_CREDIT("威海商業銀行(信用卡)"),
    WHB_DEBIT("威海市商業銀行(借記卡)"),
    WHRC_CREDIT("武漢農商(信用卡)"),
    WHRC_DEBIT("武漢農商行(借記卡)"),
    WJRCB_DEBIT("吳江農商行(借記卡)"),
    WLMQB_DEBIT("烏魯木齊銀行(借記卡)"),
    WRCB_DEBIT("無錫農商(借記卡)"),
    WZB_DEBIT("溫州銀行(借記卡)"),
    XAB_CREDIT("西安銀行(信用卡)"),
    WEB_DEBIT("微眾銀行(借記卡)"),
    XIB_DEBIT("廈門國際銀行(借記卡)"),
    XJRCCB_DEBIT("新疆農信銀行(借記卡)"),
    XMCCB_DEBIT("廈門銀行(借記卡)"),
    YNRCCB_DEBIT("雲南農信(借記卡)"),
    YRRCB_CREDIT("黃河農商銀行(信用卡)"),
    YRRCB_DEBIT("黃河農商銀行(借記卡)"),
    YTB_DEBIT("煙臺銀行(借記卡)"),
    ZJB_DEBIT("紫金農商銀行(借記卡)"),
    ZJLXRB_DEBIT("蘭溪越商銀行(借記卡)"),
    ZJRCUB_CREDIT("浙江農信(信用卡)"),
    AHRCUB_DEBIT("安徽省農村信用社聯合社(借記卡)"),
    BCZ_CREDIT("滄州銀行(信用卡)"),
    SRB_DEBIT("上饒銀行(借記卡)"),
    ZYB_DEBIT("中原銀行(借記卡)"),
    ZRCB_DEBIT("張家港農商行(借記卡)"),
    SRCB_CREDIT("上海農商銀行(信用卡)"),
    SRCB_DEBIT("上海農商銀行(借記卡)"),
    ZJTLCB_DEBIT("浙江泰隆銀行(借記卡)"),
    SUZB_DEBIT("蘇州銀行(借記卡)"),
    SXNX_DEBIT("山西農信(借記卡)"),
    SXXH_DEBIT("陝西信合(借記卡)"),
    ZJRCUB_DEBIT("浙江農信(借記卡)"),
    AE_CREDIT("AE(信用卡)"),
    TACCB_CREDIT("泰安銀行(信用卡)"),
    TACCB_DEBIT("泰安銀行(借記卡)"),
    TCRCB_DEBIT("太倉農商行(借記卡)"),
    TJBHB_CREDIT("天津濱海農商行(信用卡)"),
    TJBHB_DEBIT("天津濱海農商行(借記卡)"),
    TJB_DEBIT("天津銀行(借記卡)"),
    TRCB_DEBIT("天津農商(借記卡)"),
    TZB_DEBIT("台州銀行(借記卡)"),
    URB_DEBIT("聯合村鎮銀行(借記卡)"),
    DYB_CREDIT("東營銀行(信用卡)"),
    CSRCB_DEBIT("常熟農商銀行(借記卡)"),
    CZB_CREDIT("浙商銀行(信用卡)"),
    CZB_DEBIT("浙商銀行(借記卡)"),
    CZCB_CREDIT("稠州銀行(信用卡)"),
    CZCB_DEBIT("稠州銀行(借記卡)"),
    DANDONGB_CREDIT("丹東銀行(信用卡)"),
    DANDONGB_DEBIT("丹東銀行(借記卡)"),
    DLB_CREDIT("大連銀行(信用卡)"),
    DLB_DEBIT("大連銀行(借記卡)"),
    DRCB_CREDIT("東莞農商銀行(信用卡)"),
    DRCB_DEBIT("東莞農商銀行(借記卡)"),
    CSRCB_CREDIT("常熟農商銀行(信用卡)"),
    DYB_DEBIT("東營銀行(借記卡)"),
    DYCCB_DEBIT("德陽銀行(借記卡)"),
    FBB_DEBIT("富邦華一銀行(借記卡)"),
    FDB_DEBIT("富滇銀行(借記卡)"),
    FJHXB_CREDIT("福建海峽銀行(信用卡)"),
    FJHXB_DEBIT("福建海峽銀行(借記卡)"),
    FJNX_DEBIT("福建農信銀行(借記卡)"),
    FUXINB_DEBIT("阜新銀行(借記卡)"),
    BOCDB_DEBIT("承德銀行(借記卡)"),
    JSNX_DEBIT("江蘇農商行(借記卡)"),
    BOLFB_DEBIT("廊坊銀行(借記卡)"),
    CCAB_CREDIT("長安銀行(信用卡)"),
    CBHB_DEBIT("渤海銀行(借記卡)"),
    CDRCB_DEBIT("成都農商銀行(借記卡)"),
    BYK_DEBIT("營口銀行(借記卡)"),
    BOZ_DEBIT("張家口市商業銀行(借記卡)"),
    CFT("零錢"),
    BOTSB_DEBIT("唐山銀行(借記卡)"),
    BOSZS_DEBIT("石嘴山銀行(借記卡)"),
    BOSXB_DEBIT("紹興銀行(借記卡)"),
    BONX_DEBIT("寧夏銀行(借記卡)"),
    BONX_CREDIT("寧夏銀行(信用卡)"),
    GDHX_DEBIT("廣東華興銀行(借記卡)"),
    BOLB_DEBIT("洛陽銀行(借記卡)"),
    BOJX_DEBIT("嘉興銀行(借記卡)"),
    BOIMCB_DEBIT("內蒙古銀行(借記卡)"),
    BOHN_DEBIT("海南銀行(借記卡)"),
    BOD_DEBIT("東莞銀行(借記卡)"),
    CQRCB_CREDIT("重慶農商銀行(信用卡)"),
    CQRCB_DEBIT("重慶農商銀行(借記卡)"),
    CQTGB_DEBIT("重慶三峽銀行(借記卡)"),
    BOD_CREDIT("東莞銀行(信用卡)"),
    CSCB_DEBIT("長沙銀行(借記卡)"),
    BOB_CREDIT("北京銀行(信用卡)"),
    GDRCU_DEBIT("廣東農信銀行(借記卡)"),
    BOB_DEBIT("北京銀行(借記卡)"),
    HRXJB_DEBIT("華融湘江銀行(借記卡)"),
    HSBC_DEBIT("恆生銀行(借記卡)"),
    HSB_CREDIT("徽商銀行(信用卡)"),
    HSB_DEBIT("徽商銀行(借記卡)"),
    HUNNX_DEBIT("湖南農信(借記卡)"),
    HUSRB_DEBIT("湖商村鎮銀行(借記卡)"),
    HXB_CREDIT("華夏銀行(信用卡)"),
    HXB_DEBIT("華夏銀行(借記卡)"),
    HNNX_DEBIT("河南農信(借記卡)"),
    BNC_DEBIT("江西銀行(借記卡)"),
    BNC_CREDIT("江西銀行(信用卡)"),
    BJRCB_DEBIT("北京農商行(借記卡)"),
    JCB_DEBIT("晉城銀行(借記卡)"),
    JJCCB_DEBIT("九江銀行(借記卡)"),
    JLB_DEBIT("吉林銀行(借記卡)"),
    JLNX_DEBIT("吉林農信(借記卡)"),
    JNRCB_DEBIT("江南農商(借記卡)"),
    JRCB_DEBIT("江陰農商行(借記卡)"),
    JSHB_DEBIT("晉商銀行(借記卡)"),
    HAINNX_DEBIT("海南農信(借記卡)"),
    GLB_DEBIT("桂林銀行(借記卡)"),
    GRCB_CREDIT("廣州農商銀行(信用卡)"),
    GRCB_DEBIT("廣州農商銀行(借記卡)"),
    GSB_DEBIT("甘肅銀行(借記卡)"),
    GSNX_DEBIT("甘肅農信(借記卡)"),
    GXNX_DEBIT("廣西農信(借記卡)"),
    GYCB_CREDIT("貴陽銀行(信用卡)"),
    GYCB_DEBIT("貴陽銀行(借記卡)"),
    GZNX_DEBIT("貴州農信(借記卡)"),
    HAINNX_CREDIT("海南農信(信用卡)"),
    HKB_DEBIT("漢口銀行(借記卡)"),
    HANAB_DEBIT("韓亞銀行(借記卡)"),
    HBCB_CREDIT("湖北銀行(信用卡)"),
    HBCB_DEBIT("湖北銀行(借記卡)"),
    HBNX_CREDIT("湖北農信(信用卡)"),
    HBNX_DEBIT("湖北農信(借記卡)"),
    HDCB_DEBIT("邯鄲銀行(借記卡)"),
    HEBNX_DEBIT("河北農信(借記卡)"),
    HFB_DEBIT("恆豐銀行(借記卡)"),
    HKBEA_DEBIT("東亞銀行(借記卡)"),
    JCB_CREDIT("JCB(信用卡)"),
    MASTERCARD_CREDIT("MASTERCARD(信用卡)"),
    VISA_CREDIT("VISA(信用卡)"),
    LQT("零錢通");

    // 成員變數
    private String value;
    // 構造方法,不需要加private,是多餘的
    WechatPayChannelEnum (String value){
        this.value = value;
    }
    //重寫toString方法就可以了直接獲取了
    @Override
    public String toString(){
        return this.value;
    }
    public static void main(String[] args) {
        //測試輸出
        System.out.println(WechatPayChannelEnum.AE_CREDIT);
        System.out.println(WechatPayChannelEnum.AE_CREDIT.value);
        //從列舉類中列舉一個xxx的並輸出他的值
        String xxx="CFT";
        WechatChannelEnum anEnum=Enum.valueOf(WechatPayChannelEnum.class,xxx);
        System.out.println(anEnum.value);
        System.out.println(anEnum.toString());
    }
}