瀏覽代碼

补偿商品id为空

1018653686@qq.com 1 年之前
父節點
當前提交
ac2c37ac08

+ 2 - 0
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/jd/JdApiService.java

@@ -45,4 +45,6 @@ public interface JdApiService {
      * 初始化租户字典表
      */
     void initTenantDict();
+
+    void compensatingProductNon();
 }

+ 22 - 0
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/jd/impl/JdApiServiceImpl.java

@@ -291,6 +291,28 @@ public class JdApiServiceImpl implements JdApiService {
         System.out.println("字典初始化完成");
     }
 
+    /**
+     * 补偿商品id为空
+     */
+    @Override
+    public void compensatingProductNon() {
+        SecurityUtils.setTenantId(RunParamConstant.tenantId);
+        DynamicDataSourceContextHolder.push(SourceConstant.ITEM);
+        List<ProductInfo> productInfoList = productInfoService.list();
+        Map<String, ProductInfo> productInfoMap = productInfoList.stream().collect(Collectors.toMap(ProductInfo::getCustomCode, o -> o, (v1, v2) -> v2));
+        DynamicDataSourceContextHolder.poll();
+
+        jdOrderDetailsService.lambdaQuery().isNull(JdOrderDetails::getProductId).list().forEach(jdOrderDetails -> {
+            Long wareId = jdOrderDetails.getWareId();
+            ProductInfo productInfo = productInfoMap.get(StrUtil.toString(wareId));
+            if(ObjectUtil.isNotNull(productInfo)){
+                jdOrderDetails.setProductId(productInfo.getId());
+                jdOrderDetailsService.updateById(jdOrderDetails);
+            }
+        });
+        SecurityUtils.clearTenantId();
+    }
+
     //订单状态:审核不通过/供应商驳回/已完成
     private static final ArrayList<String> notIn = new ArrayList<String>(){{
         add("7");

+ 2 - 0
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/jd/initializers/JdInitializer.java

@@ -34,6 +34,8 @@ public class JdInitializer {
 //        jdApiService.refreshJdState();
         //初始化字典
 //        jdApiService.initTenantDict();
+        //补偿商品id为空
+        jdApiService.compensatingProductNon();
 
     }
 }