fgd 1 년 전
부모
커밋
0f8875851d

+ 3 - 0
sd-starter/src/main/resources/application.yml

@@ -98,6 +98,9 @@ spring:
         testOnReturn: false
         poolPreparedStatements: true
         maxPoolPreparedStatementPerConnectionSize: 20
+        # 配置连接超时时间
+        connect-timeout: 30000
+        socket-timeout: 60000
 
     druid:
       webStatFilter:

+ 3 - 3
sd-wln/src/main/java/com/sd/wln/constants/WlnConstant.java

@@ -5,16 +5,16 @@ public class WlnConstant {
     /**
      * key
      */
-    public static final String APP_KEY = "3923521627";
+    public static final String APP_KEY = "3123608193";
 
     /**
      * secret
      */
-    public static final String APP_SECRET = "ee6f90783e1c3ba72098137e9a6e8ec3";
+    public static final String APP_SECRET = "394820b29005e54db0d00a2589c9054d";
 
     /**
      * 公司id(具体可以咨询下万里牛客服)
      */
-    public static final String COM_UID = "22768050183124";
+    public static final String COM_UID = "37117473402095";
 
 }

+ 9 - 0
sd-wln/src/main/java/com/sd/wln/entity/SkuClassifyParam.java

@@ -12,4 +12,13 @@ public class SkuClassifyParam extends Signature {
      */
     private String com_uid;
 
+    /**
+     * 当前页码,从1开始
+     */
+    private Integer page;
+
+    /**
+     * 每页大小,最大50
+     */
+    private Integer limit;
 }

+ 8 - 0
sd-wln/src/main/java/com/sd/wln/service/impl/WlnOrderServiceImpl.java

@@ -119,9 +119,17 @@ public class WlnOrderServiceImpl implements WlnOrderService {
             // 获取已存在订单
             Map<String, OrderInfo> existOrderMap = context.getExistOrderMap();
 
+            // 万里牛已同步uid集合
+            Set<String> wlnUidSet = new HashSet<>();
+
             // 循环万里牛订单
             for (JSONObject wlnOrder : wlnOrderList) {
 
+                // 重复id跳过,防止分页查询重复数据
+                if (!wlnUidSet.add(wlnOrder.getString("uid"))) {
+                    continue;
+                }
+
                 // 9月1号之前的订单不同步
                 Date printTime = wlnOrder.getDate("print_time");
                 if (printTime != null && printTime.before(DateUtil.parse("2023-09-01 00:00:00"))) {

+ 14 - 9
sd-wln/src/main/java/com/sd/wln/service/impl/WlnSkuServiceImpl.java

@@ -41,15 +41,20 @@ public class WlnSkuServiceImpl implements WlnSkuService {
 
     @Override
     public boolean syncSkuClassify() {
-        List<JSONObject> list;
-
-        // 查询万里牛sku分类
-        try {
-            list = WlnUtil.getSkuClassifyList();
-        } catch (Exception e) {
-            log.error("sku分类同步错误", e);
-            return false;
-        }
+        int page = 1;
+        int size;
+        List<JSONObject> list = new ArrayList<>();
+        do {
+            try {
+                List<JSONObject> itemList = WlnUtil.getSkuClassifyList(page, 50);
+                page++;
+                size = itemList.size();
+                list.addAll(itemList);
+            } catch (Exception e) {
+                log.error("sku分类同步错误", e);
+                return false;
+            }
+        } while (size >= 50);
 
         // 查询数据库sku分类
         LogicHolder.setLogicHolder(true);

+ 5 - 3
sd-wln/src/main/java/com/sd/wln/util/WlnUtil.java

@@ -30,13 +30,15 @@ public class WlnUtil {
     /**
      * 获取sku分类
      */
-    public static List<JSONObject> getSkuClassifyList() throws Exception {
+    public static List<JSONObject> getSkuClassifyList(Integer page, Integer limit) throws Exception {
         SkuClassifyParam param = new SkuClassifyParam();
-        param.setCom_uid(WlnConstant.COM_UID);
+//        param.setCom_uid(WlnConstant.COM_UID);
+        param.setPage(page);
+        param.setLimit(limit);
         String linkString = MapUtil.createLinkString(MapUtil.beanToMap(param));
         param.generateSign(linkString);
 
-        String result = send(PREFIX + "erp/goods/catagory/query", param);
+        String result = send(PREFIX + "/erp/goods/catagorypage/query/v2", param);
         JSONObject json = JSONObject.parseObject(result);
         Integer code = json.getInteger("code");
         if (code != 0) {