修改配置文件,和 bug 修改

This commit is contained in:
Jack 2025-05-09 12:05:37 +08:00
parent 3974a08c85
commit 59473c5dc7
9 changed files with 121 additions and 104 deletions

View File

@ -117,14 +117,8 @@ public class ShopMchEntry implements Serializable {
@ApiModelProperty(value = "入驻商家营业执照的经营范围")
private String biz_license_content;
@ApiModelProperty(value = "入驻商家的许可证类型1-许可证2-特许证件3-其他证件")
private Integer license_type;
@ApiModelProperty(value = "入驻商家的许可证编号")
private String license_number;
@ApiModelProperty(value = "入驻商家许可证图片的存储路径")
private String license_image;
@ApiModelProperty(value = "营业执照以外的许可证信息列表JSON格式 [{'type':1,'number':'91450881MA5P8MWX69','img':'https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/1.png'}]type:1-许可证2-特许证件3-其他证件")
private String other_license_list;
@ApiModelProperty(value = "商家营业执照有效开始时间")
private String biz_license_period_begin;
@ -177,27 +171,27 @@ public class ShopMchEntry implements Serializable {
@ApiModelProperty(value = "个人身份证有效期结束时间")
private String individual_id_period_end;
@ApiModelProperty(value = "入驻商家的开户⾏号")
private String bank_code;
@ApiModelProperty(value = "入驻商家的开户银行")
@ApiModelProperty(value = "入驻商家的开户银行名称")
private String bank_name;
@ApiModelProperty(value = "入驻商家开户银行的支行名称")
private String bank_branch_name;
@ApiModelProperty(value = "结算账户清算⾏号")
private String clearing_bank_code;
@ApiModelProperty(value = "结算账户银行卡图片")
private String bank_image;
@ApiModelProperty(value = "结算账号省市区code 省code/市code/区code必填项")
private String bank_district;
@ApiModelProperty(value = "结算银行地区,格式: 省份/城市/乡县")
private String bank_area;
@ApiModelProperty(value = "结算账号类型57-对公 58-对私")
private String account_type;
@ApiModelProperty(value = "结算账户⾏号")
private String openning_bank_code;
@ApiModelProperty(value = "结算账户清算⾏号")
private String clearing_bank_code;
@ApiModelProperty(value = "入驻商家的收款账户号码")
private String account_number;

View File

@ -56,19 +56,20 @@ import static com.suisung.mall.common.utils.ContextUtil.getCurrentUser;
@Service
public class LklTkServiceImpl {
private static final Logger log = LoggerFactory.getLogger(LklTkServiceImpl.class);
private static final Logger logger = LoggerFactory.getLogger(LklTkServiceImpl.class);
@Value("${lakala.tk.server_url}")
private String tkServerUrl;
@Value("${lakala.server_url}")
private String serverUrl;
@Value("${lakala.tk.client_id}")
private String clientId;
@Value("${lakala.tk.client_secret}")
private String clientSecret;
@Value("${lakala.tk.user_no}")
private String userNo;
@Value("${lakala.org_code}")
private String orgCode;
@ -78,6 +79,7 @@ public class LklTkServiceImpl {
@Value("${spring.profiles.active}")
private String profile;
@Lazy
@Resource
private ShopMchEntryService shopMchEntryService;
@ -123,11 +125,12 @@ public class LklTkServiceImpl {
}
return out.toString();
} catch (IllegalArgumentException e) {
System.err.println("Base64 解码时出现非法参数异常: " + e.getMessage());
logger.error("Base64 解码时出现非法参数异常: ", e.getMessage());
} catch (Exception e) {
// 捕获其他可能的异常 NoSuchAlgorithmExceptionNoSuchPaddingExceptionInvalidKeySpecExceptionInvalidKeyExceptionBadPaddingException
System.err.println("解密过程中出现异常: " + e.getMessage());
logger.error("解密过程中出现异常: ", e.getMessage());
}
return null;
}
@ -135,10 +138,6 @@ public class LklTkServiceImpl {
return tkServerUrl + urlPath;
}
protected String buildLklServiceUrl(String urlPath) {
return serverUrl + urlPath;
}
protected boolean isProd() {
return false;
// 生产环境的时候启动该配置
@ -214,40 +213,35 @@ public class LklTkServiceImpl {
return CommonResult.failed("上传文件返回值有误");
}
// 调用 OCR 识别接口
// String ocrUrlPath = isProd() ? "/registration/ocr/result" : "/sit/htkregistration/ocr/result";
// JSONObject ocrRequestBody = new JSONObject();
// ocrRequestBody.put("batchNo", batchNo);
// ocrRequestBody.put("imgType", imgType);
//
// ResponseEntity<JSONObject> ocrResponse = RestTemplateHttpUtil.sendPostBodyBackEntity(buildLklTkUrl(ocrUrlPath), header, ocrRequestBody, JSONObject.class);
// if (ObjectUtil.isEmpty(ocrResponse)
// || ocrResponse.getStatusCode() != HttpStatus.OK
// || ObjectUtil.isEmpty(ocrResponse.getBody())) {
// return CommonResult.failed("OCR响应数据有误");
// }
//
//
// JSONObject ocrObj = ocrResponse.getBody().get("result", JSONObject.class);
// if (ObjectUtil.isEmpty(ocrObj)) {
// return CommonResult.failed("OCR返回结果有误");
// }
//
// ocrObj.put("lklUrl", updObj.getStr("url"));
// ocrObj.put("lklShowUrl", updObj.getStr("showUrl"));
// ocrObj.put("imgType", imgType);
// ocrObj.put("batchNo", batchNo);
// ocrObj.put("cosURL", imgURL);
updObj.put("cosURL", imgURL);
return CommonResult.success(updObj);
}
/**
* 根据上传的图片的批次号获取 OCR 识别结果
*
* @param batchNo
* @param imgType * ID_CARD_FRONT 身份证正
* * ID_CARD_BEHIND 身份证反
* * BUSINESS_LICENCE 营业执照照
* * BANK_CARD 银行卡企业对公不需要传
* * AGREE_MENT 协议
* * OPENING_PERMIT 开户许可证企业对公需要传
* * CHECKSTAND_IMG 收银台照片(必传)
* * SHOP_OUTSIDE_IMG 上传门头照片(必传)
* * SHOP_INSIDE_IMG 商铺内部照片(必传)
* * OTHERS 其他 无对应类型图片请传其他类型
* * SETTLE_ID_CARD_FRONT 结算人身份证人像面
* * SETTLE_ID_CARD_BEHIND 结算人身份证国徽面
* * LETTER_OF_AUTHORIZATION 法人授权涵
* @return
*/
public CommonResult imgOcrResult(String batchNo, String imgType) {
if (StrUtil.isBlank(batchNo) || StrUtil.isBlank(imgType)) {
return CommonResult.failed("批次号或图片类型不能为空");
}
// 调用 OCR 识别接口
String authorization = getLklTkAuthorization();
@ -282,7 +276,7 @@ public class LklTkServiceImpl {
}
/**
* 请求获取token商户进件
* 商户进件请求获取token
*
* @return AuthorizationKey
*/
@ -336,8 +330,7 @@ public class LklTkServiceImpl {
}
JSONObject formData = new JSONObject();
formData.put("userNo", "29153396");
formData.put("userNo", userNo);
formData.put("busiCode", "WECHAT_PAY");// WECHAT_PAY:专业化扫码;B2B_SYT:B2B收银台;
formData.put("email", shopMchEntry.getEmail());
formData.put("merRegName", shopMchEntry.getStore_name());
@ -346,8 +339,7 @@ public class LklTkServiceImpl {
// 是企业类型商家
Boolean isQy = CommonConstant.MCH_ENTITY_TYPE_QY.equals(shopMchEntry.getEntity_type());
String merType = isQy ? "TP_MERCHANT" : "TP_PERSONAL";
formData.put("merType", merType);
formData.put("merType", isQy ? "TP_MERCHANT" : "TP_PERSONAL");
Map<String, String> areaCode = getAreaCode(shopMchEntry.getStore_area(), false);
if (ObjectUtil.isNotEmpty(areaCode)) {
@ -371,7 +363,7 @@ public class LklTkServiceImpl {
formData.put("larName", larName);
formData.put("larIdCard", larIdCard);
formData.put("larIdCardStart", larIdCardStart); // 身份证有效期开始时间
formData.put("larIdCardEnd", larIdCardEnd); // 身份证有效期结束时间
formData.put("larIdCardEnd", larIdCardEnd); // 身份证有效期结束时间长期9999-12-31
// 营业执照上的经营内容
formData.put("businessContent", shopMchEntry.getSales_info());
@ -381,13 +373,14 @@ public class LklTkServiceImpl {
formData.put("licenseName", shopMchEntry.getBiz_license_company());
formData.put("licenseNo", shopMchEntry.getBiz_license_number());
formData.put("licenseDtStart", shopMchEntry.getBiz_license_period_begin());
formData.put("licenseDtEnd", shopMchEntry.getBiz_license_period_end());
formData.put("licenseDtEnd", shopMchEntry.getBiz_license_period_end()); // 长期9999-12-31
}
formData.put("contactMobile", mchMobile);
formData.put("contactName", shopMchEntry.getContact_name());
formData.put("openningBankCode", shopMchEntry.getBank_code());//结算账户开户
// 银行账号关键字段
formData.put("openningBankCode", shopMchEntry.getOpenning_bank_code());//结算账户开户
formData.put("openningBankName", shopMchEntry.getBank_name());//结算账户开户名称
formData.put("clearingBankCode", shopMchEntry.getClearing_bank_code());//结算账户清算
@ -411,7 +404,7 @@ public class LklTkServiceImpl {
}
}
// TODO 咨询清楚
// TODO 咨询拉卡拉清楚
JSONObject bizContent = new JSONObject();
bizContent.put("activityId", 687);
bizContent.put("termNum", "1");
@ -419,34 +412,34 @@ public class LklTkServiceImpl {
bizContent.put("fees", new JSONArray() {{
put(new JSONObject() {{
put("feeCode", "WECHAT");
put("feeValue", 0.20);
put("feeValue", 0.25);
}});
}});
formData.put("bizContent", bizContent);
// 附件文件相关开始
JSONArray attachments = new JSONArray();
JSONObject ID_CARD_FRONT = updatePhoto(shopMchEntry.getIndividual_id_images(), "ID_CARD_FRONT", true);
JSONObject ID_CARD_FRONT = updatePhoto(shopMchEntry.getIndividual_id_images(), "ID_CARD_FRONT", false);
if (ID_CARD_FRONT != null) {
attachments.put(ID_CARD_FRONT); // 身份证正面
}
JSONObject ID_CARD_BEHIND = updatePhoto(shopMchEntry.getIndividual_id_images2(), "ID_CARD_BEHIND", true);
JSONObject ID_CARD_BEHIND = updatePhoto(shopMchEntry.getIndividual_id_images2(), "ID_CARD_BEHIND", false);
if (ID_CARD_BEHIND != null) {
attachments.put(ID_CARD_BEHIND); // 身份证国徽面
}
JSONObject SETTLE_ID_CARD_FRONT = updatePhoto(shopMchEntry.getLegal_person_id_images(), "SETTLE_ID_CARD_FRONT", true);
JSONObject SETTLE_ID_CARD_FRONT = updatePhoto(shopMchEntry.getLegal_person_id_images(), "SETTLE_ID_CARD_FRONT", false);
if (SETTLE_ID_CARD_FRONT != null) {
attachments.put(SETTLE_ID_CARD_FRONT); // 结算人身份证正面
}
JSONObject SETTLE_ID_CARD_BEHIND = updatePhoto(shopMchEntry.getLegal_person_id_images2(), "SETTLE_ID_CARD_BEHIND", true);
JSONObject SETTLE_ID_CARD_BEHIND = updatePhoto(shopMchEntry.getLegal_person_id_images2(), "SETTLE_ID_CARD_BEHIND", false);
if (SETTLE_ID_CARD_BEHIND != null) {
attachments.put(SETTLE_ID_CARD_BEHIND); // 结算人身份证国徽面
}
JSONObject BUSINESS_LICENCE = updatePhoto(shopMchEntry.getBiz_license_image(), "BUSINESS_LICENCE", true);
JSONObject BUSINESS_LICENCE = updatePhoto(shopMchEntry.getBiz_license_image(), "BUSINESS_LICENCE", false);
if (BUSINESS_LICENCE != null) {
attachments.put(BUSINESS_LICENCE); // 营业执照
}
@ -461,7 +454,7 @@ public class LklTkServiceImpl {
attachments.put(SHOP_INSIDE_IMG); // 门店内部图片
}
JSONObject BANK_CARD = updatePhoto(shopMchEntry.getBank_image(), "BANK_CARD", true);
JSONObject BANK_CARD = updatePhoto(shopMchEntry.getBank_image(), "BANK_CARD", false);
if (BANK_CARD != null) {
attachments.put(BANK_CARD); // 银行卡图片
}
@ -469,10 +462,9 @@ public class LklTkServiceImpl {
// 附件文件相关结束
String urlPath = isProd() ? "/registration/merchant" : "/sit/htkregistration/merchant";
ResponseEntity<JSONObject> response = RestTemplateHttpUtil.sendPostFormDataBackEntity(buildLklTkUrl(urlPath), header, formData, JSONObject.class);
if (ObjectUtil.isEmpty(response) || response.getStatusCode() != HttpStatus.OK) {
String errMsg = "返回空或请求状态异常";
String errMsg = "进件返回空或请求状态异常";
if (ObjectUtil.isNotEmpty(response.getBody()) && ObjectUtil.isNotEmpty(response.getBody().getStr("message"))) {
errMsg = response.getBody().getStr("message");
}
@ -480,8 +472,9 @@ public class LklTkServiceImpl {
}
// 更改入驻记录的拉卡拉内部商户号和进件请求参数
String merchantNo = response.getBody().getStr("merchantNo"); //拉卡拉内部商户号
Boolean success = shopMchEntryService.updateMerchEntryLklMerCupNo(mchMobile, CommonConstant.Disable2, merchantNo, formData.toString());
String lklMerCupNo = response.getBody().getStr("merchantNo"); //拉卡拉内部商户号
// 表中的内部外部商户号暂时都传同一个内部商户号以便异步通知更改记录
Boolean success = shopMchEntryService.updateMerchEntryLklMerCupNo(mchMobile, CommonConstant.Disable2, lklMerCupNo, lklMerCupNo, formData.toString());
if (!success) {
return Pair.of(false, "提交进件成功,但更新商户号失败!");
}
@ -496,12 +489,12 @@ public class LklTkServiceImpl {
* @return
*/
public JSONObject registrationMerchantNotify(HttpServletRequest request) {
log.debug("拉卡拉进件异步通知开始");
logger.debug("拉卡拉进件异步通知开始");
JSONObject respData = new JSONObject();
// 解密请求参数
String requestBody = LakalaUtil.getBody(request);
log.debug("拉卡拉进件异步通知返回参数:{}", requestBody);
logger.debug("拉卡拉进件异步通知返回参数:{}", requestBody);
if (StrUtil.isBlank(requestBody)) {
return new JSONObject().set("code", "500").set("message", "返回参数为空");
}
@ -513,9 +506,9 @@ public class LklTkServiceImpl {
// 公钥解密出来的数据
String notifyPubKey = LakalaUtil.getResourceFile(notifyPubKeyPath);
log.debug("解密公钥:{}", notifyPubKey);
logger.debug("解密公钥:{}", notifyPubKey);
String data = decryptNotifyData(notifyPubKey, reqBodyJSON.getStr("data"));
log.debug("拉卡拉进件异步通知返回解密后的参数:{}", data);
logger.debug("拉卡拉进件异步通知返回解密后的参数:{}", data);
if (StrUtil.isBlank(data)) {
return new JSONObject().set("code", "500").set("message", "参数解密出错");
@ -527,18 +520,21 @@ public class LklTkServiceImpl {
return new JSONObject().set("code", "500").set("message", "参数解析出错");
}
// 给商家入驻表增加拉卡拉的商户号和拉卡拉返回的数据
String merCupNo = dataJSON.getStr("externalCustomerNo"); //拉卡拉外部商户号
Boolean success = shopMchEntryService.updateMerchEntryLklAuditStatusByLklMerCupNo(merCupNo, dataJSON.getStr("customerNo"), CommonConstant.Enable, data);
if (!success) {
return new JSONObject().set("code", "500").set("message", "更新商户号失败");
}
String merInnerNo = dataJSON.getStr("customerNo"); //拉卡拉内部商户号
ShopMchEntry shopMchEntry = shopMchEntryService.getShopMerchEntryByMerCupNo(merCupNo);
if (ObjectUtil.isEmpty(shopMchEntry)) {
return new JSONObject().set("code", "500").set("message", "商户入驻信息不存在");
}
Boolean success = shopMchEntryService.updateMerchEntryLklAuditStatusByLklMerCupNo(merInnerNo, merCupNo, CommonConstant.Enable, data);
if (!success) {
return new JSONObject().set("code", "500").set("message", "更新商户号失败");
}
// 1发起E签宝合同签署签署完成之后生成分账盖章协议书下一步才能申请分账功能权限
esignContractService.innerSignFlowCreateByFile(shopMchEntry.getLogin_mobile());
@ -579,7 +575,7 @@ public class LklTkServiceImpl {
String authorization = getLklTkAuthorization();
if (StrUtil.isBlank(authorization)) {
log.error("获取拉卡拉token失败");
logger.error("获取拉卡拉token失败");
return retMap;
}
@ -640,8 +636,28 @@ public class LklTkServiceImpl {
return retMap;
}
/**
* 上传进件相关图片和类型返回图片ID和类型
*
* @param fileUrl
* @param imgType ID_CARD_FRONT 身份证正
* ID_CARD_BEHIND 身份证反
* BUSINESS_LICENCE 营业执照照
* BANK_CARD 银行卡企业对公不需要传
* AGREE_MENT 协议
* OPENING_PERMIT 开户许可证企业对公需要传
* CHECKSTAND_IMG 收银台照片(必传)
* SHOP_OUTSIDE_IMG 上传门头照片(必传)
* SHOP_INSIDE_IMG 商铺内部照片(必传)
* OTHERS 其他 无对应类型图片请传其他类型
* SETTLE_ID_CARD_FRONT 结算人身份证人像面
* SETTLE_ID_CARD_BEHIND 结算人身份证国徽面
* LETTER_OF_AUTHORIZATION 法人授权涵
* @param isOcr
* @return
*/
public JSONObject updatePhoto(String fileUrl, String imgType, Boolean isOcr) {
if (StrUtil.isBlank(fileUrl)) {
if (StrUtil.isBlank(fileUrl) || StrUtil.isBlank(imgType)) {
return null;
}
@ -655,23 +671,18 @@ public class LklTkServiceImpl {
formData.put("sourcechnl", "0");
formData.put("isOcr", isOcr);
String urlPath = "/sit/htkregistration/file/upload";
if (isProd()) {
urlPath = "/registration/file/upload";
}
String urlPath = isProd() ? "/registration/file/upload" : "/sit/htkregistration/file/upload";
ResponseEntity<JSONObject> response = RestTemplateHttpUtil.sendPostFormDataBackEntity(buildLklTkUrl(urlPath), header, formData, JSONObject.class);
if (ObjectUtil.isEmpty(response) || response.getStatusCode() != HttpStatus.OK) {
return null;
}
JSONObject result = response.getBody();
if (result.isEmpty()) {
if (ObjectUtil.isEmpty(result)) {
return null;
}
JSONObject jsonObject = new JSONObject();
jsonObject.put("id", result.get("url"));
jsonObject.put("type", imgType);
return jsonObject;
return new JSONObject().put("id", result.get("url")).put("type", imgType);
}

View File

@ -141,11 +141,12 @@ public interface ShopMchEntryService {
*
* @param loginMobile
* @param lklAuditStatus
* @param lklMerCupNo
* @param lklMerCupNo 拉卡拉银联商户号
* @param lklMerInnerNo 拉卡拉内部商户号
* @param lklTkRegParams
* @return
*/
Boolean updateMerchEntryLklMerCupNo(String loginMobile, Integer lklAuditStatus, String lklMerCupNo, String lklTkRegParams);
Boolean updateMerchEntryLklMerCupNo(String loginMobile, Integer lklAuditStatus, String lklMerCupNo, String lklMerInnerNo, String lklTkRegParams);
/**
* 更新商家入驻申请的拉卡拉审核状态和响应数据

View File

@ -709,7 +709,7 @@ public class ShopMchEntryServiceImpl extends BaseServiceImpl<ShopMchEntryMapper,
}
@Override
public Boolean updateMerchEntryLklMerCupNo(String loginMobile, Integer lklAuditStatus, String lklMerCupNo, String lklTkRegParams) {
public Boolean updateMerchEntryLklMerCupNo(String loginMobile, Integer lklAuditStatus, String lklMerCupNo, String lklMerInnerNo, String lklTkRegParams) {
if (StrUtil.isBlank(loginMobile) && StrUtil.isBlank(lklMerCupNo)) {
return false;
}
@ -720,8 +720,13 @@ public class ShopMchEntryServiceImpl extends BaseServiceImpl<ShopMchEntryMapper,
updateWrapper.set("lkl_audit_status", lklAuditStatus);
}
if (StrUtil.isNotBlank(lklMerCupNo)) {
updateWrapper.set("lkl_mer_cup_no", lklMerCupNo);
updateWrapper.set("lkl_mer_cup_no", lklMerCupNo); // 银联商户号
}
if (StrUtil.isNotBlank(lklMerInnerNo)) {
updateWrapper.set("lkl_mer_inner_no", lklMerInnerNo); //内部商户号
}
if (StrUtil.isNotBlank(lklTkRegParams)) {
updateWrapper.set("lkl_tk_reg_params", lklTkRegParams);
}
@ -729,27 +734,28 @@ public class ShopMchEntryServiceImpl extends BaseServiceImpl<ShopMchEntryMapper,
}
/**
* 更新商家入驻申请的拉卡拉审核状态和响应数据
* 根据拉卡拉内部商户号更新商家入驻申请的拉卡拉审核状态和响应数据
*
* @param lklMerCupNo
* @param lklInnerMerNo
* @param lklMerCupNo
* @param lklAuditStatus
* @param lklTkRegResp
* @return
*/
@Override
public Boolean updateMerchEntryLklAuditStatusByLklMerCupNo(String lklMerCupNo, String lklInnerMerNo, Integer lklAuditStatus, String lklTkRegResp) {
public Boolean updateMerchEntryLklAuditStatusByLklMerCupNo(String lklInnerMerNo, String lklMerCupNo, Integer lklAuditStatus, String lklTkRegResp) {
if (StrUtil.isBlank(lklMerCupNo)) {
return false;
}
UpdateWrapper<ShopMchEntry> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("lkl_mer_cup_no", lklMerCupNo);
updateWrapper.eq("lkl_mer_inner_no", lklInnerMerNo);
if (ObjectUtil.isNotEmpty(lklAuditStatus)) {
updateWrapper.set("lkl_audit_status", lklAuditStatus);
}
if (StrUtil.isNotBlank(lklInnerMerNo)) {
updateWrapper.set("lkl_mer_inner_no", lklInnerMerNo);
if (StrUtil.isNotBlank(lklMerCupNo)) {
updateWrapper.set("lkl_mer_cup_no", lklMerCupNo);
}
if (StrUtil.isNotBlank(lklTkRegResp)) {
updateWrapper.set("lkl_tk_reg_resp", lklTkRegResp);

View File

@ -167,6 +167,7 @@ lakala:
server_url: https://test.wsmsd.cn/sit/htkauth
client_id: lsycs
client_secret: XPa1HB5d55Ig0qV8
user_no: 29153396
api_pub_key_path: payKey/lakala/dev/tk_api_public_key.txt
api_pri_key_path: payKey/lakala/dev/tk_api_private_key.txt
notify_pub_key_path: payKey/lakala/dev/tk_notify_public_key.txt

View File

@ -167,6 +167,7 @@ lakala:
server_url: https://test.wsmsd.cn
client_id: lsycs
client_secret: XPa1HB5d55Ig0qV8
user_no: 29153396
api_pub_key_path: payKey/lakala/dev/tk_api_public_key.txt
api_pri_key_path: payKey/lakala/dev/tk_api_private_key.txt
notify_pub_key_path: payKey/lakala/dev/tk_notify_public_key.txt

View File

@ -194,6 +194,7 @@ lakala:
server_url: https://test.wsmsd.cn
client_id: lsycs
client_secret: XPa1HB5d55Ig0qV8
user_no: 29153396
api_pub_key_path: payKey/lakala/dev/tk_api_public_key.txt
api_pri_key_path: payKey/lakala/dev/tk_api_private_key.txt
notify_pub_key_path: payKey/lakala/dev/tk_notify_public_key.txt

View File

@ -171,6 +171,7 @@ lakala:
server_url: https://test.wsmsd.cn/sit/htkauth
client_id: lsycs
client_secret: XPa1HB5d55Ig0qV8
user_no: 29153396
api_pub_key_path: payKey/lakala/dev/tk_api_public_key.txt
api_pri_key_path: payKey/lakala/dev/tk_api_private_key.txt
notify_pub_key_path: payKey/lakala/dev/tk_notify_public_key.txt

View File

@ -171,6 +171,7 @@ lakala:
server_url: https://test.wsmsd.cn/sit/htkauth
client_id: lsycs
client_secret: XPa1HB5d55Ig0qV8
user_no: 29153396
api_pub_key_path: payKey/lakala/dev/tk_api_public_key.txt
api_pri_key_path: payKey/lakala/dev/tk_api_private_key.txt
notify_pub_key_path: payKey/lakala/dev/tk_notify_public_key.txt