浏览代码

新增微信子订单号sub_order_id字段

hyq 6 年之前
父节点
当前提交
28e49abc7b

+ 2 - 1
src/main/java/com/emato/cuspay/biz/merch/MerchantNoticeBiz.java

@@ -119,9 +119,10 @@ public class MerchantNoticeBiz implements CuspayBiz{
         request.put("msg",noti.getMsg());
         request.put("cusDeclStatus", noti.getCusDeclStatus());
         request.put("thirdPartyMerchCode",noti.getThirdPartyMerchCode());
-        request.put("thirdPartyMerchName()",noti.getThirdPartyMerchName());
+        request.put("thirdPartyMerchName",noti.getThirdPartyMerchName());
         request.put("platNo", noti.getPlatSn());
         request.put("platName", noti.getPlatName());
+        request.put("merchOrderSn",noti.getAllSubOrderId());
 
         ResponseMessage responseMessage = new ResponseMessage.Builder()
                 .setCode(ResponseStatus.SUCCESS.getItem())

+ 4 - 2
src/main/java/com/emato/cuspay/biz/wx/WxCusDeclareBiz.java

@@ -178,10 +178,12 @@ public class WxCusDeclareBiz extends AbstractCusDeclareBiz implements CuspayBiz
                 wxCbPayDoc.setResultCode(wxResponseMsgDto.getResultCode());
                 wxCbPayDoc.setReturnCode(wxResponseMsgDto.getReturnCode());
                 wxCbPayDoc.setReturnMsg(wxResponseMsgDto.getReturnMsg());
-
                 //返回这状态码为成功 业务结果成功
                 if (WxContants.SUCCESS.equals(wxResponseMsgDto.getReturnCode())) {
                     if (WxContants.SUCCESS.equals(wxResponseMsgDto.getResultCode())) {
+                        wxCbPayDoc.setSubOrderNo(wxResponseMsgDto.getSubOrderNo());
+                        wxCbPayDoc.setSubOrderId(wxResponseMsgDto.getSubOrderId());
+
                         //订购人与支付人校验结果
                         if (!StringUtils.isEmpty(wxResponseMsgDto.getCertCheckResult())) {
                             if ("UNCHECKED".equals(wxResponseMsgDto.getCertCheckResult())) { //未知
@@ -350,7 +352,7 @@ public class WxCusDeclareBiz extends AbstractCusDeclareBiz implements CuspayBiz
             sorted.put("action_type", wxCbPayDoc.getActionType());
         }
         if (wxCbPayDoc.getSubOrderNo() != null && !wxCbPayDoc.getSubOrderNo().isEmpty()) {
-            sorted.put("sub_order_no", wxCbPayDoc.getActionType());
+            sorted.put("sub_order_no", wxCbPayDoc.getSubOrderNo());
         }
         if (wxCbPayDoc.getFeeType() != null && !wxCbPayDoc.getFeeType().isEmpty()) {
             sorted.put("fee_type", wxCbPayDoc.getFeeType());

+ 1 - 0
src/main/java/com/emato/cuspay/biz/wx/WxCusDeclareQueryBiz.java

@@ -184,6 +184,7 @@ public class WxCusDeclareQueryBiz extends AbstractCusDeclareBiz implements Cuspa
                             //解析xml获取WxQuerySuccessResponseMsgDto
                             querySuccessResponseDto = ReaderXmlForDOM4J.parse(result, i);
                             wxCbPayDoc.setSubOrderNo(querySuccessResponseDto.getSubOrderNo());
+                            wxCbPayDoc.setSubOrderId(querySuccessResponseDto.getSubOrderId());
                             wxCbPayDoc.setMchCustomsNo(querySuccessResponseDto.getMchCustomsNo());
                             wxCbPayDoc.setCustoms(querySuccessResponseDto.getCustoms());
                             wxCbPayDoc.setFeeType(querySuccessResponseDto.getFeeType());

+ 10 - 0
src/main/java/com/emato/cuspay/entity/merch/MerchNoti.java

@@ -61,12 +61,22 @@ public class MerchNoti implements Serializable {
 
     private String merchErpOrderSn;
 
+    private String allSubOrderId;
+
     private static final long serialVersionUID = 1L;
 
     public MerchNoti() {
         super();
     }
 
+    public String getAllSubOrderId() {
+        return allSubOrderId;
+    }
+
+    public void setAllSubOrderId(String allSubOrderId) {
+        this.allSubOrderId = allSubOrderId;
+    }
+
     public String getNotiSn() {
         return notiSn;
     }

+ 1 - 0
src/main/java/com/emato/cuspay/wx/common/MerchNotiBuilder.java

@@ -45,6 +45,7 @@ public class MerchNotiBuilder {
         this.merchNoti.setAllOrderNo(wxCbPay.getOutTradeNo());
         this.merchNoti.setAllPayNo(wxCbPay.getTransactionId());
         this.merchNoti.setAllSubOrderNo(wxCbPay.getSubOrderNo());
+        this.merchNoti.setAllSubOrderId(wxCbPay.getSubOrderId());
         this.merchNoti.setCreaterSn("1");
         this.merchNoti.setCreateTime(sdf.format(new Date()));
         return this;

+ 10 - 0
src/main/java/com/emato/cuspay/wx/entity/WxCbPayDoc.java

@@ -88,12 +88,22 @@ public class WxCbPayDoc implements Serializable {
 
     private String buyerPayerCheck;
 
+    private String subOrderId;
+
     private static final long serialVersionUID = 1L;
 
     public WxCbPayDoc() {
         super();
     }
 
+    public String getSubOrderId() {
+        return subOrderId;
+    }
+
+    public void setSubOrderId(String subOrderId) {
+        this.subOrderId = subOrderId;
+    }
+
     public String getBuyerPayerCheck() {
         return buyerPayerCheck;
     }

+ 16 - 1
src/main/resources/mybatis/mapper/MerchNotiMapper.xml

@@ -15,6 +15,7 @@
     <result column="all_order_no" property="allOrderNo" jdbcType="VARCHAR" />
     <result column="all_pay_no" property="allPayNo" jdbcType="VARCHAR" />
     <result column="all_sub_order_no" property="allSubOrderNo" jdbcType="VARCHAR" />
+    <result column="all_sub_order_id" property="allSubOrderId" jdbcType="VARCHAR" />
     <result column="pay_chnl_flag" property="payChnlFlag" jdbcType="VARCHAR" />
     <result column="buyer_payer_check" property="buyerPayerCheck" jdbcType="CHAR" />
     <result column="noti_count" property="notiCount" jdbcType="INTEGER" />
@@ -34,7 +35,7 @@
   <sql id="Base_Column_List" >
     noti_sn, all_pay_sn, merch_sn, merch_name, merch_erp_order_sn, plat_sn, plat_name,
     third_party_merch_code, third_party_merch_name, all_merch_id, all_order_no, all_pay_no,
-    all_sub_order_no, pay_chnl_flag, buyer_payer_check, noti_count, is_stoped, cus_decl_status,
+    all_sub_order_no, all_sub_order_id, pay_chnl_flag, buyer_payer_check, noti_count, is_stoped, cus_decl_status,
     noti_statue, code, msg, notify_url, remark, creater_sn, create_time, moder_sn, mod_time,
     tstm
   </sql>
@@ -98,6 +99,9 @@
       <if test="allSubOrderNo != null" >
         all_sub_order_no,
       </if>
+      <if test="allSubOrderId != null" >
+        all_sub_order_id,
+      </if>
       <if test="payChnlFlag != null" >
         pay_chnl_flag,
       </if>
@@ -184,6 +188,9 @@
       <if test="allSubOrderNo != null" >
         #{allSubOrderNo,jdbcType=VARCHAR},
       </if>
+      <if test="allSubOrderId != null" >
+        #{allSubOrderId,jdbcType=VARCHAR},
+      </if>
       <if test="payChnlFlag != null" >
         #{payChnlFlag,jdbcType=VARCHAR},
       </if>
@@ -270,6 +277,9 @@
       <if test="allSubOrderNo != null" >
         all_sub_order_no = #{allSubOrderNo,jdbcType=VARCHAR},
       </if>
+      <if test="allSubOrderId != null" >
+        all_sub_order_id = #{allSubOrderId,jdbcType=VARCHAR},
+      </if>
       <if test="payChnlFlag != null" >
         pay_chnl_flag = #{payChnlFlag,jdbcType=VARCHAR},
       </if>
@@ -341,6 +351,7 @@
         all_order_no,
         all_pay_no,
         all_sub_order_no,
+        all_sub_order_id,
         pay_chnl_flag,
         buyer_payer_check,
         noti_count,
@@ -372,6 +383,7 @@
           #{item.allOrderNo,jdbcType=VARCHAR},
           #{item.allPayNo,jdbcType=VARCHAR},
           #{item.allSubOrderNo,jdbcType=VARCHAR},
+          #{item.allSubOrderId,jdbcType=VARCHAR},
           #{item.payChnlFlag,jdbcType=VARCHAR},
           #{item.buyerPayerCheck,jdbcType=CHAR},
           #{item.notiCount,jdbcType=INTEGER},
@@ -429,6 +441,9 @@
         <if test="item.allSubOrderNo != null" >
           all_sub_order_no = #{item.allSubOrderNo,jdbcType=VARCHAR},
         </if>
+        <if test="item.allSubOrderId != null" >
+          all_sub_order_id = #{item.allSubOrderId,jdbcType=VARCHAR},
+        </if>
         <if test="item.payChnlFlag != null" >
           pay_chnl_flag = #{item.payChnlFlag,jdbcType=VARCHAR},
         </if>

+ 16 - 1
src/main/resources/mybatis/mapper/wx/WxCbPayDocMapper.xml

@@ -12,6 +12,7 @@
     <result column="appid" property="appid" jdbcType="VARCHAR" />
     <result column="mch_id" property="mchId" jdbcType="VARCHAR" />
     <result column="out_trade_no" property="outTradeNo" jdbcType="VARCHAR" />
+    <result column="sub_order_id" property="subOrderId" jdbcType="VARCHAR" />
     <result column="transaction_id" property="transactionId" jdbcType="VARCHAR" />
     <result column="customs" property="customs" jdbcType="VARCHAR" />
     <result column="mch_customs_no" property="mchCustomsNo" jdbcType="VARCHAR" />
@@ -47,7 +48,7 @@
   </resultMap>
   <sql id="Base_Column_List" >
     wx_pay_sn, merch_sn, merch_name, merch_erp_order_sn, plat_sn, plat_name, third_party_merch_code, third_party_merch_name,
-    appid, mch_id, out_trade_no, transaction_id, customs, mch_customs_no, duty, action_type,
+    appid, mch_id, out_trade_no, sub_order_id, transaction_id, customs, mch_customs_no, duty, action_type,
     sub_order_no, fee_type, order_fee, transport_fee, product_fee, cert_type, cert_id, 
     name, doc_status, remark, return_code, return_msg, result_code, err_code, err_code_des,
     creater_sn, create_time, moder_sn, mod_time, tstm, ex_field, ex_field2, ex_field3, 
@@ -104,6 +105,9 @@
       <if test="outTradeNo != null" >
         out_trade_no,
       </if>
+      <if test="subOrderId != null" >
+        sub_order_id,
+      </if>
       <if test="transactionId != null" >
         transaction_id,
       </if>
@@ -229,6 +233,9 @@
       <if test="outTradeNo != null" >
         #{outTradeNo,jdbcType=VARCHAR},
       </if>
+      <if test="subOrderId != null" >
+        #{subOrderId,jdbcType=VARCHAR},
+      </if>
       <if test="transactionId != null" >
         #{transactionId,jdbcType=VARCHAR},
       </if>
@@ -358,6 +365,9 @@
       <if test="outTradeNo != null" >
         out_trade_no = #{outTradeNo,jdbcType=VARCHAR},
       </if>
+      <if test="subOrderId != null" >
+        sub_order_id = #{subOrderId,jdbcType=VARCHAR},
+      </if>
       <if test="transactionId != null" >
         transaction_id = #{transactionId,jdbcType=VARCHAR},
       </if>
@@ -475,6 +485,7 @@
       appid,
       mch_id,
       out_trade_no,
+      sub_order_id,
       transaction_id,
       customs,
       mch_customs_no,
@@ -519,6 +530,7 @@
           #{appid,jdbcType=VARCHAR},
           #{mchId,jdbcType=VARCHAR},
           #{outTradeNo,jdbcType=VARCHAR},
+          #{subOrderId,jdbcType=VARCHAR},
           #{transactionId,jdbcType=VARCHAR},
           #{customs,jdbcType=VARCHAR},
           #{mchCustomsNo,jdbcType=VARCHAR},
@@ -589,6 +601,9 @@
         <if test="item.outTradeNo != null" >
           out_trade_no = #{item.outTradeNo,jdbcType=VARCHAR},
         </if>
+        <if test="item.subOrderId != null" >
+          sub_order_id = #{item.subOrderId,jdbcType=VARCHAR},
+        </if>
         <if test="item.transactionId != null" >
           transaction_id = #{item.transactionId,jdbcType=VARCHAR},
         </if>