添加地址码常量定义文件

- 新增 addrCode.go 文件,定义全国及各省市县级地区码常量
- 地区码常量命名采用拼音大写加下划线格式
- 常量值对应 NEW.xlsx 表格中的地区编码
- 包含从国家级到县级的完整行政区域代码枚举
- 每个常量均附带详细注释说明所属地区名称
menu v1.0.5
maguodong 2025-10-10 19:32:58 +08:00
parent 5824ed7eef
commit 38b8d577cc
11 changed files with 1824 additions and 2 deletions

745
consts/addrCode.go Normal file
View File

@ -0,0 +1,745 @@
// Package consts 提供常量定义
package consts
// AddrCode 地区码枚举
type AddrCode string
const (
// 地区码常量定义根据地区码表NEW.xlsx生成
// 常量命名规则大写字母加下划线格式使用表格B列值的拼音
// 常量值表格A列的值
// ADDR_CODE_QUAN_GUO 全国
ADDR_CODE_QUAN_GUO AddrCode = "1"
// ADDR_CODE_BEI_JING_SHI 北京市
ADDR_CODE_BEI_JING_SHI AddrCode = "1000"
// ADDR_CODE_MI_YUN_QU 密云区
ADDR_CODE_MI_YUN_QU AddrCode = "1027"
// ADDR_CODE_YAN_QING_QU 延庆区
ADDR_CODE_YAN_QING_QU AddrCode = "1028"
// ADDR_CODE_TIAN_JIN_SHI 天津市
ADDR_CODE_TIAN_JIN_SHI AddrCode = "1100"
// ADDR_CODE_NING_HE_QU 宁河区
ADDR_CODE_NING_HE_QU AddrCode = "1121"
// ADDR_CODE_JING_HAI_QU 静海区
ADDR_CODE_JING_HAI_QU AddrCode = "1123"
// ADDR_CODE_TIAN_JIN_SHI_JI_ZHOU_QU 蓟州区
ADDR_CODE_TIAN_JIN_SHI_JI_ZHOU_QU AddrCode = "1125"
// ADDR_CODE_BIN_HAI_XIN_QU 滨海新区
ADDR_CODE_BIN_HAI_XIN_QU AddrCode = "1127"
// ADDR_CODE_HE_BEI_SHENG 河北省
ADDR_CODE_HE_BEI_SHENG AddrCode = "1200"
// ADDR_CODE_SHI_JIA_ZHUANG_SHI 石家庄市
ADDR_CODE_SHI_JIA_ZHUANG_SHI AddrCode = "1210"
// ADDR_CODE_JING_XING_XIAN 井陉县
ADDR_CODE_JING_XING_XIAN AddrCode = "1211"
// ADDR_CODE_LU_QUAN_QU 鹿泉区
ADDR_CODE_LU_QUAN_QU AddrCode = "1212"
// ADDR_CODE_ZHENG_DING_XIAN 正定县
ADDR_CODE_ZHENG_DING_XIAN AddrCode = "1213"
// ADDR_CODE_LUAN_CHENG_QU 栾城区
ADDR_CODE_LUAN_CHENG_QU AddrCode = "1214"
// ADDR_CODE_CHANG_AN_QU 长安区
ADDR_CODE_CHANG_AN_QU AddrCode = "1215"
// ADDR_CODE_JIA_ZHUANG_SHI_QIAO_XI_QU 桥西区
ADDR_CODE_JIA_ZHUANG_SHI_QIAO_XI_QU AddrCode = "1216"
// ADDR_CODE_SHI_JIA_ZHUANG_SHI_XIN_HUA_QU 新华区
ADDR_CODE_SHI_JIA_ZHUANG_SHI_XIN_HUA_QU AddrCode = "1217"
// ADDR_CODE_JING_XING_KUANG_QU 井陉矿区
ADDR_CODE_JING_XING_KUANG_QU AddrCode = "1218"
// ADDR_CODE_YU_HUA_QU 裕华区
ADDR_CODE_YU_HUA_QU AddrCode = "1219"
// ADDR_CODE_XIN_JI_SHI 辛集市
ADDR_CODE_XIN_JI_SHI AddrCode = "1221"
// ADDR_CODE_JIN_ZHOU_SHI 晋州市
ADDR_CODE_JIN_ZHOU_SHI AddrCode = "1222"
// ADDR_CODE_SHEN_ZE_XIAN 深泽县
ADDR_CODE_SHEN_ZE_XIAN AddrCode = "1223"
// ADDR_CODE_WU_JI_XIAN 无极县
ADDR_CODE_WU_JI_XIAN AddrCode = "1224"
// ADDR_CODE_GAO_CHENG_QU 藁城区
ADDR_CODE_GAO_CHENG_QU AddrCode = "1225"
// ADDR_CODE_ZHAO_XIAN 赵县
ADDR_CODE_ZHAO_XIAN AddrCode = "1226"
// ADDR_CODE_XIN_LE_SHI 新乐市
ADDR_CODE_XIN_LE_SHI AddrCode = "1227"
// ADDR_CODE_GAO_YI_XIAN 高邑县
ADDR_CODE_GAO_YI_XIAN AddrCode = "1228"
// ADDR_CODE_YUAN_SHI_XIAN 元氏县
ADDR_CODE_YUAN_SHI_XIAN AddrCode = "1229"
// ADDR_CODE_ZAN_HUANG_XIAN 赞皇县
ADDR_CODE_ZAN_HUANG_XIAN AddrCode = "1231"
// ADDR_CODE_PING_SHAN_XIAN 平山县
ADDR_CODE_PING_SHAN_XIAN AddrCode = "1232"
// ADDR_CODE_LING_SHOU_XIAN 灵寿县
ADDR_CODE_LING_SHOU_XIAN AddrCode = "1233"
// ADDR_CODE_XING_TANG_XIAN 行唐县
ADDR_CODE_XING_TANG_XIAN AddrCode = "1234"
// ADDR_CODE_TANG_SHAN_SHI 唐山市
ADDR_CODE_TANG_SHAN_SHI AddrCode = "1240"
// ADDR_CODE_LU_NAN_QU 路南区
ADDR_CODE_LU_NAN_QU AddrCode = "1241"
// ADDR_CODE_LU_BEI_QU 路北区
ADDR_CODE_LU_BEI_QU AddrCode = "1242"
// ADDR_CODE_LUAN_ZHOU_SHI 滦州市
ADDR_CODE_LUAN_ZHOU_SHI AddrCode = "1243"
// ADDR_CODE_LUAN_NAN_XIAN 滦南县
ADDR_CODE_LUAN_NAN_XIAN AddrCode = "1244"
// ADDR_CODE_LE_TING_XIAN 乐亭县
ADDR_CODE_LE_TING_XIAN AddrCode = "1245"
// ADDR_CODE_QIAN_AN_SHI 迁安市
ADDR_CODE_QIAN_AN_SHI AddrCode = "1246"
// ADDR_CODE_QIAN_XI_XIAN 迁西县
ADDR_CODE_QIAN_XI_XIAN AddrCode = "1247"
// ADDR_CODE_ZUN_HUA_SHI 遵化市
ADDR_CODE_ZUN_HUA_SHI AddrCode = "1248"
// ADDR_CODE_YU_TIAN_XIAN 玉田县
ADDR_CODE_YU_TIAN_XIAN AddrCode = "1249"
// ADDR_CODE_FENG_NAN_QU 丰南区
ADDR_CODE_FENG_NAN_QU AddrCode = "1251"
// ADDR_CODE_GU_YE_QU 古冶区
ADDR_CODE_GU_YE_QU AddrCode = "1252"
// ADDR_CODE_KAI_PING_QU 开平区
ADDR_CODE_KAI_PING_QU AddrCode = "1253"
// ADDR_CODE_FENG_RUN_QU 丰润区
ADDR_CODE_FENG_RUN_QU AddrCode = "1254"
// ADDR_CODE_CAO_FEI_DIAN_QU 曹妃甸区
ADDR_CODE_CAO_FEI_DIAN_QU AddrCode = "1255"
// ADDR_CODE_QIN_HUANG_DAO_SHI 秦皇岛市
ADDR_CODE_QIN_HUANG_DAO_SHI AddrCode = "1260"
// ADDR_CODE_QING_LONG_MAN_ZU_ZI_ZHI_XIAN 青龙满族自治县
ADDR_CODE_QING_LONG_MAN_ZU_ZI_ZHI_XIAN AddrCode = "1261"
// ADDR_CODE_CHANG_LI_XIAN 昌黎县
ADDR_CODE_CHANG_LI_XIAN AddrCode = "1262"
// ADDR_CODE_FU_NING_QU 抚宁区
ADDR_CODE_FU_NING_QU AddrCode = "1263"
// ADDR_CODE_LU_LONG_XIAN 卢龙县
ADDR_CODE_LU_LONG_XIAN AddrCode = "1264"
// ADDR_CODE_HAI_GANG_QU 海港区
ADDR_CODE_HAI_GANG_QU AddrCode = "1265"
// ADDR_CODE_SHAN_HAI_GU_QU 山海关区
ADDR_CODE_SHAN_HAI_GU_QU AddrCode = "1266"
// ADDR_CODE_BEI_DAI_HE_QU 北戴河区
ADDR_CODE_BEI_DAI_HE_QU AddrCode = "1267"
// ADDR_CODE_HAN_DAN_SHI 邯郸市
ADDR_CODE_HAN_DAN_SHI AddrCode = "1270"
// ADDR_CODE_HAN_DAN_XIAN 邯郸县
ADDR_CODE_HAN_DAN_XIAN AddrCode = "1271"
// ADDR_CODE_HAN_SHAN_QU 邯山区
ADDR_CODE_HAN_SHAN_QU AddrCode = "1272"
// ADDR_CODE_CONG_TAI_QU 丛台区
ADDR_CODE_CONG_TAI_QU AddrCode = "1273"
// ADDR_CODE_FU_XING_QU 复兴区
ADDR_CODE_FU_XING_QU AddrCode = "1274"
// ADDR_CODE_FENG_FENG_KUANG_QU 峰峰矿区
ADDR_CODE_FENG_FENG_KUANG_QU AddrCode = "1275"
// ADDR_CODE_DA_MING_XIAN 大名县
ADDR_CODE_DA_MING_XIAN AddrCode = "1281"
// ADDR_CODE_HAN_DAN_SHI_WEI_XIAN 魏县
ADDR_CODE_HAN_DAN_SHI_WEI_XIAN AddrCode = "1282"
// ADDR_CODE_QU_ZHOU_XIAN 曲周县
ADDR_CODE_QU_ZHOU_XIAN AddrCode = "1283"
// ADDR_CODE_QIU_XIAN 邱县
ADDR_CODE_QIU_XIAN AddrCode = "1284"
// ADDR_CODE_JI_ZE_XIAN 鸡泽县
ADDR_CODE_JI_ZE_XIAN AddrCode = "1285"
// ADDR_CODE_FEI_XIANG_QU 肥乡区
ADDR_CODE_FEI_XIANG_QU AddrCode = "1286"
// ADDR_CODE_GUANG_PING_XIAN 广平县
ADDR_CODE_GUANG_PING_XIAN AddrCode = "1287"
// ADDR_CODE_CHENG_AN_XIAN 成安县
ADDR_CODE_CHENG_AN_XIAN AddrCode = "1288"
// ADDR_CODE_LIN_ZHANG_XIAN 临漳县
ADDR_CODE_LIN_ZHANG_XIAN AddrCode = "1289"
// ADDR_CODE_CI_XIAN 磁县
ADDR_CODE_CI_XIAN AddrCode = "1291"
// ADDR_CODE_SHE_XIAN 涉县
ADDR_CODE_SHE_XIAN AddrCode = "1292"
// ADDR_CODE_YONG_NIAN_QU 永年区
ADDR_CODE_YONG_NIAN_QU AddrCode = "1293"
// ADDR_CODE_GUAN_TAO_XIAN 馆陶县
ADDR_CODE_GUAN_TAO_XIAN AddrCode = "1294"
// ADDR_CODE_WU_AN_SHI 武安市
ADDR_CODE_WU_AN_SHI AddrCode = "1295"
// ADDR_CODE_XING_TAI_SHI 邢台市
ADDR_CODE_XING_TAI_SHI AddrCode = "1310"
// ADDR_CODE_XING_TAI_XIAN 邢台县
ADDR_CODE_XING_TAI_XIAN AddrCode = "1311"
// ADDR_CODE_XIANG_DOU_QU 襄都区
ADDR_CODE_XIANG_DOU_QU AddrCode = "1312"
// ADDR_CODE_XIN_DU_QU 信都区
ADDR_CODE_XIN_DU_QU AddrCode = "1313"
// ADDR_CODE_NAN_GONG_SHI 南宫市
ADDR_CODE_NAN_GONG_SHI AddrCode = "1321"
// ADDR_CODE_SHA_HE_SHI 沙河市
ADDR_CODE_SHA_HE_SHI AddrCode = "1322"
// ADDR_CODE_LIN_CHENG_XIAN 临城县
ADDR_CODE_LIN_CHENG_XIAN AddrCode = "1323"
// ADDR_CODE_NEI_QIU_XIAN 内丘县
ADDR_CODE_NEI_QIU_XIAN AddrCode = "1324"
// ADDR_CODE_BAI_XIANG_XIAN 柏乡县
ADDR_CODE_BAI_XIANG_XIAN AddrCode = "1325"
// ADDR_CODE_LONG_YAO_XIAN 隆尧县
ADDR_CODE_LONG_YAO_XIAN AddrCode = "1326"
// ADDR_CODE_REN_ZE_QU 任泽区
ADDR_CODE_REN_ZE_QU AddrCode = "1327"
// ADDR_CODE_NAN_HE_QU 南和区
ADDR_CODE_NAN_HE_QU AddrCode = "1328"
// ADDR_CODE_NING_JIN_XIAN 宁晋县
ADDR_CODE_NING_JIN_XIAN AddrCode = "1329"
// ADDR_CODE_JU_LU_XIAN 巨鹿县
ADDR_CODE_JU_LU_XIAN AddrCode = "1331"
// ADDR_CODE_XIN_HE_XIAN 新河县
ADDR_CODE_XIN_HE_XIAN AddrCode = "1332"
// ADDR_CODE_GUANG_ZONG_XIAN 广宗县
ADDR_CODE_GUANG_ZONG_XIAN AddrCode = "1333"
// ADDR_CODE_PING_XIANG_XIAN 平乡县
ADDR_CODE_PING_XIANG_XIAN AddrCode = "1334"
// ADDR_CODE_WEI_XIAN 威县
ADDR_CODE_XING_TAI_SHI_WEI_XIAN AddrCode = "1335"
// ADDR_CODE_QING_HE_XIAN 清河县
ADDR_CODE_QING_HE_XIAN AddrCode = "1336"
// ADDR_CODE_SHA_HE_SHI_LIN_XI_XIAN 临西县
ADDR_CODE_SHA_HE_SHI_LIN_XI_XIAN AddrCode = "1337"
// ADDR_CODE_BAO_DING_SHI 保定市
ADDR_CODE_BAO_DING_SHI AddrCode = "1340"
// ADDR_CODE_MAN_CHENG_QU 满城区
ADDR_CODE_MAN_CHENG_QU AddrCode = "1341"
// ADDR_CODE_QING_YUAN_QU 清苑区
ADDR_CODE_QING_YUAN_QU AddrCode = "1342"
// ADDR_CODE_JING_XIU_QU 竞秀区
ADDR_CODE_JING_XIU_QU AddrCode = "1343"
// ADDR_CODE_LIAN_CHI_QU 莲池区
ADDR_CODE_LIAN_CHI_QU AddrCode = "1344"
// ADDR_CODE_DING_ZHOU_SHI 定州市
ADDR_CODE_DING_ZHOU_SHI AddrCode = "1351"
// ADDR_CODE_ZHUO_ZHOU_SHI 涿州市
ADDR_CODE_ZHUO_ZHOU_SHI AddrCode = "1352"
// ADDR_CODE_YI_XIAN 易县
ADDR_CODE_YI_XIAN AddrCode = "1353"
// ADDR_CODE_XU_SHUI_QU 徐水区
ADDR_CODE_XU_SHUI_QU AddrCode = "1354"
// ADDR_CODE_LAI_YUAN_XIAN 涞源县
ADDR_CODE_LAI_YUAN_XIAN AddrCode = "1355"
// ADDR_CODE_DING_XING_XIAN 定兴县
ADDR_CODE_DING_XING_XIAN AddrCode = "1356"
// ADDR_CODE_SHUN_PING_XIAN 顺平县
ADDR_CODE_SHUN_PING_XIAN AddrCode = "1357"
// ADDR_CODE_TANG_XIAN 唐县
ADDR_CODE_TANG_XIAN AddrCode = "1358"
// ADDR_CODE_WANG_DU_XIAN 望都县
ADDR_CODE_WANG_DU_XIAN AddrCode = "1359"
// ADDR_CODE_LAI_SHUI_XIAN 涞水县
ADDR_CODE_LAI_SHUI_XIAN AddrCode = "1361"
// ADDR_CODE_GAO_YANG_XIAN 高阳县
ADDR_CODE_GAO_YANG_XIAN AddrCode = "1362"
// ADDR_CODE_AN_XIN_XIAN 安新县
ADDR_CODE_AN_XIN_XIAN AddrCode = "1363"
// ADDR_CODE_XIONG_XIAN 雄县
ADDR_CODE_XIONG_XIAN AddrCode = "1364"
// ADDR_CODE_RONG_CHENG_XIAN 容城县
ADDR_CODE_RONG_CHENG_XIAN AddrCode = "1365"
// ADDR_CODE_GAO_BEI_DIAN_SHI 高碑店市
ADDR_CODE_GAO_BEI_DIAN_SHI AddrCode = "1366"
// ADDR_CODE_QU_YANG_XIAN 曲阳县
ADDR_CODE_QU_YANG_XIAN AddrCode = "1367"
// ADDR_CODE_FU_PING_XIAN 阜平县
ADDR_CODE_FU_PING_XIAN AddrCode = "1368"
// ADDR_CODE_AN_GUO_SHI 安国市
ADDR_CODE_AN_GUO_SHI AddrCode = "1369"
// ADDR_CODE_BO_YE_XIAN 博野县
ADDR_CODE_BO_YE_XIAN AddrCode = "1371"
// ADDR_CODE_LI_XIAN 蠡县
ADDR_CODE_LI_XIAN AddrCode = "1372"
// ADDR_CODE_ZHANG_JIA_KOU_SHI 张家口市
ADDR_CODE_ZHANG_JIA_KOU_SHI AddrCode = "1380"
// ADDR_CODE_XUAN_HUA_XIAN 宣化县
ADDR_CODE_XUAN_HUA_XIAN AddrCode = "1381"
// ADDR_CODE_QIAO_DONG_QU 桥东区
ADDR_CODE_QIAO_DONG_QU AddrCode = "1382"
// ADDR_CODE_JIA_KOU_SHI_QIAO_XI_QU 桥西区
ADDR_CODE_JIA_KOU_SHI_QIAO_XI_QU AddrCode = "1383"
// ADDR_CODE_XUAN_HUA_QU 宣化区
ADDR_CODE_XUAN_HUA_QU AddrCode = "1384"
// ADDR_CODE_XIA_HUA_YUAN_QU 下花园区
ADDR_CODE_XIA_HUA_YUAN_QU AddrCode = "1385"
// ADDR_CODE_ZHANG_BEI_XIAN 张北县
ADDR_CODE_ZHANG_BEI_XIAN AddrCode = "1391"
// ADDR_CODE_KANG_BAO_XIAN 康保县
ADDR_CODE_KANG_BAO_XIAN AddrCode = "1392"
// ADDR_CODE_GU_YUAN_XIAN 沽源县
ADDR_CODE_GU_YUAN_XIAN AddrCode = "1393"
// ADDR_CODE_SHANG_YI_XIAN 尚义县
ADDR_CODE_SHANG_YI_XIAN AddrCode = "1394"
// ADDR_CODE_ZHANG_JIA_KOU_SHI_YU_XIAN 蔚县
ADDR_CODE_ZHANG_JIA_KOU_SHI_YU_XIAN AddrCode = "1395"
// ADDR_CODE_YANG_YUAN_XIAN 阳原县
ADDR_CODE_YANG_YUAN_XIAN AddrCode = "1396"
// ADDR_CODE_HUAI_AN_XIAN 怀安县
ADDR_CODE_HUAI_AN_XIAN AddrCode = "1397"
// ADDR_CODE_WAN_QUAN_QU 万全区
ADDR_CODE_WAN_QUAN_QU AddrCode = "1398"
// ADDR_CODE_HUAI_LAI_XIAN 怀来县
ADDR_CODE_HUAI_LAI_XIAN AddrCode = "1399"
// ADDR_CODE_ZHUO_LU_XIAN 涿鹿县
ADDR_CODE_ZHUO_LU_XIAN AddrCode = "1401"
// ADDR_CODE_CHI_CHENG_XIAN 赤城县
ADDR_CODE_CHI_CHENG_XIAN AddrCode = "1402"
// ADDR_CODE_CHONG_LI_QU 崇礼区
ADDR_CODE_CHONG_LI_QU AddrCode = "1403"
// ADDR_CODE_CHENG_DE_SHI 承德市
ADDR_CODE_CHENG_DE_SHI AddrCode = "1410"
// ADDR_CODE_CHENG_DE_XIAN 承德县
ADDR_CODE_CHENG_DE_XIAN AddrCode = "1411"
// ADDR_CODE_SHUANG_LUAN_QU 双滦区
ADDR_CODE_SHUANG_LUAN_QU AddrCode = "1413"
// ADDR_CODE_YING_SHOU_YING_ZI_KUANG_QU 鹰手营子矿区
ADDR_CODE_YING_SHOU_YING_ZI_KUANG_QU AddrCode = "1414"
// ADDR_CODE_KUAN_CHENG_MAN_ZU_ZI_ZHI_XIAN 宽城满族自治县
ADDR_CODE_KUAN_CHENG_MAN_ZU_ZI_ZHI_XIAN AddrCode = "1421"
// ADDR_CODE_XING_LONG_XIAN 兴隆县
ADDR_CODE_XING_LONG_XIAN AddrCode = "1422"
// ADDR_CODE_PING_QUAN_SHI 平泉市
ADDR_CODE_PING_QUAN_SHI AddrCode = "1423"
// ADDR_CODE_LUAN_PING_XIAN 滦平县
ADDR_CODE_LUAN_PING_XIAN AddrCode = "1424"
// ADDR_CODE_FENG_NING_MAN_ZU_ZI_ZHI_XIAN 丰宁满族自治县
ADDR_CODE_FENG_NING_MAN_ZU_ZI_ZHI_XIAN AddrCode = "1425"
// ADDR_CODE_LONG_HUA_XIAN 隆化县
ADDR_CODE_LONG_HUA_XIAN AddrCode = "1426"
// ADDR_CODE_WEI_CHANG_MAN_ZU_MENG_GU_ZU_ZI_ZHI_XIAN 围场满族蒙古族自治县
ADDR_CODE_WEI_CHANG_MAN_ZU_MENG_GU_ZU_ZI_ZHI_XIAN AddrCode = "1427"
// ADDR_CODE_CANG_ZHOU_SHI 沧州市
ADDR_CODE_CANG_ZHOU_SHI AddrCode = "1430"
// ADDR_CODE_CANG_XIAN 沧县
ADDR_CODE_CANG_XIAN AddrCode = "1431"
// ADDR_CODE_QING_XIAN 青县
ADDR_CODE_QING_XIAN AddrCode = "1432"
// ADDR_CODE_XIN_HUA_QU_TWO 新华区
ADDR_CODE_XIN_HUA_QU_TWO AddrCode = "1433"
// ADDR_CODE_PO_TOU_SHI 泊头市
ADDR_CODE_PO_TOU_SHI AddrCode = "1441"
// ADDR_CODE_REN_QIU_SHI 任丘市
ADDR_CODE_REN_QIU_SHI AddrCode = "1442"
// ADDR_CODE_HE_JIAN_SHI 河间市
ADDR_CODE_HE_JIAN_SHI AddrCode = "1443"
// ADDR_CODE_SU_NING_XIAN 肃宁县
ADDR_CODE_SU_NING_XIAN AddrCode = "1444"
// ADDR_CODE_XIAN_XIAN 献县
ADDR_CODE_XIAN_XIAN AddrCode = "1445"
// ADDR_CODE_WU_QIAO_XIAN 吴桥县
ADDR_CODE_WU_QIAO_XIAN AddrCode = "1446"
// ADDR_CODE_DONG_GUANG_XIAN 东光县
ADDR_CODE_DONG_GUANG_XIAN AddrCode = "1447"
// ADDR_CODE_NAN_PI_XIAN 南皮县
ADDR_CODE_NAN_PI_XIAN AddrCode = "1448"
// ADDR_CODE_YAN_SHAN_XIAN 盐山县
ADDR_CODE_YAN_SHAN_XIAN AddrCode = "1449"
// ADDR_CODE_HUANG_HUA_SHI 黄骅市
ADDR_CODE_HUANG_HUA_SHI AddrCode = "1451"
// ADDR_CODE_MENG_CUN_HUI_ZU_ZI_ZHI_XIAN 孟村回族自治县
ADDR_CODE_MENG_CUN_HUI_ZU_ZI_ZHI_XIAN AddrCode = "1452"
// ADDR_CODE_HAI_XING_XIAN 海兴县
ADDR_CODE_HAI_XING_XIAN AddrCode = "1453"
// ADDR_CODE_YUN_HE_QU 运河区
ADDR_CODE_YUN_HE_QU AddrCode = "1454"
// ADDR_CODE_LANG_FANG_SHI 廊坊市
ADDR_CODE_LANG_FANG_SHI AddrCode = "1460"
// ADDR_CODE_SAN_HE_SHI 三河市
ADDR_CODE_SAN_HE_SHI AddrCode = "1461"
// ADDR_CODE_GU_AN_XIAN 固安县
ADDR_CODE_GU_AN_XIAN AddrCode = "1462"
// ADDR_CODE_YONG_QING_XIAN 永清县
ADDR_CODE_YONG_QING_XIAN AddrCode = "1463"
// ADDR_CODE_XIANG_HE_XIAN 香河县
ADDR_CODE_XIANG_HE_XIAN AddrCode = "1464"
// ADDR_CODE_DA_CHENG_XIAN 大城县
ADDR_CODE_DA_CHENG_XIAN AddrCode = "1465"
// ADDR_CODE_WEN_AN_XIAN 文安县
ADDR_CODE_WEN_AN_XIAN AddrCode = "1466"
// ADDR_CODE_BA_ZHOU_SHI 霸州市
ADDR_CODE_BA_ZHOU_SHI AddrCode = "1467"
// ADDR_CODE_DA_CHANG_HUI_ZU_ZI_ZHI_XIAN 大厂回族自治县
ADDR_CODE_DA_CHANG_HUI_ZU_ZI_ZHI_XIAN AddrCode = "1468"
// ADDR_CODE_AN_CI_QU 安次区
ADDR_CODE_AN_CI_QU AddrCode = "1469"
// ADDR_CODE_GUANG_YANG_QU 广阳区
ADDR_CODE_GUANG_YANG_QU AddrCode = "1471"
// ADDR_CODE_HENG_SHUI_SHI 衡水市
ADDR_CODE_HENG_SHUI_SHI AddrCode = "1480"
// ADDR_CODE_JI_ZHOU_QU_TWO 冀州区
ADDR_CODE_JI_ZHOU_QU_TOW AddrCode = "1482"
// ADDR_CODE_ZAO_QIANG_XIAN 枣强县
ADDR_CODE_ZAO_QIANG_XIAN AddrCode = "1483"
// ADDR_CODE_WU_YI_XIAN 武邑县
ADDR_CODE_WU_YI_XIAN AddrCode = "1484"
// ADDR_CODE_SHEN_ZHOU_SHI 深州市
ADDR_CODE_SHEN_ZHOU_SHI AddrCode = "1485"
// ADDR_CODE_WU_QIANG_XIAN 武强县
ADDR_CODE_WU_QIANG_XIAN AddrCode = "1486"
// ADDR_CODE_RAO_YANG_XIAN 饶阳县
ADDR_CODE_RAO_YANG_XIAN AddrCode = "1487"
// ADDR_CODE_AN_PING_XIAN 安平县
ADDR_CODE_AN_PING_XIAN AddrCode = "1488"
// ADDR_CODE_GU_CHENG_XIAN 故城县
ADDR_CODE_GU_CHENG_XIAN AddrCode = "1489"
// ADDR_CODE_JING_XIAN 景县
ADDR_CODE_JING_XIAN AddrCode = "1491"
// ADDR_CODE_FU_CHENG_XIAN 阜城县
ADDR_CODE_FU_CHENG_XIAN AddrCode = "1492"
// ADDR_CODE_SHAN_XI_SHENG 山西省
ADDR_CODE_SHAN_XI_SHENG AddrCode = "1600"
// ADDR_CODE_TAI_YUAN_SHI 太原市
ADDR_CODE_TAI_YUAN_SHI AddrCode = "1610"
// ADDR_CODE_QING_XU_XIAN 清徐县
ADDR_CODE_QING_XU_XIAN AddrCode = "1611"
// ADDR_CODE_YANG_QU_XIAN 阳曲县
ADDR_CODE_YANG_QU_XIAN AddrCode = "1612"
// ADDR_CODE_LOU_FAN_XIAN 娄烦县
ADDR_CODE_LOU_FAN_XIAN AddrCode = "1613"
// ADDR_CODE_GU_JIAO_SHI 古交市
ADDR_CODE_GU_JIAO_SHI AddrCode = "1614"
// ADDR_CODE_JIAN_CAO_PING_QU 尖草坪区
ADDR_CODE_JIAN_CAO_PING_QU AddrCode = "1615"
// ADDR_CODE_XIAO_DIAN_QU 小店区
ADDR_CODE_XIAO_DIAN_QU AddrCode = "1616"
// ADDR_CODE_YING_ZE_QU 迎泽区
ADDR_CODE_YING_ZE_QU AddrCode = "1617"
// ADDR_CODE_XING_HUA_LING_QU 杏花岭区
ADDR_CODE_XING_HUA_LING_QU AddrCode = "1618"
// ADDR_CODE_WAN_BAI_LIN_QU 万柏林区
ADDR_CODE_WAN_BAI_LIN_QU AddrCode = "1619"
// ADDR_CODE_DA_TONG_SHI 大同市
ADDR_CODE_DA_TONG_SHI AddrCode = "1620"
// ADDR_CODE_JIN_YUAN_QU 晋源区
ADDR_CODE_JIN_YUAN_QU AddrCode = "1621"
// ADDR_CODE_YANG_GAO_XIAN 阳高县
ADDR_CODE_YANG_GAO_XIAN AddrCode = "1631"
// ADDR_CODE_TIAN_ZHEN_XIAN 天镇县
ADDR_CODE_TIAN_ZHEN_XIAN AddrCode = "1632"
// ADDR_CODE_GUANG_LING_XIAN 广灵县
ADDR_CODE_GUANG_LING_XIAN AddrCode = "1633"
// ADDR_CODE_LING_QIU_XIAN 灵丘县
ADDR_CODE_LING_QIU_XIAN AddrCode = "1634"
// ADDR_CODE_HUN_YUAN_XIAN 浑源县
ADDR_CODE_HUN_YUAN_XIAN AddrCode = "1635"
// ADDR_CODE_ZUO_YUN_XIAN 左云县
ADDR_CODE_ZUO_YUN_XIAN AddrCode = "1637"
// ADDR_CODE_NAN_JIAO_QU 南郊区
ADDR_CODE_NAN_JIAO_QU AddrCode = "1638"
// ADDR_CODE_YUN_ZHOU_QU 云州区
ADDR_CODE_YUN_ZHOU_QU AddrCode = "1639"
// ADDR_CODE_PING_CHENG_QU 平城区
ADDR_CODE_PING_CHENG_QU AddrCode = "1641"
// ADDR_CODE_YUN_GANG_QU 云冈区
ADDR_CODE_YUN_GANG_QU AddrCode = "1642"
// ADDR_CODE_XIN_RONG_QU 新荣区
ADDR_CODE_XIN_RONG_QU AddrCode = "1643"
// ADDR_CODE_YANG_QUAN_SHI 阳泉市
ADDR_CODE_YANG_QUAN_SHI AddrCode = "1650"
// ADDR_CODE_PING_DING_XIAN 平定县
ADDR_CODE_PING_DING_XIAN AddrCode = "1651"
// ADDR_CODE_YU_XIAN_TWO 盂县
ADDR_CODE_YU_XIAN_TWO AddrCode = "1652"
// ADDR_CODE_CHENG_QU 城区
ADDR_CODE_YU_XIAN_TWO_CHENG_QU AddrCode = "1653"
// ADDR_CODE_YU_XIAN_TWO_KUANG_QU 矿区
ADDR_CODE_YU_XIAN_TWO_KUANG_QU AddrCode = "1654"
// ADDR_CODE_JIAO_QU 郊区
ADDR_CODE_YU_XIAN_TWO_JIAO_QU AddrCode = "1655"
// ADDR_CODE_CHANG_ZHI_SHI 长治市
ADDR_CODE_CHANG_ZHI_SHI AddrCode = "1660"
// ADDR_CODE_SHANG_DANG_QU 上党区
ADDR_CODE_SHANG_DANG_QU AddrCode = "1661"
// ADDR_CODE_LU_CHENG_QU 潞城区
ADDR_CODE_LU_CHENG_QU AddrCode = "1662"
// ADDR_CODE_XIANG_YUAN_XIAN 襄垣县
ADDR_CODE_XIANG_YUAN_XIAN AddrCode = "1663"
// ADDR_CODE_TUN_LIU_QU 屯留区
ADDR_CODE_TUN_LIU_QU AddrCode = "1664"
// ADDR_CODE_PIN_SHUN_XIAN 平顺县
ADDR_CODE_PIN_SHUN_XIAN AddrCode = "1665"
// ADDR_CODE_LI_CHENG_XIAN 黎城县
ADDR_CODE_LI_CHENG_XIAN AddrCode = "1666"
// ADDR_CODE_HU_GUAN_XIAN 壶关县
ADDR_CODE_HU_GUAN_XIAN AddrCode = "1667"
// ADDR_CODE_ZHANG_ZI_XIAN 长子县
ADDR_CODE_ZHANG_ZI_XIAN AddrCode = "1668"
// ADDR_CODE_WU_XIANG_XIAN 武乡县
ADDR_CODE_WU_XIANG_XIAN AddrCode = "1669"
// ADDR_CODE_QIN_XIAN 沁县
ADDR_CODE_QIN_XIAN AddrCode = "1671"
// ADDR_CODE_QIN_YUAN_XIAN 沁源县
ADDR_CODE_QIN_YUAN_XIAN AddrCode = "1672"
// ADDR_CODE_LU_ZHOU_QU 潞州区
ADDR_CODE_LU_ZHOU_QU AddrCode = "1673"
// ADDR_CODE_JIAO_QU 郊区
ADDR_CODE_JIAO_QU AddrCode = "1674"
// ADDR_CODE_JIN_CHENG_SHI 晋城市
ADDR_CODE_JIN_CHENG_SHI AddrCode = "1680"
// ADDR_CODE_QIN_SHUI_XIAN 沁水县
ADDR_CODE_QIN_SHUI_XIAN AddrCode = "1681"
// ADDR_CODE_YANG_CHENG_XIAN 阳城县
ADDR_CODE_YANG_CHENG_XIAN AddrCode = "1682"
// ADDR_CODE_GAO_PING_SHI 高平市
ADDR_CODE_GAO_PING_SHI AddrCode = "1683"
// ADDR_CODE_LING_CHUAN_XIAN 陵川县
ADDR_CODE_LING_CHUAN_XIAN AddrCode = "1684"
// ADDR_CODE_ZE_ZHOU_XIAN 泽州县
ADDR_CODE_ZE_ZHOU_XIAN AddrCode = "1685"
// ADDR_CODE_CHENG_QU 城区
ADDR_CODE_CHENG_QU AddrCode = "1686"
// ADDR_CODE_SHUO_ZHOU_SHI 朔州市
ADDR_CODE_SHUO_ZHOU_SHI AddrCode = "1690"
// ADDR_CODE_SHAN_YIN_XIAN 山阴县
ADDR_CODE_SHAN_YIN_XIAN AddrCode = "1691"
// ADDR_CODE_YING_XIAN 应县
ADDR_CODE_YING_XIAN AddrCode = "1692"
// ADDR_CODE_YOU_YU_XIAN 右玉县
ADDR_CODE_YOU_YU_XIAN AddrCode = "1693"
// ADDR_CODE_HUAI_REN_SHI 怀仁市
ADDR_CODE_HUAI_REN_SHI AddrCode = "1694"
// ADDR_CODE_SHUO_CHENG_QU 朔城区
ADDR_CODE_SHUO_CHENG_QU AddrCode = "1695"
// ADDR_CODE_PING_LU_QU 平鲁区
ADDR_CODE_PING_LU_QU AddrCode = "1696"
// ADDR_CODE_XIN_ZHOU_SHI 忻州市
ADDR_CODE_XIN_ZHOU_SHI AddrCode = "1710"
// ADDR_CODE_DING_XIANG_XIAN 定襄县
ADDR_CODE_DING_XIANG_XIAN AddrCode = "1712"
// ADDR_CODE_WU_TAI_XIAN 五台县
ADDR_CODE_WU_TAI_XIAN AddrCode = "1713"
// ADDR_CODE_YUAN_PING_SHI 原平市
ADDR_CODE_YUAN_PING_SHI AddrCode = "1714"
// ADDR_CODE_DAI_XIAN 代县
ADDR_CODE_DAI_XIAN AddrCode = "1715"
// ADDR_CODE_FAN_SHI_XIAN 繁峙县
ADDR_CODE_FAN_SHI_XIAN AddrCode = "1716"
// ADDR_CODE_NING_WU_XIAN 宁武县
ADDR_CODE_NING_WU_XIAN AddrCode = "1717"
// ADDR_CODE_JING_LE_XIAN 静乐县
ADDR_CODE_JING_LE_XIAN AddrCode = "1718"
// ADDR_CODE_SHEN_CHI_XIAN 神池县
ADDR_CODE_SHEN_CHI_XIAN AddrCode = "1719"
// ADDR_CODE_WU_ZHAI_XIAN 五寨县
ADDR_CODE_WU_ZHAI_XIAN AddrCode = "1721"
// ADDR_CODE_KE_LAN_XIAN 岢岚县
ADDR_CODE_KE_LAN_XIAN AddrCode = "1722"
// ADDR_CODE_HE_QU_XIAN 河曲县
ADDR_CODE_HE_QU_XIAN AddrCode = "1723"
// ADDR_CODE_BAO_DE_XIAN 保德县
ADDR_CODE_BAO_DE_XIAN AddrCode = "1724"
// ADDR_CODE_PIAN_GUAN_XIAN 偏关县
ADDR_CODE_PIAN_GUAN_XIAN AddrCode = "1725"
// ADDR_CODE_XIN_FU_QU 忻府区
ADDR_CODE_XIN_FU_QU AddrCode = "1726"
// ADDR_CODE_LV_LIANG_SHI 吕梁市
ADDR_CODE_LV_LIANG_SHI AddrCode = "1730"
// ADDR_CODE_FEN_YANG_SHI 汾阳市
ADDR_CODE_FEN_YANG_SHI AddrCode = "1731"
// ADDR_CODE_WEN_SHUI_XIAN 文水县
ADDR_CODE_WEN_SHUI_XIAN AddrCode = "1732"
// ADDR_CODE_JIAO_CHENG_XIAN 交城县
ADDR_CODE_JIAO_CHENG_XIAN AddrCode = "1733"
// ADDR_CODE_XIAO_YI_SHI 孝义市
ADDR_CODE_XIAO_YI_SHI AddrCode = "1734"
// ADDR_CODE_XING_XIAN 兴县
ADDR_CODE_XING_XIAN AddrCode = "1735"
// ADDR_CODE_LIN_XIAN 临县
ADDR_CODE_LIN_XIAN AddrCode = "1736"
// ADDR_CODE_LIU_LIN_XIAN 柳林县
ADDR_CODE_LIU_LIN_XIAN AddrCode = "1737"
// ADDR_CODE_SHI_LOU_XIAN 石楼县
ADDR_CODE_SHI_LOU_XIAN AddrCode = "1738"
// ADDR_CODE_LAN_XIAN 岚县
ADDR_CODE_LAN_XIAN AddrCode = "1739"
// ADDR_CODE_FANG_SHAN_XIAN 方山县
ADDR_CODE_FANG_SHAN_XIAN AddrCode = "1741"
// ADDR_CODE_ZHONG_YANG_XIAN 中阳县
ADDR_CODE_ZHONG_YANG_XIAN AddrCode = "1743"
// ADDR_CODE_JIAO_KOU_XIAN 交口县
ADDR_CODE_JIAO_KOU_XIAN AddrCode = "1744"
// ADDR_CODE_LI_SHI_QU 离石区
ADDR_CODE_LI_SHI_QU AddrCode = "1745"
// ADDR_CODE_JIN_ZHONG_SHI 晋中市
ADDR_CODE_JIN_ZHONG_SHI AddrCode = "1750"
// ADDR_CODE_YU_CI_QU 榆次区
ADDR_CODE_YU_CI_QU AddrCode = "1751"
// ADDR_CODE_YU_SHE_XIAN 榆社县
ADDR_CODE_YU_SHE_XIAN AddrCode = "1752"
// ADDR_CODE_ZUO_QUAN_XIAN 左权县
ADDR_CODE_ZUO_QUAN_XIAN AddrCode = "1753"
// ADDR_CODE_HE_SHUN_XIAN 和顺县
ADDR_CODE_HE_SHUN_XIAN AddrCode = "1754"
// ADDR_CODE_XI_YANG_XIAN 昔阳县
ADDR_CODE_XI_YANG_XIAN AddrCode = "1755"
// ADDR_CODE_SHOU_YANG_XIAN 寿阳县
ADDR_CODE_SHOU_YANG_XIAN AddrCode = "1756"
// ADDR_CODE_TAI_GU_QU 太谷区
ADDR_CODE_TAI_GU_QU AddrCode = "1757"
// ADDR_CODE_QI_XIAN 祁县
ADDR_CODE_QI_XIAN AddrCode = "1758"
// ADDR_CODE_PING_YAO_XIAN 平遥县
ADDR_CODE_PING_YAO_XIAN AddrCode = "1759"
// ADDR_CODE_JIE_XIU_SHI 介休市
ADDR_CODE_JIE_XIU_SHI AddrCode = "1761"
// ADDR_CODE_LING_SHI_XIAN 灵石县
ADDR_CODE_LING_SHI_XIAN AddrCode = "1762"
// ADDR_CODE_LIN_FEN_SHI 临汾市
ADDR_CODE_LIN_FEN_SHI AddrCode = "1770"
// ADDR_CODE_YAO_DU_QU 尧都区
ADDR_CODE_YAO_DU_QU AddrCode = "1771"
// ADDR_CODE_HOU_MA_SHI 侯马市
ADDR_CODE_HOU_MA_SHI AddrCode = "1772"
// ADDR_CODE_QU_WO_XIAN 曲沃县
ADDR_CODE_QU_WO_XIAN AddrCode = "1773"
// ADDR_CODE_YI_CHENG_XIAN 翼城县
ADDR_CODE_YI_CHENG_XIAN AddrCode = "1774"
// ADDR_CODE_XIANG_FEN_XIAN 襄汾县
ADDR_CODE_XIANG_FEN_XIAN AddrCode = "1775"
// ADDR_CODE_HONG_TONG_XIAN 洪洞县
ADDR_CODE_HONG_TONG_XIAN AddrCode = "1776"
// ADDR_CODE_HUO_ZHOU_SHI 霍州市
ADDR_CODE_HUO_ZHOU_SHI AddrCode = "1777"
// ADDR_CODE_GU_XIAN 古县
ADDR_CODE_GU_XIAN AddrCode = "1778"
// ADDR_CODE_AN_ZE_XIAN 安泽县
ADDR_CODE_AN_ZE_XIAN AddrCode = "1779"
// ADDR_CODE_FU_SHAN_XIAN 浮山县
ADDR_CODE_FU_SHAN_XIAN AddrCode = "1781"
// ADDR_CODE_JI_XIAN 吉县
ADDR_CODE_JI_XIAN AddrCode = "1782"
// ADDR_CODE_XIANG_NING_XIAN 乡宁县
ADDR_CODE_XIANG_NING_XIAN AddrCode = "1783"
// ADDR_CODE_PU_XIAN 蒲县
ADDR_CODE_PU_XIAN AddrCode = "1784"
// ADDR_CODE_DA_NING_XIAN 大宁县
ADDR_CODE_DA_NING_XIAN AddrCode = "1785"
// ADDR_CODE_YONG_HE_XIAN 永和县
ADDR_CODE_YONG_HE_XIAN AddrCode = "1786"
// ADDR_CODE_XI_XIAN 隰县
ADDR_CODE_XI_XIAN AddrCode = "1787"
// ADDR_CODE_FEN_XI_XIAN 汾西县
ADDR_CODE_FEN_XI_XIAN AddrCode = "1788"
// ADDR_CODE_YUN_CHENG_SHI 运城市
ADDR_CODE_YUN_CHENG_SHI AddrCode = "1810"
// ADDR_CODE_YAN_HU_QU 盐湖区
ADDR_CODE_YAN_HU_QU AddrCode = "1811"
// ADDR_CODE_YONG_JI_SHI 永济市
ADDR_CODE_YONG_JI_SHI AddrCode = "1812"
// ADDR_CODE_RUI_CHENG_XIAN 芮城县
ADDR_CODE_RUI_CHENG_XIAN AddrCode = "1813"
// ADDR_CODE_LIN_YI_XIAN 临猗县
ADDR_CODE_LIN_YI_XIAN AddrCode = "1814"
// ADDR_CODE_WAN_RONG_XIAN 万荣县
ADDR_CODE_WAN_RONG_XIAN AddrCode = "1815"
// ADDR_CODE_XIN_JIANG_XIAN 新绛县
ADDR_CODE_XIN_JIANG_XIAN AddrCode = "1816"
// ADDR_CODE_JI_SHAN_XIAN 稷山县
ADDR_CODE_JI_SHAN_XIAN AddrCode = "1817"
// ADDR_CODE_HE_JIN_SHI 河津市
ADDR_CODE_HE_JIN_SHI AddrCode = "1818"
// ADDR_CODE_WEN_XI_XIAN 闻喜县
ADDR_CODE_WEN_XI_XIAN AddrCode = "1819"
// ADDR_CODE_XIA_XIAN 夏县
ADDR_CODE_XIA_XIAN AddrCode = "1821"
// ADDR_CODE_JIANG_XIAN 绛县
ADDR_CODE_JIANG_XIAN AddrCode = "1822"
// ADDR_CODE_PING_LU_XIAN 平陆县
ADDR_CODE_PING_LU_XIAN AddrCode = "1823"
// ADDR_CODE_YUAN_QU_XIAN 垣曲县
ADDR_CODE_YUAN_QU_XIAN AddrCode = "1824"
// ADDR_CODE_NEI_MENG_GU_ZI_ZHI_QU 内蒙古自治区
ADDR_CODE_NEI_MENG_GU_ZI_ZHI_QU AddrCode = "1900"
// ADDR_CODE_HU_HE_HAO_TE_SHI 呼和浩特市
ADDR_CODE_HU_HE_HAO_TE_SHI AddrCode = "1910"
// ADDR_CODE_TU_MO_TE_ZUO_QI 土默特左旗
ADDR_CODE_TU_MO_TE_ZUO_QI AddrCode = "1911"
// ADDR_CODE_TUO_KE_TUO_XIAN 托克托县
ADDR_CODE_TUO_KE_TUO_XIAN AddrCode = "1912"
// ADDR_CODE_WU_CHUAN_XIAN 武川县
ADDR_CODE_WU_CHUAN_XIAN AddrCode = "1913"
// ADDR_CODE_HE_LIN_GE_ER_XIAN 和林格尔县
ADDR_CODE_HE_LIN_GE_ER_XIAN AddrCode = "1914"
// ADDR_CODE_QING_SHUI_HE_XIAN 清水河县
ADDR_CODE_QING_SHUI_HE_XIAN AddrCode = "1915"
// ADDR_CODE_HUI_MIN_QU 回民区
ADDR_CODE_HUI_MIN_QU AddrCode = "1916"
// ADDR_CODE_RU_YI_KAI_FA_QU 如意开发区
ADDR_CODE_RU_YI_KAI_FA_QU AddrCode = "1917"
// ADDR_CODE_SAI_HAN_QU 赛罕区
ADDR_CODE_SAI_HAN_QU AddrCode = "1918"
// ADDR_CODE_XIN_CHENG_QU 新城区
ADDR_CODE_XIN_CHENG_QU AddrCode = "1919"
// ADDR_CODE_BAO_TOU_SHI 包头市
ADDR_CODE_BAO_TOU_SHI AddrCode = "1920"
// ADDR_CODE_TU_MO_TE_YOU_QI 土默特右旗
ADDR_CODE_TU_MO_TE_YOU_QI AddrCode = "1921"
// ADDR_CODE_GU_YANG_XIAN 固阳县
ADDR_CODE_GU_YANG_XIAN AddrCode = "1922"
// ADDR_CODE_DA_ER_HAN_MAO_MING_AN_LIAN_HE_QI 达尔罕茂明安联合旗
ADDR_CODE_DA_ER_HAN_MAO_MING_AN_LIAN_HE_QI AddrCode = "1923"
// ADDR_CODE_DONG_HE_QU 东河区
ADDR_CODE_DONG_HE_QU AddrCode = "1924"
// ADDR_CODE_KUN_DOU_LUN_QU 昆都仑区
ADDR_CODE_KUN_DOU_LUN_QU AddrCode = "1925"
// ADDR_CODE_QING_SHAN_QU 青山区
ADDR_CODE_QING_SHAN_QU AddrCode = "1926"
// ADDR_CODE_SHI_GUAI_QU 石拐区
ADDR_CODE_SHI_GUAI_QU AddrCode = "1927"
// ADDR_CODE_BAI_YUN_E_BO_KUANG_QU 白云鄂博矿区
ADDR_CODE_BAI_YUN_E_BO_KUANG_QU AddrCode = "1928"
// ADDR_CODE_JIU_YUAN_QU 九原区
ADDR_CODE_JIU_YUAN_QU AddrCode = "1929"
// ADDR_CODE_WU_HAI_SHI 乌海市
ADDR_CODE_WU_HAI_SHI AddrCode = "1930"
// ADDR_CODE_HAI_BO_WAN_QU 海勃湾区
ADDR_CODE_HAI_BO_WAN_QU AddrCode = "1931"
// ADDR_CODE_HAI_NAN_QU 海南区
ADDR_CODE_HAI_NAN_QU AddrCode = "1932"
// ADDR_CODE_WU_DA_QU 乌达区
ADDR_CODE_WU_DA_QU AddrCode = "1933"
// ADDR_CODE_CHI_FENG_SHI 赤峰市
ADDR_CODE_CHI_FENG_SHI AddrCode = "1940"
// ADDR_CODE_A_LU_KE_ER_QIN_QI 阿鲁科尔沁旗
ADDR_CODE_A_LU_KE_ER_QIN_QI AddrCode = "1941"
// ADDR_CODE_BA_LIN_ZUO_QI 巴林左旗
ADDR_CODE_BA_LIN_ZUO_QI AddrCode = "1942"
// ADDR_CODE_BA_LIN_YOU_QI 巴林右旗
ADDR_CODE_BA_LIN_YOU_QI AddrCode = "1943"
// ADDR_CODE_LIN_XI_XIAN_TWO 林西县
ADDR_CODE_LIN_XI_XIAN_TWO AddrCode = "1944"
// ADDR_CODE_KE_SHI_KE_TENG_QI 克什克腾旗
ADDR_CODE_KE_SHI_KE_TENG_QI AddrCode = "1945"
// ADDR_CODE_WENG_NIU_TE_QI 翁牛特旗
ADDR_CODE_WENG_NIU_TE_QI AddrCode = "1946"
// ADDR_CODE_KA_LA_QIN_QI 喀喇沁旗
ADDR_CODE_KA_LA_QIN_QI AddrCode = "1947"
// ADDR_CODE_NING_CHENG_XIAN 宁城县
ADDR_CODE_NING_CHENG_XIAN AddrCode = "1948"
// ADDR_CODE_AO_HAN_QI 敖汉旗
ADDR_CODE_AO_HAN_QI AddrCode = "1949"
// ADDR_CODE_HONG_SHAN_QU 红山区
ADDR_CODE_HONG_SHAN_QU AddrCode = "1951"
// ADDR_CODE_YUAN_BAO_SHAN_QU 元宝山区
ADDR_CODE_YUAN_BAO_SHAN_QU AddrCode = "1952"
// ADDR_CODE_SONG_SHAN_QU 松山区
ADDR_CODE_SONG_SHAN_QU AddrCode = "1953"
// ADDR_CODE_HU_LUN_BEIER_SHI 呼伦贝尔市
ADDR_CODE_HU_LUN_BEIER_SHI AddrCode = "1960"
// ADDR_CODE_HAI_LA_ER_QU 海拉尔区
ADDR_CODE_HAI_LA_ER_QU AddrCode = "1961"
// ADDR_CODE_MAN_ZHOU_LI_SHI 满洲里市
ADDR_CODE_MAN_ZHOU_LI_SHI AddrCode = "1962"
// ADDR_CODE_ZHA_LAN_TUN_SHI 扎兰屯市
ADDR_CODE_ZHA_LAN_TUN_SHI AddrCode = "1963"
// ADDR_CODE_YA_KE_SHI_SHI 牙克石市
ADDR_CODE_YA_KE_SHI_SHI AddrCode = "1964"
// ADDR_CODE_ER_LUN_CHUN_ZU_ZI_ZHI_QI 额尔古纳市
ADDR_CODE_ER_LUN_CHUN_ZU_ZI_ZHI_QI AddrCode = "1965"
)
// Pre 将AddrCode枚举转换为字符串
func (ac AddrCode) Pre() string {
return string(ac)
}

