소스 검색

修改获取平台信息数据

hyq 6 년 전
부모
커밋
342b8224b0

+ 172 - 0
src/main/java/com/emato/ccnet/wx/dao/entity/oms/MerchantPlatform.java

@@ -0,0 +1,172 @@
+package com.emato.ccnet.wx.dao.entity.oms;
+
+import java.io.Serializable;
+import java.util.Date;
+
+public class MerchantPlatform  implements Serializable {
+    private String platSn;
+
+    private String merchSn;
+
+    private String platName;
+
+    private String platEname;
+
+    private String platCusCode;
+
+    private String platCusName;
+
+    private String platUrl;
+
+    private String platContacter;
+
+    private String platCntTel;
+
+    private String platCntMob;
+
+    private String isValid;
+
+    private String createrSn;
+
+    private Date createTime;
+
+    private String moderSn;
+
+    private Date modTime;
+
+    private Date tstm;
+
+    private static final long serialVersionUID = 1L;
+
+    public MerchantPlatform() {
+        super();
+    }
+
+    public String getPlatSn() {
+        return platSn;
+    }
+
+    public void setPlatSn(String platSn) {
+        this.platSn = platSn == null ? null : platSn.trim();
+    }
+
+    public String getMerchSn() {
+        return merchSn;
+    }
+
+    public void setMerchSn(String merchSn) {
+        this.merchSn = merchSn == null ? null : merchSn.trim();
+    }
+
+    public String getPlatName() {
+        return platName;
+    }
+
+    public void setPlatName(String platName) {
+        this.platName = platName == null ? null : platName.trim();
+    }
+
+    public String getPlatEname() {
+        return platEname;
+    }
+
+    public void setPlatEname(String platEname) {
+        this.platEname = platEname == null ? null : platEname.trim();
+    }
+
+    public String getPlatCusCode() {
+        return platCusCode;
+    }
+
+    public void setPlatCusCode(String platCusCode) {
+        this.platCusCode = platCusCode == null ? null : platCusCode.trim();
+    }
+
+    public String getPlatCusName() {
+        return platCusName;
+    }
+
+    public void setPlatCusName(String platCusName) {
+        this.platCusName = platCusName == null ? null : platCusName.trim();
+    }
+
+    public String getPlatUrl() {
+        return platUrl;
+    }
+
+    public void setPlatUrl(String platUrl) {
+        this.platUrl = platUrl == null ? null : platUrl.trim();
+    }
+
+    public String getPlatContacter() {
+        return platContacter;
+    }
+
+    public void setPlatContacter(String platContacter) {
+        this.platContacter = platContacter == null ? null : platContacter.trim();
+    }
+
+    public String getPlatCntTel() {
+        return platCntTel;
+    }
+
+    public void setPlatCntTel(String platCntTel) {
+        this.platCntTel = platCntTel == null ? null : platCntTel.trim();
+    }
+
+    public String getPlatCntMob() {
+        return platCntMob;
+    }
+
+    public void setPlatCntMob(String platCntMob) {
+        this.platCntMob = platCntMob == null ? null : platCntMob.trim();
+    }
+
+    public String getIsValid() {
+        return isValid;
+    }
+
+    public void setIsValid(String isValid) {
+        this.isValid = isValid == null ? null : isValid.trim();
+    }
+
+    public String getCreaterSn() {
+        return createrSn;
+    }
+
+    public void setCreaterSn(String createrSn) {
+        this.createrSn = createrSn == null ? null : createrSn.trim();
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getModerSn() {
+        return moderSn;
+    }
+
+    public void setModerSn(String moderSn) {
+        this.moderSn = moderSn == null ? null : moderSn.trim();
+    }
+
+    public Date getModTime() {
+        return modTime;
+    }
+
+    public void setModTime(Date modTime) {
+        this.modTime = modTime;
+    }
+
+    public Date getTstm() {
+        return tstm;
+    }
+
+    public void setTstm(Date tstm) {
+        this.tstm = tstm;
+    }
+}

+ 10 - 0
src/main/java/com/emato/ccnet/wx/dao/mapper/oms/MerchantPlatformMapper.java

@@ -0,0 +1,10 @@
+package com.emato.ccnet.wx.dao.mapper.oms;
+
+import com.emato.ccnet.wx.dao.entity.oms.MerchantPlatform;
+import com.emato.ccnet.wx.dao.entity.oms.MerchantSecret;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface MerchantPlatformMapper {
+    MerchantPlatform getPlatformByMerchSn(String merchSn);
+}

+ 7 - 0
src/main/java/com/emato/ccnet/wx/service/OmsMerchantPlatformService.java

@@ -0,0 +1,7 @@
+package com.emato.ccnet.wx.service;
+
+import com.emato.ccnet.wx.dao.entity.oms.MerchantPlatform;
+
+public interface OmsMerchantPlatformService {
+    MerchantPlatform getPlatformByMerchSn(String merchSn);
+}

+ 15 - 6
src/main/java/com/emato/ccnet/wx/service/impl/CusOrderServiceImpl.java

@@ -4,12 +4,13 @@ import com.emato.ccnet.wx.config.Cus;
 import com.emato.ccnet.wx.config.Merchant;
 import com.emato.ccnet.wx.contants.Contants;
 import com.emato.ccnet.wx.dao.entity.ccnet.*;
+import com.emato.ccnet.wx.dao.entity.oms.MerchantPlatform;
 import com.emato.ccnet.wx.dao.mapper.ccnet.CusOrderGoodsMapper;
 import com.emato.ccnet.wx.dao.mapper.ccnet.CusOrderMapper;
 import com.emato.ccnet.wx.dao.mapper.ccnet.CusOrderStatusMapper;
-import com.emato.ccnet.wx.dto.ccnetdto.OrderBill;
 import com.emato.ccnet.wx.manager.snow.SnowflakeUtil;
 import com.emato.ccnet.wx.service.CusOrderService;
+import com.emato.ccnet.wx.service.OmsMerchantPlatformService;
 import com.emato.ccnet.wx.service.WxOrderGoodsService;
 import com.emato.ccnet.wx.util.DateUtil;
 import org.slf4j.Logger;
@@ -19,7 +20,6 @@ import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
 import java.util.*;
-import java.util.stream.Collectors;
 
 @Service("cusOrderService")
 public class CusOrderServiceImpl implements CusOrderService {
@@ -36,6 +36,9 @@ public class CusOrderServiceImpl implements CusOrderService {
     @Autowired
     private Cus cus;
 
+    @Autowired
+    private OmsMerchantPlatformService omsMerchantPlatformService;
+
     private static final Logger logger = LoggerFactory.getLogger(CusOrderServiceImpl.class);
 
     @Override
@@ -296,10 +299,16 @@ public class CusOrderServiceImpl implements CusOrderService {
             cusOrder.setOrderType(Contants.ORDER_TYPE);
             cusOrder.setCurrency(Contants.CURRENCY);
 
-            cusOrder.setEbpCode(merchant.getMerchantCustomsCode());//电商平台代码
-            cusOrder.setEbpName(merchant.getMerchantCustomsName());//电商平台企业名称
-            cusOrder.setEbcCode(merchant.getMerchantCustomsCode());//电商商户代码
-            cusOrder.setEbcName(merchant.getMerchantCustomsName());//电商商户名称
+            MerchantPlatform merchantPlatform = omsMerchantPlatformService.getPlatformByMerchSn(wxOrder.getMerchSn());
+            if(merchantPlatform == null){
+                logger.error("初始化电子订单表记录失败: 商户平台信息为空!");
+                return null;
+            }
+
+            cusOrder.setEbpCode(merchantPlatform.getPlatCusCode());//电商平台代码
+            cusOrder.setEbpName(merchantPlatform.getPlatCusName());//电商平台企业名称
+            cusOrder.setEbcCode(merchantPlatform.getPlatCusCode());//电商商户代码
+            cusOrder.setEbcName(merchantPlatform.getPlatCusName());//电商商户名称
 
             cusOrder.setGoodsValue(goodsValue);
             BigDecimal taxTotal = new BigDecimal(0);

+ 10 - 1
src/main/java/com/emato/ccnet/wx/service/impl/CusWaybillServiceImpl.java

@@ -5,10 +5,12 @@ import com.emato.ccnet.wx.config.Merchant;
 import com.emato.ccnet.wx.contants.CcnetContants;
 import com.emato.ccnet.wx.contants.Contants;
 import com.emato.ccnet.wx.dao.entity.ccnet.*;
+import com.emato.ccnet.wx.dao.entity.oms.MerchantPlatform;
 import com.emato.ccnet.wx.dao.mapper.ccnet.*;
 import com.emato.ccnet.wx.manager.redis.jedis.cluster.mgt.JedisClusterManager;
 import com.emato.ccnet.wx.manager.snow.SnowflakeUtil;
 import com.emato.ccnet.wx.service.CusWaybillService;
+import com.emato.ccnet.wx.service.OmsMerchantPlatformService;
 import com.emato.ccnet.wx.util.jackson.JacksonUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -33,6 +35,8 @@ public class CusWaybillServiceImpl implements CusWaybillService {
     private WxOrderMapper wxOrderMapper;
     @Autowired
     private WxOrderGoodsMapper wxOrderGoodsMapper;
+    @Autowired
+    private OmsMerchantPlatformService omsMerchantPlatformService;
 
     private static final Logger logger = LoggerFactory.getLogger(CusWaybillServiceImpl.class);
 
@@ -305,7 +309,12 @@ public class CusWaybillServiceImpl implements CusWaybillService {
                 cusWaybill.setConsigneeZipCode("888888");
             }
 
-            cusWaybill.setPayEntCusCode(merchant.getMerchantCustomsCode());
+            MerchantPlatform merchantPlatform = omsMerchantPlatformService.getPlatformByMerchSn(wxOrder.getMerchSn());
+            if(merchantPlatform == null){
+                logger.error("初始化电子订单表记录失败: 商户平台信息为空!");
+                return null;
+            }
+            cusWaybill.setPayEntCusCode(merchantPlatform.getPlatCusCode());
             cusWaybill.setPayNo(wxOrder.getPayNo());
             cusWaybill.setActuralPaid(wxOrder.getActuralPaid());
             cusWaybill.setPayTime(wxOrder.getPayTime());

+ 26 - 0
src/main/java/com/emato/ccnet/wx/service/impl/OmsMerchantPlatformServiceImpl.java

@@ -0,0 +1,26 @@
+package com.emato.ccnet.wx.service.impl;
+
+import com.emato.ccnet.wx.dao.entity.oms.MerchantPlatform;
+import com.emato.ccnet.wx.dao.entity.oms.MerchantSecret;
+import com.emato.ccnet.wx.dao.mapper.oms.MerchantPlatformMapper;
+import com.emato.ccnet.wx.dao.mapper.oms.MerchantSecretMapper;
+import com.emato.ccnet.wx.service.OmsMerchantPlatformService;
+import com.emato.ccnet.wx.service.OmsMerchantSecretService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service("omsMerchantPlatformService")
+public class OmsMerchantPlatformServiceImpl implements OmsMerchantPlatformService {
+    @Autowired
+    private MerchantPlatformMapper merchantPlatformMapper;
+
+    private static final Logger logger = LoggerFactory.getLogger(OmsMerchantPlatformServiceImpl.class);
+
+    @Override
+    public MerchantPlatform getPlatformByMerchSn(String merchSn) {
+        return this.merchantPlatformMapper.getPlatformByMerchSn(merchSn);
+    }
+
+}

+ 2 - 2
src/main/java/com/emato/ccnet/wx/service/impl/OmsMerchantSecretServiceImpl.java

@@ -16,8 +16,8 @@ public class OmsMerchantSecretServiceImpl implements OmsMerchantSecretService {
     private static final Logger logger = LoggerFactory.getLogger(OmsMerchantSecretServiceImpl.class);
 
     @Override
-    public MerchantSecret getSecretByMerchSn(String cusWaybillSn) {
-        return this.merchantSecretMapper.getSecretByMerchSn(cusWaybillSn);
+    public MerchantSecret getSecretByMerchSn(String merchSn) {
+        return this.merchantSecretMapper.getSecretByMerchSn(merchSn);
     }
 
 }

+ 11 - 1
src/main/java/com/emato/ccnet/wx/service/impl/WxOrderServiceImpl.java

@@ -5,10 +5,12 @@ import com.emato.ccnet.wx.config.Merchant;
 import com.emato.ccnet.wx.contants.CcnetContants;
 import com.emato.ccnet.wx.contants.Contants;
 import com.emato.ccnet.wx.dao.entity.ccnet.WxOrder;
+import com.emato.ccnet.wx.dao.entity.oms.MerchantPlatform;
 import com.emato.ccnet.wx.dao.entity.wx.WxOrderDate;
 import com.emato.ccnet.wx.dao.mapper.ccnet.WxOrderMapper;
 import com.emato.ccnet.wx.manager.redis.jedis.cluster.mgt.JedisClusterManager;
 import com.emato.ccnet.wx.manager.snow.SnowflakeUtil;
+import com.emato.ccnet.wx.service.OmsMerchantPlatformService;
 import com.emato.ccnet.wx.service.WxOrderService;
 import com.emato.ccnet.wx.util.jackson.JacksonUtil;
 import org.apache.commons.beanutils.BeanUtils;
@@ -31,6 +33,8 @@ public class WxOrderServiceImpl implements WxOrderService {
     private Merchant merchant;
     @Autowired
     private Cus cus;
+    @Autowired
+    private OmsMerchantPlatformService omsMerchantPlatformService;
 
     private static final Logger logger = LoggerFactory.getLogger(WxOrderServiceImpl.class);
 
@@ -173,7 +177,13 @@ public class WxOrderServiceImpl implements WxOrderService {
         wxOrder.setConsigneeZipCode("888888");
         wxOrder.setCurrencyCode(Contants.CURRENCY);
         wxOrder.setPayerIdType(Contants.ID_TYPE);
-        wxOrder.setPayEntCusCode(merchant.getMerchantCustomsCode());
+
+        MerchantPlatform merchantPlatform = omsMerchantPlatformService.getPlatformByMerchSn(wxOrder.getMerchSn());
+        if(merchantPlatform == null){
+            logger.error("初始化电子订单表记录失败: 商户平台信息为空!");
+            return null;
+        }
+        wxOrder.setPayEntCusCode(merchantPlatform.getPlatCusCode());
 
         BigDecimal freight = new BigDecimal(0);
         BigDecimal discount = new BigDecimal(0);

+ 12 - 1
src/main/java/com/emato/ccnet/wx/service/impl/WxPayDocServiceImpl.java

@@ -8,10 +8,12 @@ import com.emato.ccnet.wx.dao.entity.ccnet.WxCuspayStatus;
 import com.emato.ccnet.wx.dao.entity.ccnet.WxOrder;
 import com.emato.ccnet.wx.dao.entity.ccnet.WxOrderGoods;
 import com.emato.ccnet.wx.dao.entity.ccnet.WxPayDoc;
+import com.emato.ccnet.wx.dao.entity.oms.MerchantPlatform;
 import com.emato.ccnet.wx.dao.mapper.ccnet.WxCuspayStatusMapper;
 import com.emato.ccnet.wx.dao.mapper.ccnet.WxOrderGoodsMapper;
 import com.emato.ccnet.wx.dao.mapper.ccnet.WxPayDocMapper;
 import com.emato.ccnet.wx.manager.snow.SnowflakeUtil;
+import com.emato.ccnet.wx.service.OmsMerchantPlatformService;
 import com.emato.ccnet.wx.service.WxPayDocService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -40,6 +42,9 @@ public class WxPayDocServiceImpl implements WxPayDocService {
 
     @Autowired
     private Cus cus;
+
+    @Autowired
+    private OmsMerchantPlatformService omsMerchantPlatformService;
     private static final Logger logger = LoggerFactory.getLogger(WxPayDocServiceImpl.class);
 
     @Override
@@ -181,7 +186,13 @@ public class WxPayDocServiceImpl implements WxPayDocService {
         wxPayDoc.setOutTradeNo(wxOrder.getMerchOrderId());
         wxPayDoc.setTransactionId(wxOrder.getPayNo());
         wxPayDoc.setCustoms(wxMap.get("customs").toString());
-        wxPayDoc.setMchCustomsNo(merchant.getMerchantCustomsCode());
+
+        MerchantPlatform merchantPlatform = omsMerchantPlatformService.getPlatformByMerchSn(wxOrder.getMerchSn());
+        if(merchantPlatform == null){
+            logger.error("初始化电子订单表记录失败: 商户平台信息为空!");
+            return null;
+        }
+        wxPayDoc.setMchCustomsNo(merchantPlatform.getPlatCusCode());
         wxPayDoc.setDuty(duty.intValue());
         wxPayDoc.setActionType("ADD");
         wxPayDoc.setSubOrderNo(wxOrder.getOrderSn());

+ 30 - 0
src/main/resources/mybatis/mapper/oms/OmsMerchantPlatform.xml

@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="com.emato.ccnet.wx.dao.mapper.oms.MerchantPlatformMapper" >
+  <resultMap id="merchantPlatform" type="com.emato.ccnet.wx.dao.entity.oms.MerchantPlatform" >
+    <id column="plat_sn" property="platSn" jdbcType="VARCHAR" />
+    <result column="merch_sn" property="merchSn" jdbcType="VARCHAR" />
+    <result column="plat_name" property="platName" jdbcType="VARCHAR" />
+    <result column="plat_ename" property="platEname" jdbcType="VARCHAR" />
+    <result column="plat_cus_code" property="platCusCode" jdbcType="VARCHAR" />
+    <result column="plat_cus_name" property="platCusName" jdbcType="VARCHAR" />
+    <result column="plat_url" property="platUrl" jdbcType="VARCHAR" />
+    <result column="plat_contacter" property="platContacter" jdbcType="VARCHAR" />
+    <result column="plat_cnt_tel" property="platCntTel" jdbcType="VARCHAR" />
+    <result column="plat_cnt_mob" property="platCntMob" jdbcType="VARCHAR" />
+    <result column="is_valid" property="isValid" jdbcType="CHAR" />
+    <result column="creater_sn" property="createrSn" jdbcType="VARCHAR" />
+    <result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
+    <result column="moder_sn" property="moderSn" jdbcType="VARCHAR" />
+    <result column="mod_time" property="modTime" jdbcType="TIMESTAMP" />
+    <result column="tstm" property="tstm" jdbcType="TIMESTAMP" />
+  </resultMap>
+  <!-- 获取平台信息数据-->
+  <select id="getPlatformByMerchSn" parameterType="java.lang.String" resultMap="merchantPlatform">
+    SELECT * FROM merchant_platform mo
+    <where>
+      mo.merch_sn = #{merchSn}
+    </where>
+  </select>
+
+</mapper>