微信后端代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

113 lines
4.6 KiB

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);
}
}