249
consts/mcc.go Normal file
View File

@ -0,0 +1,249 @@
// Package consts 提供常量定义
package consts
// Mcc 商户类别代码枚举
type Mcc string
const (
// MCC_0742 兽医服务
MCC_0742 Mcc = "0742"
// MCC_0763 农业合作
MCC_0763 Mcc = "0763"
// MCC_0780 景观美化及园艺服务
MCC_0780 Mcc = "0780"
// MCC_1520 一般承包商-住宅与商业楼
MCC_1520 Mcc = "1520"
// MCC_4011 铁路运输
MCC_4011 Mcc = "4011"
// MCC_4111 本市和市郊通勤旅客运输(包括轮渡)
MCC_4111 Mcc = "4111"
// MCC_4112 铁路客运
MCC_4112 Mcc = "4112"
// MCC_4119 救护车服务
MCC_4119 Mcc = "4119"
// MCC_4121 出租车服务
MCC_4121 Mcc = "4121"
// MCC_4131 公路客运
MCC_4131 Mcc = "4131"
// MCC_4214 货物搬运和托运—当地和长途,移动和存储公司,以及当地递送服务
MCC_4214 Mcc = "4214"
// MCC_4215 快递服务(空运、地面运输或海运)
MCC_4215 Mcc = "4215"
// MCC_4225 公共仓储服务-农产品、冷冻品和家用产品
MCC_4225 Mcc = "4225"
// MCC_4411 轮船及巡游航线服务
MCC_4411 Mcc = "4411"
// MCC_4457 出租船只
MCC_4457 Mcc = "4457"
// MCC_4468 船舶、海运服务提供商
MCC_4468 Mcc = "4468"
// MCC_4511 航空公司
MCC_4511 Mcc = "4511"
// MCC_4582 机场服务
MCC_4582 Mcc = "4582"
// MCC_4722 旅行社
MCC_4722 Mcc = "4722"
// MCC_4733 大型景区售票
MCC_4733 Mcc = "4733"
// MCC_4784 路桥通行费
MCC_4784 Mcc = "4784"
// MCC_4789 未列入其他代码的运输服务
MCC_4789 Mcc = "4789"
// MCC_4812 通讯设备和电话销售
MCC_4812 Mcc = "4812"
// MCC_4814 电信服务,包括本地和长途电话、信用卡电话、磁卡电话和传真
MCC_4814 Mcc = "4814"
// MCC_4816 计算机网络/信息服务
MCC_4816 Mcc = "4816"
// MCC_4821 电报服务
MCC_4821 Mcc = "4821"
// MCC_4899 有线和其他付费电视服务
MCC_4899 Mcc = "4899"
// MCC_4900 公共事业(电力、煤气、自来水、清洁服务)
MCC_4900 Mcc = "4900"
// MCC_5094 贵重珠宝、首饰,钟表零售
MCC_5094 Mcc = "5094"
// MCC_5211 木材和各类建材卖场
MCC_5211 Mcc = "5211"
// MCC_5231 玻璃、油漆涂料、墙纸零售
MCC_5231 Mcc = "5231"
// MCC_5251 五金商店
MCC_5251 Mcc = "5251"
// MCC_5261 草坪、花园用品商店
MCC_5261 Mcc = "5261"
// MCC_5309 免税商店
MCC_5309 Mcc = "5309"
// MCC_5310 折扣商店
MCC_5310 Mcc = "5310"
// MCC_5311 百货商店
MCC_5311 Mcc = "5311"
// MCC_5331 各类杂货店、便利店
MCC_5331 Mcc = "5331"
// MCC_5399 其他综合零售
MCC_5399 Mcc = "5399"
// MCC_5411 大型仓储式超级市场
MCC_5411 Mcc = "5411"
// MCC_5422 各类肉类零售商
MCC_5422 Mcc = "5422"
// MCC_5441 糖果及坚果商店
MCC_5441 Mcc = "5441"
// MCC_5451 乳制品店、冷饮店
MCC_5451 Mcc = "5451"
// MCC_5462 面包房、糕点商店
MCC_5462 Mcc = "5462"
// MCC_5499 各类食品店及专门食品零售店
MCC_5499 Mcc = "5499"
// MCC_5511 汽车货车经销商-新旧车的销售、服务、维修、零件及出租
MCC_5511 Mcc = "5511"
// MCC_5521 汽车货车经销商-专门从事旧车的销售、服务、维修、零件及出租
MCC_5521 Mcc = "5521"
// MCC_5532 汽车轮胎经销商
MCC_5532 Mcc = "5532"
// MCC_5533 汽车零配件商店
MCC_5533 Mcc = "5533"
// MCC_5541 加油站、服务站
MCC_5541 Mcc = "5541"
// MCC_5542 自助加油站
MCC_5542 Mcc = "5542"
// MCC_5551 船只销售商
MCC_5551 Mcc = "5551"
// MCC_5561 旅行拖车、娱乐用车销售商
MCC_5561 Mcc = "5561"
// MCC_5571 摩托车商店和经销商
MCC_5571 Mcc = "5571"
// MCC_5592 露营、房车销售商
MCC_5592 Mcc = "5592"
// MCC_5598 雪车商
MCC_5598 Mcc = "5598"
// MCC_5599 汽车、飞行器、农用机车综合经营商
MCC_5599 Mcc = "5599"
// MCC_5611 男子和男童服装及用品商店
MCC_5611 Mcc = "5611"
// MCC_5621 妇女成衣商店
MCC_5621 Mcc = "5621"
// MCC_5631 女性用品商店
MCC_5631 Mcc = "5631"
// MCC_5641 婴儿、儿童服装店
MCC_5641 Mcc = "5641"
// MCC_5651 家庭服装商店
MCC_5651 Mcc = "5651"
// MCC_5655 运动服饰商店
MCC_5655 Mcc = "5655"
// MCC_5661 鞋店
MCC_5661 Mcc = "5661"
// MCC_5681 皮货店
MCC_5681 Mcc = "5681"
// MCC_5722 家用电器商店
MCC_5722 Mcc = "5722"
// MCC_5811 包办伙食,宴会承包商
MCC_5811 Mcc = "5811"
// MCC_5812 就餐场所和餐馆
MCC_5812 Mcc = "5812"
// MCC_5813 饮酒场所(酒吧、酒馆、夜总会、鸡尾酒大厅、迪斯科舞厅)
MCC_5813 Mcc = "5813"
// MCC_5932 古玩店——出售、维修及还原
MCC_5932 Mcc = "5932"
// MCC_5933 典当、拍卖、信托
MCC_5933 Mcc = "5933"
// MCC_5937 古玩复制店
MCC_5937 Mcc = "5937"
// MCC_5944 银器店
MCC_5944 Mcc = "5944"
// MCC_5950 玻璃器皿和水晶饰品店
MCC_5950 Mcc = "5950"
// MCC_5960 直销-保险直销
MCC_5960 Mcc = "5960"
// MCC_5970 工艺美术商店
MCC_5970 Mcc = "5970"
// MCC_5971 艺术商和画廊
MCC_5971 Mcc = "5971"
// MCC_5994 报亭、报摊
MCC_5994 Mcc = "5994"
// MCC_5998 其他批发商
MCC_5998 Mcc = "5998"
// MCC_6012 金融机构-商品和服务
MCC_6012 Mcc = "6012"
// MCC_6300 保险销售、保险业和保险金
MCC_6300 Mcc = "6300"
// MCC_7011 住宿服务(旅馆、酒店、汽车旅馆、度假村等)
MCC_7011 Mcc = "7011"
// MCC_7012 分时使用的别墅或度假用房
MCC_7012 Mcc = "7012"
// MCC_7013 不动产代理——房地产经纪
MCC_7013 Mcc = "7013"
// MCC_7032 运动和娱乐露营地
MCC_7032 Mcc = "7032"
// MCC_7033 活动房车场及露营场所
MCC_7033 Mcc = "7033"
// MCC_7297 按摩店
MCC_7297 Mcc = "7297"
// MCC_7298 保健及美容SPA
MCC_7298 Mcc = "7298"
// MCC_7523 停车场
MCC_7523 Mcc = "7523"
// MCC_7631 手表、钟表和首饰维修店
MCC_7631 Mcc = "7631"
// MCC_7829 电影和录像创作、发行
MCC_7829 Mcc = "7829"
// MCC_7911 歌舞厅
MCC_7911 Mcc = "7911"
// MCC_7922 戏剧制片(不含电影)、演出和票务
MCC_7922 Mcc = "7922"
// MCC_7929 未列入其他代码的乐队、文艺表演
MCC_7929 Mcc = "7929"
// MCC_7932 台球、撞球场所
MCC_7932 Mcc = "7932"
// MCC_7933 保龄球馆
MCC_7933 Mcc = "7933"
// MCC_7941 商业体育场馆、职业体育俱乐部、运动场和体育推广公司
MCC_7941 Mcc = "7941"
// MCC_7992 公共高尔夫球场
MCC_7992 Mcc = "7992"
// MCC_7994 大型游戏机和游戏场所
MCC_7994 Mcc = "7994"
// MCC_7996 游乐园、马戏团、嘉年华、占卜
MCC_7996 Mcc = "7996"
// MCC_7997 会员俱乐部(体育、娱乐、运动等)、乡村俱乐部以及私人高尔夫课程班
MCC_7997 Mcc = "7997"
// MCC_7998 水族馆、海洋馆和海豚馆
MCC_7998 Mcc = "7998"
// MCC_7999 未列入其他代码的娱乐服务
MCC_7999 Mcc = "7999"
// MCC_8062 公立医院
MCC_8062 Mcc = "8062"
// MCC_8211 中小学校(公立)
MCC_8211 Mcc = "8211"
// MCC_8220 普通高校(公立)
MCC_8220 Mcc = "8220"
// MCC_8398 慈善和社会公益服务组织
MCC_8398 Mcc = "8398"
// MCC_8651 政治组织(政府机构)
MCC_8651 Mcc = "8651"
// MCC_9211 法庭费用,包括赡养费和子女抚养费
MCC_9211 Mcc = "9211"
// MCC_9222 罚款
MCC_9222 Mcc = "9222"
// MCC_9223 保释金
MCC_9223 Mcc = "9223"
// MCC_9311 纳税
MCC_9311 Mcc = "9311"
// MCC_9399 未列入其他代码的政府服务(社会保障服务,国家强制)
MCC_9399 Mcc = "9399"
// MCC_9400 使领馆收费
MCC_9400 Mcc = "9400"
// MCC_9402 国家邮政服务
MCC_9402 Mcc = "9402"
// MCC_3998 中国人民共和国铁道部
MCC_3998 Mcc = "3998"
// MCC_BIG_7299 其他个人服务 包括干洗店,育发,植发,保洁、保安、婚庆、殡葬、家政、清洁、保养、门卫服务,出租衣物服务
MCC_BIG_7299 Mcc = "7299"
// MCC_BIG_7399 商业服务 无明细分类的其它服务
MCC_BIG_7399 Mcc = "7399"
// MCC_BIG_8999 其他专业服务 包括拍卖行、法律服务、会计审计财务服务、公关服务的企业,建筑设计、工程和测量服务等从事专业服务的企业
MCC_BIG_8999 Mcc = "8999"
)
// Pre 将Mcc枚举转换为字符串
func (m Mcc) Pre() string {
return string(m)
}

