mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-09 02:46:50 +08:00
[DAT] 新增失败时发邮件
This commit is contained in:
@@ -14,7 +14,6 @@ import com.xboe.enums.CaseDocumentLogCaseStatusEnum;
|
|||||||
import com.xboe.enums.CaseDocumentLogOptStatusEnum;
|
import com.xboe.enums.CaseDocumentLogOptStatusEnum;
|
||||||
import com.xboe.enums.CaseDocumentLogOptTypeEnum;
|
import com.xboe.enums.CaseDocumentLogOptTypeEnum;
|
||||||
import com.xboe.enums.CaseDocumentLogRunStatusEnum;
|
import com.xboe.enums.CaseDocumentLogRunStatusEnum;
|
||||||
import com.xboe.module.assistance.service.IEmailService;
|
|
||||||
import com.xboe.module.assistance.service.ISmtpEmailService;
|
import com.xboe.module.assistance.service.ISmtpEmailService;
|
||||||
import com.xboe.module.boecase.dao.CaseDocumentLogDao;
|
import com.xboe.module.boecase.dao.CaseDocumentLogDao;
|
||||||
import com.xboe.module.boecase.dao.CasesDao;
|
import com.xboe.module.boecase.dao.CasesDao;
|
||||||
@@ -77,9 +76,6 @@ public class CaseKnowledgeServiceImpl implements ICaseKnowledgeService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private IAiAccessTokenService aiAccessTokenService;
|
private IAiAccessTokenService aiAccessTokenService;
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private IEmailService emailService;
|
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private ISmtpEmailService smtpEmailService;
|
private ISmtpEmailService smtpEmailService;
|
||||||
|
|
||||||
@@ -1197,6 +1193,7 @@ public class CaseKnowledgeServiceImpl implements ICaseKnowledgeService {
|
|||||||
* 根据文件状态更新日志记录
|
* 根据文件状态更新日志记录
|
||||||
*/
|
*/
|
||||||
private void updateLogStatusByFileStatus(CaseDocumentLog caseLog, String fileStatus) {
|
private void updateLogStatusByFileStatus(CaseDocumentLog caseLog, String fileStatus) {
|
||||||
|
boolean needToSendEmail = false;
|
||||||
try {
|
try {
|
||||||
boolean needUpdate = false;
|
boolean needUpdate = false;
|
||||||
|
|
||||||
@@ -1213,7 +1210,8 @@ public class CaseKnowledgeServiceImpl implements ICaseKnowledgeService {
|
|||||||
caseLog.setOptStatus(CaseDocumentLogOptStatusEnum.SUCCESS.getCode());
|
caseLog.setOptStatus(CaseDocumentLogOptStatusEnum.SUCCESS.getCode());
|
||||||
caseLog.setCaseStatus(CaseDocumentLogCaseStatusEnum.FAILED.getCode());
|
caseLog.setCaseStatus(CaseDocumentLogCaseStatusEnum.FAILED.getCode());
|
||||||
needUpdate = true;
|
needUpdate = true;
|
||||||
log.error("文档处理失败,更新状态,taskId: {}, caseId: {}", caseLog.getTaskId(), caseLog.getCaseId());
|
needToSendEmail = true;
|
||||||
|
log.error("文档处理失败,需要发送邮件,更新状态,taskId: {}, caseId: {}", caseLog.getTaskId(), caseLog.getCaseId());
|
||||||
} else {
|
} else {
|
||||||
// 其他状态(uploaded、texted、vectoring),不做数据变更
|
// 其他状态(uploaded、texted、vectoring),不做数据变更
|
||||||
log.info("文档状态为{},暂不更新数据库,taskId: {}", fileStatus, caseLog.getTaskId());
|
log.info("文档状态为{},暂不更新数据库,taskId: {}", fileStatus, caseLog.getTaskId());
|
||||||
@@ -1231,6 +1229,28 @@ public class CaseKnowledgeServiceImpl implements ICaseKnowledgeService {
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("更新日志状态异常,taskId: {}, fileStatus: {}", caseLog.getTaskId(), fileStatus, e);
|
log.error("更新日志状态异常,taskId: {}, fileStatus: {}", caseLog.getTaskId(), fileStatus, e);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (needToSendEmail) {
|
||||||
|
String subject = "【知识处理报警】AI平台处理失败-操作类型:【" + CaseDocumentLogOptTypeEnum.CREATE.getDesc() + "】";
|
||||||
|
StringBuilder content = new StringBuilder();
|
||||||
|
content.append("您好!知识处理流程中,AI平台业务处理失败,具体信息如下:<br/><br/>");
|
||||||
|
content.append("案例标题:").append(caseLog.getCaseTitle()).append("<br/>");
|
||||||
|
content.append("操作类型:").append(CaseDocumentLogOptTypeEnum.CREATE.getDesc()).append("<br/>");
|
||||||
|
content.append("调用时间:").append(caseLog.getOptTime()).append("<br/><br/>");
|
||||||
|
content.append("请及时核查文档处理失败原因,或联系AI平台技术支持排查解析问题。");
|
||||||
|
|
||||||
|
// 使用配置的收件人列表
|
||||||
|
List<String> recipients = caseAiProperties.getAlertEmailRecipients();
|
||||||
|
if (recipients != null && !recipients.isEmpty()) {
|
||||||
|
try {
|
||||||
|
String to = String.join(",", recipients);
|
||||||
|
// emailService.sendMail(to, subject, content.toString(), null);
|
||||||
|
smtpEmailService.sendMailBySmtp(to, subject, content.toString(), null);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("发送业务处理失败告警邮件失败", e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user