package com.ynxbd.ali.config; import com.alipay.easysdk.factory.Factory; import com.alipay.easysdk.kernel.Config; import com.ynxbd.common.helper.ProperHelper; import lombok.extern.slf4j.Slf4j; @Slf4j public class AliConfig { public static final String SERVICE_URL = "https://openapi.alipay.com/gateway.do"; public static boolean IS_ENABLE; // 消息推送开关 public static boolean IS_PUSH_MSG; public static final String APP_ID; public static final String APP_PRIVATE_KEY; public static final String ALI_PUBLIC_KEY; public static final String SYS_SERVICE_PROVIDER_ID; public static final boolean IS_PAY_ENABLE; // 推送 public static final String HOSP_ID; public static final String HOSP_NAME; public static final String HOSP_REGISTER_ID; public static final String TENANT_APP_ID; // 公司PID public static final String ISV_PARTNER_ID; public static final String HOSP_ALIAS; public static final String HOSP_STANDARD_CODE; public static final String HOSP_PROVINCE; public static final String HOSP_CITY; public static final String HOSP_DISTRICT; public static final String HOSP_ADDR; public static final String HOSP_LGT; public static final String HOSP_LAT; public static final String HOSP_TYPE; public static final String HOSP_GRADE; public static final boolean IS_LOG; static { ProperHelper config = new ProperHelper().read("ali.properties"); IS_ENABLE = config.getBoolean("ali.is_enable", false); config.setIsEnable(IS_ENABLE); IS_LOG = config.getBoolean("ali.is_log", false); IS_PUSH_MSG = config.getBoolean("ali.is_push_msg", false); // 盒子支付开关 IS_PAY_ENABLE = config.getBoolean("ali.is_pay_enable", false); APP_ID = config.getString("ali.app_id"); ALI_PUBLIC_KEY = config.getString("ali.public_key"); APP_PRIVATE_KEY = config.getString("ali.app_private_key"); SYS_SERVICE_PROVIDER_ID = config.getString("ali.sys_service_provider_id"); HOSP_ID = config.getString("ali.hosp_id"); HOSP_NAME = config.getString("ali.hosp_name"); HOSP_REGISTER_ID = config.getString("ali.hosp_register_id"); TENANT_APP_ID = config.getString("ali.tenant_app_id"); ISV_PARTNER_ID = config.getString("ali.isv_partner_id"); HOSP_ALIAS = config.getString("ali.hosp_alias"); HOSP_STANDARD_CODE = config.getString("ali.hosp_standard_code"); HOSP_PROVINCE = config.getString("ali.hosp_province"); HOSP_CITY = config.getString("ali.hosp_city"); HOSP_DISTRICT = config.getString("ali.hosp_district"); HOSP_ADDR = config.getString("ali.hosp_addr"); HOSP_LGT = config.getString("ali.hosp_lgt"); HOSP_LAT = config.getString("ali.hosp_lat"); HOSP_TYPE = config.getString("ali.hosp_type"); HOSP_GRADE = config.getString("ali.hosp_grade"); setConfig(); } private static boolean isInit = false; public static void initConfig() { if (!isInit) { setConfig(); } } private synchronized static void setConfig() { if (isInit) { return; } isInit = true; Config config = new Config(); config.protocol = "https"; config.gatewayHost = "openapi.alipay.com"; config.signType = "RSA2"; config.appId = APP_ID; // 为避免私钥随源码泄露,推荐从文件中读取私钥字符串而不是写入源码中 config.merchantPrivateKey = APP_PRIVATE_KEY; // 注:如果采用非证书模式,则无需赋值上面的三个证书路径,改为赋值如下的支付宝公钥字符串即可 config.alipayPublicKey = ALI_PUBLIC_KEY; // 注:证书文件路径支持设置为文件系统中的路径或CLASS_PATH中的路径,优先从文件系统中加载,加载失败后会继续尝试从CLASS_PATH中加载 // config.merchantCertPath = "F://workspace/project/wx/src/main/resources/appCertPublicKey_2021002128669589.crt"; // config.alipayCertPath = "F://workspace/project/wx/src/main/resources/alipayCertPublicKey_RSA2.crt"; // config.alipayRootCertPath = "F://workspace/project/wx/src/main/resources//alipayRootCert.crt"; // // 可设置AES密钥,调用AES加解密相关接口时需要(可选) // config.encryptKey = "<-- 请填写您的AES密钥,例如:aa4BtZ4tspm2wnXLb1ThQA== -->"; Factory.setOptions(config); } }