Prechádzať zdrojové kódy

外呼机器人-通话记录

yangzian 2 rokov pred
rodič
commit
413f3ac9cb

+ 6 - 1
ruixuan-salesLeads/src/main/java/com.ruixuan.salesLeads/pojo/SaleClueCallResultPojo.java

@@ -86,9 +86,14 @@ public class SaleClueCallResultPojo {
     @ApiModelProperty("客户关注点")
     private String focus;
 
-    @ApiModelProperty("对话内容")
+    @ApiModelProperty("对话内容-原数据")
     private String content;
 
+    @ApiModelProperty("机器人对话内容")
+    private List robotContent;
+    @ApiModelProperty("客户对话内容")
+    private List speakerContent;
+
     @ApiModelProperty("创建时间")
     private Date createTime;
 

+ 3 - 0
ruixuan-salesLeads/src/main/java/com.ruixuan.salesLeads/pojo/SaleClueInfoPojo.java

@@ -68,6 +68,9 @@ public class SaleClueInfoPojo {
     @ApiModelProperty("是否分配销售 0-否 1-是'")
     private int distributionSaleFlag;
 
+    @ApiModelProperty("是否导入电话记录 0-否 1-是")
+    private int importPhoneFlag;
+
     @ApiModelProperty("销售人员id")
     private Long saleId;
     @ApiModelProperty("销售人员")

+ 2 - 0
ruixuan-salesLeads/src/main/java/com.ruixuan.salesLeads/pojo/vo/SaleRecordVo.java

@@ -63,6 +63,8 @@ public class SaleRecordVo {
 
     @ApiModelProperty("是否分配销售 0-否 1-是'")
     private int distributionSaleFlag;
+    @ApiModelProperty("导入电话记录 0-否 1-是")
+    private int importPhoneFlag;
 
     @ApiModelProperty("销售人员id")
     private Long saleId;

+ 1 - 1
ruixuan-salesLeads/src/main/java/com.ruixuan.salesLeads/service/impl/SaleClueInfoServiceImpl.java

@@ -158,7 +158,7 @@ public class SaleClueInfoServiceImpl implements ISaleClueInfoService {
                 continue;
             }
 
-
+            //log.info("datamap----{}",dataMap);
             SaleClueInfoPojo clue = new SaleClueInfoPojo();
             SaleQuotaInfoPojo quota = new SaleQuotaInfoPojo();
 

+ 13 - 0
ruixuan-salesLeads/src/main/java/com.ruixuan.salesLeads/service/impl/TelephoneRobotServiceImpl.java

@@ -36,6 +36,7 @@ import org.springframework.web.multipart.MultipartFile;
 
 import java.util.*;
 import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
 
 /**
  * ***************************************************
@@ -125,6 +126,10 @@ public class TelephoneRobotServiceImpl implements ITelephoneRobotService {
             //SaleRecordVo saleInfo = saleClueInfoMapper.selectSaleClueInfoBySellerId(sellerId);
             //销售线索id查询
             SaleRecordVo saleInfo = saleClueInfoMapper.selectSaleClueInfoById(sellerId.intValue());
+            if (saleInfo == null){
+                log.info("销售线索查询为空---》》》线索id---{}",sellerId);
+                continue;
+            }
             Map<String,Object> param = new HashMap<>();
             param.put("id",saleInfo.getId());
             param.put("name",saleInfo.getSellerId());
@@ -211,6 +216,14 @@ public class TelephoneRobotServiceImpl implements ITelephoneRobotService {
         //查询导入记录
         List<SaleClueCallResultPojo> callResultList = saleClueCallResultMapper.getSaleClueCallResultList(createTime,state);
 
+        for (SaleClueCallResultPojo resultPojo : callResultList) {
+            List<Map> contentList = JSONObject.parseArray(resultPojo.getContent(),Map.class);
+            Map<String,List<Map>> map = contentList.stream().collect(Collectors.groupingBy(m -> m.get("speaker").toString()));
+            resultPojo.setSpeakerContent(map == null ? null : map.get("Contact"));
+            resultPojo.setRobotContent(map == null ? null : map.get("Robot"));
+        }
+
+
         return ResultResponse.successMsg("查询通话记录成功。",new TableDataInfo(callResultList,new Long(new PageInfo(callResultList).getTotal()).intValue()));
     }
 

+ 7 - 0
ruixuan-salesLeads/src/main/resources/mapper/salesLeads/SaleClueInfoMapper.xml

@@ -19,6 +19,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		transition_flag,
 		upload_date,
 		distribution_sale_flag,
+		import_phone_flag,
 		sale_id,
 		`state`,
 		offline_sale_flag,
@@ -39,6 +40,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			#{info.transitionFlag},
 			#{info.uploadDate},
 			#{info.distributionSaleFlag},
+			#{info.importPhoneFlag},
 			#{info.saleId},
 			#{info.state},
 			#{info.offlineSaleFlag},
@@ -68,6 +70,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			s.transition_flag,
 			s.upload_date,
 			s.distribution_sale_flag,
+			s.import_phone_flag,
 			s.sale_id,
 			(SELECT u.nick_name FROM sys_user u WHERE u.user_id = s.sale_id ) saleName,
 			s.state,
@@ -134,6 +137,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			s.transition_flag,
 			s.upload_date,
 			s.distribution_sale_flag,
+			s.import_phone_flag,
 			s.sale_id,
 			(SELECT u.nick_name FROM sys_user u WHERE u.user_id = s.sale_id ) saleName,
 			s.state,
@@ -172,6 +176,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			s.transition_flag,
 			s.upload_date,
 			s.distribution_sale_flag,
+			s.import_phone_flag,
 			s.sale_id,
 			s.state,
 			s.offline_sale_flag,
@@ -249,6 +254,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		s.transition_flag,
 		s.upload_date,
 		s.distribution_sale_flag,
+		s.import_phone_flag,
 		s.sale_id,
 		(SELECT u.nick_name FROM sys_user u WHERE u.user_id = s.sale_id ) saleName,
 		s.state,
@@ -293,6 +299,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		s.transition_flag,
 		s.upload_date,
 		s.distribution_sale_flag,
+		s.import_phone_flag,
 		s.sale_id,
 		(SELECT u.nick_name FROM sys_user u WHERE u.user_id = s.sale_id ) saleName,
 		s.state,