1 import java.util.HashMap;
2 import java.util.Map;
3
4 /**
5 * 收单行 大写首字母 和对应的编码<br/>
6 *
7 * ABC 农业银行<br/>
8 BC 中国银行<br/>
9 CBC 建设银行<br/>
10 CITIC 中信银行<br/>
11 CMBC 招商银行<br/>
12 HSBC 汇丰银行<br/>
13 ICBC 工商银行<br/>
14 UP 银联<br/>
15 WECHAT 微信<br/>
16 ALIPAY 支付宝<br/>
17 * @author zhouyy
18 *
19 */
20 public enum BankAcquirEnum {
21
22 /**
23 * 工商银行
24 */
25 工商银行("GSYH","2001"),
26 /**
27 * 建设银行
28 */
29 建设银行("JSYH","2002"),
30 /**
31 * 中国银行
32 */
33 中国银行("ZGYH","2003"),
34 /**
35 * 平安银行
36 */
37 平安银行("PAYH","2004"),
38 /**
39 * 农业银行
40 */
41 农业银行("NYYH","2005"),
42 /**
43 * 银联
44 */
45 银联("YL","2007"),
46 /**
47 * 银行卡
48 */
49 银行卡("YHK",null),
50 /**
51 * 中信银行
52 */
53 中信银行("ZXYH","2016"),
54 /**
55 * 盛京银行
56 */
57 盛京银行("SJYH","2017"),
58 /**
59 * 中心易办事
60 */
61 中心易办事("ZXYBS","1060"),
62 /**
63 * 浦发银行
64 */
65 浦发银行("PFYH","1071"),
66 /**
67 * 光大银行
68 */
69 光大银行("GDYH","1072"),
70 /**
71 * 通联支付
72 */
73 通联支付("TLZF","1074"),
74 /**
75 * 交通银行
76 */
77 交谈银行("JTYH","1081"),
78 /**
79 * 兴业银行
80 */
81 兴业银行("XYYH","2006"),
82 /**
83 * 商户收银
84 */
85 商户收银("SHSY","1083"),
86 /**
87 * 微信支付
88 */
89 微信支付("WX","1058"),
90 /**
91 * 支付宝
92 */
93 支付宝("ZFB","1024"),
94 ;
95
96
97 public String key;
98 public String value;
99
100 BankAcquirEnum(String key,String value){
101 this.key = key;
102 this.value = value;
103 }
104
105
106
107 /**
108 * 通过 key【银行英文名称】 获取 value【银行收单行code】
109 * @param key
110 * key : 银行英文名称(JSYH) <br/>
111 * value : 银行收单行code(2002)
112 * @return
113 */
114 public static String getValue(String key) {
115 for (BankAcquirEnum c : BankAcquirEnum.values()) {
116 if(c.key.equals(key)) {
117 return c.value;
118 }
119 }
120 return null;
121 }
122
123 /**
124 * 枚举返回 map <br/>
125 * key : 银行英文名称(JSYH) <br/>
126 * value : 银行收单行code(2002)
127 *
128 * @return map<key, value>
129 */
130 public static Map<String,String> BankCodeMap(){
131 Map<String,String> map = new HashMap<String, String>();
132 for(BankAcquirEnum c : BankAcquirEnum.values()){
133 map.put(c.key, c.value);
134 }
135 return map;
136 }
137
138
139 /**
140 * 通过 key【银行英文名称】 获取 value【银行中文名称】
141 * @param key <br/>
142 * key : 银行英文名称: JSYH <br/>
143 * value : 银行名称 : 建设银行
144 * @return
145 */
146 public static String getBankName(String key) {
147 for (BankAcquirEnum c : BankAcquirEnum.values()) {
148 if(c.key.equals(key)) {
149 return c.toString();
150 }
151 }
152 return null;
153 }
154
155
156 /**
157 * 枚举返回 map<br/>
158 * key : 银行英文名称(JSYH) <br/>
159 * value : 银行名称 :建设银行
160 * @return map<key, value>
161 */
162 public static Map<String, String> BankNameMap(){
163 Map<String,String> map = new HashMap<String, String>();
164 for (BankAcquirEnum c : BankAcquirEnum.values()) {
165 map.put(c.key, c.toString());
166 }
167 return map;
168 }
169
170 }