瀏覽代碼

京东退货 物流签收 未创建待质检问题处理

yzc 1 年之前
父節點
當前提交
d95621e43c

+ 19 - 19
hx-admin/src/main/resources/application-test.yml

@@ -6,80 +6,80 @@ spring:
             primary: base
             primary: base
             datasource:
             datasource:
                 victoriatourist:
                 victoriatourist:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_victoriatourist?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_victoriatourist?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 common:
                 common:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_common?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_common?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 oa:
                 oa:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_oa?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_oa?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 mes:
                 mes:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_mes?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_mes?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 wms:
                 wms:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_wms?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_wms?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 item:
                 item:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_item?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_item?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 supply:
                 supply:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_supply?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_supply?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 base:
                 base:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_base?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_base?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 iot:
                 iot:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_iot?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_iot?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 customer:
                 customer:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_customer?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_customer?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 purchase:
                 purchase:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_purchase?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_purchase?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 account:
                 account:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_account?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_account?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 sale:
                 sale:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_sale?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_sale?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 mail:
                 mail:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_mail?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_mail?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 kd100:
                 kd100:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_kd100?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_kd100?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 ehsd:
                 ehsd:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_ehsd?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_ehsd?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
                 jxst:
                 jxst:
-                    url: jdbc:mysql://36.134.91.96:12333/bytesailing_jxst?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
+                    url: jdbc:mysql://121.37.194.75:30102/bytesailing_jxst?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=Asia/Shanghai
                     username: root
                     username: root
                     password: 5fWD*oa^nso@kmKa
                     password: 5fWD*oa^nso@kmKa
 
 
     # redis 配置
     # redis 配置
     redis:
     redis:
         # 地址
         # 地址
-        host: 36.134.91.96
+        host: 121.37.194.75
         # 端口,默认为6379
         # 端口,默认为6379
-        port: 13444
+        port: 30103
         # 数据库索引
         # 数据库索引
         database: 5
         database: 5
         # 密码
         # 密码

+ 6 - 1
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/jd/JdBackService.java

@@ -1,12 +1,12 @@
 package com.fjhx.victoriatourist.service.jd;
 package com.fjhx.victoriatourist.service.jd;
 
 
-import com.baomidou.dynamic.datasource.annotation.DSTransactional;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.victoriatourist.entity.jd.dto.JdBackDto;
 import com.fjhx.victoriatourist.entity.jd.dto.JdBackDto;
 import com.fjhx.victoriatourist.entity.jd.dto.JdBackSelectDto;
 import com.fjhx.victoriatourist.entity.jd.dto.JdBackSelectDto;
 import com.fjhx.victoriatourist.entity.jd.po.JdBack;
 import com.fjhx.victoriatourist.entity.jd.po.JdBack;
 import com.fjhx.victoriatourist.entity.jd.po.JdBackDetails;
 import com.fjhx.victoriatourist.entity.jd.po.JdBackDetails;
 import com.fjhx.victoriatourist.entity.jd.vo.JdBackVo;
 import com.fjhx.victoriatourist.entity.jd.vo.JdBackVo;
+import com.fjhx.victoriatourist.entity.logistics.po.LogisticsInfos;
 import com.ruoyi.common.core.service.BaseService;
 import com.ruoyi.common.core.service.BaseService;
 import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartFile;
 
 
@@ -57,4 +57,9 @@ public interface JdBackService extends BaseService<JdBack> {
      * 京东退货EXCEl导入
      * 京东退货EXCEl导入
      */
      */
     void excelImport(MultipartFile file, Long warehouseId);
     void excelImport(MultipartFile file, Long warehouseId);
+
+    /**
+     * 如果物流状态完成,更新京东退货状态,添加待质检数据
+     */
+    void updateJdBack(LogisticsInfos logisticsInfo);
 }
 }

+ 45 - 2
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/jd/impl/JdBackServiceImpl.java

@@ -5,14 +5,17 @@ import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.dynamic.datasource.annotation.DSTransactional;
 import com.baomidou.dynamic.datasource.annotation.DSTransactional;
