From bb1e84b94474f1d513c25b2122576370a29d5033 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 11 May 2023 12:35:05 +0800
Subject: [PATCH] 会员等级设置
---
src/main/java/cc/mrbird/febs/pay/service/impl/NBYHServiceImpl.java | 67 +++++++--
src/main/resources/lkl/prd/api_cert.cer | 22 +++
src/main/java/cc/mrbird/febs/mall/controller/AdminSystemController.java | 25 +++
src/main/resources/lkl/prd/api_public_key.pem | 9 +
src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java | 41 +++++
src/test/java/cc/mrbird/febs/ProfitTest.java | 4
src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java | 24 +++
src/main/resources/lkl/prd/api_private_key.pem | 28 ++++
src/main/resources/templates/febs/views/modules/system/cashOutSetting.html | 55 +++++++
src/main/java/cc/mrbird/febs/pay/service/impl/LaKaLaServiceImpl.java | 92 ++++++-------
src/main/java/cc/mrbird/febs/mall/dto/CashOutSettingDto.java | 6
11 files changed, 303 insertions(+), 70 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java b/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java
index 9ecd9a5..82c087e 100644
--- a/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java
+++ b/src/main/java/cc/mrbird/febs/common/enumerates/DataDictionaryEnum.java
@@ -6,6 +6,30 @@
@Getter
public enum DataDictionaryEnum {
/**
+ * 银行转账设置-客户号
+ */
+ BANK_TRANS_softwareId("BANK_TRANS_SET","BANK_TRANS_softwareId"),
+ /**
+ * 银行转账设置-客户号
+ */
+ BANK_TRANS_customerId("BANK_TRANS_SET","BANK_TRANS_customerId"),
+ /**
+ * 银行转账设置-付款账号
+ */
+ BANK_TRANS_FKZH("BANK_TRANS_SET","BANK_TRANS_FKZH"),
+ /**
+ * 银行转账设置-签名端口
+ */
+ BANK_TRANS_VERIFY_PORT("BANK_TRANS_SET","BANK_TRANS_VERIFY_PORT"),
+ /**
+ * 银行转账设置-签名ip
+ */
+ BANK_TRANS_VERIFY_IP("BANK_TRANS_SET","BANK_TRANS_VERIFY_IP"),
+ /**
+ * 银行转账设置-接收报文url
+ */
+ BANK_TRANS_URL("BANK_TRANS_SET","BANK_TRANS_URL"),
+ /**
* 星级补贴百分比
*/
PERK_AGENT_ACHIEVE_PERCENT("PERK_SET","PERK_AGENT_ACHIEVE_PERCENT"),
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminSystemController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminSystemController.java
index 1518632..19b024b 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/AdminSystemController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminSystemController.java
@@ -55,6 +55,31 @@
@PostMapping(value = "/cashOutSetting")
public FebsResponse cashOutSetting(CashOutSettingDto cashOutSettingDto) {
commonService.addDataDic(DataDictionaryEnum.CASHOUT_SETTING.getType(), DataDictionaryEnum.CASHOUT_SETTING.getCode(), cashOutSettingDto, "提现设置");
+
+ commonService.updateDataDic(
+ DataDictionaryEnum.BANK_TRANS_URL.getType(),
+ DataDictionaryEnum.BANK_TRANS_URL.getCode(),
+ cashOutSettingDto.getUrlStr());
+ commonService.updateDataDic(
+ DataDictionaryEnum.BANK_TRANS_VERIFY_IP.getType(),
+ DataDictionaryEnum.BANK_TRANS_VERIFY_IP.getCode(),
+ cashOutSettingDto.getVerifyIp());
+ commonService.updateDataDic(
+ DataDictionaryEnum.BANK_TRANS_VERIFY_PORT.getType(),
+ DataDictionaryEnum.BANK_TRANS_VERIFY_PORT.getCode(),
+ cashOutSettingDto.getVerifyPort());
+ commonService.updateDataDic(
+ DataDictionaryEnum.BANK_TRANS_FKZH.getType(),
+ DataDictionaryEnum.BANK_TRANS_FKZH.getCode(),
+ cashOutSettingDto.getFkzh());
+ commonService.updateDataDic(
+ DataDictionaryEnum.BANK_TRANS_customerId.getType(),
+ DataDictionaryEnum.BANK_TRANS_customerId.getCode(),
+ cashOutSettingDto.getCustomerId());
+ commonService.updateDataDic(
+ DataDictionaryEnum.BANK_TRANS_softwareId.getType(),
+ DataDictionaryEnum.BANK_TRANS_softwareId.getCode(),
+ cashOutSettingDto.getSoftwareId());
return new FebsResponse().success();
}
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java b/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java
index 7e5e601..9845ee6 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java
@@ -106,9 +106,46 @@
@RequiresPermissions("cashOutSetting:update")
public String cashOutSetting(Model model) {
DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.CASHOUT_SETTING.getType(), DataDictionaryEnum.CASHOUT_SETTING.getCode());
- if (dic != null) {
- model.addAttribute("cashout", JSONObject.parseObject(dic.getValue(), CashOutSettingDto.class));
+ CashOutSettingDto cashOutSettingDto = JSONObject.parseObject(dic.getValue(), CashOutSettingDto.class);
+
+ DataDictionaryCustom urlDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_URL.getType(),
+ DataDictionaryEnum.BANK_TRANS_URL.getCode());
+ if (urlDic != null) {
+ cashOutSettingDto.setUrlStr(urlDic.getValue());
}
+ DataDictionaryCustom verifyIpDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_VERIFY_IP.getType(),
+ DataDictionaryEnum.BANK_TRANS_VERIFY_IP.getCode());
+ if (verifyIpDic != null) {
+ cashOutSettingDto.setVerifyIp(verifyIpDic.getValue());
+ }
+ DataDictionaryCustom verifyPortDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_VERIFY_PORT.getType(),
+ DataDictionaryEnum.BANK_TRANS_VERIFY_PORT.getCode());
+ if (verifyPortDic != null) {
+ cashOutSettingDto.setVerifyPort(verifyPortDic.getValue());
+ }
+ DataDictionaryCustom fkzhDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_FKZH.getType(),
+ DataDictionaryEnum.BANK_TRANS_FKZH.getCode());
+ if (fkzhDic != null) {
+ cashOutSettingDto.setFkzh(fkzhDic.getValue());
+ }
+ DataDictionaryCustom customerIdDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_customerId.getType(),
+ DataDictionaryEnum.BANK_TRANS_customerId.getCode());
+ if (customerIdDic != null) {
+ cashOutSettingDto.setCustomerId(customerIdDic.getValue());
+ }
+ DataDictionaryCustom softwareIdDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_softwareId.getType(),
+ DataDictionaryEnum.BANK_TRANS_softwareId.getCode());
+ if (softwareIdDic != null) {
+ cashOutSettingDto.setSoftwareId(softwareIdDic.getValue());
+ }
+
+ model.addAttribute("cashout", cashOutSettingDto);
return FebsUtil.view("modules/system/cashOutSetting");
}
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/CashOutSettingDto.java b/src/main/java/cc/mrbird/febs/mall/dto/CashOutSettingDto.java
index 3323b3b..2e8051d 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/CashOutSettingDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/CashOutSettingDto.java
@@ -22,4 +22,10 @@
private Integer workingDays;
//互转手续费率
private Integer insideFee;
+ private String urlStr;
+ private String verifyIp;
+ private String verifyPort;
+ private String fkzh;
+ private String customerId;
+ private String softwareId;
}
diff --git a/src/main/java/cc/mrbird/febs/pay/service/impl/LaKaLaServiceImpl.java b/src/main/java/cc/mrbird/febs/pay/service/impl/LaKaLaServiceImpl.java
index 5e3c641..ff30448 100644
--- a/src/main/java/cc/mrbird/febs/pay/service/impl/LaKaLaServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/pay/service/impl/LaKaLaServiceImpl.java
@@ -89,7 +89,7 @@
*/
public static final String mchSerialNo = "01848940fd41";
- public static final String mchSerialNo_prd = "01848940fd41";
+ public static final String mchSerialNo_prd = "018804e5ecd9";
/**
* 商户号
@@ -323,9 +323,7 @@
return "FAIL";
}
- Object trade_info_list = respDataChild.get("order_trade_info_list");
- JSONObject respChild = JSONUtil.parseObj(trade_info_list);
- String tradeStatus = respChild.get("trade_status").toString();
+ String tradeStatus = respDataChild.getJSONArray("order_trade_info_list").getJSONObject(0).get("trade_status").toString();
if(!"S".equals(tradeStatus)){
return "FAIL";
}
@@ -375,54 +373,48 @@
}
public static void main(String[] args) {
-
- /**
- * {"req_time":"20221026100323",
- * "version":"1.0",
- * "req_data":{
- * "out_order_no":"GHSNVDY8033038232443530",
- * "merchant_no":"8222900701107M5",
- * "total_amount":1,
- * "order_efficient_time":"20221118220823",
- * "notify_url":"",
- * "support_cancel":0,
- * "support_refund":1,
- * "support_repeat_pay":1,
- * "order_info":"测试"}}
- */
- LaKaLaCreateOrderReqDate laKaLaCreateOrderReqDate = new LaKaLaCreateOrderReqDate();
- laKaLaCreateOrderReqDate.setOut_order_no("GHSNVDY8033038232443530");
-
- LaKaLaBasicReqDate laKaLaBasicReqDate = new LaKaLaBasicReqDate();
- laKaLaBasicReqDate.setReq_time(DateUtil.format(new Date(),"yyyyMMddHHmmss"));
- laKaLaBasicReqDate.setVersion("3.0");
- JSONObject jsonObject = JSONUtil.parseObj(laKaLaCreateOrderReqDate);
- laKaLaBasicReqDate.setReq_data(jsonObject);
-
- String s = "{\n" +
- " \"code\":\"000000\",\n" +
- " \"msg\":\"操作成功\",\n" +
- " \"resp_time\":\"20230419151705\",\n" +
- " \"resp_data\":{\n" +
- " \"merchant_no\":\"8222900701107M5\",\n" +
- " \"channel_id\":\"95\",\n" +
- " \"out_order_no\":\"HLM20230419151704\",\n" +
- " \"order_create_time\":\"20230419151705\",\n" +
- " \"order_efficient_time\":\"20230419161704\",\n" +
- " \"pay_order_no\":\"23041911012001101011000965837\",\n" +
- " \"total_amount\":\"1\",\n" +
- " \"counter_url\":\"http://q.huijingcai.top/r/0000?pageStyle%3DV2%26token%3DCCSSIZlwnaqWmBw3FHY5U40nGcX7pxoKuxVhhVI7XyulHEUboR1I0VTIqJRMAjgj3IjCMWvoWjp9%2BXHpkA%3D%3D%26amount%3D1%26payOrderNo%3D23041911012001101011000965837\"\n" +
- " }\n" +
- "}";
-
+ String s = "{\"code\":\"000000\"," +
+ "\"msg\":\"操作成功\"," +
+ "\"resp_time\":\"20230510154634\"," +
+ "\"resp_data\":{\"pay_order_no\":\"23051011012001101011000969911\"," +
+ "\"out_order_no\":\"2023051015455302379\"," +
+ "\"channel_id\":\"95\"," +
+ "\"trans_merchant_no\":\"8222900701107M5\"," +
+ "\"trans_term_no\":\"A1062976\"," +
+ "\"merchant_no\":\"8222900701107M5\"," +
+ "\"term_no\":\"A1062976\"," +
+ "\"order_status\":\"2\"," +
+ "\"order_info\":\"礼包一\"," +
+ "\"total_amount\":1," +
+ "\"order_create_time\":\"20230510154556\"," +
+ "\"order_efficient_time\":\"20230510164555\"," +
+ "\"settle_type\":\"0\"," +
+ "\"split_mark\":\"\"," +
+ "\"counter_param\":null," +
+ "\"counter_remark\":null," +
+ "\"busi_type_param\":\"\"," +
+ "\"sgn_info\":[]," +
+ "\"goods_mark\":\"\"," +
+ "\"goods_field\":\"\"," +
+ "\"order_trade_info_list\":[{\"trade_no\":\"2023051066210308370172\"," +
+ "\"log_No\":\"66210308370172\"," +
+ "\"trade_ref_no\":\"\"," +
+ "\"trade_type\":\"PAY\"," +
+ "\"trade_status\":\"S\"," +
+ "\"trade_amount\":1,\"payer_amount\":1,\"user_id1\":\"oLvoQ5W-MMaepM5fIf2XGOkatAzQ\",\"user_id2\":\"oUpF8uPxTeOlCA4eunIiiK6vZ9IA\",\"busi_type\":\"SCPAY\",\"trade_time\":\"20230510154610\",\"acc_trade_no\":\"4200001884202305101607494108\",\"payer_account_no\":\"\",\"payer_name\":\"\",\"payer_account_bank\":\"\",\"acc_type\":\"99\",\"pay_mode\":\"WECHAT\",\"client_batch_no\":\"\",\"client_seq_no\":\"\",\"settle_merchant_no\":\"8222900701107M5\",\"settle_term_no\":\"A1062976\",\"origin_trade_no\":\"\",\"auth_code\":\"\",\"bank_type\":\"OTHERS\"}]}}";
JSONObject parseObj = JSONUtil.parseObj(s);
+ String code = parseObj.get("code").toString();
+ if("000000".equals(code)){
+ Object respData = parseObj.get("resp_data");
+ JSONObject respDataChild = JSONUtil.parseObj(respData);
- Object respData = parseObj.get("resp_data");
-
- JSONObject respDataChild = JSONUtil.parseObj(respData);
- String counterUrl = respDataChild.get("counter_url").toString();
- System.out.println(counterUrl);
-
+ System.out.println(respDataChild);
+// String orderStatusQuery = respDataChild.get("order_status").toString();
+ String orderStatusQuery = respDataChild.get("order_trade_info_list").toString();
+ System.out.println(orderStatusQuery);
+ String tradeStatus = respDataChild.getJSONArray("order_trade_info_list").getJSONObject(0).get("trade_status").toString();
+ System.out.println(tradeStatus);
+ }
}
public HttpResponse post(String url, String message, String authorization) throws Exception {
diff --git a/src/main/java/cc/mrbird/febs/pay/service/impl/NBYHServiceImpl.java b/src/main/java/cc/mrbird/febs/pay/service/impl/NBYHServiceImpl.java
index 00d9202..393568a 100644
--- a/src/main/java/cc/mrbird/febs/pay/service/impl/NBYHServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/pay/service/impl/NBYHServiceImpl.java
@@ -1,15 +1,16 @@
package cc.mrbird.febs.pay.service.impl;
+import cc.mrbird.febs.common.enumerates.DataDictionaryEnum;
+import cc.mrbird.febs.common.utils.RedisUtils;
+import cc.mrbird.febs.mall.entity.DataDictionaryCustom;
import cc.mrbird.febs.mall.entity.MallMemberBank;
import cc.mrbird.febs.mall.entity.MallMemberWithdraw;
import cc.mrbird.febs.mall.entity.MallMemberWithdrawMsg;
-import cc.mrbird.febs.mall.mapper.MallMemberBankMapper;
-import cc.mrbird.febs.mall.mapper.MallMemberWithdrawMapper;
-import cc.mrbird.febs.mall.mapper.MallMemberWithdrawMsgMapper;
-import cc.mrbird.febs.mall.mapper.MallOrderInfoMapper;
+import cc.mrbird.febs.mall.mapper.*;
import cc.mrbird.febs.pay.model.NBYHResponse;
import cc.mrbird.febs.pay.service.NBYHService;
import cn.hutool.core.util.ObjectUtil;
+import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -26,6 +27,7 @@
@Slf4j
@Service
+@RequiredArgsConstructor
public class NBYHServiceImpl implements NBYHService {
/**
* 登录报文原文
@@ -109,6 +111,8 @@
*/
// private static final String URL = "http://127.0.0.1:9080/directlink/httpAccess";
private static final String URL = "http://n5z7ej.natappfree.cc/directlink/httpAccess";
+
+ private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
/**
* 签名ip
*/
@@ -121,7 +125,7 @@
/**
* 签名端口
*/
- private static final int VERIFY_PORT = 41933;
+ private static final int VERIFY_PORT = 39296;
// private static final int VERIFY_PORT = 8010;
/**
@@ -151,6 +155,8 @@
public static void main(String[] args) {
try {
+
+
InetAddress addr = InetAddress.getByName(VERIFY_IP);
Socket socket = new Socket(addr, VERIFY_PORT);
@@ -372,10 +378,19 @@
* @throws Exception
*/
@SuppressWarnings("rawtypes")
- public static String executeServerHttpService(String requestData) throws Exception {
+ public String executeServerHttpService(String requestData) throws Exception {
// public static void executeServerHttpService(String serviceId, String serviceName, String serialNo,String requestData) throws Exception {
// 处理交易的url
- java.net.URL url = new URL(URL);
+ DataDictionaryCustom urlDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_URL.getType(),
+ DataDictionaryEnum.BANK_TRANS_URL.getCode()
+ );
+ StringBuffer urlSb = new StringBuffer();
+ urlSb.append("http://");
+ urlSb.append(urlDic.getValue());
+ urlSb.append("/directlink/httpAccess");
+ java.net.URL url = new URL(urlSb.toString());
+// java.net.URL url = new URL(URL);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
if (cookies != null) {
// 如果已登录,设置coikie
@@ -510,7 +525,7 @@
* @throws FileNotFoundException
* @throws IOException
*/
- public static String getRequestDataForWithDraw(String serviceId, String serviceName,MallMemberWithdraw mallMemberWithdraw,MallMemberBank mallMemberBank)
+ public String getRequestDataForWithDraw(String serviceId, String serviceName,MallMemberWithdraw mallMemberWithdraw,MallMemberBank mallMemberBank)
throws FileNotFoundException, IOException {
StringBuffer buf = new StringBuffer();
// 报文编码格式utf-8
@@ -522,6 +537,18 @@
buf.append(serviceId);
buf.append("</serviceId>");
String reqData = "";
+ DataDictionaryCustom fkzhDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_FKZH.getType(),
+ DataDictionaryEnum.BANK_TRANS_FKZH.getCode()
+ );
+ DataDictionaryCustom customerIdDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_customerId.getType(),
+ DataDictionaryEnum.BANK_TRANS_customerId.getCode()
+ );
+ DataDictionaryCustom softwareIdDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_softwareId.getType(),
+ DataDictionaryEnum.BANK_TRANS_softwareId.getCode()
+ );
if (serviceId.equals("srv001_signOn")) {
reqData = SIGN_MESSAGE;
} else if (serviceId.equals("srv006_singleInnerTransfer")) {
@@ -541,7 +568,7 @@
* </opReq>
* *
*/
- reqData = reqData.replaceFirst("\\$\\{FKZH\\}", FKZH);
+ reqData = reqData.replaceFirst("\\$\\{FKZH\\}", fkzhDic.getValue());
reqData = reqData.replaceFirst("\\$\\{SKZH\\}", mallMemberBank.getBankNo());
reqData = reqData.replaceFirst("\\$\\{SKHM\\}", mallMemberBank.getName());
if(mallMemberWithdraw.getRemark().equals("凭证提现")){
@@ -576,7 +603,7 @@
*/
reqData = TRADE_MESSAGE;
- reqData = reqData.replaceFirst("\\$\\{FKZH\\}", FKZH);
+ reqData = reqData.replaceFirst("\\$\\{FKZH\\}", fkzhDic.getValue());
reqData = reqData.replaceFirst("\\$\\{SKZH\\}", mallMemberBank.getBankNo());
reqData = reqData.replaceFirst("\\$\\{SKHM\\}", mallMemberBank.getName());
reqData = reqData.replaceFirst("\\$\\{SKYH\\}", mallMemberBank.getBankName()+mallMemberBank.getSubbranchName());
@@ -608,7 +635,7 @@
* <opReq><serialNo>${serialNo}</serialNo><reqTime>${reqTime}</reqTime><ReqParam><ZHHA>${ZHHA}</ZHHA></ReqParam></opReq>
*/
//原订单流水号
- reqData = reqData.replaceFirst("\\$\\{ZHHA\\}", FKZH);
+ reqData = reqData.replaceFirst("\\$\\{ZHHA\\}", fkzhDic.getValue());
}
// String serialNo = String.valueOf(Math.round(Math.random() * 10000))
// + System.currentTimeMillis();
@@ -627,10 +654,10 @@
e.printStackTrace();
}
buf.append("<customerId>");
- buf.append(customerId);
+ buf.append(customerIdDic.getValue());
buf.append("</customerId>");
buf.append("<softwareId>");
- buf.append(softwareId);
+ buf.append(softwareIdDic.getValue());
buf.append("</softwareId>");
buf.append("<functionId>");
buf.append(serviceId.substring(0, 6));
@@ -657,7 +684,7 @@
* @return
* @throws UnsupportedEncodingException
*/
- public static String signData(String orignalData)
+ public String signData(String orignalData)
throws UnsupportedEncodingException {
InetAddress addr = null;
Socket socket = null;
@@ -669,9 +696,17 @@
+ "<origin_data_len>" + orignalData.getBytes("GBK").length
+ "</origin_data_len>\n" + "<origin_data>" + orignalData
+ "</origin_data>\n" + "</msg_body>\n" + "</msg>";
+
+ DataDictionaryCustom VERIFY_IPDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_VERIFY_IP.getType(),
+ DataDictionaryEnum.BANK_TRANS_VERIFY_IP.getCode()
+ );DataDictionaryCustom VERIFY_PORT_Dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+ DataDictionaryEnum.BANK_TRANS_VERIFY_PORT.getType(),
+ DataDictionaryEnum.BANK_TRANS_VERIFY_PORT.getCode()
+ );
try {
- addr = InetAddress.getByName(VERIFY_IP);
- socket = new Socket(addr, VERIFY_PORT);
+ addr = InetAddress.getByName(VERIFY_IPDic.getValue());
+ socket = new Socket(addr, Integer.parseInt(VERIFY_PORT_Dic.getValue()));
// InetAddress localHost = addr.getLocalHost();
// socket = new Socket(localHost, VERIFY_PORT);
// 发送
diff --git a/src/main/resources/lkl/prd/api_cert.cer b/src/main/resources/lkl/prd/api_cert.cer
new file mode 100644
index 0000000..b36b130
--- /dev/null
+++ b/src/main/resources/lkl/prd/api_cert.cer
@@ -0,0 +1,22 @@
+-----BEGIN CERTIFICATE-----
+MIIDoDCCAoigAwIBAgIGAYgE5ezZMA0GCSqGSIb3DQEBBQUAMGAxFDASBgNVBAMM
+C0xBS0FMQS1MQU9QMQswCQYDVQQGEwJDTjEXMBUGA1UECgwOTGFrYWxhIENvLixM
+dGQxDzANBgNVBAsMBkxLTC1ZRjERMA8GA1UEBwwIc2hhbmdoYWkwHhcNMjMwNTEw
+MDkwMjM3WhcNMzMwNTEwMDkwMjM3WjBgMRQwEgYDVQQDDAtMQUtBTEEtTEFPUDEL
+MAkGA1UEBhMCQ04xFzAVBgNVBAoMDkxha2FsYSBDby4sTHRkMQ8wDQYDVQQLDAZM
+S0wtWUYxETAPBgNVBAcMCHNoYW5naGFpMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
+MIIBCgKCAQEAhGqQ9TRIdrHHeffmqqXRe/x2UNoD/lzTQsCUlUh1quwvoahHaqeU
+cbmbjYKJlnJK8EDy1VrF+M0YmWDGhFUesVLe4HexyYFgIJMha51kz7/HM2lyjEcq
+DYXJqfGpuUzq8U9bgbIskvlRCGjfx1vg+zTNH70KVBQLrzuOSJuQKIFEbEuU5Gms
+MdxCecvm5hjlqMP7JxuQQaCkULUClu9LYxub4oyjIiSY0gqKKpfI3VEVmdu2dvsr
+Hp0/ySbDAiocddc0oZ2utxwwQYOtMN2uH6SPObidrkBJ/Rb02jEuFXKjZWGUuv0T
+a1QftH5hCb7rLzhCG6VvcSwvpepkXtHXIQIDAQABo2AwXjAPBgNVHRMECDAGAQH/
+AgEAMB8GA1UdIwQYMBaAFGK3owb/1UEa3uYyZU2/5TTPsLlIMB0GA1UdDgQWBBRi
+t6MG/9VBGt7mMmVNv+U0z7C5SDALBgNVHQ8EBAMCBsAwDQYJKoZIhvcNAQEFBQAD
+ggEBAD9Lae2EuSFgCwsPcuSZEtvtL33s8/HagvjD5vkRr584SJfs90US1P013J0Y
+lN8LtutEo3CjPVJUfsltIleD0Dnh4seJuJ3SCorTXzTt0GNL5jqazJrJJHKgjrt4
+kh5P94uoX5ujZxNEtav/o4rhVtcAfCUxsrDrSnhSd+nQr1PlR5qhMAFrKcaFsZy6
+HTvP5KqiopKUmMbMGUQzfsNQiS8h+c6seDpMfK3T3BgnaV0mWduasDsQm6/tnQNv
+/d2WVudz0G08WhHr/653uB5I3wungKWMLSCa8ehZgUdE+BN3x1zOImyk/CHNHCGt
+Wbn2HUolxQ8K3s3qIzvan+aOyWU=
+-----END CERTIFICATE-----
diff --git a/src/main/resources/lkl/prd/api_private_key.pem b/src/main/resources/lkl/prd/api_private_key.pem
new file mode 100644
index 0000000..448b0d9
--- /dev/null
+++ b/src/main/resources/lkl/prd/api_private_key.pem
@@ -0,0 +1,28 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCEapD1NEh2scd5
+9+aqpdF7/HZQ2gP+XNNCwJSVSHWq7C+hqEdqp5RxuZuNgomWckrwQPLVWsX4zRiZ
+YMaEVR6xUt7gd7HJgWAgkyFrnWTPv8czaXKMRyoNhcmp8am5TOrxT1uBsiyS+VEI
+aN/HW+D7NM0fvQpUFAuvO45Im5AogURsS5Tkaawx3EJ5y+bmGOWow/snG5BBoKRQ
+tQKW70tjG5vijKMiJJjSCooql8jdURWZ27Z2+ysenT/JJsMCKhx11zShna63HDBB
+g60w3a4fpI85uJ2uQEn9FvTaMS4VcqNlYZS6/RNrVB+0fmEJvusvOEIbpW9xLC+l
+6mRe0dchAgMBAAECggEAVEpZ2Bzd++CTMErj5MEFJr3Auxrs6+A/AwEAFD852AHd
+GDS8sWHXlsUmBeCQoNpEZceSTMopt4UnIYt/EwH0NcCg65aF79WRUWsXHR/l6nET
+5uA68JzkYhNGGg4hkjkqXU283ESFJ1HZiVbpDEiqYH5uDMQTbQ4NmhB5NDMCgyVL
+oUkJD4/PYxglkykjih0RV58X/UU8T7R318uzqTq5DcrEHIwRdzdx1GzbwuoTFGnV
+965YTKBWkIRjIFTDmZVNQEcXo0kRETiM+4/M6Q11LNKD6El077xBk6L6bzV+l0vb
+cmazWKCXLJXZxWCDntrcKLxPyHnsYqZ0uNhnEIenWQKBgQDCQ30+bIHlgQaAekP/
+RLKo0ot57Hy5gO8lGO9esk0O3uAtNFt8uU3bdPzTUUAe2DV/9dscDSPvIzSAovQb
+uvl8n0SXgnhK7xgv8EFbdNtZTi2upxGTmyXefR2Wq8ez7NpztxZkfgW3IS+awhw3
+W9+d0khI6rSWVxvWgYzdEsjXLwKBgQCuf2yFUpQFKpv/XeeqcUYPvfReP8FaT+zj
+YA3uSRwEuIpPjGENDuKjUjyoKOVww5PFQAaLGmtGVcsHs7q5KFSUK1O9hQ5D996z
+5LzJlgv9Giu51bDcx8b3846B6zTHVn4HNy87e/ac8r2+eXtHfm9E5bDy8H9qtCgv
+nWsKn5WirwKBgB6pWFNJ/RakTspogeMAjNJoqOsNkIIW/6fzT5S6v77hHrED2ozN
+EqTYyi7wXBaCOa+Atpyu1kUgYWEMV0spL8eju8fOJ/5rzn2Chk5RG231EPDIHdYW
+XtvHE6x8YIDdmX06IKar3WsSKdlbWejC74CReCdKJEa2aQZqXDlohZqxAoGAMRRT
+8JfOXDmk0MmXvD/J5emWjt+9wWoThcxhfrD/eXByLnecYHDcW/VobB+8kN/hcyxT
+6tIOdCTzSwJJNYTbbSVWk0qWPZW9BLoEQ2q5ioHO5KDu8toZ42mUnoQKPzrbjan+
+1etC7Nf1eFpwyyYLo8Q65cmw/NEZMHNFRSKnkq8CgYEAj0knhIXhf3ZOSaY5UB+6
+ZpQVS6h8I0E1sjRWRfw5ft6IXzEtLfO359o6KV9kmkkEPEiDPZht21uM9VeDMWwu
+tpA6V0TSZDmbqFxGUEACLZIngzIbi90/Q2BTxVZeYhL+/JBGWgO7mGa8EcnFWZR7
+7LUAYSNZFHQggWHwM+7/ADE=
+-----END PRIVATE KEY-----
diff --git a/src/main/resources/lkl/prd/api_public_key.pem b/src/main/resources/lkl/prd/api_public_key.pem
new file mode 100644
index 0000000..68be369
--- /dev/null
+++ b/src/main/resources/lkl/prd/api_public_key.pem
@@ -0,0 +1,9 @@
+-----BEGIN PUBLIC KEY-----
+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAhGqQ9TRIdrHHeffmqqXR
+e/x2UNoD/lzTQsCUlUh1quwvoahHaqeUcbmbjYKJlnJK8EDy1VrF+M0YmWDGhFUe
+sVLe4HexyYFgIJMha51kz7/HM2lyjEcqDYXJqfGpuUzq8U9bgbIskvlRCGjfx1vg
++zTNH70KVBQLrzuOSJuQKIFEbEuU5GmsMdxCecvm5hjlqMP7JxuQQaCkULUClu9L
+Yxub4oyjIiSY0gqKKpfI3VEVmdu2dvsrHp0/ySbDAiocddc0oZ2utxwwQYOtMN2u
+H6SPObidrkBJ/Rb02jEuFXKjZWGUuv0Ta1QftH5hCb7rLzhCG6VvcSwvpepkXtHX
+IQIDAQAB
+-----END PUBLIC KEY-----
diff --git a/src/main/resources/templates/febs/views/modules/system/cashOutSetting.html b/src/main/resources/templates/febs/views/modules/system/cashOutSetting.html
index d9725df..e150787 100644
--- a/src/main/resources/templates/febs/views/modules/system/cashOutSetting.html
+++ b/src/main/resources/templates/febs/views/modules/system/cashOutSetting.html
@@ -43,6 +43,55 @@
</div>
<div class="layui-word-aux" style="margin-left: 150px;">互转手续费:例如25%,直接输入25</div>
</div>
+ <blockquote class="layui-elem-quote blue-border">宁波银行提现设置</blockquote>
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">9080-网址:</label>
+ <div class="layui-input-block">
+ <input type="text" name="urlStr"
+ lay-verify="required|text" autocomplete="off" class="layui-input" >
+ </div>
+ <div class="layui-word-aux" style="margin-left: 150px;">银行转账设置-接收报文url,使用NATAPP映射9080端口</div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">8010-网址:</label>
+ <div class="layui-input-block">
+ <input type="text" name="verifyIp"
+ lay-verify="required|text" autocomplete="off" class="layui-input" >
+ </div>
+ <div class="layui-word-aux" style="margin-left: 150px;">银行转账设置-签名端口,使用NATAPP映射8010端口</div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">8010-端口号:</label>
+ <div class="layui-input-block">
+ <input type="text" name="verifyPort"
+ lay-verify="required|text" autocomplete="off" class="layui-input" >
+ </div>
+ <div class="layui-word-aux" style="margin-left: 150px;">银行转账设置-签名ip,使用NATAPP映射8010端口号</div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">付款账号:</label>
+ <div class="layui-input-block">
+ <input type="text" name="fkzh"
+ lay-verify="required|text" autocomplete="off" class="layui-input" >
+ </div>
+ <div class="layui-word-aux" style="margin-left: 150px;">银行转账设置-付款账号</div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">customerId:</label>
+ <div class="layui-input-block">
+ <input type="text" name="customerId"
+ lay-verify="required|text" autocomplete="off" class="layui-input" >
+ </div>
+ <div class="layui-word-aux" style="margin-left: 150px;">银行转账设置-customerId</div>
+ </div>
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">softwareId:</label>
+ <div class="layui-input-block">
+ <input type="text" name="softwareId"
+ lay-verify="required|text" autocomplete="off" class="layui-input" >
+ </div>
+ <div class="layui-word-aux" style="margin-left: 150px;">银行转账设置-softwareId</div>
+ </div>
</div>
<div class="layui-card-footer">
@@ -88,6 +137,12 @@
function initCashoutValue() {
form.val("cashout-setting-form", {
+ "urlStr": cashout.urlStr,
+ "verifyIp": cashout.verifyIp,
+ "verifyPort": cashout.verifyPort,
+ "fkzh": cashout.fkzh,
+ "customerId": cashout.customerId,
+ "softwareId": cashout.softwareId,
"minCashOut": cashout.minCashOut,
"allCashOut": cashout.allCashOut,
"serviceFee": cashout.serviceFee,
diff --git a/src/test/java/cc/mrbird/febs/ProfitTest.java b/src/test/java/cc/mrbird/febs/ProfitTest.java
index 5040508..7215f1e 100644
--- a/src/test/java/cc/mrbird/febs/ProfitTest.java
+++ b/src/test/java/cc/mrbird/febs/ProfitTest.java
@@ -106,11 +106,11 @@
// nbyhService.tradeSingeOuterTransfer(306L);
// nbyhService.accountInfoQuery(306L);
// nbyhService.transferResultInfoQuery(315L);
-
+//
// mallMemberService.chargeAgree(307L);
// mallMemberService.searchInfo(307L);
- agentService.perkAgent();
+// agentService.perkAgent();
}
@Test
public void agentProfit() {
--
Gitblit v1.9.1