定时任务处理舆情异常

This commit is contained in:
lxu75
2025-03-13 17:20:08 +08:00
parent adc3b42cb2
commit 4cf0751938

View File

@@ -543,31 +543,41 @@ public class MqMessageRecordServiceImpl extends ServiceImpl<MqMessageRecordMappe
if (aiAnalysisErrors != null && aiAnalysisErrors.size() > 0) {
//根据ai_analysis_request_id获取AiAnalysisRequestLogs表中的对应的dify_request字段
for (AiAnalysisErrors aiAnalysisError : aiAnalysisErrors) {
AiAnalysisRequestLogs aiAnalysisRequestLogs = aiAnalysisRequestLogsMapper.selectOne(new LambdaQueryWrapper<AiAnalysisRequestLogs>()
.eq(AiAnalysisRequestLogs::getAiAnalysisRequestId, aiAnalysisError.getAiAnalysisRequestId()));
if (aiAnalysisRequestLogs != null) {
//获取dify_request字段
String difyRequest = aiAnalysisRequestLogs.getDifyRequest();
if (StringUtils.isNotEmpty(difyRequest)) {
//调用dify接口
DiFyReq diFyReq = new DiFyReq();
diFyReq.setUser(user);
diFyReq.setFlowId(flowId);
diFyReq.setInputs(JSONObject.parseObject(difyRequest));
JSONObject difResult = (JSONObject) diFyService.getDiFyObject(diFyReq);
this.dueCommunityDifyResponse(difResult);
try {
AiAnalysisRequestLogs aiAnalysisRequestLogs = aiAnalysisRequestLogsMapper.selectOne(new LambdaQueryWrapper<AiAnalysisRequestLogs>()
.eq(AiAnalysisRequestLogs::getAiAnalysisRequestId, aiAnalysisError.getAiAnalysisRequestId()));
if (aiAnalysisRequestLogs != null) {
//获取dify_request字段
String difyRequest = aiAnalysisRequestLogs.getDifyRequest();
if (StringUtils.isNotEmpty(difyRequest)) {
//调用dify接口
DiFyReq diFyReq = new DiFyReq();
diFyReq.setUser(user);
diFyReq.setFlowId(flowId);
diFyReq.setInputs(JSONObject.parseObject(difyRequest));
JSONObject difResult = (JSONObject) diFyService.getDiFyObject(diFyReq);
this.dueCommunityDifyResponse(difResult);
//根据ai_analysis_request_id更新ai_analysis_errors表中的retry_count字段+1,更新status字段为1
aiAnalysisErrorsMapper.update(new AiAnalysisErrors(), new LambdaUpdateWrapper<AiAnalysisErrors>()
.eq(AiAnalysisErrors::getAiAnalysisRequestId, aiAnalysisError.getAiAnalysisRequestId())
.set(AiAnalysisErrors::getRetryCount, aiAnalysisError.getRetryCount() + 1)
.set(AiAnalysisErrors::getAiAnalysisErrorHandlingStatus, "1"));
}else{
aiAnalysisErrorsMapper.update(new AiAnalysisErrors(), new LambdaUpdateWrapper<AiAnalysisErrors>()
.eq(AiAnalysisErrors::getAiAnalysisRequestId, aiAnalysisError.getAiAnalysisRequestId())
.set(AiAnalysisErrors::getAiAnalysisErrorHandlingStatus, "2"));
}
}
//根据ai_analysis_request_id更新ai_analysis_errors表中的retry_count字段+1,更新status字段为1
} catch (Exception e) {
log.error("补偿社区消息,AIID:{},异常:{}",aiAnalysisError.getAiAnalysisRequestId(), e);
aiAnalysisErrorsMapper.update(new AiAnalysisErrors(), new LambdaUpdateWrapper<AiAnalysisErrors>()
.eq(AiAnalysisErrors::getAiAnalysisRequestId, aiAnalysisError.getAiAnalysisRequestId())
.set(AiAnalysisErrors::getRetryCount, aiAnalysisError.getRetryCount() + 1)
.set(AiAnalysisErrors::getAiAnalysisErrorHandlingStatus, "1"));
.set(AiAnalysisErrors::getRetryCount, aiAnalysisError.getRetryCount() + 1));
}
}
}
} catch (Exception e) {
throw new RuntimeException(e);
log.error("处理社区异常消息异常:{}", e);
}
}