From 8ce648f125a026ef9d7272ddcc46ceb0e59d809b Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 02 八月 2024 17:05:49 +0800
Subject: [PATCH] aa

---
 server/service/src/main/java/com/doumee/service/business/impl/CustomerUserServiceImpl.java |   36 +++++++++++++++++++++++++-----------
 1 files changed, 25 insertions(+), 11 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 ae2149c..1a3b88f 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,21 +182,24 @@
         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();
@@ -221,29 +224,33 @@
                 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()
-                    .eq(Member::getPhone,data.getCustomerPhone() )
-                    .eq(Member::getIsdeleted,Constants.ZERO)
-                    .last("limit 1" ));
+            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();
@@ -288,6 +295,13 @@
                 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));
         }
     }
 }

--
Gitblit v1.9.3