新增脱敏处理

This commit is contained in:
lxu75
2025-04-14 17:33:28 +08:00
parent 4aa5d85200
commit 09f5c86d26

View File

@@ -7,12 +7,16 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.obs.services.model.ObsObject;
import com.volvo.ai.analytic.center.constant.ClaimVerificationConstant;
import com.volvo.ai.analytic.center.constant.Constant;
import com.volvo.ai.analytic.center.dto.req.ClaimVerificationFileDTO;
import com.volvo.ai.analytic.center.dto.req.DiFyReq;
import com.volvo.ai.analytic.center.dto.req.RunMaskingRuleInput;
import com.volvo.ai.analytic.center.entity.AiAnalysisRequestLogs;
import com.volvo.ai.analytic.center.entity.AiAnalyticBusinessConfig;
import com.volvo.ai.analytic.center.entity.DataMaskingRule;
import com.volvo.ai.analytic.center.enums.BusinessTypeEnum;
import com.volvo.ai.analytic.center.enums.ClaimVerificationFileTypeEnums;
import com.volvo.ai.analytic.center.service.DataMaskingRuleService;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.text.StringEscapeUtils;
import com.volvo.ai.analytic.center.feign.DiFyFeign;
@@ -64,6 +68,9 @@ public class ClaimVerificationServiceImpl implements ClaimVerificationService {
@Autowired
private RocketMQTemplate rocketMQTemplate;
@Autowired
private DataMaskingRuleService dataMaskingRuleService;
@Override
public void consumerMessageByMQ(String message) {
log.info("售后索赔检核MQ message: {}", message);
@@ -182,16 +189,25 @@ public class ClaimVerificationServiceImpl implements ClaimVerificationService {
.map(AiAnalyticBusinessConfig::getConfigData)
.collect(Collectors.joining(" "));
//组装审计报告workflow入参
JSONObject auditRules = new JSONObject();
auditRules.put("analysisRules", configDataString);
auditRules.put("diagnosticReport", claimVerificationFileAnalysisDTO.getDiagnosticReport().toString());
auditRules.put("preCheckReport", claimVerificationFileAnalysisDTO.getPreCheckReport().toString());
auditRules.put("dtcReport", claimVerificationFileAnalysisDTO.getDtcReport().toString());
JSONObject audit = new JSONObject();
audit.put("analysisRules", configDataString);
audit.put("diagnosticReport", claimVerificationFileAnalysisDTO.getDiagnosticReport().toString());
audit.put("preCheckReport", claimVerificationFileAnalysisDTO.getPreCheckReport().toString());
audit.put("dtcReport", claimVerificationFileAnalysisDTO.getDtcReport().toString());
//脱敏处理
List<DataMaskingRule> maskingRuleItems = dataMaskingRuleService.getDataMaskingRuleListByApplicationChannel(Constant.CHANNEL_DCC);
RunMaskingRuleInput runMaskingRuleInput = new RunMaskingRuleInput();
runMaskingRuleInput.setDataMaskingRules(maskingRuleItems);
runMaskingRuleInput.setOldStr(audit.toString());
String corpusChat = dataMaskingRuleService.runMaskingRule(runMaskingRuleInput);
JSONObject parsedAudit = JSON.parseObject(corpusChat);
DiFyReq diFyReq = new DiFyReq();
diFyReq.setUser(BusinessTypeEnum.CLAIM_VERIFICATION.getCode());
diFyReq.setFlowId(verificationToken);
diFyReq.setInputs(auditRules);
diFyReq.setInputs(parsedAudit);
//调用dify 工作流
JSONObject diFyObject = (JSONObject) diFyService.getDiFyObject(diFyReq);
//处理结果并推送MQ