+import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.common.constant.SourceConstant;
 import com.fjhx.item.entity.product.po.ProductInfo;
 import com.fjhx.item.entity.product.po.ProductInfo;
 import com.fjhx.item.service.product.ProductInfoService;
 import com.fjhx.item.service.product.ProductInfoService;
 import com.fjhx.item.util.excel.util.ExcelUtil;
 import com.fjhx.item.util.excel.util.ExcelUtil;
 import com.fjhx.kd100.entity.company.po.CompanyInfo;
 import com.fjhx.kd100.entity.company.po.CompanyInfo;
 import com.fjhx.kd100.service.company.CompanyInfoService;
 import com.fjhx.kd100.service.company.CompanyInfoService;
+import com.fjhx.kd100.util.KD100Util;
 import com.fjhx.victoriatourist.entity.jd.dto.JdBackDto;
 import com.fjhx.victoriatourist.entity.jd.dto.JdBackDto;
 import com.fjhx.victoriatourist.entity.jd.dto.JdBackSelectDto;
 import com.fjhx.victoriatourist.entity.jd.dto.JdBackSelectDto;
 import com.fjhx.victoriatourist.entity.jd.po.JdBack;
 import com.fjhx.victoriatourist.entity.jd.po.JdBack;
@@ -140,8 +143,17 @@ public class JdBackServiceImpl extends ServiceImpl<JdBackMapper, JdBack> impleme
             }
             }
             jdBackDetailsService.saveBatch(jdBackDetailsList);
             jdBackDetailsService.saveBatch(jdBackDetailsList);
         }
         }
-        //创建待质检记录
-//        createJdBackQualityWait(jdBackDetailsList);
+        //发起快递100订阅
+        DynamicDataSourceContextHolder.push(SourceConstant.KD100);
+        Integer state = KD100Util.monitor(jdBackDto.getLogisticsCompanyCode(), jdBackDto.getLogisticsCode(), jdBackDto.getId(), 4, LogisticsInfos.class).getState();
+        DynamicDataSourceContextHolder.poll();
+        logisticsInfos.setLogisticsStatus(state);
+        logisticsInfosService.updateById(logisticsInfos);
+
+        /**
+         * 如果物流状态完成,更新京东退货状态,添加待质检数据
+         */
+        updateJdBack(logisticsInfos);
     }
     }
 
 
     /**
     /**
@@ -335,4 +347,35 @@ public class JdBackServiceImpl extends ServiceImpl<JdBackMapper, JdBack> impleme
         jdBackDetailsService.saveBatch(jdBackDetailsList);
         jdBackDetailsService.saveBatch(jdBackDetailsList);
     }
     }
 
 
+    /**
+     * 如果物流状态完成,更新京东退货状态,添加待质检数据
+     */
+    @Override
+    @DSTransactional
+    public void updateJdBack(LogisticsInfos logisticsInfo) {
+        if (ObjectUtil.isEmpty(logisticsInfo) || ObjectUtil.isEmpty(logisticsInfo.getLogisticsStatus())) {
+            return;
+        }
+        //京东退货状态修改添加待质检数据
+        JdBack jdBack = this.getById(logisticsInfo.getBusinessId());
+        if (ObjectUtil.isNotEmpty(jdBack)) {
+            //如果京东退货订单状态已经是待质检 直接退出不再生成数据
+            if (jdBack.getStatus() == 3) {
+                return;
+            }
+            //如果物流信息是签收 业务类型是 京东退货
+            if (logisticsInfo.getLogisticsStatus() == 3 && logisticsInfo.getBusinessType() == 4) {
+                jdBack.setStatus(3);//待质检
+                //创建待质检记录
+                List<JdBackDetails> jdBackDetailsList = jdBackDetailsService.list(q -> q.eq(JdBackDetails::getJdBackId, logisticsInfo.getBusinessId()));
+                this.createJdBackQualityWait(jdBackDetailsList);
+            } else {
+                if (logisticsInfo.getLogisticsStatus() != -1) {
+                    jdBack.setStatus(2);//运输中
+                }
+            }
+            this.updateById(jdBack);
+        }
+    }
+
 }
 }

