提交 5ec7b260 authored 作者: aiqingguo's avatar aiqingguo

易付通

上级 35411b20
...@@ -233,11 +233,11 @@ ...@@ -233,11 +233,11 @@
<artifactId>log-spring-boot-starter</artifactId> <artifactId>log-spring-boot-starter</artifactId>
</dependency> </dependency>
<dependency> <!-- <dependency>-->
<groupId>com.nbcb.cz</groupId> <!-- <groupId>com.nbcb.cz</groupId>-->
<artifactId>openBasicSDK</artifactId> <!-- <artifactId>openBasicSDK</artifactId>-->
<version>2.1.230630</version> <!-- <version>2.1.230630</version>-->
</dependency> <!-- </dependency>-->
<dependency> <dependency>
<groupId>com.nbopen</groupId> <groupId>com.nbopen</groupId>
......
package com.clx.performance.controller.temp; //package com.clx.performance.controller.temp;
//
import com.alibaba.fastjson.JSON; //import com.alibaba.fastjson.JSON;
import com.clx.performance.service.TempService; //import com.clx.performance.service.TempService;
import com.clx.performance.vo.pc.child.OrderChildLineStatisticsVO; //import com.clx.performance.vo.pc.child.OrderChildLineStatisticsVO;
import com.msl.common.result.Result; //import com.msl.common.result.Result;
import com.nbcb.bouncycastle.util.encoders.Base64; //import com.nbcb.bouncycastle.util.encoders.Base64;
import com.nbcb.sdk.OpenSDK; //import com.nbcb.sdk.OpenSDK;
import com.nbcb.sdk.file.FileUploadRequest; //import com.nbcb.sdk.file.FileUploadRequest;
import io.swagger.annotations.ApiOperation; //import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; //import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; //import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.repository.init.ResourceReader; //import org.springframework.data.repository.init.ResourceReader;
import org.springframework.web.bind.annotation.RequestMapping; //import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; //import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; //import org.springframework.web.bind.annotation.RestController;
//
import java.io.FileOutputStream; //import java.io.FileOutputStream;
import java.io.IOException; //import java.io.IOException;
import java.io.InputStream; //import java.io.InputStream;
import java.math.BigDecimal; //import java.math.BigDecimal;
import java.util.HashMap; //import java.util.HashMap;
//
//
/** ///**
* @Author: aiqingguo // * @Author: aiqingguo
* @Description: 临时接口 // * @Description: 临时接口
* @Date: 2023-8-21 12:10:16 // * @Date: 2023-8-21 12:10:16
* @Version: 1.0 // * @Version: 1.0
*/ // */
@Slf4j //@Slf4j
@RestController //@RestController
@RequestMapping(value="/temp/bank") //@RequestMapping(value="/temp/bank")
public class TempBankController { //public class TempBankController {
//
@Autowired // @Autowired
private TempService tempService; // private TempService tempService;
//
@ApiOperation(value = "test", notes = "<br>By:艾庆国") // @ApiOperation(value = "test", notes = "<br>By:艾庆国")
@RequestMapping(value = "/test", method = RequestMethod.POST) // @RequestMapping(value = "/test", method = RequestMethod.POST)
public Result<OrderChildLineStatisticsVO> test() throws Exception { // public Result<OrderChildLineStatisticsVO> test() throws Exception {
//
bankTest(); // bankTest();
//
//
return Result.ok(); // return Result.ok();
} // }
//
static void bankTest() throws Exception { // static void bankTest() throws Exception {
String priKey = "MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgTt6OadouxxxSDg/0SZdOIBqtnFGKrpwmL+quEUf+hfSgCgYIKoEcz1UBgi2hRANCAAQGHNN2NO7btp+w1248yk98E0asGC8sG0bmIzdom4M0xp3vc4IfXjmZ8omUz4oVcjzAuyMSSpJM6uPLcU1SH4HZ"; // String priKey = "MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgTt6OadouxxxSDg/0SZdOIBqtnFGKrpwmL+quEUf+hfSgCgYIKoEcz1UBgi2hRANCAAQGHNN2NO7btp+w1248yk98E0asGC8sG0bmIzdom4M0xp3vc4IfXjmZ8omUz4oVcjzAuyMSSpJM6uPLcU1SH4HZ";
//
InputStream inputStream = TempBankController.class.getClassLoader().getResourceAsStream("config.properties"); // InputStream inputStream = TempBankController.class.getClassLoader().getResourceAsStream("config.properties");
if (inputStream != null) { // if (inputStream != null) {
log.info("存在"); // log.info("存在");
//
OpenSDK.init(inputStream, priKey); // OpenSDK.init(inputStream, priKey);
//
// singleTransfer(); //// singleTransfer();
// ////
// querySingleTransferResult(); //// querySingleTransferResult();
//
//
unionPayDirectOrder(); // unionPayDirectOrder();
//
}
else{
log.info("文件不存在");
}
}
static String singleTransfer() throws Exception {
HashMap<String, Object> map = new HashMap();
HashMap<String, Object> data = new HashMap();
map.put("Data", data);
data.put("custId", "0000112058"); //客户号 必填
data.put("serialNo", "2023112300000002"); //交易流水号 必填
data.put("corpCode", "1000"); //单位代码 必填
data.put("payAcc", "40010122000156763"); //付款账号 必填
data.put("rcvAcc", "6223160014441539"); //收款账号 必填
// data.put("rcvBankName", ""); //收款方行名
// data.put("rcvBankNo", ""); //收款方联行号
data.put("rcvName", "石佛寺"); //收款户名 必填
data.put("purpose", "001-支付货款"); //用途 必填
// data.put("remark", ""); //备注
// data.put("isSubscribe", "0"); //是否预约支付
// data.put("difBank", "1"); //是否同行转账
// data.put("areaSign", "1"); //同城异地标识
data.put("amt", new BigDecimal("100")); //金额 必填
// data.put("wishPayTime", ""); //预约转账时间
// data.put("isTellRcv", "0"); //是否短信通知收款人
// data.put("rcvMobile", ""); //收款方手机号
// data.put("isForIndividual", "0"); //对公对私标识
// data.put("subaAccountSerial", ""); //统计编号
// data.put("itemCode", ""); //预算科目代码
// data.put("budgetMoney", ""); //预算执行金额
// data.put("subjectName", ""); //智能财报科目
// data.put("payType", "0"); //支付方式
// data.put("remarkAcc", ""); //代理/联动账号
// data.put("erpRemark1", ""); //ERP 备注 1
// data.put("erpRemark2", ""); //ERP 备注 1
// data.put("erpRemark3", ""); //ERP 备注 1
// data.put("erpRemark4", ""); //ERP 备注 1
String res1 = OpenSDK.send("tmsSettle", "singleTransfer", JSON.toJSONString(map));
log.info("单笔转账接口:{}" , res1);
return res1;
}
static String querySingleTransferResult() throws Exception {
HashMap<String, Object> map = new HashMap();
HashMap<String, Object> data = new HashMap();
map.put("Data", data);
data.put("custId", "0000112058"); //客户号 必填
data.put("serialNo", "2023112300000002"); //交易流水号 必填
String res1 = OpenSDK.send("tmsSettle", "querySingleTransferResult", JSON.toJSONString(map));
log.info("单笔查证接口:{}" , res1);
return res1;
}
/**
* 易付通
*/
static String unionPayDirectOrder() throws Exception {
HashMap<String, Object> map = new HashMap();
HashMap<String, Object> data = new HashMap();
map.put("Data", data);
data.put("transId", "IP01"); //交易识别码 必填
data.put("merId", "2023112300000002"); //商户号 必填
data.put("merSeqNo", "2023112300000001"); //商户流水 必填
data.put("merDtTm", "2023-11-24 11:00:00"); //商户时间 必填
data.put("trxAmt", "1.23"); //订单金额 必填
data.put("orderDesc", "采购"); //订单详情 必填
data.put("productNam", "小黄鱼"); //商品名称 必填
data.put("productId", "001"); //商品编号 必填
data.put("productNum", "1"); //商品数量 必填
data.put("payAcctNo", "6223161100110442"); //付款账号 必填
data.put("payAcctNm", "刘晓琴"); //付款户名 必填
data.put("bankType", "00"); //账户类型 必填
data.put("payAcctOpenBankId", "313332082914"); //开户行号 必填
// data.put("mobilePhone", "13000000000"); //手机号
String res1 = OpenSDK.send("YFT", "unionPayDirectOrder", JSON.toJSONString(map));
log.info("银联订单支付收款模式接口:{}" , res1);
return res1;
}
public static void main(String[] args) throws Exception {
bankTest();
// try {
// callBySepJson();
// //demo.callByBean();
// } catch (Exception e) {
// e.printStackTrace();
// } // }
} // else{
// log.info("文件不存在");
/**
* @throws Exception
*/
public static void callBySepJson() throws Exception {
String priKey = "MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgTt6OadouxxxSDg/0SZdOIBqtnFGKrpwmL+quEUf+hfSgCgYIKoEcz1UBgi2hRANCAAQGHNN2NO7btp+w1248yk98E0asGC8sG0bmIzdom4M0xp3vc4IfXjmZ8omUz4oVcjzAuyMSSpJM6uPLcU1SH4HZ";
System.out.println(TempBankController.class.getClassLoader().getResource("").getPath());
OpenSDK.init(TempBankController.class.getClassLoader().getResource("config.properties").getPath(), priKey);
/*
* dataJson 是放置具体交易请求业务报文,dataJson报文结构如下: {"Data":{"app_name":"1"}}
*/
// String dataJson="";
// // 发送请求并获取响应(第一个填入productId,第二个填入serviceId)
// String res = OpenSDK.send("", "", dataJson);
// if (log.isDebugEnabled()) {
// log.debug("res: " + res);
// } // }
//
//上传文件 // }
String res1 = OpenSDK.sendFile("", "open-filegateway",TempBankController.class.getClassLoader().getResource("bank.txt").getPath()); //
// static String singleTransfer() throws Exception {
System.out.println(res1); //
//下载文件 // HashMap<String, Object> map = new HashMap();
// String res = OpenSDK.sendFileDownload( "productId","fcd47917-bc9c-4c11-b217-f7095f5384fe","D:\\ab\\test"); // HashMap<String, Object> data = new HashMap();
} // map.put("Data", data);
//
/** // data.put("custId", "0000112058"); //客户号 必填
* JavaBean方式(通过产品SDK提供的JavaBean) // data.put("serialNo", "2023112300000002"); //交易流水号 必填
* // data.put("corpCode", "1000"); //单位代码 必填
* @throws Exception // data.put("payAcc", "40010122000156763"); //付款账号 必填
*/ // data.put("rcvAcc", "6223160014441539"); //收款账号 必填
public void callByBean() throws Exception { //// data.put("rcvBankName", ""); //收款方行名
//// data.put("rcvBankNo", ""); //收款方联行号
} // data.put("rcvName", "石佛寺"); //收款户名 必填
// data.put("purpose", "001-支付货款"); //用途 必填
} //// data.put("remark", ""); //备注
//// data.put("isSubscribe", "0"); //是否预约支付
//// data.put("difBank", "1"); //是否同行转账
//// data.put("areaSign", "1"); //同城异地标识
// data.put("amt", new BigDecimal("100")); //金额 必填
//// data.put("wishPayTime", ""); //预约转账时间
//// data.put("isTellRcv", "0"); //是否短信通知收款人
//// data.put("rcvMobile", ""); //收款方手机号
//// data.put("isForIndividual", "0"); //对公对私标识
//// data.put("subaAccountSerial", ""); //统计编号
//// data.put("itemCode", ""); //预算科目代码
//// data.put("budgetMoney", ""); //预算执行金额
//// data.put("subjectName", ""); //智能财报科目
//// data.put("payType", "0"); //支付方式
//// data.put("remarkAcc", ""); //代理/联动账号
//// data.put("erpRemark1", ""); //ERP 备注 1
//// data.put("erpRemark2", ""); //ERP 备注 1
//// data.put("erpRemark3", ""); //ERP 备注 1
//// data.put("erpRemark4", ""); //ERP 备注 1
//
// String res1 = OpenSDK.send("tmsSettle", "singleTransfer", JSON.toJSONString(map));
// log.info("单笔转账接口:{}" , res1);
//
// return res1;
// }
//
// static String querySingleTransferResult() throws Exception {
// HashMap<String, Object> map = new HashMap();
// HashMap<String, Object> data = new HashMap();
// map.put("Data", data);
//
// data.put("custId", "0000112058"); //客户号 必填
// data.put("serialNo", "2023112300000002"); //交易流水号 必填
//
// String res1 = OpenSDK.send("tmsSettle", "querySingleTransferResult", JSON.toJSONString(map));
// log.info("单笔查证接口:{}" , res1);
//
// return res1;
// }
//
//
// /**
// * 易付通
// */
// static String unionPayDirectOrder() throws Exception {
//
// HashMap<String, Object> map = new HashMap();
// HashMap<String, Object> data = new HashMap();
// map.put("Data", data);
//
// data.put("transId", "IP01"); //交易识别码 必填
// data.put("merId", "2023112300000002"); //商户号 必填
// data.put("merSeqNo", "2023112300000001"); //商户流水 必填
// data.put("merDtTm", "2023-11-24 11:00:00"); //商户时间 必填
// data.put("trxAmt", "1.23"); //订单金额 必填
// data.put("orderDesc", "采购"); //订单详情 必填
// data.put("productNam", "小黄鱼"); //商品名称 必填
// data.put("productId", "001"); //商品编号 必填
// data.put("productNum", "1"); //商品数量 必填
//
// data.put("payAcctNo", "6223161100110442"); //付款账号 必填
// data.put("payAcctNm", "刘晓琴"); //付款户名 必填
// data.put("bankType", "00"); //账户类型 必填
// data.put("payAcctOpenBankId", "313332082914"); //开户行号 必填
//// data.put("mobilePhone", "13000000000"); //手机号
//
// String res1 = OpenSDK.send("YFT", "unionPayDirectOrder", JSON.toJSONString(map));
// log.info("银联订单支付收款模式接口:{}" , res1);
//
// return res1;
// }
//
//
// public static void main(String[] args) throws Exception {
//
// bankTest();
//
//// try {
//// callBySepJson();
//// //demo.callByBean();
//// } catch (Exception e) {
//// e.printStackTrace();
//// }
// }
//
// /**
// * @throws Exception
// */
// public static void callBySepJson() throws Exception {
// String priKey = "MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgTt6OadouxxxSDg/0SZdOIBqtnFGKrpwmL+quEUf+hfSgCgYIKoEcz1UBgi2hRANCAAQGHNN2NO7btp+w1248yk98E0asGC8sG0bmIzdom4M0xp3vc4IfXjmZ8omUz4oVcjzAuyMSSpJM6uPLcU1SH4HZ";
//
// System.out.println(TempBankController.class.getClassLoader().getResource("").getPath());
//
// OpenSDK.init(TempBankController.class.getClassLoader().getResource("config.properties").getPath(), priKey);
//
//
// /*
// * dataJson 是放置具体交易请求业务报文,dataJson报文结构如下: {"Data":{"app_name":"1"}}
// */
//// String dataJson="";
//// // 发送请求并获取响应(第一个填入productId,第二个填入serviceId)
//// String res = OpenSDK.send("", "", dataJson);
//// if (log.isDebugEnabled()) {
//// log.debug("res: " + res);
//// }
//
// //上传文件
// String res1 = OpenSDK.sendFile("", "open-filegateway",TempBankController.class.getClassLoader().getResource("bank.txt").getPath());
//
// System.out.println(res1);
// //下载文件
//// String res = OpenSDK.sendFileDownload( "productId","fcd47917-bc9c-4c11-b217-f7095f5384fe","D:\\ab\\test");
// }
//
// /**
// * JavaBean方式(通过产品SDK提供的JavaBean)
// *
// * @throws Exception
// */
// public void callByBean() throws Exception {
//
// }
//
//}
...@@ -2,11 +2,9 @@ package com.clx.performance.controller.temp; ...@@ -2,11 +2,9 @@ package com.clx.performance.controller.temp;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.clx.performance.service.TempService; import com.clx.performance.service.TempService;
import com.clx.performance.vo.pc.child.OrderChildLineStatisticsVO; import com.clx.performance.vo.pc.child.OrderChildLineStatisticsVO;
import com.msl.common.result.Result; import com.msl.common.result.Result;
import com.nbcb.sdk.OpenSDK;
import com.nbopen.api.*; import com.nbopen.api.*;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -16,11 +14,8 @@ import org.springframework.web.bind.annotation.RequestMapping; ...@@ -16,11 +14,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.math.BigDecimal;
import java.util.HashMap; import java.util.HashMap;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论