347
consts/merchant.go Normal file
View File

@ -0,0 +1,347 @@
package consts
// AccIdType 证件类型枚举
type AccIdType string
const (
// ACC_ID_TYPE_ID_CARD 身份证
ACC_ID_TYPE_ID_CARD AccIdType = "01"
// ACC_ID_TYPE_PASSPORT 护照
ACC_ID_TYPE_PASSPORT AccIdType = "02"
// ACC_ID_TYPE_HK_MO_PASS 港澳通行证
ACC_ID_TYPE_HK_MO_PASS AccIdType = "03"
// ACC_ID_TYPE_TAIWAN_PASS 台胞证
ACC_ID_TYPE_TAIWAN_PASS AccIdType = "04"
// ACC_ID_TYPE_FOREIGN_PERMANENT_RESIDENCE 外国人永久居留身份证
ACC_ID_TYPE_FOREIGN_PERMANENT_RESIDENCE AccIdType = "10"
// ACC_ID_TYPE_HK_MO_RESIDENCE 港澳居民居住证
ACC_ID_TYPE_HK_MO_RESIDENCE AccIdType = "11"
// ACC_ID_TYPE_TAIWAN_RESIDENCE 台湾居民居住证
ACC_ID_TYPE_TAIWAN_RESIDENCE AccIdType = "12"
// ACC_ID_TYPE_EXECUTIVE_PARTNER 执行事务合伙人
ACC_ID_TYPE_EXECUTIVE_PARTNER AccIdType = "13"
// ACC_ID_TYPE_OTHER 其它证件
ACC_ID_TYPE_OTHER AccIdType = "99"
)
// Pre 将AccIdType枚举转换为字符串
func (ait AccIdType) Pre() string {
return string(ait)
}
// SettlePeriod 结算周期枚举
type SettlePeriod string
const (
// SETTLE_PERIOD_T_PLUS_1 T+1结算
SETTLE_PERIOD_T_PLUS_1 SettlePeriod = "T+1"
// SETTLE_PERIOD_T_PLUS_1_PLUS_N T+1普通结算批次
SETTLE_PERIOD_T_PLUS_1_PLUS_N SettlePeriod = "T+1+N"
// SETTLE_PERIOD_T_PLUS_3 收单T+3结算
SETTLE_PERIOD_T_PLUS_3 SettlePeriod = "T+3"
// SETTLE_PERIOD_D_PLUS_1_PLUS_N D+1普通结算批次
SETTLE_PERIOD_D_PLUS_1_PLUS_N SettlePeriod = "D+1+N"
// SETTLE_PERIOD_W_T_PLUS_9999 喔噻T+9999
SETTLE_PERIOD_W_T_PLUS_9999 SettlePeriod = "W_T+9999"
// SETTLE_PERIOD_D_PLUS_1 收单D+1结算批次
SETTLE_PERIOD_D_PLUS_1 SettlePeriod = "D+1"
// SETTLE_PERIOD_D1_PLUS_24 D1+24结算批次
SETTLE_PERIOD_D1_PLUS_24 SettlePeriod = "D1+24"
// SETTLE_PERIOD_D_PLUS_30 收单D+30结算
SETTLE_PERIOD_D_PLUS_30 SettlePeriod = "D+30"
// SETTLE_PERIOD_BT_D_PLUS_1 D+1四方补贴结算批次
SETTLE_PERIOD_BT_D_PLUS_1 SettlePeriod = "BT_D+1"
// SETTLE_PERIOD_QZT_FULL_D_PLUS_1 钱账通D+1全额结算批次
SETTLE_PERIOD_QZT_FULL_D_PLUS_1 SettlePeriod = "QZT_FULL_D+1"
// SETTLE_PERIOD_QZT_NET_D_PLUS_1 钱账通D+1净额结算批次
SETTLE_PERIOD_QZT_NET_D_PLUS_1 SettlePeriod = "QZT_NET_D+1"
// SETTLE_PERIOD_FS 灵活结算
SETTLE_PERIOD_FS SettlePeriod = "FS"
)
// Pre 将SettlePeriod枚举转换为字符串
func (sp SettlePeriod) Pre() string {
return string(sp)
}
// ClearDt 日切时间枚举
type ClearDt string
const (
// CLEAR_DT_ZERO 0点
CLEAR_DT_ZERO ClearDt = "ZERO"
// CLEAR_DT_ONE 1点
CLEAR_DT_ONE ClearDt = "ONE"
// CLEAR_DT_TWO 2点
CLEAR_DT_TWO ClearDt = "TWO"
// CLEAR_DT_THREE 3点
CLEAR_DT_THREE ClearDt = "THREE"
// CLEAR_DT_FOUR 4点
CLEAR_DT_FOUR ClearDt = "FOUR"
// CLEAR_DT_FIVE 5点
CLEAR_DT_FIVE ClearDt = "FIVE"
// CLEAR_DT_SIX 6点
CLEAR_DT_SIX ClearDt = "SIX"
// CLEAR_DT_SEVEN 7点
CLEAR_DT_SEVEN ClearDt = "SEVEN"
// CLEAR_DT_EIGHT 8点
CLEAR_DT_EIGHT ClearDt = "EIGHT"
// CLEAR_DT_NINE 9点
CLEAR_DT_NINE ClearDt = "NINE"
// CLEAR_DT_TEN 10点
CLEAR_DT_TEN ClearDt = "TEN"
// CLEAR_DT_ELEVEN 11点
CLEAR_DT_ELEVEN ClearDt = "ELEVEN"
// CLEAR_DT_TWELVE 12点
CLEAR_DT_TWELVE ClearDt = "TWELVE"
// CLEAR_DT_THIRTEEN 13点
CLEAR_DT_THIRTEEN ClearDt = "THIRTEEN"
// CLEAR_DT_FOURTEEN 14点
CLEAR_DT_FOURTEEN ClearDt = "FOURTEEN"
// CLEAR_DT_FIFTEEN 15点
CLEAR_DT_FIFTEEN ClearDt = "FIFTEEN"
// CLEAR_DT_SIXTEEN 16点
CLEAR_DT_SIXTEEN ClearDt = "SIXTEEN"
// CLEAR_DT_SEVENTEEN 17点
CLEAR_DT_SEVENTEEN ClearDt = "SEVENTEEN"
// CLEAR_DT_EIGHTEEN 18点
CLEAR_DT_EIGHTEEN ClearDt = "EIGHTEEN"
// CLEAR_DT_NINETEEN 19点
CLEAR_DT_NINETEEN ClearDt = "NINETEEN"
// CLEAR_DT_TWENTY 20点
CLEAR_DT_TWENTY ClearDt = "TWENTY"
// CLEAR_DT_TWENTY_ONE 21点
CLEAR_DT_TWENTY_ONE ClearDt = "TWENTY_ONE"
// CLEAR_DT_TWENTY_TWO 22点
CLEAR_DT_TWENTY_TWO ClearDt = "TWENTY_TWO"
// CLEAR_DT_TWENTY_THREE 23点
CLEAR_DT_TWENTY_THREE ClearDt = "TWENTY_THREE"
// CLEAR_DT_TWENTY_FOUR 24点
CLEAR_DT_TWENTY_FOUR ClearDt = "TWENTY_FOUR"
)
// Pre 将ClearDt枚举转换为字符串
func (cd ClearDt) Pre() string {
return string(cd)
}
// MerBusiContent 经营内容枚举
type MerBusiContent string
const (
// MER_BUSI_CONTENT_RESTAURANT_HOTEL 餐饮、宾馆、娱乐、珠宝金饰、工艺美术品
MER_BUSI_CONTENT_RESTAURANT_HOTEL MerBusiContent = "640"
// MER_BUSI_CONTENT_REAL_ESTATE_AUTO 房地产汽车类
MER_BUSI_CONTENT_REAL_ESTATE_AUTO MerBusiContent = "641"
// MER_BUSI_CONTENT_DEPARTMENT_AGENCY 百货、中介、培训、景区门票等
MER_BUSI_CONTENT_DEPARTMENT_AGENCY MerBusiContent = "642"
// MER_BUSI_CONTENT_WHOLESALE 批发类商户
MER_BUSI_CONTENT_WHOLESALE MerBusiContent = "643"
// MER_BUSI_CONTENT_GAS_STATION_SUPERMARKET 加油、超市类
MER_BUSI_CONTENT_GAS_STATION_SUPERMARKET MerBusiContent = "644"
// MER_BUSI_CONTENT_TRANSPORT_TICKET 交通运输售票
MER_BUSI_CONTENT_TRANSPORT_TICKET MerBusiContent = "645"
// MER_BUSI_CONTENT_UTILITY_PAYMENT 水电气缴费
MER_BUSI_CONTENT_UTILITY_PAYMENT MerBusiContent = "646"
// MER_BUSI_CONTENT_GOVERNMENT 政府类
MER_BUSI_CONTENT_GOVERNMENT MerBusiContent = "647"
// MER_BUSI_CONTENT_CONVENIENCE 便民类
MER_BUSI_CONTENT_CONVENIENCE MerBusiContent = "648"
// MER_BUSI_CONTENT_PUBLIC_INSTITUTION 公立医院、公立学校、慈善
MER_BUSI_CONTENT_PUBLIC_INSTITUTION MerBusiContent = "649"
// MER_BUSI_CONTENT_HOTEL_FOOD_ENTERTAINMENT 宾馆餐饮娱乐类
MER_BUSI_CONTENT_HOTEL_FOOD_ENTERTAINMENT MerBusiContent = "650"
// MER_BUSI_CONTENT_PROPERTY_AUTO 房产汽车类
MER_BUSI_CONTENT_PROPERTY_AUTO MerBusiContent = "651"
// MER_BUSI_CONTENT_WHOLESALE_TYPE 批发类
MER_BUSI_CONTENT_WHOLESALE_TYPE MerBusiContent = "652"
// MER_BUSI_CONTENT_SUPERMARKET_GAS 超市加油类
MER_BUSI_CONTENT_SUPERMARKET_GAS MerBusiContent = "653"
// MER_BUSI_CONTENT_GENERAL_MERCHANT 一般类商户
MER_BUSI_CONTENT_GENERAL_MERCHANT MerBusiContent = "654"
// MER_BUSI_CONTENT_AGRICULTURE 三农商户
MER_BUSI_CONTENT_AGRICULTURE MerBusiContent = "655"
)
// Pre 将MerBusiContent枚举转换为字符串
func (mbc MerBusiContent) Pre() string {
return string(mbc)
}
// PosType POS类型枚举
type PosType string
const (
// POS_TYPE_GENERAL_POS 传统POS
POS_TYPE_GENERAL_POS PosType = "GENERAL_POS"
// POS_TYPE_SUPER_POS 智能POS
POS_TYPE_SUPER_POS PosType = "SUPER_POS"
// POS_TYPE_BLUE_WIZARD 蓝精灵
POS_TYPE_BLUE_WIZARD PosType = "BLUE_WIZARD"
// POS_TYPE_WECHAT_PAY 专业化扫码
POS_TYPE_WECHAT_PAY PosType = "WECHAT_PAY"
// POS_TYPE_SQB_SCAN_CODE 收钱吧扫码
POS_TYPE_SQB_SCAN_CODE PosType = "SQB_SCAN_CODE"
// POS_TYPE_SQB_PAPER_CODE 收钱吧码牌
POS_TYPE_SQB_PAPER_CODE PosType = "SQB_PAPER_CODE"
// POS_TYPE_SQB_DESK_CODE 收钱吧桌码
POS_TYPE_SQB_DESK_CODE PosType = "SQB_DESK_CODE"
// POS_TYPE_SQB_POS 收钱吧POS
POS_TYPE_SQB_POS PosType = "SQB_POS"
// POS_TYPE_SQB_INSTALLMENT 收钱吧聚分期
POS_TYPE_SQB_INSTALLMENT PosType = "SQB_INSTALLMENT"
// POS_TYPE_CLOUD_STORE_NEW 新云小店
POS_TYPE_CLOUD_STORE_NEW PosType = "CLOUD_STORE_NEW"
// POS_TYPE_CLOUD_DISTRIBUTION 增商专用云分销
POS_TYPE_CLOUD_DISTRIBUTION PosType = "CLOUD_DISTRIBUTION"
// POS_TYPE_CLOUD_DISTRIBUTION_CB 云分销线上
POS_TYPE_CLOUD_DISTRIBUTION_CB PosType = "CLOUD_DISTRIBUTION_CB"
// POS_TYPE_CLOUD_STORE_CB 云小店线上
POS_TYPE_CLOUD_STORE_CB PosType = "CLOUD_STORE_CB"
// POS_TYPE_CLOUD_STORE_BC 云小店线下
POS_TYPE_CLOUD_STORE_BC PosType = "CLOUD_STORE_BC"
// POS_TYPE_CLOUD_STORE_BC_NOTLKL 云小店非收银机
POS_TYPE_CLOUD_STORE_BC_NOTLKL PosType = "CLOUD_STORE_BC_NOTLKL"
// POS_TYPE_HM 惠码
POS_TYPE_HM PosType = "HM"
// POS_TYPE_HM_CB 惠码线上
POS_TYPE_HM_CB PosType = "HM_CB"
// POS_TYPE_HM_BC 惠码线下
POS_TYPE_HM_BC PosType = "HM_BC"
// POS_TYPE_SCAN_CODE_ORDER 扫码点餐
POS_TYPE_SCAN_CODE_ORDER PosType = "SCAN_CODE_ORDER"
// POS_TYPE_B2B_CASHIER_DESK B2B收银台
POS_TYPE_B2B_CASHIER_DESK PosType = "B2B_CASHIER_DESK"
// POS_TYPE_B2B_QR_CODE B2B收款码
POS_TYPE_B2B_QR_CODE PosType = "B2B_QR_CODE"
// POS_TYPE_MOBILE_POS 手机POS
POS_TYPE_MOBILE_POS PosType = "MOBILE_POS"
// POS_TYPE_YF_YM 御风云码
POS_TYPE_YF_YM PosType = "YF_YM"
// POS_TYPE_YF_YM_CB 御风云码线上
POS_TYPE_YF_YM_CB PosType = "YF_YM_CB"
// POS_TYPE_TRANSFER_ACCOUNT 大额理财
POS_TYPE_TRANSFER_ACCOUNT PosType = "TRANSFER_ACCOUNT"
// POS_TYPE_SUPER_MPOS 超级收款宝
POS_TYPE_SUPER_MPOS PosType = "SUPER_MPOS"
// POS_TYPE_W_BOX 收钱宝盒
POS_TYPE_W_BOX PosType = "W_BOX"
// POS_TYPE_MOON_BOS 月光宝盒
POS_TYPE_MOON_BOS PosType = "MOON_BOS"
// POS_TYPE_SCANNING_GUN_PAY XQ码精灵
POS_TYPE_SCANNING_GUN_PAY PosType = "SCANNING_GUN_PAY"
// POS_TYPE_WIDE_SUPER_POS 智能POS PRO
POS_TYPE_WIDE_SUPER_POS PosType = "WIDE_SUPER_POS"
// POS_TYPE_YUNCHAO_TECH_CB 云超科技线上
POS_TYPE_YUNCHAO_TECH_CB PosType = "YUNCHAO_TECH_CB"
// POS_TYPE_YUNCHAO_TECH_BC 云超科技线下
POS_TYPE_YUNCHAO_TECH_BC PosType = "YUNCHAO_TECH_BC"
// POS_TYPE_HUMMING_BIRD 蜂鸟佳
POS_TYPE_HUMMING_BIRD PosType = "HUMMING_BIRD"
// POS_TYPE_SIMPLE_SPEED_SCRM 简速SCRM
POS_TYPE_SIMPLE_SPEED_SCRM PosType = "SIMPLE_SPEED_SCRM"
// POS_TYPE_SMART_NETWORK 智网
POS_TYPE_SMART_NETWORK PosType = "SMART_NETWORK"
// POS_TYPE_EASY_PAYMENT 缴费易
POS_TYPE_EASY_PAYMENT PosType = "EASY_PAYMENT"
// POS_TYPE_LIANTUO_ELF 联拓小精灵
POS_TYPE_LIANTUO_ELF PosType = "LIANTUO_ELF"
// POS_TYPE_KAOLA_CLOUD_PAY 考拉云付
POS_TYPE_KAOLA_CLOUD_PAY PosType = "KAOLA_CLOUD_PAY"
// POS_TYPE_BUSINESS_CLOUD_PRINT 拉生意云打印
POS_TYPE_BUSINESS_CLOUD_PRINT PosType = "BUSINESS_CLOUD_PRINT"
// POS_TYPE_B2B_CASHIER_DESK_CB B2B收银台线上外卡
POS_TYPE_B2B_CASHIER_DESK_CB PosType = "B2B_CASHIER_DESK_CB"
// POS_TYPE_MOBILE_POS_CB 手机POS线上外卡
POS_TYPE_MOBILE_POS_CB PosType = "MOBILE_POS_CB"
// POS_TYPE_LKL_SCRM 拉卡拉SCRM
POS_TYPE_LKL_SCRM PosType = "LKL_SCRM"
// POS_TYPE_MI_XUN 米讯
POS_TYPE_MI_XUN PosType = "MI_XUN"
// POS_TYPE_YOU_KE_LI_LI 油客里里
POS_TYPE_YOU_KE_LI_LI PosType = "YOU_KE_LI_LI"
// POS_TYPE_LE_YOU_KE 乐友客
POS_TYPE_LE_YOU_KE PosType = "LE_YOU_KE"
// POS_TYPE_EASY_TO_PAY 即易付
POS_TYPE_EASY_TO_PAY PosType = "EASY_TO_PAY"
// POS_TYPE_SMART_YOUKE 智慧油客
POS_TYPE_SMART_YOUKE PosType = "SMART_YOUKE"
// POS_TYPE_MICRO_SUPER_POS 微智能
POS_TYPE_MICRO_SUPER_POS PosType = "MICRO_SUPER_POS"
// POS_TYPE_JI_YI_SHOU 集易收
POS_TYPE_JI_YI_SHOU PosType = "JI_YI_SHOU"
// POS_TYPE_UNIONPAY_APPLET 云微小程序
POS_TYPE_UNIONPAY_APPLET PosType = "UNIONPAY_APPLET"
// POS_TYPE_UNION_INSTALMENT 银联聚分期
POS_TYPE_UNION_INSTALMENT PosType = "UNION_INSTALMENT"
// POS_TYPE_PULL_BUSINESS 拉生意
POS_TYPE_PULL_BUSINESS PosType = "PULL_BUSINESS"
// POS_TYPE_MOSS Moss收银台
POS_TYPE_MOSS PosType = "MOSS"
)
// Pre 将PosType枚举转换为字符串
func (pt PosType) Pre() string {
return string(pt)
}
// FeeRateTypeCode 费率类型枚举
type FeeRateTypeCode string
const (
// FEE_RATE_TYPE_CODE_UNIONPAY_DEBIT 银联借记卡
FEE_RATE_TYPE_CODE_UNIONPAY_DEBIT FeeRateTypeCode = "300"
// FEE_RATE_TYPE_CODE_UNIONPAY_CREDIT 银联贷记卡
FEE_RATE_TYPE_CODE_UNIONPAY_CREDIT FeeRateTypeCode = "301"
// FEE_RATE_TYPE_CODE_WECHAT 微信
FEE_RATE_TYPE_CODE_WECHAT FeeRateTypeCode = "302"
// FEE_RATE_TYPE_CODE_WECHAT_DEBIT 微信借记
FEE_RATE_TYPE_CODE_WECHAT_DEBIT FeeRateTypeCode = "338"
// FEE_RATE_TYPE_CODE_WECHAT_CREDIT 微信贷记
FEE_RATE_TYPE_CODE_WECHAT_CREDIT FeeRateTypeCode = "339"
// FEE_RATE_TYPE_CODE_ALIPAY 支付宝
FEE_RATE_TYPE_CODE_ALIPAY FeeRateTypeCode = "303"
// FEE_RATE_TYPE_CODE_YEEPAY 翼支付
FEE_RATE_TYPE_CODE_YEEPAY FeeRateTypeCode = "306"
// FEE_RATE_TYPE_CODE_UNIONPAY_QR_DEBIT 银联二维码借记卡
FEE_RATE_TYPE_CODE_UNIONPAY_QR_DEBIT FeeRateTypeCode = "314"
// FEE_RATE_TYPE_CODE_UNIONPAY_QR_CREDIT 银联二维码贷记卡
FEE_RATE_TYPE_CODE_UNIONPAY_QR_CREDIT FeeRateTypeCode = "315"
// FEE_RATE_TYPE_CODE_CARDLESS_CREDIT 无卡贷记
FEE_RATE_TYPE_CODE_CARDLESS_CREDIT FeeRateTypeCode = "321"
// FEE_RATE_TYPE_CODE_PAY_ACCOUNT 支付账户
FEE_RATE_TYPE_CODE_PAY_ACCOUNT FeeRateTypeCode = "319"
// FEE_RATE_TYPE_CODE_B2B_TRANSFER B2B转账
FEE_RATE_TYPE_CODE_B2B_TRANSFER FeeRateTypeCode = "322"
// FEE_RATE_TYPE_CODE_WECHAT_ONLINE 微信线上(千米专用)
FEE_RATE_TYPE_CODE_WECHAT_ONLINE FeeRateTypeCode = "400"
// FEE_RATE_TYPE_CODE_ALIPAY_ONLINE 支付宝线上(千米专用)
FEE_RATE_TYPE_CODE_ALIPAY_ONLINE FeeRateTypeCode = "401"
// FEE_RATE_TYPE_CODE_WECHAT_FACE 微信刷脸
FEE_RATE_TYPE_CODE_WECHAT_FACE FeeRateTypeCode = "307"
// FEE_RATE_TYPE_CODE_WECHAT_FACE_DEBIT 微信刷脸借记
FEE_RATE_TYPE_CODE_WECHAT_FACE_DEBIT FeeRateTypeCode = "342"
// FEE_RATE_TYPE_CODE_WECHAT_FACE_CREDIT 微信刷脸贷记
FEE_RATE_TYPE_CODE_WECHAT_FACE_CREDIT FeeRateTypeCode = "343"
// FEE_RATE_TYPE_CODE_ALIPAY_FACE 支付宝刷脸
FEE_RATE_TYPE_CODE_ALIPAY_FACE FeeRateTypeCode = "308"
// FEE_RATE_TYPE_CODE_UNIONPAY_DISCOUNT_DEBIT 云闪付借记-优惠
FEE_RATE_TYPE_CODE_UNIONPAY_DISCOUNT_DEBIT FeeRateTypeCode = "411"
// FEE_RATE_TYPE_CODE_UNIONPAY_DISCOUNT_CREDIT 云闪付贷记-优惠
FEE_RATE_TYPE_CODE_UNIONPAY_DISCOUNT_CREDIT FeeRateTypeCode = "412"
// FEE_RATE_TYPE_CODE_UNIONPAY_QR_DISCOUNT_DEBIT 银联二维码借记-优惠
FEE_RATE_TYPE_CODE_UNIONPAY_QR_DISCOUNT_DEBIT FeeRateTypeCode = "413"
// FEE_RATE_TYPE_CODE_UNIONPAY_QR_DISCOUNT_CREDIT 银联二维码贷记-优惠
FEE_RATE_TYPE_CODE_UNIONPAY_QR_DISCOUNT_CREDIT FeeRateTypeCode = "414"
// FEE_RATE_TYPE_CODE_ALIPAY_DISCOUNT 支付宝费率-优惠
FEE_RATE_TYPE_CODE_ALIPAY_DISCOUNT FeeRateTypeCode = "415"
// FEE_RATE_TYPE_CODE_DIGITAL_CURRENCY 数字货币
FEE_RATE_TYPE_CODE_DIGITAL_CURRENCY FeeRateTypeCode = "318"
// FEE_RATE_TYPE_CODE_JINGDONG 京东
FEE_RATE_TYPE_CODE_JINGDONG FeeRateTypeCode = "346"
)
// Pre 将FeeRateTypeCode枚举转换为字符串
func (frtc FeeRateTypeCode) Pre() string {
return string(frtc)
}

