| | |
| | | request.setPageSize(100); |
| | | request.setTiming(Constants.ONE+""); |
| | | request.setCreationDate(date); |
| | | this.syncData(request); |
| | | this.syncData(request,null); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public void syncByPhone(String phone) { |
| | | public void syncByPhone(Member member) { |
| | | if(member ==null){ |
| | | return; |
| | | } |
| | | CrmDaogouBindListRequest request = new CrmDaogouBindListRequest(); |
| | | request.setPage(0); |
| | | request.setPageSize(100); |
| | | request.setTiming(Constants.ZERO+""); |
| | | request.setKeyWords(phone); |
| | | this.syncData(request); |
| | | request.setKeyWords(member.getPhone()); |
| | | this.syncData(request,member); |
| | | } |
| | | |
| | | public void syncData(CrmDaogouBindListRequest request){ |
| | | public void syncData(CrmDaogouBindListRequest request,Member member){ |
| | | boolean hasMore = true; |
| | | int currentNum = 0; |
| | | Date cdate = new Date(); |
| | |
| | | hasMore = false; |
| | | } |
| | | } |
| | | dealSyncDataBiz(cdate,allList); |
| | | dealSyncDataBiz(cdate,allList,member); |
| | | } |
| | | |
| | | private void dealSyncDataBiz(Date date,List<CRMDaogouBindListResponse> list) { |
| | | private void dealSyncDataBiz(Date date,List<CRMDaogouBindListResponse> list,Member member) { |
| | | if(list ==null && list.size()==0){ |
| | | return; |
| | | } |
| | | List<CustomerUser> addList = new ArrayList<>(); |
| | | List<String> phoneList = new ArrayList<>(); |
| | | List<Long> memberIds = new ArrayList<>(); |
| | | for(CRMDaogouBindListResponse data : list){ |
| | | if(StringUtils.isBlank(data.getCustomerPhone())){ |
| | | continue; |
| | | } |
| | | Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda() |
| | | if(member == null){ |
| | | member = memberMapper.selectOne(new QueryWrapper<Member>().lambda() |
| | | .eq(Member::getPhone,data.getCustomerPhone() ) |
| | | .eq(Member::getIsdeleted,Constants.ZERO) |
| | | .last("limit 1" )); |
| | | } |
| | | Users user = usersMapper.selectOne(new QueryWrapper<Users>().lambda() |
| | | .eq(Users::getIamId,data.getIamId() ) |
| | | .last("limit 1" )); |
| | | if(member == null){ |
| | | continue; |
| | | } |
| | | memberIds.add(member.getId()); |
| | | phoneList.add(data.getCustomerPhone()); |
| | | |
| | | CustomerUser model = new CustomerUser(); |
| | |
| | | customerUserMapper.insert(addList.subList(temp,index)); |
| | | temp = index; |
| | | } |
| | | Member update = new Member(); |
| | | update.setAuthStatus(Constants.TWO); |
| | | update.setEditDate(new Date()); |
| | | memberMapper.update(null,new UpdateWrapper<Member>().lambda(). |
| | | set(Member::getAuthStatus,Constants.TWO). |
| | | set(Member::getEditDate,new Date()) |
| | | .in(Member::getId,memberIds)); |
| | | } |
| | | } |
| | | } |