|
@@ -1,6 +1,7 @@
|
|
|
package com.pj.xml;
|
|
|
|
|
|
|
|
|
+import cn.hutool.log.StaticLog;
|
|
|
import com.pj.api.dto.CompanyDto;
|
|
|
import com.pj.api.dto.PaymentDto;
|
|
|
import com.pj.api.dto.PaymentTwoDto;
|
|
@@ -28,7 +29,7 @@ public class MessageXML {
|
|
|
"<date>" + paymentDto.getDeclTime() + "</date>\n" + //结关时间 YYYY-MM—DD HH:MM:DD SSS
|
|
|
"</payload>";
|
|
|
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n" +
|
|
|
- "<message title=\"边民互市\" xsi:schemaLocation=\"\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\n" +
|
|
|
+ "<message title=\"一级市场\" xsi:schemaLocation=\"\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\n" +
|
|
|
"<headers>\n" +
|
|
|
" <item>\n" +
|
|
|
" <key>sn</key>\n" +
|
|
@@ -51,10 +52,12 @@ public class MessageXML {
|
|
|
" <value>CXB001</value>\n" +
|
|
|
" </item>\n" +
|
|
|
"</headers>\n" +
|
|
|
- "<plain>" +
|
|
|
- CryptoUtil.encrypt(payload)+
|
|
|
- "</plain>" +
|
|
|
+ payload +
|
|
|
+ //"<plain>" +
|
|
|
+ //CryptoUtil.encrypt(payload)+
|
|
|
+ //"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------CXB001--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -65,13 +68,13 @@ public class MessageXML {
|
|
|
String date = sdf.format(new Date());
|
|
|
String payload =" <payload xsi:type=\"responseDTO\">" +
|
|
|
" <code>200</code>\n" + //消息回执代码
|
|
|
- " <source>" + bankInfo.getSn() + "</source>\n" + //源报文编号
|
|
|
+ " <source>" + bankInfo.getSn() + "</source>\n" + //源报文编号
|
|
|
" <note>边民已备案</note>\n" + //回执内容
|
|
|
"<results xsi:type=\"vendeeDTO\">\n" +
|
|
|
- " <name>" + bankInfo.getName() + "</name>\n" + //边民姓名
|
|
|
- " <papersType>" + bankInfo.getPapersType() + "</papersType>\n" + //证件类型 0001 身份证
|
|
|
- " <papersNo>" + bankInfo.getPapersNo() + "</papersNo>\n" + //边民证件号
|
|
|
- " <nationality>" + bankInfo.getNationality() + "</nationality>\n" + //国籍
|
|
|
+ " <name>" + bankInfo.getName() + "</name>\n" + //边民姓名
|
|
|
+ " <papersType>" + bankInfo.getPapersType() + "</papersType>\n" + //证件类型 0001 身份证
|
|
|
+ " <papersNo>" + bankInfo.getPapersNo() + "</papersNo>\n" + //边民证件号
|
|
|
+ " <nationality>" + bankInfo.getNationality() + "</nationality>\n" + //国籍
|
|
|
"</results>\n" +
|
|
|
"</payload>";
|
|
|
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n" +
|
|
@@ -102,6 +105,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------SXB003--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -112,7 +116,7 @@ public class MessageXML {
|
|
|
String date = sdf.format(new Date());
|
|
|
String payload =" <payload xsi:type=\"responseDTO\">" +
|
|
|
" <code>500</code>\n" + //消息回执代码
|
|
|
- " <source>" + bankInfo.getSn() + "</source>\n" + //源报文编号
|
|
|
+ " <source>" + bankInfo.getSn() + "</source>\n" + //源报文编号
|
|
|
" <note>边民未备案</note>\n" + //回执内容
|
|
|
"</payload>";
|
|
|
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n" +
|
|
@@ -143,6 +147,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------SXB004--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -154,13 +159,13 @@ public class MessageXML {
|
|
|
String payload =
|
|
|
" <payload xsi:type=\"responseDTO\">" +
|
|
|
" <code>200</code>\n" + //消息回执代码
|
|
|
- " <source>" + bankInfo.getSn() + "</source>\n" + //源报文编号
|
|
|
+ " <source>" + bankInfo.getSn() + "</source>\n" + //源报文编号
|
|
|
" <note>商铺已备案</note>\n" + //回执内容
|
|
|
"<results xsi:type=\"vendeeDTO\">\n" +
|
|
|
- " <name>" + bankInfo.getName() + "</name>\n" + //商铺所属人姓名
|
|
|
- " <papersType>" + bankInfo.getPapersType() + "</papersType>\n" + //所属人证件类型 0001 身份证
|
|
|
- " <papersNo>" + bankInfo.getPapersNo() + "</papersNo>\n" + //所属人证件号
|
|
|
- " <nationality>" + bankInfo.getNationality() + "</nationality>\n" + //国籍
|
|
|
+ " <name>" + bankInfo.getName() + "</name>\n" + //商铺所属人姓名
|
|
|
+ " <papersType>" + bankInfo.getPapersType() + "</papersType>\n" + //所属人证件类型 0001 身份证
|
|
|
+ " <papersNo>" + bankInfo.getPapersNo() + "</papersNo>\n" + //所属人证件号
|
|
|
+ " <nationality>" + bankInfo.getNationality() + "</nationality>\n" + //国籍
|
|
|
"</results>\n" +
|
|
|
"</payload>";
|
|
|
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n" +
|
|
@@ -191,6 +196,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------SXB007--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -233,6 +239,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------SXB008--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -244,37 +251,38 @@ public class MessageXML {
|
|
|
String payload =
|
|
|
"<payload xsi:type=\"orderDTO\">" +
|
|
|
" <sn>" + paymentDto.getTradeNo() + "</sn>\n" + //订单号
|
|
|
- " <export>false</export>\n" + //出口标识 true:出口,false:进口
|
|
|
+ " <export>false</export>\n" + //出口标识 true:出口,false:进口
|
|
|
" <organization>" + paymentDto.getFieldCode() + "</organization>\n" + //互市点机构代码
|
|
|
" <currency>" + paymentDto.getCurrCode() + "</currency>\n" + //币种
|
|
|
- " <type>01</type>\n" + //业务类型 01 代表扣款报文
|
|
|
- " <charging>" + paymentDto.getResalePrice() + "</charging>\n" + //计费金额(二级市场转售总金额)
|
|
|
+ " <type>01</type>\n" + //业务类型 01 代表扣款报文
|
|
|
+ //" <charging>" + paymentDto.getResalePrice() + "</charging>\n" + //计费金额(二级市场转售总金额):charging送0
|
|
|
+ " <charging>0</charging>\n" + //一级市场订单还没有上架计费:charging送0
|
|
|
" <total>" + paymentDto.getTotalPrice() + "</total>\n" + //总金额8000.00(一级市场边民订单金额)
|
|
|
" <date>" + paymentDto.getDeclTime() + "</date>\n" + //订单时间 YYYY-MM—DD HH:MM:DD SSS
|
|
|
"<vendee>\n" +
|
|
|
- " <name>" + paymentDto.getBorderName() + "</name>\n" + //边民姓名
|
|
|
- " <papersType>0001</papersType>\n" + //证件类型 0001 身份证
|
|
|
- " <papersNo>" + paymentDto.getBorderidno() + "</papersNo>\n" + //边民证件号
|
|
|
- " <nationality>0001</nationality>\n" + //国籍
|
|
|
- " <account>" + paymentDto.getBankCode() + "</account>\n" + //银行账号
|
|
|
- " <bankCode>MRCCCNB1</bankCode>\n" + //开户行代码
|
|
|
- " <tel>" + paymentDto.getBorderTel() + "</tel>\n" + //联系电话
|
|
|
+ " <name>" + paymentDto.getBorderName() + "</name>\n" + //边民姓名
|
|
|
+ " <papersType>" + paymentDto.getPapersType() + "</papersType>\n" + //证件类型 0001 身份证
|
|
|
+ " <papersNo>" + paymentDto.getBorderidno() + "</papersNo>\n" + //边民证件号
|
|
|
+ " <nationality>" + paymentDto.getBorderNationality() + "</nationality>\n" + //国籍
|
|
|
+ " <account>" + paymentDto.getBankCode() + "</account>\n" + //银行账号
|
|
|
+ " <bankCode>" + paymentDto.getBankNo() + "</bankCode>\n" + //开户行代码
|
|
|
+ " <tel>" + paymentDto.getBorderTel() + "</tel>\n" + //联系电话
|
|
|
"</vendee>\n" +
|
|
|
"<vendor>\n" +
|
|
|
- " <name>" + paymentDto.getOwnerName() + "</name>\n" + //商铺所属人姓名
|
|
|
- " <papersType>" + paymentDto.getOwnerIdtype() + "</papersType>\n" + //所属人证件类型
|
|
|
- " <papersNo>12312312-3</papersNo>\n" + //所属人证件号
|
|
|
- " <nationality>0001</nationality>\n" + //国籍
|
|
|
- " <account>" + paymentDto.getBankAccount() + "</account>\n" + //银行账号
|
|
|
- " <bankCode>MRCCCNB1</bankCode>\n" + //开户行代码
|
|
|
- " <tel>" + paymentDto.getOwnerTel() + "</tel>\n" + //联系电话
|
|
|
+ " <name>" + paymentDto.getOwnerName() + "</name>\n" + //商铺所属人姓名
|
|
|
+ " <papersType>" + paymentDto.getOwnerIdtype() + "</papersType>\n" + //所属人证件类型
|
|
|
+ " <papersNo>" + paymentDto.getShopSccd() + "</papersNo>\n" + //所属人证件号
|
|
|
+ " <nationality>" + paymentDto.getNationality() + "</nationality>\n" + //国籍
|
|
|
+ " <account>" + paymentDto.getBankAccount() + "</account>\n" + //银行账号
|
|
|
+ " <bankCode>" + paymentDto.getBank() + "</bankCode>\n" + //开户行代码
|
|
|
+ " <tel>" + paymentDto.getOwnerTel() + "</tel>\n" + //联系电话
|
|
|
"</vendor>\n" +
|
|
|
"<items>\n" +
|
|
|
" <name>" + paymentDto.getGoodsName() + "</name>\n" + //商品名称
|
|
|
" <unit>" + paymentDto.getGoodsUnit() + "</unit>\n" + //商品单位
|
|
|
" <price>" + paymentDto.getDeclPrice() + "</price>\n" + //商品单价
|
|
|
" <quantity>" + paymentDto.getBuyQty() + "</quantity>\n" + //商品数量
|
|
|
- " <weight>" + paymentDto.getGrossWt() + "</weight>\n" + //商品重量
|
|
|
+ " <weight>" + paymentDto.getNetWt() + "</weight>\n" + //商品重量(净重)
|
|
|
" <amount>" + paymentDto.getTotalPrice() + "</amount>\n" + //金额
|
|
|
"</items>\n" +
|
|
|
"</payload>";
|
|
@@ -306,6 +314,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------SXB010--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -319,34 +328,35 @@ public class MessageXML {
|
|
|
" <sn>" + paymentDto.getTradeNo() + "</sn>\n" + //订单号
|
|
|
" <organization>" + paymentDto.getFieldCode() + "</organization>\n" + //互市点机构代码
|
|
|
" <currency>" + paymentDto.getCurrCode() + "</currency>\n" + //币种
|
|
|
- " <type>02</type>\n" + //业务类型 02代表退款报文
|
|
|
- " <charging>" + paymentDto.getResalePrice() + "</charging>\n" + //计费金额(二级市场转售总金额)
|
|
|
+ " <type>02</type>\n" + //业务类型 02代表退款报文
|
|
|
+ //" <charging>" + paymentDto.getResalePrice() + "</charging>\n" + //计费金额(二级市场转售总金额):charging送0
|
|
|
+ " <charging>0</charging>\n" + //一级市场订单还没有上架计费:charging送0
|
|
|
" <total>" + paymentDto.getTotalPrice() + "</total>\n" + //总金额8000.00(一级市场边民订单金额)
|
|
|
" <date>" + paymentDto.getDeclTime() + "</date>\n" + //订单时间 YYYY-MM—DD HH:MM:DD SSS
|
|
|
"<vendee>\n" +
|
|
|
- " <name>" + paymentDto.getBorderName() + "</name>\n" + //边民姓名
|
|
|
- " <papersType>0001</papersType>\n" + //证件类型 0001 身份证
|
|
|
- " <papersNo>" + paymentDto.getBorderidno() + "</papersNo>\n" + //边民证件号
|
|
|
- " <nationality>0001</nationality>\n" + //国籍
|
|
|
- " <account>" + paymentDto.getBankCode() + "</account>\n" + //银行账号
|
|
|
- " <bankCode>MRCCCNB1</bankCode>\n" + //开户行代码
|
|
|
- " <tel>" + paymentDto.getBorderTel() + "</tel>\n" + //联系电话
|
|
|
+ " <name>" + paymentDto.getBorderName() + "</name>\n" + //边民姓名
|
|
|
+ " <papersType>" + paymentDto.getPapersType() + "</papersType>\n" + //证件类型 0001 身份证
|
|
|
+ " <papersNo>" + paymentDto.getBorderidno() + "</papersNo>\n" + //边民证件号
|
|
|
+ " <nationality>" + paymentDto.getBorderNationality() + "</nationality>\n" + //国籍
|
|
|
+ " <account>" + paymentDto.getBankCode() + "</account>\n" + //银行账号
|
|
|
+ " <bankCode>" + paymentDto.getBankNo() + "</bankCode>\n" + //开户行代码
|
|
|
+ " <tel>" + paymentDto.getBorderTel() + "</tel>\n" + //联系电话
|
|
|
"</vendee>\n" +
|
|
|
"<vendor>\n" +
|
|
|
- " <name>" + paymentDto.getOwnerName() + "</name>\n" + //商铺所属人姓名
|
|
|
- " <papersType>" + paymentDto.getOwnerIdtype() + "</papersType>\n" + //所属人证件类型
|
|
|
- " <papersNo>12312312-3</papersNo>\n" + //所属人证件号
|
|
|
- " <nationality>0001</nationality>\n" + //国籍
|
|
|
- " <account>" + paymentDto.getBankAccount() + "</account>\n" + //银行账号
|
|
|
- " <bankCode>MRCCCNB1</bankCode>\n" + //开户行代码
|
|
|
- " <tel>" + paymentDto.getOwnerTel() + "</tel>\n" + //联系电话
|
|
|
+ " <name>" + paymentDto.getOwnerName() + "</name>\n" + //商铺所属人姓名
|
|
|
+ " <papersType>" + paymentDto.getOwnerIdtype() + "</papersType>\n" + //所属人证件类型
|
|
|
+ " <papersNo>" + paymentDto.getShopSccd() + "</papersNo>\n" + //所属人证件号
|
|
|
+ " <nationality>" + paymentDto.getNationality() + "</nationality>\n" + //国籍
|
|
|
+ " <account>" + paymentDto.getBankAccount() + "</account>\n" + //银行账号
|
|
|
+ " <bankCode>" + paymentDto.getBank() + "</bankCode>\n" + //开户行代码
|
|
|
+ " <tel>" + paymentDto.getOwnerTel() + "</tel>\n" + //联系电话
|
|
|
"</vendor>\n" +
|
|
|
"<items>\n" +
|
|
|
" <name>" + paymentDto.getGoodsName() + "</name>\n" + //商品名称
|
|
|
" <unit>" + paymentDto.getGoodsUnit() + "</unit>\n" + //商品单位
|
|
|
" <price>" + paymentDto.getDeclPrice() + "</price>\n" + //商品单价
|
|
|
" <quantity>" + paymentDto.getBuyQty() + "</quantity>\n" + //商品数量
|
|
|
- " <weight>" + paymentDto.getGrossWt() + "</weight>\n" + //商品重量
|
|
|
+ " <weight>" + paymentDto.getNetWt() + "</weight>\n" + //商品重量(净重)
|
|
|
" <amount>" + paymentDto.getTotalPrice() + "</amount>\n" + //金额
|
|
|
"</items>\n" +
|
|
|
"</payload>";
|
|
@@ -379,6 +389,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------SXB013--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -391,7 +402,7 @@ public class MessageXML {
|
|
|
"<payload xsi:type=\"carDTO\">" +
|
|
|
"<registration>" + paymentDto.getVoyageNo() + "</registration>\n" + //车辆批号
|
|
|
"<plateNumber>" + paymentDto.getVeNo() + "</plateNumber>\n" + //车牌号
|
|
|
- "<Order>" + paymentDto.getTradeNo() + "</Order>\n" +//订单号 n个
|
|
|
+ "<Order>" + paymentDto.getTradeNos() + "</Order>\n" +//订单号 n个
|
|
|
"</payload>";
|
|
|
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n" +
|
|
|
"<message xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"\">\n" +
|
|
@@ -421,6 +432,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>\n";
|
|
|
+ StaticLog.info("\n --------发送报文--------SXB023--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -453,6 +465,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------MKT002--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -465,7 +478,7 @@ public class MessageXML {
|
|
|
" <payload xsi:type=\"vendorDTO\"" +
|
|
|
" name=\"" + paymentTwoDto.getOwnerName() + "\"" + //企业名称
|
|
|
" papersType=\"0008\"" + //证件类型 0008 社会统一信用代码(默认)
|
|
|
- " papersNo=\"12312312-3\"" + //证件号
|
|
|
+ " papersNo=\"78509372-8\"" + //证件号
|
|
|
" nationality=\"0001\"" + //国籍
|
|
|
" accountNo=\"" + paymentTwoDto.getBankAccount() + "\"" + //银行账号
|
|
|
" bankCode=\"MRCCCNB1\"" + //开户行代码
|
|
@@ -484,6 +497,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------MKT004--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -491,26 +505,27 @@ public class MessageXML {
|
|
|
* 订单扣款(无手续费):二级市场--->银行
|
|
|
*/
|
|
|
public static String MKT006_NoCommission(PaymentTwoDto paymentTwoDto) {
|
|
|
+ paymentTwoDto.setFieldCode("861501");
|
|
|
String date = sdf.format(new Date());
|
|
|
String payload=
|
|
|
"<payload xsi:type=\"orderDTO\"" +
|
|
|
" sn=\"" + paymentTwoDto.getOrderNo() + "\"" + //订单号
|
|
|
" organization=\"" + paymentTwoDto.getFieldCode() + "\"" + //互市点机构代码
|
|
|
- " currency=\"" + paymentTwoDto.getCurrCode() + "\"" + //币种
|
|
|
+ " currency=\"RMB\"" + //币种
|
|
|
" type=\"001\"" + //业务类型 001 代表扣款订单
|
|
|
" total=\"" + paymentTwoDto.getResalePrice() + "\"" + //订单总金额 8150.00 【买方总支付金额】(转售金额)
|
|
|
//" actualTotal=\"</actualTotal>\n" + //扣除手续费边民实际到账金额 actualTotal忽略
|
|
|
- " dateTime=\"" + paymentTwoDto.getDeclTime() + "\"" + //订单时间 YYYY-MM—DD HH:MM:DD SSS
|
|
|
+ " dateTime=\"2024-01-17 10:11:55 876\"" + //订单时间 YYYY-MM—DD HH:MM:DD SSS
|
|
|
">" +
|
|
|
|
|
|
"<vendee" +//买方基本信息(采购企业)
|
|
|
- " name=\"" + paymentTwoDto.getPcName() + "\"" + //企业名称
|
|
|
+ " name=\"云南跨境贸易公司\"" + //企业名称
|
|
|
" papersType=\"0008\"" + //证件类型 0008 社会统一信用代码(默认)
|
|
|
- " papersNo=\"" + paymentTwoDto.getBusinessLicense() + "\"" + //证件号
|
|
|
+ " papersNo=\"12312312-3\"" + //证件号
|
|
|
" nationality=\"0001\"" + //国籍
|
|
|
- " accountNo=\"" + paymentTwoDto.getPcBankAccount() + "\"" + //银行账号
|
|
|
+ " accountNo=\"0100028613124012\"" + //银行账号
|
|
|
" bankCode=\"MRCCCNB1\"" + //开户行代码
|
|
|
- " tel=\"" + paymentTwoDto.getPcContact() + "\"" + //联系电话
|
|
|
+ " tel=\"15195882701\"" + //联系电话
|
|
|
"/>\n" +
|
|
|
|
|
|
"<vendor" +//卖方基础信息(边民)
|
|
@@ -548,6 +563,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------MKT006(无计费)--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -555,6 +571,9 @@ public class MessageXML {
|
|
|
* 订单扣款(+手续费):二级市场--->银行
|
|
|
*/
|
|
|
public static String MKT006(PaymentTwoDto paymentTwoDto) {
|
|
|
+ paymentTwoDto.setFieldCode("861501");
|
|
|
+ paymentTwoDto.setDeclTime("2024-01-17 10:11:55 876");
|
|
|
+ paymentTwoDto.setCurrCode("RMB");
|
|
|
String date = sdf.format(new Date());
|
|
|
String chargesXml = chargesXml(paymentTwoDto.getCompanyDtoList(), paymentTwoDto.getOrderNo());
|
|
|
String payload=
|
|
@@ -564,11 +583,11 @@ public class MessageXML {
|
|
|
" currency=\"" + paymentTwoDto.getCurrCode() + "\"" + //币种
|
|
|
" type=\"001\"" + //业务类型 001 代表扣款订单
|
|
|
" total=\"" + paymentTwoDto.getResalePrice() + "\"" + //订单总金额 8150.00 【买方总支付金额】(转售金额)
|
|
|
- " actualTotal=\"" + paymentTwoDto.getTotalPrice() + "\"" + //扣除手续费边民实际到账金额 actualTotal忽略
|
|
|
+ " actualTotal=\"7490.05\"" + //扣除手续费边民实际到账金额 actualTotal忽略
|
|
|
" dateTime=\"" + paymentTwoDto.getDeclTime() + "\"" + //订单时间 YYYY-MM—DD HH:MM:DD SSS
|
|
|
">" +
|
|
|
|
|
|
- "<vendee" +//买方基本信息(采购企业)
|
|
|
+ /*"<vendee" +//买方基本信息(采购企业)
|
|
|
" name=\"" + paymentTwoDto.getPcName() + "\"" + //企业名称
|
|
|
" papersType=\"0008\"" + //证件类型 0008 社会统一信用代码(默认)
|
|
|
" papersNo=\"" + paymentTwoDto.getBusinessLicense() + "\"" + //证件号
|
|
@@ -576,6 +595,15 @@ public class MessageXML {
|
|
|
" accountNo=\"" + paymentTwoDto.getPcBankAccount() + "\"" + //银行账号
|
|
|
" bankCode=\"MRCCCNB1\"" + //开户行代码
|
|
|
" tel=\"" + paymentTwoDto.getPcContact() + "\"" + //联系电话
|
|
|
+ "/>\n" +*/
|
|
|
+ "<vendee" +//买方基本信息(采购企业)
|
|
|
+ " name=\"云南跨境贸易公司\"" + //企业名称
|
|
|
+ " papersType=\"0008\"" + //证件类型 0008 社会统一信用代码(默认)
|
|
|
+ " papersNo=\"12312312-3\"" + //证件号
|
|
|
+ " nationality=\"0001\"" + //国籍
|
|
|
+ " accountNo=\"0100028613124012\"" + //银行账号
|
|
|
+ " bankCode=\"MRCCCNB1\"" + //开户行代码
|
|
|
+ " tel=\"15195882701\"" + //联系电话
|
|
|
"/>\n" +
|
|
|
|
|
|
"<vendor" +//卖方基础信息(边民)
|
|
@@ -613,6 +641,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------MKT006(有计费)--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -632,7 +661,8 @@ public class MessageXML {
|
|
|
" dateTime=\"" + paymentTwoDto.getDeclTime() + "\"" + //订单时间 YYYY-MM—DD HH:MM:DD SSS
|
|
|
">" +
|
|
|
|
|
|
- "<vendee" +//买方基本信息(采购企业)
|
|
|
+
|
|
|
+ /*"<vendee" +//买方基本信息(采购企业)
|
|
|
" name=\"" + paymentTwoDto.getPcName() + "\"" + //企业名称
|
|
|
" papersType=\"0008\"" + //证件类型 0008 社会统一信用代码(默认)
|
|
|
" papersNo=\"" + paymentTwoDto.getBusinessLicense() + "\"" + //证件号
|
|
@@ -650,6 +680,26 @@ public class MessageXML {
|
|
|
" accountNo=\"" + paymentTwoDto.getBankCode() + "\"" + //银行账号
|
|
|
" bankCode=\"MRCCCNB1\"" + //开户行代码
|
|
|
" tel=\"" + paymentTwoDto.getBorderTel() + "\"" + //联系电话
|
|
|
+ "/>\n" +*/
|
|
|
+
|
|
|
+ "<vendee" +//买方基本信息(采购企业)
|
|
|
+ " name=\"云南跨境贸易公司\"" + //企业名称
|
|
|
+ " papersType=\"0008\"" + //证件类型 0008 社会统一信用代码(默认)
|
|
|
+ " papersNo=\"12312312-3\"" + //证件号
|
|
|
+ " nationality=\"0001\"" + //国籍
|
|
|
+ " accountNo=\"0100028613124012\"" + //银行账号
|
|
|
+ " bankCode=\"MRCCCNB1\"" + //开户行代码
|
|
|
+ " tel=\"15195882701\"" + //联系电话
|
|
|
+ "/>\n" +
|
|
|
+
|
|
|
+ "<vendor" +//卖方基础信息(边民)
|
|
|
+ " name=\"" + paymentTwoDto.getBorderName() + "\"" + //边民姓名
|
|
|
+ " papersType=\"0001\"" + //证件类型 0001 身份证
|
|
|
+ " papersNo=\"" + paymentTwoDto.getBorderidno() + "\"" + //边民证件号
|
|
|
+ " nationality=\"0001\"" + //国籍
|
|
|
+ " accountNo=\"" + paymentTwoDto.getBankCode() + "\"" + //银行账号
|
|
|
+ " bankCode=\"MRCCCNB1\"" + //开户行代码
|
|
|
+ " tel=\"" + paymentTwoDto.getBorderTel() + "\"" + //联系电话
|
|
|
"/>\n" +
|
|
|
|
|
|
"<items" +//商品明细
|
|
@@ -662,6 +712,7 @@ public class MessageXML {
|
|
|
" amount=\"" + paymentTwoDto.getTotalPrice() + "\"" + //金额
|
|
|
"/>\n" +
|
|
|
"</payload>";
|
|
|
+
|
|
|
String xml =
|
|
|
"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n" +
|
|
|
"<message xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"\">\n" +
|
|
@@ -676,6 +727,7 @@ public class MessageXML {
|
|
|
CryptoUtil.encrypt(payload)+
|
|
|
"</plain>" +
|
|
|
"</message>";
|
|
|
+ StaticLog.info("\n --------发送报文--------MKT007--------" + "\n payload=" + payload +"\n xml=" + xml);
|
|
|
return xml;
|
|
|
}
|
|
|
|
|
@@ -683,6 +735,10 @@ public class MessageXML {
|
|
|
private static String chargesXml(List<CompanyDto> companyDtoList, String orderNo) {
|
|
|
String xml = "";
|
|
|
for (CompanyDto companyDto : companyDtoList) {
|
|
|
+ companyDto.setName("云南跨境贸易公司");
|
|
|
+ companyDto.setUsci("12312312-3");
|
|
|
+ companyDto.setBankAccount("0100028613124012");
|
|
|
+ companyDto.setContact("15195882701");
|
|
|
xml += "<charges" +//父级手续费(无子级手续费)
|
|
|
" type=\"OPERATING\"" + //手续费类型 数据字典:ChargeType
|
|
|
" sn=\"" + orderNo + "\"" + //订单号
|