View File

@ -23,6 +23,9 @@ const (
LKL_ACCOUNT_BALANCE_QUERY_URL = "/v2/laep/industry/ewalletBalanceQuery"
// LKL_ACCOUNT_WITHDRAW_URL 拉卡拉账户提现
LKL_ACCOUNT_WITHDRAW_URL = "/v2/laep/industry/ewalletWithdrawD1"
)
const (
// LKL_TRADE_QUERY_URL 拉卡拉交易查询
LKL_TRADE_QUERY_URL = "/v3/labs/query/tradequery"
// LKL_PRE_ORDER_URL 拉卡拉聚合预下单
@ -32,3 +35,14 @@ const (
// LKL_REFOUND_URL 拉卡拉退款
LKL_REFOUND_URL = "/v3/rfd/refund_front/refund"
)
const (
// LKL_ADD_MER 拉卡拉商户进件
LKL_ADD_MER = "/v2/mms/openApi/addMer"
// LKL_QUERY_MER 拉卡拉商户查询
LKL_QUERY_MER = "/v2/mms/openApi/queryContract"
// LKL_MER_VALIDATE 拉卡拉商户进件效验
LKL_MER_VALIDATE = "/v2/mms/openApi/verifyContractInfo"
// LKL_RECONF_SUBMIT 拉卡拉商户进件复议提交
LKL_RECONF_SUBMIT = "/v2/mms/openApi/reconsiderSubmit"
)

115
lklsdk/merchant.go Normal file
View File

@ -0,0 +1,115 @@
package lklsdk
import (
"fmt"
"time"
"github.com/black1552/lkl_sdk/consts"
"github.com/black1552/lkl_sdk/model"
"github.com/gogf/gf/v2/crypto/gmd5"
"github.com/gogf/gf/v2/util/gconv"
)
// MerService 商户服务
type MerService[T any] struct {
client *Client[T]
}
// NewMerService 创建交易服务实例
func NewMerService[T any](client *Client[T]) *MerService[T] {
return &MerService[T]{
client: client,
}
}
// AddMer 商户进件
func (t *MerService[T]) AddMer(req *model.MerchantApplyReqData) (*T, error) {
// 构建请求参数
url := consts.BASE_URL + consts.LKL_ADD_MER
md5, err := gmd5.Encrypt(gconv.String(time.Now().Unix()))
if err != nil {
return nil, fmt.Errorf("创建ReqId失败")
}
// 构建BaseModel请求
baseReq := model.MerchantApplyRequest{
ReqData: req,
ReqId: md5,
Timestamp: time.Now().Unix(),
Ver: "1.0.0",
}
// 发送请求
respBody, err := t.client.doRequest(url, baseReq)
if err != nil {
return nil, err
}
return respBody, nil
}
func (t *MerService[T]) QueryMer(req *model.QueryMerRequestData) (*T, error) {
// 构建请求参数
url := consts.BASE_URL + consts.LKL_QUERY_MER
md5, err := gmd5.Encrypt(gconv.String(time.Now().Unix()))
if err != nil {
return nil, fmt.Errorf("创建ReqId失败")
}
// 构建BaseModel请求
baseReq := model.QueryMerRequest{
ReqData: req,
ReqId: md5,
Timestamp: time.Now().Unix(),
Ver: "1.0.0",
}
// 发送请求
respBody, err := t.client.doRequest(url, baseReq)
if err != nil {
return nil, err
}
return respBody, nil
}
func (t *MerService[T]) MerValidate(req *model.MerValidateRequestData) (*T, error) {
// 构建请求参数
url := consts.BASE_URL + consts.LKL_MER_VALIDATE
md5, err := gmd5.Encrypt(gconv.String(time.Now().Unix()))
if err != nil {
return nil, fmt.Errorf("创建ReqId失败")
}
// 构建BaseModel请求
baseReq := model.MerValidateRequest{
ReqData: req,
ReqId: md5,
Timestamp: time.Now().Unix(),
Ver: "1.0.0",
}
// 发送请求
respBody, err := t.client.doRequest(url, baseReq)
if err != nil {
return nil, err
}
return respBody, nil
}
func (t *MerService[T]) ReconsiderSubmit(req *model.ReConfSubmitRequestData) (*T, error) {
// 构建请求参数
url := consts.BASE_URL + consts.LKL_RECONF_SUBMIT
md5, err := gmd5.Encrypt(gconv.String(time.Now().Unix()))
if err != nil {
return nil, fmt.Errorf("创建ReqId失败")
}
// 构建BaseModel请求
baseReq := model.ReConfSubmitRequest{
ReqData: req,
ReqId: md5,
Timestamp: time.Now().Unix(),
Ver: "1.0",
}
// 发送请求
respBody, err := t.client.doRequest(url, baseReq)
if err != nil {
return nil, err
}
return respBody, nil
}

View File

@ -14,6 +14,7 @@ type SDK[T any] struct {
Account *AccountService[T]
UploadFile *UploadFileService[T]
MergePre *MergePreService[T]
Merchant *MerService[T]
}
// NewSDK 创建拉卡拉SDK实例
@ -26,11 +27,32 @@ func NewSDK[T any](ctx context.Context, cfgJson string) *SDK[T] {
Account: NewAccountService(client),
UploadFile: NewUploadFileService(client),
MergePre: NewMergePreService(client),
Merchant: NewMerService(client),
}
}
// 以下为便捷方法直接通过SDK调用各服务的主要功能
// ReconsiderSubmit 商户进件复议提交
func (s *SDK[T]) ReconsiderSubmit(req *model.ReConfSubmitRequestData) (*T, error) {
return s.Merchant.ReconsiderSubmit(req)
}
// QueryMerchant 商户进件信息查询
func (s *SDK[T]) QueryMerchant(req *model.QueryMerRequestData) (*T, error) {
return s.Merchant.QueryMer(req)
}
// MerValidate 商户进件信息校验
func (s *SDK[T]) MerValidate(req *model.MerValidateRequestData) (*T, error) {
return s.Merchant.MerValidate(req)
}
// AddMer 商户进件
func (s *SDK[T]) AddMer(req *model.MerchantApplyReqData) (*T, error) {
return s.Merchant.AddMer(req)
}
// MergePreOrder 主扫合单交易
func (s *SDK[T]) MergePreOrder(req *model.MergePreorderReqData) (*T, error) {
return s.MergePre.PreOrder(req)

View File

@ -37,7 +37,7 @@ type ApplyLedgerReceiverReqData struct {
// 法人姓名可选长度32取值说明收款账户类型为对公必须上送
LegalPersonName string `json:"legalPersonName"`
// 法人证件类型可选长度32取值说明17身份证18护照19港澳居民来往内地通行证20台湾居民来往内地通行证收款账户类型为对公必须上送身份证外类型先咨询后再使用
LegalPersonCertificateType string `json:"legalPersonCertificateType"`
LegalPersonCertificateType consts.AcctCertificateType `json:"legalPersonCertificateType"`
// 法人证件号可选长度32取值说明收款账户类型为对公必须上送
LegalPersonCertificateNo string `json:"legalPersonCertificateNo"`
// 收款账户卡号必传长度32
@ -47,7 +47,7 @@ type ApplyLedgerReceiverReqData struct {
// 收款账户类型代码必传长度32取值说明57对公58对私
AcctTypeCode consts.AcctTypeCode `json:"acctTypeCode"`
// 收款账户证件类型必传长度32取值说明17身份证18护照19港澳居民来往内地通行证20台湾居民来往内地通行证身份证外类型先咨询后再使用
AcctCertificateType string `json:"acctCertificateType"`
AcctCertificateType consts.AcctCertificateType `json:"acctCertificateType"`
// 收款账户证件号必传长度32
AcctCertificateNo string `json:"acctCertificateNo"`
// 收款账户开户行号必传长度32取值说明参照FBI.N信息查询仅支持对私结算账户

64
model/merValidate.go Normal file
View File

@ -0,0 +1,64 @@
// Package model 提供数据模型定义
package model
// MerValidateRequest 商户进件校验请求
// 接入方在入网前,对商户名称、法人信息、结算人信息做敏感词和黑名单、反洗钱的校验
// 参考文档: https://o.lakala.com/#/home/document/detail?id=93
type MerValidateRequest struct {
// ReqData 请求业务参数
ReqData *MerValidateRequestData `json:"reqData"`
// Ver 版本号
Ver string `json:"ver"`
// Timestamp 时间戳
Timestamp int64 `json:"timestamp"`
// ReqId 请求ID
ReqId string `json:"reqId"`
}
// MerValidateRequestData 商户进件校验请求业务参数
type MerValidateRequestData struct {
// Version 接口版本号
Version string `json:"version"`
// OrderNo 订单编号(便于后续跟踪排查问题及核对报文)
// 14位年月日时24小时制分秒+8位的随机数不重复2021020112000012345678
OrderNo string `json:"orderNo"`
// OrgCode 机构代码
OrgCode string `json:"orgCode"`
// MerRegName 商户注册名称(可传)
MerRegName string `json:"merRegName"`
// MerBizName 商户经营名称(可传)
MerBizName string `json:"merBizName"`
// MerBlis 营业执照(可传)
MerBlis string `json:"merBlis"`
// LarIdcard 法人身份证号(可传)
LarIdcard string `json:"larIdcard"`
// AcctNo 结算账号(可传)
AcctNo string `json:"acctNo"`
// AcctIdcard 结算人证件号(可传)
AcctIdcard string `json:"acctIdcard"`
}
// MerValidateResponse 商户进件校验响应
type MerValidateResponse struct {
// Appid 应用ID
Appid string `json:"appid"`
// CmdRetCode 全局返回码
CmdRetCode string `json:"cmdRetCode"`
// ReqId 请求ID
ReqId string `json:"reqId"`
// RetCode 返回码
RetCode string `json:"retCode"`
// RetMsg 返回消息
RetMsg string `json:"retMsg"`
// Timestamp 时间戳
Timestamp int64 `json:"timestamp"`
// Ver 版本号
Ver string `json:"ver"`
}
func (t *MerValidateResponse) SuccessOrFail() bool {
return t.RetCode == "000000"
}

110
model/merchant.go Normal file
View File

@ -0,0 +1,110 @@
package model
import (
"github.com/black1552/lkl_sdk/consts"
)
// MerchantApplyRequest 商户进件请求结构体
type MerchantApplyRequest struct {
ReqId string `json:"reqId"` // 请求时间格式为yyyyMMddHHmmss必填
Timestamp int64 `json:"timestamp"` // 接口版本,固定值"1.0",必填
Ver string `json:"ver"` // 接口版本,固定值"1.0",必填
ReqData *MerchantApplyReqData `json:"req_data"` // 请求业务参数,必填
}
// MerchantApplyReqData 商户进件请求业务数据结构体
type MerchantApplyReqData struct {
Version string `json:"version"` // 接口版本号,固定值"1.0",必填
OrderNo string `json:"orderNo"` // 订单编号用于后续联调时查询及核对报文必填建议14位年月日时分秒+8位随机数
PosType consts.PosType `json:"posType"` // POS类型必填按接入系统做控制参见POS类型字典表
OrgCode string `json:"orgCode"` // 机构代码,合作方在拉卡拉的标识,请联系业务员,必填
MerRegName string `json:"merRegName"` // 商户注册名称必填长度不小于4个汉字8~40字符不可为纯数字
MerBizName string `json:"merBizName"` // 商户经营名称选填为空时同商户注册名称4~64字符不可为纯数字
MerRegDistCode consts.AddrCode `json:"merRegDistCode"` // 商户地区代码,必填,参见地区文档
MerRegAddr string `json:"merRegAddr"` // 商户详细地址必填去除省、市、区后的详细地址6-200字符
MccCode consts.Mcc `json:"mccCode"` // 商户MCC编号必填银联商户类别代码
MerBlisName string `json:"merBlisName"` // 营业执照名称,选填,小微商户可不传,其它必传
MerBlis string `json:"merBlis"` // 营业执照号,选填,小微商户可不传,对公进件必传,且不可与法人证件相同
MerBlisStDt string `json:"merBlisStDt"` // 营业执照开始日期选填格式yyyy-MM-dd有营业执照时必传
MerBlisExpDt string `json:"merBlisExpDt"` // 营业执照有效期选填格式yyyy-MM-dd有营业执照时必传
MerBusiContent consts.MerBusiContent `json:"merBusiContent"` // 商户经营内容,必填,参见经营内容字典表
LarName string `json:"larName"` // 商户法人姓名,必填
LarIdType consts.AccIdType `json:"larIdType"` // 法人证件类型,必填,支持其他证件类型,见证件类型字典表
LarIdcard string `json:"larIdcard"` // 法人身份证号码,必填
LarIdcardStDt string `json:"larIdcardStDt"` // 法人身份证开始日期必填格式yyyy-MM-dd
LarIdcardExpDt string `json:"larIdcardExpDt"` // 法人身份证有效期必填格式yyyy-MM-dd
MerContactMobile string `json:"merContactMobile"` // 商户联系人手机号码,必填
MerContactName string `json:"merContactName"` // 商户联系人姓名,必填
ShopName string `json:"shopName"` // 网点名称,选填,不填取商户注册名称
ShopDistCode string `json:"shopDistCode"` // 网点地址区划代码,选填,不填取商户地区代码
ShopAddr string `json:"shopAddr"` // 网点详细地址,选填,不填取商户详细地址
ShopContactName string `json:"shopContactName"` // 网点联系人名称,选填,不填取商户联系人姓名
ShopContactMobile string `json:"shopContactMobile"` // 网点联系人手机号,选填,不填取商户联系人手机号码
OpenningBankCode string `json:"openningBankCode"` // 结算账户开户行号,必填,可根据结算卡信息进行查询
OpenningBankName string `json:"openningBankName"` // 结算账户开户行名称,必填,可根据结算卡信息进行查询
ClearingBankCode string `json:"clearingBankCode"` // 结算账户清算行号,必填,可根据结算卡信息进行查询
AcctNo string `json:"acctNo"` // 结算账户账号,必填
AcctName string `json:"acctName"` // 结算账户名称,必填
AcctTypeCode consts.AcctTypeCode `json:"acctTypeCode"` // 结算账户性质必填57为对公58为对私
SettlePeriod consts.SettlePeriod `json:"settlePeriod"` // 结算周期,必填,参见结算周期表
ClearDt consts.ClearDt `json:"clearDt"` // 日切时间选填参见日切时间字典表默认TWENTY_THREE
AcctIdType consts.AccIdType `json:"acctIdType"` // 结算人证件类型,选填,为空时判断为同法人
AcctIdcard string `json:"acctIdcard"` // 结算人证件号码,选填,为空时判断为同法人
AcctIdDt string `json:"acctIdDt"` // 结算人证件有效期,选填,为空时判断为同法人
DevSerialNo string `json:"devSerialNo"` // 终端设备序列号,选填
DevTypeName string `json:"devTypeName"` // 设备型号,选填
TermVer string `json:"termVer"` // 终端版本号,选填
SalesStaff string `json:"salesStaff"` // 销售人员,选填
TermNum string `json:"termNum"` // 终端数量选填1-5最大5个终端
RetUrl string `json:"retUrl"` // 回调地址,必填
FeeData []*FeeData `json:"feeData"` // 费率信息集合,必填
FileData []*FileData `json:"fileData"` // 附件集合,选填
ContractNo string `json:"contractNo"` // 电子合同编号,选填,部分进件类型要求录入
FeeAssumeType string `json:"feeAssumeType"` // 大额理财-手续费承担方,选填,大额理财进件时必传
AmountOfMonth string `json:"amountOfMonth"` // 大额理财-最小月交易额,选填
ServiceFee string `json:"serviceFee"` // 大额理财-收取服务费,选填
}
// FeeData 费率信息集合结构体
type FeeData struct {
FeeRateTypeCode consts.FeeRateTypeCode `json:"feeRateTypeCode"` // 费率类型,必填,参见费率类型字典表
FeeRateTypeName string `json:"feeRateTypeName"` // 费率类型名称,必填,如银行卡借记卡
FeeRatePct string `json:"feeRatePct"` // 手续费费率(%)必填如0.6
FeeUpperAmtPcnt string `json:"feeUpperAmtPcnt"` // 单笔交易手续费封顶,选填,默认不封顶,单位(元)
FeeLowerAmtPcnt string `json:"feeLowerAmtPcnt"` // 单笔交易手续费保底,选填,默认无保底,单位(元)
FeeRateSdt string `json:"feeRateSdt"` // 手续费生效日期,选填,默认为进件日期
}
// FileData 附件集合结构体
type FileData struct {
AttField string `json:"attField"` // 文件编号/附件上传后返回的编号,必填
AttType string `json:"attType"` // 附件类型,必填
}
// MerchantApplyResponse 商户进件响应结构体
type MerchantApplyResponse struct {
RetCode string `json:"retCode"` // 响应码,成功为"0000",其他为错误码
RetMsg string `json:"retMsg"` // 响应描述
Timestamp int64 `json:"timestamp"` // 响应描述
Ver string `json:"ver"` // 响应描述
ReqId string `json:"reqId"` // 响应描述
CmdRetCode string `json:"cmdRetCode"` // 响应描述
RespData *MerchantApplyRespData `json:"respData"` // 响应业务数据,成功时返回
}
// MerchantApplyRespData 商户进件响应业务数据结构体
type MerchantApplyRespData struct {
OrgCode string `json:"orgCode"` // 机构代码
OrderNo string `json:"orderNo"` // 订单号
ContractId string `json:"contractId"` // 进件ID用于后续查询进件结果
}
func (t *MerchantApplyResponse) SuccessOrFail() bool {
return t.RetCode == "000000"
}

105
model/queryMer.go Normal file
View File

@ -0,0 +1,105 @@
// Package model 提供数据模型定义
package model
// QueryMerRequest 商户进件信息查询请求
// 接入方通过开放平台查询进件信息,返回报文同进件审核完成主动通知报文
// 参考文档: https://o.lakala.com/#/home/document/detail?id=102
type QueryMerRequest struct {
// ReqData 请求业务参数
ReqData *QueryMerRequestData `json:"reqData"`
// Ver 版本号
Ver string `json:"ver"`
// Timestamp 时间戳
Timestamp int64 `json:"timestamp"`
// ReqId 请求ID
ReqId string `json:"reqId"`
}
// QueryMerRequestData 商户进件信息查询请求业务参数
type QueryMerRequestData struct {
// Version 接口版本号
Version string `json:"version"`
// OrderNo 订单编号(便于后续跟踪排查问题及核对报文)
// 14位年月日时24小时制分秒+8位的随机数不重复2021020112000012345678
OrderNo string `json:"orderNo"`
// OrgCode 机构代码
OrgCode string `json:"orgCode"`
// ContractId 进件ID
ContractId string `json:"contractId"`
}
// QueryMerResponse 商户进件信息查询响应
type QueryMerResponse struct {
// CmdRetCode 全局返回码
CmdRetCode string `json:"cmdRetCode"`
// ReqId 请求ID
ReqId string `json:"reqId"`
// RespData 响应业务参数
RespData *QueryMerResponseData `json:"respData"`
// RetCode 返回码
RetCode string `json:"retCode"`
// RetMsg 返回消息
RetMsg string `json:"retMsg"`
// Timestamp 时间戳
Timestamp int64 `json:"timestamp"`
// Ver 版本号
Ver string `json:"ver"`
}
// QueryMerResponseData 商户进件信息查询响应业务参数
type QueryMerResponseData struct {
// OrderNo 订单号
OrderNo string `json:"orderNo"`
// ContractStatus 进件状态
// 未提交NO_COMMIT
// 已提交COMMIT
// 提交失败COMMIT_FAIL
// 转人工审核MANUAL_AUDIT
// 审核中REVIEW_ING
// 审核通过WAIT_FOR_CONTACT
// 审核驳回INNER_CHECK_REJECTED
ContractStatus string `json:"contractStatus"`
// OrgCode 机构代码
OrgCode string `json:"orgCode"`
// ContractId 进件ID
ContractId string `json:"contractId"`
// MerInnerNo 拉卡拉内部商户号(该属性审核通过才有)
MerInnerNo string `json:"merInnerNo"`
// ContractMemo 进件描述
// 进件审核通过,返回"审核通过"
// 进件审核驳回,返回具体的驳回理由
ContractMemo string `json:"contractMemo"`
// MerCupNo 银联商户号(该属性审核通过才有)
MerCupNo string `json:"merCupNo"`
// TermDatas 终端列表信息(该属性审核通过并且是增商、增终进件才有)
TermDatas []*TermData `json:"termDatas"`
}
// TermData 终端数据信息
type TermData struct {
// ShopId 网点编号
ShopId string `json:"shopId"`
// TermId 终端编号
TermId string `json:"termId"`
// TermNo 终端号
TermNo string `json:"termNo"`
// BusiTypeCode 业务代码(参考【业务类型字典表】文档)
BusiTypeCode string `json:"busiTypeCode"`
// BusiTypeName 业务名称
BusiTypeName string `json:"busiTypeName"`
// ProductName 产品名称
ProductName string `json:"productName"`
// ProductCode 产品代码
ProductCode string `json:"productCode"`
// DevSerialNo 终端设备序列号
DevSerialNo string `json:"devSerialNo"`
}
func (t *QueryMerResponse) SuccessOrFail() bool {
return t.RetCode == "000000"
}

51
model/reConfSubmit.go Normal file
View File

@ -0,0 +1,51 @@
package model
// ReConfSubmitRequest 进件复议提交请求
// 接入方在进件被驳回后(由于系统自动校验无法通过),调用此接口提交进件,转人工审核
// 参考文档: https://o.lakala.com/#/home/document/detail?id=94
type ReConfSubmitRequest struct {
// ReqData 请求业务参数
ReqData *ReConfSubmitRequestData `json:"reqData"`
// Ver 版本号
Ver string `json:"ver"`
// Timestamp 时间戳
Timestamp int64 `json:"timestamp"`
// ReqId 请求ID
ReqId string `json:"reqId"`
}
// ReConfSubmitRequestData 进件复议提交请求业务参数
type ReConfSubmitRequestData struct {
// Version 接口版本号
Version string `json:"version"`
// OrderNo 订单编号(便于后续跟踪排查问题及核对报文)
// 14位年月日时24小时制分秒+8位的随机数不重复2021020112000012345678
OrderNo string `json:"orderNo"`
// OrgCode 机构代码
OrgCode string `json:"orgCode"`
// ContractId 进件ID
ContractId string `json:"contractId"`
}
// ReConfSubmitResponse 进件复议提交响应
type ReConfSubmitResponse struct {
// CmdRetCode 全局返回码
CmdRetCode string `json:"cmdRetCode"`
// ReqId 请求ID
ReqId string `json:"reqId"`
// RetCode 返回码
RetCode string `json:"retCode"`
// RetMsg 返回消息
RetMsg string `json:"retMsg"`
// Timestamp 时间戳
Timestamp int64 `json:"timestamp"`
// Ver 版本号
Ver string `json:"ver"`
}
func (t *ReConfSubmitResponse) SuccessOrFail() bool {
return t.RetCode == "000000"
}