浏览代码

kwai订单 状态回调更新 优化

zhaoxian 7 月之前
父节点
当前提交
4c7c5810b4

+ 7 - 5
ruixuan-live/src/main/java/com/ruixuan/isc/controller/KwaixiaodianItemGetController.java

@@ -52,15 +52,17 @@ public class KwaixiaodianItemGetController extends BaseController {
      * 获取订单列表(open.order.cursor.list)
      * https://open.kwaixiaodian.com/zone/new/docs/api?name=open.order.cursor.list&version=1
      */
-    @GetMapping("/querykwaiOrderList2")
+    @GetMapping("/querykwaiOrderList")
     @ApiOperation(value = "获kwai订单列表")
-    public void querykwaiOrderList(@ApiParam("店铺ID") @RequestParam(value = "shopId", required = false) String shopId
+    public void querykwaiOrderList(
+            @ApiParam("店铺ID") @RequestParam(value = "shopId", required = false) String shopId
+            , @ApiParam("1按创建时间查找 2按更新时间查找") @RequestParam(value = "queryType", required = false) Integer queryType
             , @ApiParam("开始日期") @RequestParam(value = "beginDate", required = false) String beginDate
             , @ApiParam("结束日期(间隔不大于7天)") @RequestParam(value = "endDate", required = false) String endDate
 
     ) {
         try {
-            orderCursorListService.querykwaiOrderList(shopId.trim(), beginDate, endDate, "");
+            orderCursorListService.querykwaiOrderList(shopId.trim(), queryType, beginDate, endDate, "");
         } catch (Exception e) {
             e.printStackTrace();
         }
@@ -70,12 +72,12 @@ public class KwaixiaodianItemGetController extends BaseController {
      * 获取订单列表(open.order.cursor.list)
      * https://open.kwaixiaodian.com/zone/new/docs/api?name=open.order.cursor.list&version=1
      */
-    @GetMapping("/querykwaiOrderList")
+    @GetMapping("/querykwaiOrderList2")
     @ApiOperation(value = "获kwai订单列表2")
     public void querykwaiOrderList2(@ApiParam("店铺ID") @RequestParam(value = "shopId", required = false) String shopId) {
         List<String> allDatesOfTwoTimes = DateUtils.getAllDatesOfTwoTimes("2024-10-01", "2024-10-30");
         for (String date : allDatesOfTwoTimes) {
-            orderCursorListService.querykwaiOrderList(shopId.trim(), date, date, "");
+            orderCursorListService.querykwaiOrderList(shopId.trim(), 1, date, date, "");
             logger.info("shopID:{},日期:{} 执行-----ok", shopId, date);
         }
 //            JSONObject eventJSon = new JSONObject();

+ 18 - 5
ruixuan-live/src/main/java/com/ruixuan/isc/controller/SupplyChainController.java

@@ -35,6 +35,7 @@ import java.io.UnsupportedEncodingException;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -2145,7 +2146,7 @@ public class SupplyChainController extends BaseController {
         }));
     }
 
-    static ExecutorService fxNowService = Executors.newFixedThreadPool(3);
+    static ExecutorService fxNowService = Executors.newFixedThreadPool(10);
 
 
     @PostMapping(value = "/ruixuanAccept")
@@ -2181,7 +2182,7 @@ public class SupplyChainController extends BaseController {
 
     }
 
-    static ExecutorService orderNewsService = Executors.newFixedThreadPool(3);
+    static ExecutorService orderNewsService = Executors.newFixedThreadPool(10);
 
     /**
      * https://open.kwaixiaodian.com/zone/new/docs/msg?name=kwaishop_order_delivering&version=1
@@ -2189,6 +2190,17 @@ public class SupplyChainController extends BaseController {
      * 订单已支付消息、订单已发货消息、订单已收货消息、订单交易失败消息、订单交易成功消息 ->状态变更
      * 新增订单 ->调取新增详情接口
      */
+
+    public static final List<String> EVENT_LIST =
+            Collections.unmodifiableList(Arrays.asList(
+                    "kwaishop_order_deliverySuccess",//已收货消息
+                    "kwaishop_order_paySuccess",//已支付消息
+                    "kwaishop_order_orderFail",//交易失败消息
+                    "kwaishop_order_orderSuccess",//交易成功消息
+                    "kwaishop_order_delivering"//已发货消息
+
+            ));
+
     @PostMapping(value = "/ruixuanKWaiShopOrderAccept")
     public Map<String, Object> ruixuanKWaiShopOrderAccept(@RequestBody String eventsEncoded) {
         Map<String, Object> result = new HashMap<>();
@@ -2196,12 +2208,12 @@ public class SupplyChainController extends BaseController {
             String events = PlatformEventSecurityUtil.decode(eventsEncoded, "xjX0jX828wWrnnwt26UYDA==");
             logger.info("-KWaiShop-订单-消息-订阅- 消息体:\n{}", events);
             JSONObject eventJSon = JSONObject.parseObject(events);
-            List<String> list = new ArrayList<>();
+           /* List<String> list = new ArrayList<>();
             list.add("kwaishop_order_deliverySuccess");//已收货消息
             list.add("kwaishop_order_paySuccess");//已支付消息
             list.add("kwaishop_order_delivering");//已发货消息
             list.add("kwaishop_order_orderFail");//交易失败消息
-            list.add("kwaishop_order_orderSuccess");//交易成功消息
+            list.add("kwaishop_order_orderSuccess");//交易成功消息*/
             orderNewsService.submit(new Runnable() {
                 @Override
                 public void run() {
@@ -2211,7 +2223,7 @@ public class SupplyChainController extends BaseController {
                             //订单新增消息
                             if ("kwaishop_order_addOrder".equals(event)) {
                                 orderCursorListService.insertKWaiShopOrder(eventJSon);
-                            } else if (list.contains(event)) {
+                            } else if (EVENT_LIST.contains(event)) {
                                 //状态变更 kwaixiaodian_order_cursor_list
                                 orderCursorListService.updateKWaiShopOrderStatus(eventJSon);
                             }
@@ -2225,6 +2237,7 @@ public class SupplyChainController extends BaseController {
             e.printStackTrace();
         }
         //返回成功
+        result.put("result", 1);
         return result;
     }
 

+ 1 - 1
ruixuan-live/src/main/java/com/ruixuan/isc/service/IKwaixiaodianOrderCursorListService.java

@@ -9,7 +9,7 @@ import com.alibaba.fastjson.JSONObject;
  * @date 2024-10-28
  */
 public interface IKwaixiaodianOrderCursorListService {
-    void querykwaiOrderList(String shopId, String beginDate, String endDate, String cursor);
+    void querykwaiOrderList(String shopId,Integer queryType, String beginDate, String endDate, String cursor);
 
     /*新增kwaixiaodian_order_cursor_list*/
     void insertKWaiShopOrder(JSONObject eventJSon);

+ 3 - 3
ruixuan-live/src/main/java/com/ruixuan/isc/service/impl/KwaixiaodianOrderCursorListServiceImpl.java

@@ -42,7 +42,7 @@ public class KwaixiaodianOrderCursorListServiceImpl implements IKwaixiaodianOrde
      * 表:kwaixiaodian_item_get
      */
     @Override
-    public void querykwaiOrderList(String shopId, String beginDate, String endDate, String cursor) {
+    public void querykwaiOrderList(String shopId, Integer queryType, String beginDate, String endDate, String cursor) {
         try {
             Long beginTime = DateUtils.getStartLongTime(beginDate);
             Long endTime = DateUtils.getEndLongTime(endDate);
@@ -63,7 +63,7 @@ public class KwaixiaodianOrderCursorListServiceImpl implements IKwaixiaodianOrde
             //1时间降序 2时间升序 默认降序
             request.setSort(1);
             //1按创建时间查找 2按更新时间查找 ;默认创建时间,值为1时只允许获取创建时间90天内的订单数据,值为2时仅允许获取更新时间90天内且创建时间240天内的订单数据
-            request.setQueryType(1);
+            request.setQueryType(queryType);
             //订单生成时间的开始时间,单位毫秒, 不能小于90天前,且需要小于结束时间
             request.setBeginTime(beginTime);
             //订单生成时间的截止时间,单位毫秒,与开始时间的时间范围不大于7天
@@ -98,7 +98,7 @@ public class KwaixiaodianOrderCursorListServiceImpl implements IKwaixiaodianOrde
                 log.error("===kwaixiaodian获取订单列表(open.order.cursor.list)失败,shopId:{},信息:{}", shopId, jsonObject.getString("error_msg"));
             }
             if (!"nomore".equals(cursor)) {
-                querykwaiOrderList(shopId, beginDate, endDate, cursor);
+                querykwaiOrderList(shopId, queryType, beginDate, endDate, cursor);
             }
         } catch (Exception e) {
             log.error("===kwaixiaodian获取订单列表异常 querykwaiOrderList");