+ 3 - 23
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/logistics/impl/LogisticsInfosServiceImpl.java

@@ -18,8 +18,6 @@ import com.fjhx.kd100.util.KD100Result;
 import com.fjhx.kd100.util.KD100Util;
 import com.fjhx.kd100.util.KD100Util;
 import com.fjhx.purchase.entity.purchase.po.Purchase;
 import com.fjhx.purchase.entity.purchase.po.Purchase;
 import com.fjhx.purchase.service.purchase.PurchaseService;
 import com.fjhx.purchase.service.purchase.PurchaseService;
-import com.fjhx.victoriatourist.entity.jd.po.JdBack;
-import com.fjhx.victoriatourist.entity.jd.po.JdBackDetails;
 import com.fjhx.victoriatourist.entity.logistics.dto.LogisticsInfosDto;
 import com.fjhx.victoriatourist.entity.logistics.dto.LogisticsInfosDto;
 import com.fjhx.victoriatourist.entity.logistics.dto.LogisticsInfosSelectDto;
 import com.fjhx.victoriatourist.entity.logistics.dto.LogisticsInfosSelectDto;
 import com.fjhx.victoriatourist.entity.logistics.po.LogisticsDetails;
 import com.fjhx.victoriatourist.entity.logistics.po.LogisticsDetails;
@@ -157,7 +155,7 @@ public class LogisticsInfosServiceImpl extends ServiceImpl<LogisticsInfosMapper,
                 byId.setLogisticsStatus(logisticsInfo.getState());
                 byId.setLogisticsStatus(logisticsInfo.getState());
                 updateById(byId);
                 updateById(byId);
                 //如果是京东退货且物流状态为完成
                 //如果是京东退货且物流状态为完成
-                updateJdBack(byId);
+                jdBackService.updateJdBack(byId);
             }
             }
         }
         }
     }
     }
@@ -190,7 +188,7 @@ public class LogisticsInfosServiceImpl extends ServiceImpl<LogisticsInfosMapper,
             logisticsInfo.setLogisticsStatus(state);
             logisticsInfo.setLogisticsStatus(state);
             updateById(logisticsInfo);
             updateById(logisticsInfo);
             //如果是京东退货且物流状态为完成
             //如果是京东退货且物流状态为完成
-            updateJdBack(logisticsInfo);
+            jdBackService.updateJdBack(logisticsInfo);
         }
         }
     }
     }
 
 
@@ -216,24 +214,6 @@ public class LogisticsInfosServiceImpl extends ServiceImpl<LogisticsInfosMapper,
         updateById(logisticsInfo);
         updateById(logisticsInfo);
     }
     }
 
 
-    /**
-     * 如果物流状态完成,更新京东退货状态,添加待质检数据
-     */
-    public void updateJdBack(LogisticsInfos logisticsInfo) {
-        if (ObjectUtil.isEmpty(logisticsInfo) || ObjectUtil.isEmpty(logisticsInfo.getLogisticsStatus())) {
-            return;
-        }
-        if (logisticsInfo.getLogisticsStatus() == 15 && logisticsInfo.getBusinessType() == 4) {
-            //京东退货状态修改添加待质检数据
-            JdBack jdBack = jdBackService.getById(logisticsInfo.getBusinessId());
-            if (ObjectUtil.isNotEmpty(jdBack)) {
-                jdBack.setStatus(3);//待质检
-                jdBackService.updateById(jdBack);
-                //创建待质检记录
-                List<JdBackDetails> jdBackDetailsList = jdBackDetailsService.list(q -> q.eq(JdBackDetails::getJdBackId, logisticsInfo.getBusinessId()));
-                jdBackService.createJdBackQualityWait(jdBackDetailsList);
-            }
-        }
-    }
+
 
 
 }
 }