回调更新report

This commit is contained in:
jie.lu
2025-07-24 14:33:40 +08:00
parent 0af598039e
commit c5d6857935
8 changed files with 69 additions and 18 deletions

View File

@@ -9,9 +9,11 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.volvo.ai.analytic.center.dto.req.AnalysisQueryReq;
import com.volvo.ai.analytic.center.dto.req.AnalysisReq;
import com.volvo.ai.analytic.center.dto.req.ConsultingRequestDTO;
import com.volvo.ai.analytic.center.dto.req.SummaryQuestionRequestDTO;
import com.volvo.ai.analytic.center.dto.resp.AnalysisResp;
import com.volvo.ai.analytic.center.service.AiAnalysisDifyService;
import com.volvo.ai.analytic.center.service.CorpusQuestionService;
import com.volvo.ai.analytic.center.service.UserQuestionSummaryService;
import com.volvo.common.core.util.ResultMsg;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -30,14 +32,11 @@ import org.springframework.web.bind.annotation.*;
@RequestMapping("analysis")
public class AiAnalysisDifyController {
@Autowired
private RocketMQTemplate rocketMQTemplate;
@Autowired
private AiAnalysisDifyService aiAnalysisDifyService;
@Autowired
private CorpusQuestionService corpusQuestionService;
private UserQuestionSummaryService userQuestionSummaryService;
@PostMapping("/updateByAiId")
@ApiOperation(value = "更新dify结果")
@@ -79,13 +78,12 @@ public class AiAnalysisDifyController {
@PostMapping("/corpusQuestion")
@PostMapping("/corpusSummaryQuestion")
@ApiOperation(value = "单条语料分析结论入库")
public AnalysisResp<Object> corpusQuestion(@RequestHeader(value = "appKey") String appKey,
@RequestBody ConsultingRequestDTO requestDTO) {
log.info("aiAnalyze corpusQuestion requestDTO: {} ,appKey:{}", JSON.toJSONString(requestDTO),appKey);
public AnalysisResp<Object> corpusSummaryQuestion(@RequestBody SummaryQuestionRequestDTO requestDTO) {
log.info("aiAnalyze corpusSummaryQuestion requestDTO: {}", JSON.toJSONString(requestDTO));
// 打印接收到的参数
corpusQuestionService.runCorpusQuestionDify(requestDTO);
userQuestionSummaryService.updateSummery(requestDTO);
return AnalysisResp .success("ok");
}

View File

@@ -1,8 +1,12 @@
package com.volvo.ai.analytic.center.mapper;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.volvo.ai.analytic.center.entity.TmCorpusQuestionSummaryReport;
public interface TmCorpusQuestionSummaryReportMapper extends BaseMapper<TmCorpusQuestionSummaryReport> {
int updateBySummaryReportId(@Param("summaryReportId") String summaryReportId, @Param("preliminarySummaryResults") String preliminarySummaryResults);
}

View File

@@ -1,6 +1,7 @@
package com.volvo.ai.analytic.center.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.volvo.ai.analytic.center.dto.req.SummaryQuestionRequestDTO;
import com.volvo.ai.analytic.center.entity.TmCorpusQuestionSummaryReport;
/**
* @description 用户问题总结
@@ -11,5 +12,7 @@ public interface UserQuestionSummaryService extends IService<TmCorpusQuestionSum
void runUserQuestionSummary(String paramJson);
void updateSummery(SummaryQuestionRequestDTO summaryQuestionRequestDTO);
}

View File

@@ -4,11 +4,14 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.volvo.ai.analytic.center.dto.corpus.ImCurMessageDTO;
import com.volvo.ai.analytic.center.dto.req.DiFyReq;
import com.volvo.ai.analytic.center.dto.req.SummaryQuestionRequestDTO;
import com.volvo.ai.analytic.center.entity.*;
import com.volvo.ai.analytic.center.enums.BusinessTypeEnum;
import com.volvo.ai.analytic.center.enums.QuestionMainCategoryEnum;
import com.volvo.ai.analytic.center.mapper.TmCorpusQuestionReportMapper;
import com.volvo.ai.analytic.center.mapper.TmCorpusQuestionSummaryReportMapper;
import com.volvo.ai.analytic.center.service.*;
import com.volvo.ai.analytic.center.utils.AiAnalysisUtils;
import com.volvo.ai.analytic.center.utils.ConstantStr;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
@@ -83,6 +86,15 @@ public class UserQuestionSummaryServiceImpl extends ServiceImpl<TmCorpusQuestion
log.info("处理问题结束 耗时:{}",System.currentTimeMillis()-startTime);
}
@Override
public void updateSummery(SummaryQuestionRequestDTO summaryQuestionRequestDTO) {
if (summaryQuestionRequestDTO == null || summaryQuestionRequestDTO.getSummaryReportId() == null || StringUtils.isBlank(summaryQuestionRequestDTO.getPreliminarySummaryResults())) {
return;
}
tmCorpusQuestionSummaryReportMapper.updateBySummaryReportId(summaryQuestionRequestDTO.getSummaryReportId(), summaryQuestionRequestDTO.getPreliminarySummaryResults());
}
private void processItem(Date statTime, Date endTime, String mainCategoryString) {
log.info("用户问题总结处理mainCategory{}", mainCategoryString);
@@ -92,6 +104,13 @@ public class UserQuestionSummaryServiceImpl extends ServiceImpl<TmCorpusQuestion
if (resultList == null || resultList.isEmpty()) {
return;
}
TmCorpusQuestionSummaryReport summaryReport = new TmCorpusQuestionSummaryReport();
summaryReport.setMainCategory(mainCategoryString);
summaryReport.setSourceTime(statTime);
String aiAnalysisRequestId = AiAnalysisUtils.getAiAnalysisRequestId(BusinessTypeEnum.SUMMARY_REPORT.getCode());
summaryReport.setSummaryReportId(aiAnalysisRequestId);
tmCorpusQuestionSummaryReportMapper.insert(summaryReport);
// 组装语料信息
StringBuffer demandList = new StringBuffer();
@@ -102,6 +121,7 @@ public class UserQuestionSummaryServiceImpl extends ServiceImpl<TmCorpusQuestion
});
Map<String, Object> inputMap = new HashMap<>();
inputMap.put("chat", demandList.toString());
inputMap.put("summaryReportId", aiAnalysisRequestId);
DiFyReq diFyImageReq = new DiFyReq();
diFyImageReq.setUser(ConstantStr.corpus_user);
@@ -111,15 +131,6 @@ public class UserQuestionSummaryServiceImpl extends ServiceImpl<TmCorpusQuestion
JSONObject resultJsonObject = (JSONObject) diFyService.getDiFyObject(diFyImageReq);
log.info("runDify userQuestionSummary difyflow {}", resultJsonObject);
// 保存结果
if (resultJsonObject != null) {
TmCorpusQuestionSummaryReport summaryReport = new TmCorpusQuestionSummaryReport();
summaryReport.setPreliminarySummaryResults(resultJsonObject.getString("preliminarySummaryResults"));
summaryReport.setMainCategory(mainCategoryString);
summaryReport.setSourceTime(statTime);
tmCorpusQuestionSummaryReportMapper.insert(summaryReport);
}
}
/**

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.volvo.ai.analytic.center.mapper.TmCorpusQuestionSummaryReportMapper">
<update id="updateBySummaryReportId">
update tm_corpus_question_summary_report
set preliminary_summary_results = #{preliminarySummaryResults}
where summary_report_id = #{summaryReportId}
</update>
</mapper>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.volvo.ai.analytic.center.mapper.TmCorpusQuestionSummaryReportMapper">
<update id="updateBySummaryReportId">
update tm_corpus_question_summary_report
set preliminary_summary_results = #{preliminarySummaryResults}
where summary_report_id = #{summaryReportId}
</update>
</mapper>