|
|
@@ -1,7 +1,9 @@
|
|
|
package com.fs.company.service.impl;
|
|
|
|
|
|
+import cn.hutool.core.util.ObjectUtil;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.fs.aicall.domain.apiresult.Notify;
|
|
|
@@ -46,7 +48,10 @@ import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.scheduling.annotation.Async;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import java.util.*;
|
|
|
+import java.util.function.Function;
|
|
|
import java.util.stream.Collectors;
|
|
|
+
|
|
|
+import static com.fs.company.service.impl.call.node.AbstractWorkflowNode.companyVoiceRoboticCallLogCallphoneMapper;
|
|
|
import static com.fs.company.service.impl.call.node.AiCallTaskNode.EASYCALL_WORKFLOW_REDIS_KEY;
|
|
|
|
|
|
|
|
|
@@ -1536,6 +1541,31 @@ public class CompanyVoiceRoboticServiceImpl extends ServiceImpl<CompanyVoiceRobo
|
|
|
.filter(Objects::nonNull)
|
|
|
.collect(Collectors.toList());
|
|
|
|
|
|
+ //拿取业务id
|
|
|
+ List<Long> businessIds = records.stream()
|
|
|
+ .map(WorkflowExecRecordVo::getBusinessId)
|
|
|
+ .filter(Objects::nonNull)
|
|
|
+ .collect(Collectors.toList());
|
|
|
+
|
|
|
+ if (!businessIds.isEmpty()) {
|
|
|
+ List<CompanyVoiceRoboticBusiness> businesses = companyVoiceRoboticBusinessMapper.selectList(new LambdaQueryWrapper<CompanyVoiceRoboticBusiness>()
|
|
|
+ .in(CompanyVoiceRoboticBusiness::getId, businessIds));
|
|
|
+ if (ObjectUtil.isNotEmpty(businesses)) {
|
|
|
+ Map<Long, CompanyVoiceRoboticBusiness> businessMap = businesses.stream().collect(Collectors.toMap(CompanyVoiceRoboticBusiness::getId, Function.identity()));
|
|
|
+ records.forEach(record -> {
|
|
|
+ if (record.getBusinessId() != null && businessMap.containsKey(record.getBusinessId())) {
|
|
|
+ CompanyVoiceRoboticBusiness business = businessMap.get(record.getBusinessId());
|
|
|
+ CompanyVoiceRoboticCallLogCallphone callLogCallphone = companyVoiceRoboticCallLogCallphoneMapper.selectOne(new LambdaQueryWrapper<CompanyVoiceRoboticCallLogCallphone>()
|
|
|
+ .eq(CompanyVoiceRoboticCallLogCallphone::getRoboticId, business.getRoboticId())
|
|
|
+ .eq(CompanyVoiceRoboticCallLogCallphone::getCallerId, business.getCalleeId()));
|
|
|
+ if (ObjectUtil.isNotEmpty(callLogCallphone)) {
|
|
|
+ record.setContentList(callLogCallphone.getContentList());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
if (!instanceIds.isEmpty()) {
|
|
|
List<CompanyAiWorkflowExecLog> allLogs = companyAiWorkflowExecLogMapper.selectByInstanceIds(instanceIds);
|
|
|
|