Browse Source

新增线索客户导入

anderx 1 year ago
parent
commit
25990b5037

+ 1 - 1
src/main/java/com/goafanti/common/mapper/UserMapper.xml

@@ -223,7 +223,7 @@
             <if test="clueTime != null">
                 clue_time = #{clueTime},
             </if>
-            <if test="clueAid != null and clueAid != ''">
+            <if test="clueAid != null">
                 clue_aid = #{clueAid},
             </if>
         </set>

+ 34 - 0
src/main/java/com/goafanti/customer/bo/InputUserClueTransferBo.java

@@ -0,0 +1,34 @@
+package com.goafanti.customer.bo;
+
+public class InputUserClueTransferBo {
+    private String uid;
+    private String transferId;
+    /**
+     * 0=转交, 1退回线索客户,2=移除线索客户,3=领取线索客户
+     */
+    private Integer type;
+
+    public String getUid() {
+        return uid;
+    }
+
+    public void setUid(String uid) {
+        this.uid = uid;
+    }
+
+    public String getTransferId() {
+        return transferId;
+    }
+
+    public void setTransferId(String transferId) {
+        this.transferId = transferId;
+    }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+}

+ 12 - 0
src/main/java/com/goafanti/customer/controller/UserClueApiController.java

@@ -5,6 +5,7 @@ import com.goafanti.common.controller.BaseApiController;
 import com.goafanti.common.utils.excel.NewExcelUtil;
 import com.goafanti.customer.bo.InputUserClueBo;
 import com.goafanti.customer.bo.InputUserClueList;
+import com.goafanti.customer.bo.InputUserClueTransferBo;
 import com.goafanti.customer.bo.OutUserClueExcel;
 import com.goafanti.customer.service.UserClueService;
 import org.springframework.beans.factory.annotation.Value;
@@ -72,4 +73,15 @@ public class UserClueApiController extends BaseApiController{
 	}
 
 
+	/**
+	 * 线索客户转移
+	 * @return
+	 */
+	@PostMapping("/transfer")
+	public Result transfer( InputUserClueTransferBo in) {
+		Result res = new Result();
+		return res.data(userClueService.updateTransfer(in));
+	}
+
+
 }

+ 3 - 0
src/main/java/com/goafanti/customer/service/UserClueService.java

@@ -2,6 +2,7 @@ package com.goafanti.customer.service;
 
 import com.goafanti.customer.bo.InputUserClueBo;
 import com.goafanti.customer.bo.InputUserClueList;
+import com.goafanti.customer.bo.InputUserClueTransferBo;
 import com.goafanti.customer.bo.OutUserClueExcel;
 
 import java.util.List;
@@ -13,4 +14,6 @@ public interface UserClueService {
 
 
     String pushImportUserClue(List<OutUserClueExcel> list);
+
+    Object updateTransfer(InputUserClueTransferBo in);
 }

+ 43 - 8
src/main/java/com/goafanti/customer/service/impl/UserClueServiceImpl.java

@@ -10,10 +10,7 @@ import com.goafanti.common.utils.PasswordUtil;
 import com.goafanti.core.mybatis.BaseMybatisDao;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.core.shiro.token.TokenManager;
-import com.goafanti.customer.bo.InputUserClueBo;
-import com.goafanti.customer.bo.InputUserClueList;
-import com.goafanti.customer.bo.OutUserClueExcel;
-import com.goafanti.customer.bo.OutUserClueList;
+import com.goafanti.customer.bo.*;
 import com.goafanti.customer.service.CustomerService;
 import com.goafanti.customer.service.UserClueService;
 import org.springframework.stereotype.Service;
@@ -75,6 +72,7 @@ public class UserClueServiceImpl extends BaseMybatisDao<UserMapper> implements U
         user.setStatus(AFTConstants.USER_STATUS_NORMAL);
         user.setShareType(1);
         user.setAid(TokenManager.getAdminId());
+        user.setClueAid(TokenManager.getAdminId());
 //		user.setAid("1");
         user.setType(1);
         user.setLvl(UserLevel.CERTIFIED.getCode());
@@ -129,7 +127,7 @@ public class UserClueServiceImpl extends BaseMybatisDao<UserMapper> implements U
         cob.setMobile(in.getContactMobile());
         cob.setMajor(AFTConstants.YES);
         organizationContactBookMapper.insert(cob);
-        addUserTransferLog(user);
+        addUserTransferLog(user,22);
 
 
         return 1;
@@ -155,12 +153,49 @@ public class UserClueServiceImpl extends BaseMybatisDao<UserMapper> implements U
         return msg.toString();
     }
 
-    private void addUserTransferLog(User user) {
+    @Override
+    public Object updateTransfer(InputUserClueTransferBo in) {
+        String[] split = in.getUid().split(",");
+        for (String uid : split) {
+            userTransfer(uid,in);
+        }
+        return 1;
+    }
+
+    private void userTransfer(String uid,InputUserClueTransferBo in) {
+        User user = userMapper.queryById(uid);
+        int type = 0;
+        if (in.getType()==0){
+            user.setAid(in.getTransferId());
+            user.setClueProcess(1);
+            type=23;
+        }else if (in.getType()==1){
+            user.setClueProcess(2);
+            user.setAid(user.getClueAid());
+            type=24;
+        }else if (in.getType()==2){
+            user.setClueProcess(3);
+            userMapper.update(user);
+            type=25;
+        }else if (in.getType()==3){
+            user.setClueProcess(4);
+            user.setShareType(0);
+            type=26;
+        }
+        userMapper.update(user);
+        addUserTransferLog(user,type);
+    }
+
+    /**
+     *
+     * @param user 客户信息
+     * @param type  22=导入线索客户,23=转交线索客户,24=退回线索客户,25=移除线索客户,26=领取线索客户
+     */
+    private void addUserTransferLog(User user,Integer type) {
         UserTransferLog u = new UserTransferLog();
         u.setUid(user.getId());
         u.setAid(TokenManager.getAdminId());
-//        22=导入线索客户,23=转交线索客户,24=退回线索客户,25=移除线索客户,26=领取线索客户
-        u.setType(22);
+        u.setType(type);
         userTransferLogMapper.insertSelective(u);
     }