Browse Source

销售端-新增转交客户信息功能

cgp 20 hours ago
parent
commit
77aa0ce351

+ 31 - 0
fs-company/src/main/java/com/fs/company/controller/company/CompanyUserController.java

@@ -35,7 +35,10 @@ import com.fs.hisStore.vo.FsStoreProductExportVO;
 import com.fs.im.config.IMConfig;
 import com.fs.im.dto.OpenImResponseDTO;
 import com.fs.im.service.OpenIMService;
+import com.fs.qw.domain.FsCompanyCustomer;
 import com.fs.qw.domain.QwCompany;
+import com.fs.qw.param.TransferCustomerParam;
+import com.fs.qw.service.IFsCompanyCustomerService;
 import com.fs.qw.service.IQwCompanyService;
 import com.fs.qw.vo.CompanyUserQwVO;
 import com.fs.qw.vo.QwUserVO;
@@ -96,6 +99,9 @@ public class CompanyUserController extends BaseController
     @Autowired
     private ICompanyUserRoleService companyUserRoleService;
 
+    @Autowired
+    private IFsCompanyCustomerService fsCompanyCustomerService;
+
     private static final String appLink = "https://jump.ylrztop.com/jumpapp/pages/index/index?link=";
 
     /**
@@ -702,4 +708,29 @@ public class CompanyUserController extends BaseController
         }
         return R.ok().put("data",createOpen);
     }
+
+    //获取销售人员列表
+    @GetMapping("/getSaleList")
+    public AjaxResult getSaleList(){
+        List<CompanyUser> list = companyUserService.selectCompanyUserList(new CompanyUser());
+        return AjaxResult.success(list);
+    }
+
+    //获取销售人员管理的客户信息列表
+    @GetMapping("/getSaleCustomerList/{companyUserId}")
+    public AjaxResult getSaleCustomerList(@PathVariable Long companyUserId){
+        FsCompanyCustomer queryCondition = new FsCompanyCustomer();
+        List<Long> companyUserIds = new ArrayList<>();
+        companyUserIds.add(companyUserId);
+        queryCondition.setCompanyUserIds(companyUserIds);
+        List<FsCompanyCustomer> list =fsCompanyCustomerService.selectFsCompanyCustomerListByCompanyUserIds(queryCondition);
+        return AjaxResult.success(list);
+    }
+
+    //执行转交销售管理的客户信息
+    @PostMapping("/transferCustomer")
+    public AjaxResult transferPatient(@RequestBody TransferCustomerParam param) {
+        int rows = fsCompanyCustomerService.transferCustomer(param);
+        return toAjax(rows);
+    }
 }

+ 8 - 1
fs-service/src/main/java/com/fs/qw/mapper/FsCompanyCustomerMapper.java

@@ -1,7 +1,7 @@
 package com.fs.qw.mapper;
 
 import com.fs.qw.domain.FsCompanyCustomer;
-import org.apache.ibatis.annotations.Param;
+import com.fs.qw.param.TransferCustomerParam;
 
 import java.util.List;
 
@@ -48,4 +48,11 @@ public interface FsCompanyCustomerMapper {
      * @return 客户列表
      */
     List<FsCompanyCustomer> selectFsCompanyCustomerListByCompanyUserIds(FsCompanyCustomer fsCompanyCustomer);
+
+    /**
+     * 根据参数批量更新销售ID
+     * @param param 参数对象
+     * @return 更新数量
+     */
+    int updateCompanyUserIdByIds(TransferCustomerParam param);
 }

+ 17 - 0
fs-service/src/main/java/com/fs/qw/param/TransferCustomerParam.java

@@ -0,0 +1,17 @@
+package com.fs.qw.param;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class TransferCustomerParam {
+    //目标销售id
+    private Long targetDoctorId;
+
+    //目标销售名称
+    private String targetDoctorName;
+
+    //待转交的客户id列表
+    private List<Long> customerIds;
+}

+ 7 - 1
fs-service/src/main/java/com/fs/qw/service/IFsCompanyCustomerService.java

@@ -1,6 +1,8 @@
 package com.fs.qw.service;
 
 import com.fs.qw.domain.FsCompanyCustomer;
+import com.fs.qw.param.TransferCustomerParam;
+
 import java.util.List;
 
 /**
@@ -20,6 +22,10 @@ public interface IFsCompanyCustomerService {
 
     int deleteFsCompanyCustomerByIds(Long[] ids);
 
-    //查询关联销售的客户列表
+    //根据销售id查询销售管理的的客户信息列表
     List<FsCompanyCustomer> selectFsCompanyCustomerListByCompanyUserIds(FsCompanyCustomer fsCompanyCustomer);
+
+    //执行转交销售客户信息
+    int transferCustomer(TransferCustomerParam transferCustomerParam);
+
 }

+ 10 - 1
fs-service/src/main/java/com/fs/qw/service/impl/FsCompanyCustomerServiceImpl.java

@@ -3,6 +3,7 @@ package com.fs.qw.service.impl;
 import com.fs.common.exception.CustomException;
 import com.fs.qw.domain.FsCompanyCustomer;
 import com.fs.qw.mapper.FsCompanyCustomerMapper;
+import com.fs.qw.param.TransferCustomerParam;
 import com.fs.qw.service.IFsCompanyCustomerService;
 import org.apache.commons.collections4.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -77,7 +78,6 @@ public class FsCompanyCustomerServiceImpl implements IFsCompanyCustomerService {
     @Override
     public List<FsCompanyCustomer> selectFsCompanyCustomerListByCompanyUserIds(FsCompanyCustomer fsCompanyCustomer) {
         if (CollectionUtils.isEmpty(fsCompanyCustomer.getCompanyUserIds())){
-            // 返回空列表
             return Collections.emptyList();
         }
         List<FsCompanyCustomer> list =fsCompanyCustomerMapper.selectFsCompanyCustomerListByCompanyUserIds(fsCompanyCustomer);
@@ -86,4 +86,13 @@ public class FsCompanyCustomerServiceImpl implements IFsCompanyCustomerService {
         }
         return list;
     }
+
+    @Override
+    public int transferCustomer(TransferCustomerParam param) {
+        if (CollectionUtils.isEmpty(param.getCustomerIds())){
+            throw new CustomException("客户信息不存在");
+        }
+        //修改客户的归属销售id
+        return fsCompanyCustomerMapper.updateCompanyUserIdByIds(param);
+    }
 }

+ 12 - 0
fs-service/src/main/resources/mapper/qw/FsCompanyCustomerMapper.xml

@@ -164,4 +164,16 @@
         </foreach>
     </update>
 
+    <update id="updateCompanyUserIdByIds">
+        update fs_company_customer
+        set company_user_id   = #{targetDoctorId},
+        company_user_name = #{targetDoctorName},
+        update_time= sysdate()
+        where del_flag = '0'
+        and id in
+        <foreach collection="customerIds" item="id" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </update>
+
 </mapper>