From 62a447d89331aee1feae7724c7616aa1bb2cfe79 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 16 十月 2024 14:28:37 +0800 Subject: [PATCH] 将CMQ替换为rabbitmq --- fanli/src/main/java/com/yeshi/fanli/job/order/vipshop/UpdateVipShopOrderJob.java | 96 +++++++++++++++++++++++++++++------------------- 1 files changed, 58 insertions(+), 38 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/job/order/vipshop/UpdateVipShopOrderJob.java b/fanli/src/main/java/com/yeshi/fanli/job/order/vipshop/UpdateVipShopOrderJob.java index bd61285..6469172 100644 --- a/fanli/src/main/java/com/yeshi/fanli/job/order/vipshop/UpdateVipShopOrderJob.java +++ b/fanli/src/main/java/com/yeshi/fanli/job/order/vipshop/UpdateVipShopOrderJob.java @@ -10,7 +10,10 @@ import com.yeshi.fanli.service.inter.order.CommonOrderService; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.mq.cmq.order.OrdersCMQManager; +import com.yeshi.fanli.util.mq.rabbit.RabbitmqManager; import com.yeshi.fanli.util.vipshop.DingDanXiaApiUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import com.xxl.job.core.biz.model.ReturnT; @@ -28,6 +31,8 @@ @Component public class UpdateVipShopOrderJob { + private Logger logger = LoggerFactory.getLogger("debugLog"); + @Resource private VipShopOrderService vipShopOrderService; @@ -35,6 +40,9 @@ private RedisManager redisManager; @Resource private VipShopOrderMapper vipShopOrderMapper; + + @Resource + private OrdersCMQManager ordersCMQManager; /** * 淇濆瓨璁㈠崟 @@ -57,7 +65,7 @@ String result = redisManager.getCommonString(key); // 鍒ゆ柇 // if (StringUtil.isNullOrEmpty(result)) { - OrdersCMQManager.getInstance().addOrder(new CommonOrderMQMsg(order.getOrderSn() + "", Constant.SOURCE_TYPE_VIP)); + ordersCMQManager.addOrder(new CommonOrderMQMsg(order.getOrderSn() + "", Constant.SOURCE_TYPE_VIP)); redisManager.cacheCommonString(key, "1", 60 * 60 * 2);// 2灏忔椂鍐呬笉鍐嶆洿鏂� LogHelper.test("鍞搧浼氳鍗曟秷鎭彂閫佹垚鍔�"); // }else{ @@ -76,30 +84,38 @@ @XxlJob("updateVipShopOrderHandler") public ReturnT<String> updateVipShopSoonOrder(String param) throws Exception { LogHelper.test("updateVipShopOrderHandler:" + param); - long endTime = System.currentTimeMillis(); - if ("1hour".equalsIgnoreCase(param)) {// 鏇存柊1灏忔椂鍐呯殑璁㈠崟 - updateByOrderTime(endTime - 1000 * 60 * 60 * 1L, endTime); - updateByUpdateTime(endTime - 1000 * 60 * 60 * 1L, endTime); - } else if ("1day".equalsIgnoreCase(param)) {// 鏇存柊鏈�杩�1澶╂洿鏂扮殑鏁版嵁 - Long startT = endTime - 1000 * 60 * 60 * 24L; - for(long start= startT;start<startT +1000 * 60 * 60 * 24L;start+=1000 * 60 * 60 ) { - updateByOrderTime(start, start + 1000 * 60 * 60 ); - updateByUpdateTime(start, start + 1000 * 60 * 60 ); + logger.info("鍞搧浼氳鍗曟洿鏂板紑濮嬶細updateVipShopSoonOrder 鍙傛暟锛�"+param); + try { + long endTime = System.currentTimeMillis(); + if ("1hour".equalsIgnoreCase(param)) {// 鏇存柊1灏忔椂鍐呯殑璁㈠崟 + updateByOrderTime(endTime - 1000 * 60 * 60 * 1L, endTime); + updateByUpdateTime(endTime - 1000 * 60 * 60 * 1L, endTime); + } else if ("1day".equalsIgnoreCase(param)) {// 鏇存柊鏈�杩�1澶╂洿鏂扮殑鏁版嵁 + Long startT = endTime - 1000 * 60 * 60 * 24L; + for (long start = startT; start < startT + 1000 * 60 * 60 * 24L; start += 1000 * 60 * 60) { + updateByOrderTime(start, start + 1000 * 60 * 60); + updateByUpdateTime(start, start + 1000 * 60 * 60); + } + } else if ("1month".equalsIgnoreCase(param)) {// 鏇存柊鏈�杩�1涓湀鐨勬暟鎹� + for (int i = 0; i < 30; i++) { + Long startT = endTime - 1000 * 60 * 60 * 24L * (i + 1); + for (long start = startT; start < startT + 1000 * 60 * 60 * 24L; start += 1000 * 60 * 60) { + updateByOrderTime(start, start + 1000 * 60 * 60); + updateByUpdateTime(start, start + 1000 * 60 * 60); + } + } } - } else if ("1month".equalsIgnoreCase(param)) {// 鏇存柊鏈�杩�1涓湀鐨勬暟鎹� - for (int i = 0; i < 30; i++) { - Long startT = endTime - 1000 * 60 * 60 * 24L*(i+1); - for(long start= startT;start<startT +1000 * 60 * 60 * 24L;start+=1000 * 60 * 60 ) { - updateByOrderTime(start, start + 1000 * 60 * 60 ); - updateByUpdateTime(start, start + 1000 * 60 * 60 ); - } - } + /* + * else if ("3day".equalsIgnoreCase(param)) {// 鏇存柊鏈�杩�3澶╂洿鏂扮殑鏁版嵁 + * updateByOrderTime(endTime - 1000 * 60 * 60 * 24 * 3L, endTime); + * updateByUpdateTime(endTime - 1000 * 60 * 60 * 24 * 3L, endTime); } + */ + }catch(Exception e){ + logger.error("鍞搧浼氳鍗曟洿鏂板紓甯革細",e); + }finally { + logger.info("鍞搧浼氳鍗曟洿鏂扮粨鏉燂細updateVipShopSoonOrder 鍙傛暟锛�"+ param); } - /* - * else if ("3day".equalsIgnoreCase(param)) {// 鏇存柊鏈�杩�3澶╂洿鏂扮殑鏁版嵁 - * updateByOrderTime(endTime - 1000 * 60 * 60 * 24 * 3L, endTime); - * updateByUpdateTime(endTime - 1000 * 60 * 60 * 24 * 3L, endTime); } - */ + return ReturnT.SUCCESS; } @@ -107,23 +123,27 @@ //鏍规嵁璁㈠崟鍙锋洿鏂� @XxlJob("order-vip-updateByOrderSn") public ReturnT<String> updateByOrderSn(String param) throws Exception { - String[] ps = param.split(","); - for (String p : ps) { - List<VipShopOrder> orders = vipShopOrderService.listByOrderSn(p); - if (orders == null || orders.size() == 0) - { - // 璇锋眰璁㈠崟璇︽儏 - saveVipShopOrders( Arrays.asList(new VipShopOrder[]{ DingDanXiaApiUtil.getOrderDetail(p)})); - } - else { - Thread.sleep(1000); - VipShopOrder vipShopOrder = DingDanXiaApiUtil.getOrderDetail(p); - if (vipShopOrder != null) { - List<VipShopOrder> vipShopOrderList = new ArrayList<>(); - vipShopOrderList.add(vipShopOrder); - saveVipShopOrders(vipShopOrderList); + logger.info(String.format("鍞搧浼氳鍗曟洿鏂帮細%s", param)); + try { + String[] ps = param.split(","); + for (String p : ps) { + List<VipShopOrder> orders = vipShopOrderService.listByOrderSn(p); + if (orders == null || orders.size() == 0) { + // 璇锋眰璁㈠崟璇︽儏 + saveVipShopOrders(Arrays.asList(new VipShopOrder[]{DingDanXiaApiUtil.getOrderDetail(p)})); + } else { + Thread.sleep(1000); + VipShopOrder vipShopOrder = DingDanXiaApiUtil.getOrderDetail(p); + if (vipShopOrder != null) { + List<VipShopOrder> vipShopOrderList = new ArrayList<>(); + vipShopOrderList.add(vipShopOrder); + saveVipShopOrders(vipShopOrderList); + } } } + logger.info("鍞搧浼氳鍗曟洿鏂版垚鍔�"); + }catch(Exception e){ + logger.info(String.format("鍞搧浼氳鍗曟洿鏂板け璐ワ細%s", e.getMessage())); } return ReturnT.SUCCESS; } -- Gitblit v1.8.0