Merge remote-tracking branch 'origin/dev_20250519_resultInfo' into feature-20250520-release

# Conflicts:
#	ai-analytic-center-api/src/main/java/com/volvo/ai/analytic/center/enums/BusinessTypeEnum.java
This commit is contained in:
zren25
2025-05-19 14:17:03 +08:00
5 changed files with 141 additions and 5 deletions

View File

@@ -0,0 +1,103 @@
package com.volvo.ai.analytic.center.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* @description AI解析反馈明细表
* @author BEJSON
* @date 2025-03-11
*/
@Data
@TableName("tt_analysis_result_info")
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class TtAnalysisResultInfo {
private static final long serialVersionUID = 1L;
/**
* 主键id
*/
@TableId(value="id", type = IdType.AUTO)
private Long id;
@TableField(value="analysis_result_id")
private Long analysisResultId;
/**
* 语料Id
*/
@TableField("ai_analysis_request_id")
private String aiAnalysisRequestId;
/**
* 语料类型【1企业微信2电话】
*/
@TableField("analysis_type")
private String analysisType;
/**
* corpus_time
*/
@TableField("analysis_result")
private String analysisResult;
/**
* 删除标识0-未删除1-已删除)
*/
@TableField("is_deleted")
private Integer isDeleted;
/**
* 记录版本号,即乐观锁
*/
@TableField("version")
private Integer version;
/**
* 创建人
*/
@TableField("create_by")
private String createBy;
/**
* 更新人
*/
@TableField("update_by")
private String updateBy;
/**
* 创建sql人
*/
@TableField("create_sqlby")
private String createSqlby;
/**
* 更新sql人
*/
@TableField("update_sqlby")
private String updateSqlby;
/**
* 创建时间
*/
@TableField("create_time")
private Date createTime;
/**
* 更新时间
*/
@TableField("update_time")
private Date updateTime;
}

View File

@@ -21,9 +21,10 @@ public enum BusinessTypeEnum {
AUDITRULES("AuditRules", "审计规则配置"),
CASE("case", "舆情事件")
CASE("case", "舆情事件"),
;
SMART_ASSISTANT_NAMEPLATE("SMART_ASSISTANT_NAMEPLATE", "智能助手-铭牌")
;
private String code;
private String message;

View File

@@ -0,0 +1,16 @@
package com.volvo.ai.analytic.center.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.volvo.ai.analytic.center.entity.TtAnalysisResultInfo;
import org.apache.ibatis.annotations.Mapper;
/**
* @description Ai分析结果明细表
* @author BEJSON
* @date 2025-03-04
*/
@Mapper
public interface TtAnalysisResultInfoMapper extends BaseMapper<TtAnalysisResultInfo> {
}

View File

@@ -2,7 +2,10 @@ package com.volvo.ai.analytic.center.mq;
import com.alibaba.fastjson.JSONObject;
import com.volvo.ai.analytic.center.entity.TmAnalysisResult;
import com.volvo.ai.analytic.center.entity.TtAnalysisResultInfo;
import com.volvo.ai.analytic.center.enums.BusinessTypeEnum;
import com.volvo.ai.analytic.center.mapper.AiAnalysisRequestLogsMapper;
import com.volvo.ai.analytic.center.mapper.TtAnalysisResultInfoMapper;
import com.volvo.ai.analytic.center.service.TmAnalysisResultService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
@@ -12,7 +15,9 @@ import org.apache.rocketmq.spring.core.RocketMQListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@Slf4j
@Component
@@ -26,6 +31,9 @@ public class CorpushIsLikeConsumer implements RocketMQListener<MessageExt>{
@Autowired
private AiAnalysisRequestLogsMapper aiAnalysisRequestLogsMapper;
@Autowired
private TtAnalysisResultInfoMapper ttAnalysisResultInfoMapper;
@Override
public void onMessage(MessageExt messageExt) {
@@ -44,13 +52,20 @@ public class CorpushIsLikeConsumer implements RocketMQListener<MessageExt>{
log.info(" 回调的aiAnalysisRequestType为空{} ", aiAnalysisRequestType);
return;
}
//   "isLike": "1" // 1点赞2点踩
tmAnalysisResultService.saveTmCorpusReport(TmAnalysisResult.builder()
TmAnalysisResult tmAnalysisResult = TmAnalysisResult.builder()
.aiAnalysisRequestId(execDifyFlow.getString("analysisRecordId"))
.analysisResult(execDifyFlow.toJSONString())
.analysisType(aiAnalysisRequestType)
.updateTime(new Date())
.build());
.build();
//   "isLike": "1" // 1点赞2点踩
tmAnalysisResultService.saveTmCorpusReport(tmAnalysisResult);
List<String> aiAnalysisRequestIdList = Arrays.asList(BusinessTypeEnum.SMART_ASSISTANT.getCode(),BusinessTypeEnum.SMART_ASSISTANT_QIWEI.getCode(),BusinessTypeEnum.SMART_ASSISTANT_NAMEPLATE.getCode());
if(aiAnalysisRequestIdList.contains(aiAnalysisRequestType)){
// 保存明细
ttAnalysisResultInfoMapper.insert(TtAnalysisResultInfo.builder().analysisResultId(tmAnalysisResult.getId()).analysisType(aiAnalysisRequestType).aiAnalysisRequestId(analysisRecordId).analysisResult(execDifyFlow.toJSONString()).build());
}
} catch (Exception e) {
log.info(" corpushIsLikeConsumer AI结果回传处理异常{} ", e);
}

View File

@@ -24,6 +24,7 @@ public class TmAnalysisResultServiceImpl extends ServiceImpl<TmAnalysisResultMap
if (oldTmCorpusReport == null) {
return tmCorpusReportMapper.insert(tmAnalysisResult) > 0;
} else {
tmAnalysisResult.setId(oldTmCorpusReport.getId());
return tmCorpusReportMapper.update(tmAnalysisResult, queryWrapper) > 0;
}
}