舆情二期
This commit is contained in:
@@ -37,6 +37,7 @@ import java.text.SimpleDateFormat;
|
|||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.concurrent.CompletableFuture;
|
import java.util.concurrent.CompletableFuture;
|
||||||
|
import java.util.concurrent.ExecutionException;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@@ -123,6 +124,22 @@ public class MqMessageRecordServiceImpl extends ServiceImpl<MqMessageRecordMappe
|
|||||||
DiFyReq diFyReq = new DiFyReq();
|
DiFyReq diFyReq = new DiFyReq();
|
||||||
diFyReq.setUser(user);
|
diFyReq.setUser(user);
|
||||||
diFyReq.setInputs(difyCommunityTargetDTO);
|
diFyReq.setInputs(difyCommunityTargetDTO);
|
||||||
|
//调用DiFy工作流,并推送到社区
|
||||||
|
processDify(diFyReq, difyResult, aiAnalysisRequestId);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("舆情自动化异常:{}", e.getMessage());
|
||||||
|
//保存错误日志
|
||||||
|
aiAnalysisErrorsMapper.insert(AiAnalysisErrors.builder()
|
||||||
|
.aiAnalysisRequestId(aiAnalysisRequestId)
|
||||||
|
.difyResponse(difyResult.toJSONString())
|
||||||
|
.aiAnalysisErrorMessage(e.getMessage())
|
||||||
|
.aiAnalysisRequestType(BusinessTypeEnum.COMMUNITYTARGET.getCode())
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void processDify(DiFyReq diFyReq, JSONArray difyResult, String aiAnalysisRequestId) throws InterruptedException, ExecutionException {
|
||||||
// 并行调用三个workflow
|
// 并行调用三个workflow
|
||||||
//舆情案件分析
|
//舆情案件分析
|
||||||
CompletableFuture<JSONObject> caseWorkFlow = CompletableFuture.supplyAsync(() -> callCommunityWorkFlow(diFyReq,"app-cB5rd2VGIZn95u5GWgAnysj0"));
|
CompletableFuture<JSONObject> caseWorkFlow = CompletableFuture.supplyAsync(() -> callCommunityWorkFlow(diFyReq,"app-cB5rd2VGIZn95u5GWgAnysj0"));
|
||||||
@@ -141,18 +158,7 @@ public class MqMessageRecordServiceImpl extends ServiceImpl<MqMessageRecordMappe
|
|||||||
difyResult.add(keywordResult);
|
difyResult.add(keywordResult);
|
||||||
difyResult.add(clueAnalysisResult);
|
difyResult.add(clueAnalysisResult);
|
||||||
//处理结果
|
//处理结果
|
||||||
processingCommunityDifyResponse(caseResult,keywordResult,clueAnalysisResult,aiAnalysisRequestId);
|
processingCommunityDifyResponse(caseResult,keywordResult,clueAnalysisResult, aiAnalysisRequestId);
|
||||||
} catch (Exception e) {
|
|
||||||
log.error("舆情自动化异常:{}", e.getMessage());
|
|
||||||
//保存错误日志
|
|
||||||
aiAnalysisErrorsMapper.insert(AiAnalysisErrors.builder()
|
|
||||||
.aiAnalysisRequestId(aiAnalysisRequestId)
|
|
||||||
.difyResponse(difyResult.toJSONString())
|
|
||||||
.aiAnalysisErrorMessage(e.getMessage())
|
|
||||||
.aiAnalysisRequestType(BusinessTypeEnum.COMMUNITYTARGET.getCode())
|
|
||||||
.build());
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -613,12 +619,9 @@ public class MqMessageRecordServiceImpl extends ServiceImpl<MqMessageRecordMappe
|
|||||||
|
|
||||||
DiFyReq diFyReq = new DiFyReq();
|
DiFyReq diFyReq = new DiFyReq();
|
||||||
diFyReq.setUser(user);
|
diFyReq.setUser(user);
|
||||||
diFyReq.setFlowId(flowId);
|
|
||||||
diFyReq.setInputs(difyCommunityTargetDTO);
|
diFyReq.setInputs(difyCommunityTargetDTO);
|
||||||
//调用舆情文本分析dify工作流
|
JSONArray difyResult = new JSONArray();
|
||||||
JSONObject difResult = (JSONObject) diFyService.getDiFyObject(diFyReq);
|
processDify(diFyReq,difyResult,aiAnalysisError.getAiAnalysisRequestId());
|
||||||
//处理结果
|
|
||||||
processingCommunityDifyResponse(difResult,null,null,null);
|
|
||||||
|
|
||||||
//根据ai_analysis_request_id更新ai_analysis_errors表中的retry_count字段+1,更新status字段为1
|
//根据ai_analysis_request_id更新ai_analysis_errors表中的retry_count字段+1,更新status字段为1
|
||||||
aiAnalysisErrorsMapper.update(new AiAnalysisErrors(), new LambdaUpdateWrapper<AiAnalysisErrors>()
|
aiAnalysisErrorsMapper.update(new AiAnalysisErrors(), new LambdaUpdateWrapper<AiAnalysisErrors>()
|
||||||
|
|||||||
Reference in New Issue
Block a user