Browse Source

产品同步,线上队列

chenlei1231 3 months ago
parent
commit
36dc3bbc55

+ 4 - 2
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/adweb/product/service/impl/AdwebProductServiceImpl.java

@@ -58,10 +58,12 @@ public class AdwebProductServiceImpl extends ServiceImpl<AdwebProductMapper, Adw
         productQuery.eq("product_id", productDTO.getProductId());
         productQuery.eq("site_code", adwebSites.getCode());
         productQuery.set("action_type", "delete");
+        productQuery.set("request_time", productDTO.getRequestTime());
+        productQuery.set("author_name", productDTO.getAuthorName());
 
         try {
-            this.update(productQuery);
-            log.info("MQ消息删除产品成功:{}", productDTO);
+            boolean isUpdated = this.update(productQuery);
+            log.info("MQ消息删除产品成功, 网站:{}, 产品ID:{}, 是否更新成功:{}", adwebSites.getCode(), productDTO.getProductId(), isUpdated);
         } catch (Exception e) {
             log.error("MQ消息删除产品失败:{}", e.getMessage(), e);
         }

+ 2 - 2
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/mq/ProductReceiver.java

@@ -35,7 +35,7 @@ public class ProductReceiver extends BaseRabbiMqHandler<List<ProductDTO>> {
 
     @RabbitHandler
     // ackMode需要设置为MANUAL - BaseRabbiMqHandler.onMessage()有channel.basicAck()操作
-    @RabbitListener(queues = "site_product_dev", ackMode = "MANUAL")
+    @RabbitListener(queues = "site_product", ackMode = "MANUAL")
     public void onMessage(List<ProductDTO> products, Channel channel, @Header(AmqpHeaders.DELIVERY_TAG) long deliveryTag) {
         super.onMessage(products, deliveryTag, channel, new MqListener<List<ProductDTO>>() {
             @Override
@@ -51,7 +51,7 @@ public class ProductReceiver extends BaseRabbiMqHandler<List<ProductDTO>> {
                         log.error("站点:{} 不是adweb3的有效绑定站点,MQ消息确认失败", product.getSiteHost());
                         return;
                     }
-                    
+
                     // 产品入库
                     adwebProductService.addOrUpdateProduct(product, adwebSites.get(0));
                 }