From 30d8e227e8d823b6c38c3b9c90ac2df03b63befe Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 25 二月 2025 16:41:22 +0800 Subject: [PATCH] 淘宝转链接口更新 --- fanli/src/main/java/com/yeshi/fanli/job/order/suning/UpdateSuningOrderJob.java | 215 ++++++++++++++++++++++++++++------------------------- 1 files changed, 113 insertions(+), 102 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/job/order/suning/UpdateSuningOrderJob.java b/fanli/src/main/java/com/yeshi/fanli/job/order/suning/UpdateSuningOrderJob.java index d15ca7c..972ecba 100644 --- a/fanli/src/main/java/com/yeshi/fanli/job/order/suning/UpdateSuningOrderJob.java +++ b/fanli/src/main/java/com/yeshi/fanli/job/order/suning/UpdateSuningOrderJob.java @@ -1,102 +1,113 @@ -package com.yeshi.fanli.job.order.suning; - -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -import javax.annotation.Resource; - -import org.springframework.stereotype.Component; - -import com.xxl.job.core.biz.model.ReturnT; -import com.xxl.job.core.handler.annotation.XxlJob; -import com.yeshi.fanli.dto.suning.SuningOrderQueryResultDTO; -import com.yeshi.fanli.entity.suning.SuningOrderInfo; -import com.yeshi.fanli.exception.suning.SuningOrderException; -import com.yeshi.fanli.service.inter.order.suning.SuningOrderService; -import com.yeshi.fanli.util.RedisKeyEnum; -import com.yeshi.fanli.util.RedisManager; -import com.yeshi.fanli.util.StringUtil; -import com.yeshi.fanli.util.mq.cmq.order.SuningOrderCMQManager; -import com.yeshi.fanli.util.suning.SuningApiUtil; - -//浠庢窐瀹濈埇鍘昏鍗曟洿鏂� -@Component -public class UpdateSuningOrderJob { - - @Resource - private SuningOrderService suningOrderService; - - @Resource - private RedisManager redisManager; - - /** - * 淇濆瓨璁㈠崟 - * - * @param SuningOrderList - */ - public void saveSuningOrders(List<SuningOrderInfo> suningOrderList) { - for (SuningOrderInfo order : suningOrderList) { - try { - suningOrderService.addOrder(order); - /** - * 鍋氶鐜囬檺鍒� - */ - String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.SuningOrder, order.getOrderCode() + ""); - String result = redisManager.getCommonString(key); - // 鍒ゆ柇 - if (StringUtil.isNullOrEmpty(result)) { - SuningOrderCMQManager.getInstance().addSuningOrder(order.getOrderCode() + ""); - redisManager.cacheCommonString(key, "1", 60 * 60 * 2);// 2灏忔椂鍐呬笉鍐嶆洿鏂� - } - } catch (SuningOrderException e) { - e.printStackTrace(); - } - } - } - - /** - * 蹇�熻鍗曟洿鏂帮紙鐖彇鏈皬鏃跺唴鐨勫崟,姣忓垎閽熶竴娆★級 - */ - @XxlJob("updateSuningOrderHandler") - public ReturnT<String> updateSuningSoonOrder(String param) throws Exception { - long endTime = System.currentTimeMillis(); - if ("1hour".equalsIgnoreCase(param)) {// 鏇存柊1灏忔椂鍐呯殑璁㈠崟 - updateByOrderTime(endTime - 1000 * 60 * 60 * 1L, endTime,2); - updateByOrderTime(endTime - 1000 * 60 * 60 * 1L, endTime,3); - updateByOrderTime(endTime - 1000 * 60 * 60 * 1L, endTime,4); - updateByOrderTime(endTime - 1000 * 60 * 60 * 1L, endTime,5); - } else if ("1day".equalsIgnoreCase(param)) {// 鏇存柊鏈�杩�1澶╂洿鏂扮殑鏁版嵁 - updateByOrderTime(endTime - 1000 * 60 * 60 * 24L, endTime,2); - updateByOrderTime(endTime - 1000 * 60 * 60 * 24L, endTime,3); - updateByOrderTime(endTime - 1000 * 60 * 60 * 24L, endTime,4); - updateByOrderTime(endTime - 1000 * 60 * 60 * 24L, endTime,5); - } - return ReturnT.SUCCESS; - } - - /** - * 鎸変笅鍗曟椂闂存洿鏂� - * @Title: updateByOrderTime - * @Description: - * @param startTime - * @param endTime - * void 杩斿洖绫诲瀷 - * @throws - */ - - public void updateByOrderTime(long startTime, long endTime,int status) { - List<SuningOrderInfo> suningOrderList = new ArrayList<>(); - int page = 1; - - SuningOrderQueryResultDTO result = SuningApiUtil.getOrderList(new Date(startTime), new Date(endTime), page, status); - - while (result != null && result.getOrderList().size() > 0) { - page++; - suningOrderList.addAll(result.getOrderList()); - result = SuningApiUtil.getOrderList(new Date(startTime), new Date(endTime), page, status); - } - - saveSuningOrders(suningOrderList); - } -} +package com.yeshi.fanli.job.order.suning; + +import com.xxl.job.core.biz.model.ReturnT; +import com.xxl.job.core.handler.annotation.XxlJob; +import com.yeshi.fanli.dto.mq.order.body.CommonOrderMQMsg; +import com.yeshi.fanli.dto.suning.SuningOrderQueryResultDTO; +import com.yeshi.fanli.entity.suning.SuningOrderInfo; +import com.yeshi.fanli.exception.suning.SuningOrderException; +import com.yeshi.fanli.service.inter.order.suning.SuningOrderService; +import com.yeshi.fanli.util.Constant; +import com.yeshi.fanli.util.RedisKeyEnum; +import com.yeshi.fanli.util.RedisManager; +import com.yeshi.fanli.util.StringUtil; +import com.yeshi.fanli.util.mq.cmq.order.OrdersCMQManager; +import com.yeshi.fanli.util.suning.SuningApiUtil; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +//浠庢窐瀹濈埇鍘昏鍗曟洿鏂� +@Component +public class UpdateSuningOrderJob { + + @Resource + private SuningOrderService suningOrderService; + + @Resource + private RedisManager redisManager; + + @Resource + private OrdersCMQManager ordersCMQManager; + + + + /** + * 淇濆瓨璁㈠崟 + * + * @param SuningOrderList + */ + public void saveSuningOrders(List<SuningOrderInfo> suningOrderList) { + + //5鍒嗛挓涓嶆洿鏂板氨鎶ヨ + try { + redisManager.cacheCommonString(RedisKeyEnum.monitor.getKey() + Constant.SOURCE_TYPE_SUNING, "1", 60 * 5); + } catch (Exception e) { + } + for (SuningOrderInfo order : suningOrderList) { + try { + suningOrderService.addOrder(order); + /** + * 鍋氶鐜囬檺鍒� + */ + String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.SuningOrder, order.getOrderCode() + ""); + String result = redisManager.getCommonString(key); + // 鍒ゆ柇 + if (StringUtil.isNullOrEmpty(result)) { + ordersCMQManager.addOrder(new CommonOrderMQMsg(order.getOrderCode() + "",Constant.SOURCE_TYPE_SUNING)); + redisManager.cacheCommonString(key, "1", 60 * 60 * 2);// 2灏忔椂鍐呬笉鍐嶆洿鏂� + } + } catch (SuningOrderException e) { + e.printStackTrace(); + } + } + } + + /** + * 蹇�熻鍗曟洿鏂帮紙鐖彇鏈皬鏃跺唴鐨勫崟,姣忓垎閽熶竴娆★級 + */ + @XxlJob("updateSuningOrderHandler") + public ReturnT<String> updateSuningSoonOrder(String param) throws Exception { + long endTime = System.currentTimeMillis(); + if ("1hour".equalsIgnoreCase(param)) {// 鏇存柊1灏忔椂鍐呯殑璁㈠崟 + updateByOrderTime(endTime - 1000 * 60 * 60 * 1L, endTime,2); + updateByOrderTime(endTime - 1000 * 60 * 60 * 1L, endTime,3); + updateByOrderTime(endTime - 1000 * 60 * 60 * 1L, endTime,4); + updateByOrderTime(endTime - 1000 * 60 * 60 * 1L, endTime,5); + } else if ("1day".equalsIgnoreCase(param)) {// 鏇存柊鏈�杩�1澶╂洿鏂扮殑鏁版嵁 + updateByOrderTime(endTime - 1000 * 60 * 60 * 24L, endTime,2); + updateByOrderTime(endTime - 1000 * 60 * 60 * 24L, endTime,3); + updateByOrderTime(endTime - 1000 * 60 * 60 * 24L, endTime,4); + updateByOrderTime(endTime - 1000 * 60 * 60 * 24L, endTime,5); + } + return ReturnT.SUCCESS; + } + + /** + * 鎸変笅鍗曟椂闂存洿鏂� + * @Title: updateByOrderTime + * @Description: + * @param startTime + * @param endTime + * void 杩斿洖绫诲瀷 + * @throws + */ + + public void updateByOrderTime(long startTime, long endTime,int status) { + List<SuningOrderInfo> suningOrderList = new ArrayList<>(); + int page = 1; + + SuningOrderQueryResultDTO result = SuningApiUtil.getOrderList(new Date(startTime), new Date(endTime), page, status); + + while (result != null && result.getOrderList().size() > 0) { + page++; + suningOrderList.addAll(result.getOrderList()); + result = SuningApiUtil.getOrderList(new Date(startTime), new Date(endTime), page, status); + } + + saveSuningOrders(suningOrderList); + } +} -- Gitblit v1.8.0