From 7dc29ed74ebaa8a0e66f68264d9a13f95dc3af21 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期五, 02 八月 2024 11:09:06 +0800 Subject: [PATCH] aa --- server/service/src/main/java/com/doumee/service/business/impl/CustomerUserServiceImpl.java | 30 ++++++++++++++++++++++++++---- 1 files changed, 26 insertions(+), 4 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/business/impl/CustomerUserServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/CustomerUserServiceImpl.java index bd783e7..ae2149c 100644 --- a/server/service/src/main/java/com/doumee/service/business/impl/CustomerUserServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/business/impl/CustomerUserServiceImpl.java @@ -182,31 +182,52 @@ request.setPageSize(100); request.setTiming(Constants.ONE+""); request.setCreationDate(date); + this.syncData(request); + } + + @Override + @Transactional + public void syncByPhone(String phone) { + CrmDaogouBindListRequest request = new CrmDaogouBindListRequest(); + request.setPage(0); + request.setPageSize(100); + request.setTiming(Constants.ZERO+""); + request.setKeyWords(phone); + this.syncData(request); + } + + public void syncData(CrmDaogouBindListRequest request){ boolean hasMore = true; int currentNum = 0; Date cdate = new Date(); + List<CRMDaogouBindListResponse> allList = new ArrayList<>(); while (hasMore){ try { request.setPage(request.getPage()+1); - currentNum += currentNum; CRMBaseResponse<List<CRMDaogouBindListResponse>> response = zbomCRMService.getDaogouBindList(request); if(response==null || !StringUtils.equals(response.getCode(), CRMConstants.CODE_SUCCESS) || response.getData() ==null || response.getData().size() ==0){ hasMore = false; + }else{ + allList.addAll(response.getData()); + currentNum += response.getTotal(); } if(currentNum >= response.getTotal()){ hasMore = false; } - dealSyncDataBiz(cdate,response.getData()); }catch (Exception e){ - hasMore = false; + hasMore = false; } } + dealSyncDataBiz(cdate,allList); } private void dealSyncDataBiz(Date date,List<CRMDaogouBindListResponse> list) { + if(list ==null && list.size()==0){ + return; + } List<CustomerUser> addList = new ArrayList<>(); List<String> phoneList = new ArrayList<>(); for(CRMDaogouBindListResponse data : list){ @@ -218,7 +239,7 @@ .eq(Member::getIsdeleted,Constants.ZERO) .last("limit 1" )); Users user = usersMapper.selectOne(new QueryWrapper<Users>().lambda() - .eq(Users::getIamId,data.getUserId() ) + .eq(Users::getIamId,data.getIamId() ) .last("limit 1" )); if(member == null){ continue; @@ -239,6 +260,7 @@ model.setZtStatus(Constants.ONE); model.setZtInfo("crm鍚屾"); model.setIamUserId(data.getUserId()); + model.setMemberId(member==null?null:member.getId()); model.setUserId(user== null?null:user.getId()); model.setCreationDate(data.getCreationDate()); addList.add(model); -- Gitblit v1.9.3