From b1752477206d9bff9bcb2aa531b4a22f6475aac5 Mon Sep 17 00:00:00 2001 From: yechenhao Date: Sat, 16 May 2020 02:34:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E5=B1=8F=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/kiisoo/ic/job/CustomerSyncJob.java | 12 ++---------- .../java/com/kiisoo/ic/job/DTOMessageHandler.java | 14 +++++++++++++- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/kiisoo/ic/job/CustomerSyncJob.java b/src/main/java/com/kiisoo/ic/job/CustomerSyncJob.java index 2544fca..b91c78d 100644 --- a/src/main/java/com/kiisoo/ic/job/CustomerSyncJob.java +++ b/src/main/java/com/kiisoo/ic/job/CustomerSyncJob.java @@ -63,21 +63,13 @@ public class CustomerSyncJob { long seq; for (PrivilageCpUserStoreDO privilageCpUserStoreDO : privilageCpUserStoreDOS) { String cpUserId = privilageCpUserStoreDOMapper.selectCpUserIdByStoreId(privilageCpUserStoreDO.getStoreId()); - List customers = null; - try { - customers = qwMailListManageService.getCustomer(cpUserId); - }catch (Exception e) { - log.error("查询联系人失败:"+cpUserId,e); - } - if (CollectionUtils.isNotEmpty(customers)){ - continue; - } + seq=ringBuffer.next();//占个坑 --ringBuffer一个可用区块 //给这个区块放入 数据 如果此处不理解,想想RingBuffer的结构图 ringBuffer.get(seq).setCpUserId(cpUserId); ringBuffer.get(seq).setPrivilageCpUserStoreDO(privilageCpUserStoreDO); - ringBuffer.get(seq).setCustomers(customers); +// ringBuffer.get(seq).setCustomers(customers); ringBuffer.publish(seq);//发布这个区块的数据使handler(consumer)可见 } diff --git a/src/main/java/com/kiisoo/ic/job/DTOMessageHandler.java b/src/main/java/com/kiisoo/ic/job/DTOMessageHandler.java index 30e3b40..4859e4e 100644 --- a/src/main/java/com/kiisoo/ic/job/DTOMessageHandler.java +++ b/src/main/java/com/kiisoo/ic/job/DTOMessageHandler.java @@ -6,6 +6,7 @@ import com.kiisoo.ic.store.entity.PrivilageCpUserStoreDO; import com.kiisoo.ic.store.mapper.PoiStoreStaffDOMapper; import com.kiisoo.ic.synchronous.entity.TurnBackDTO; import com.kiisoo.ic.synchronous.entity.WxDataDTO; +import com.kiisoo.ic.wx.service.QWMailListManageService; import com.lmax.disruptor.EventHandler; import lombok.extern.slf4j.Slf4j; import me.chanjar.weixin.cp.bean.WxCpUserExternalContactInfo; @@ -29,6 +30,9 @@ public class DTOMessageHandler implements EventHandler { @Autowired private CustomerService customerService; + @Autowired + private QWMailListManageService qwMailListManageService; + /** * 处理事件, 如入库操作 * @param dtoMessage @@ -42,7 +46,15 @@ public class DTOMessageHandler implements EventHandler { dtoMessage.setId(UUID.randomUUID().toString()); String cpUserId = dtoMessage.getCpUserId(); PrivilageCpUserStoreDO cpUserStoreDO = dtoMessage.getPrivilageCpUserStoreDO(); - List customers = dtoMessage.getCustomers(); + List customers = null; + try { + customers = qwMailListManageService.getCustomer(cpUserId); + }catch (Exception e) { + log.error("查询联系人失败:"+cpUserId,e); + } + if (CollectionUtils.isNotEmpty(customers)){ + return; + } for (WxCpUserExternalContactInfo customer:customers){ TurnBackDTO turnBackDTO = new TurnBackDTO();