mirror of
https://gitcode.com/ageerle/ruoyi-ai.git
synced 2026-03-13 20:53:42 +08:00
修改异常节点
This commit is contained in:
@@ -1,38 +0,0 @@
|
||||
package org.ruoyi.workflow.dto.node;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 为大模型返回信息封装的信息DTO(发送邮箱)
|
||||
*/
|
||||
@Data
|
||||
public class LLmMailSendNodeConfigDto {
|
||||
|
||||
/**
|
||||
* 主题
|
||||
*/
|
||||
private String subject;
|
||||
|
||||
/**
|
||||
* 内容
|
||||
*/
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 收件邮箱
|
||||
*/
|
||||
@JsonProperty("to_mails")
|
||||
private String toMails;
|
||||
|
||||
/**
|
||||
* 抄送邮箱
|
||||
*/
|
||||
@JsonProperty("cc_mails")
|
||||
private String ccMails;
|
||||
|
||||
/**
|
||||
* 发送类型
|
||||
*/
|
||||
private Integer senderType;
|
||||
}
|
||||
@@ -184,6 +184,8 @@ public class WorkflowEngine {
|
||||
errorMsg = "并行节点中不能包含条件分<EFBFBD>?";
|
||||
}
|
||||
errorMsg = nodeMessageTemplate + errorMsg;
|
||||
// 保存会话信息且发送驱动消息事件
|
||||
WorkflowMessageUtil.saveWorkflowMessage(wfState, errorMsg);
|
||||
sseEmitterHelper.sendErrorAndComplete(user.getId(), sseEmitter, errorMsg);
|
||||
workflowRuntimeService.updateStatus(wfRuntimeResp.getId(), WORKFLOW_PROCESS_STATUS_FAIL, errorMsg);
|
||||
}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
package org.ruoyi.workflow.workflow.node.mailSend;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.alibaba.fastjson.JSONValidator;
|
||||
import jakarta.mail.internet.MimeMessage;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.ruoyi.workflow.dto.node.LLmMailSendNodeConfigDto;
|
||||
import org.ruoyi.workflow.entity.WorkflowComponent;
|
||||
import org.ruoyi.workflow.entity.WorkflowNode;
|
||||
import org.ruoyi.workflow.workflow.NodeProcessResult;
|
||||
@@ -15,7 +15,6 @@ import org.ruoyi.workflow.workflow.WorkflowUtil;
|
||||
import org.ruoyi.workflow.workflow.data.NodeIOData;
|
||||
import org.ruoyi.workflow.workflow.node.AbstractWfNode;
|
||||
import org.ruoyi.workflow.workflow.node.enmus.NodeMessageTemplateEnum;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.mail.javamail.JavaMailSender;
|
||||
import org.springframework.mail.javamail.JavaMailSenderImpl;
|
||||
import org.springframework.mail.javamail.MimeMessageHelper;
|
||||
@@ -42,9 +41,10 @@ public class MailSendNode extends AbstractWfNode {
|
||||
String input = getDataFromInput(inputs);
|
||||
// 判断是否为JSON格式(LLM输出转换 由LLM生成格式)
|
||||
if (StringUtils.isNotBlank(input) && isJson(input)) {
|
||||
LLmMailSendNodeConfigDto lLmMailSendNodeConfigDto = JSONObject.parseObject(input, LLmMailSendNodeConfigDto.class);
|
||||
// 保留原本Sender和Smtp对象
|
||||
BeanUtils.copyProperties(lLmMailSendNodeConfigDto, config);
|
||||
JSONObject inputJson = JSON.parseObject(input);
|
||||
JSONObject configJson = (JSONObject) JSON.toJSON(config);
|
||||
configJson.putAll(inputJson);
|
||||
config = configJson.toJavaObject(MailSendNodeConfig.class);
|
||||
}
|
||||
|
||||
// 安全获取模板(使用 defaultString 避免 null)
|
||||
|
||||
Reference in New Issue
Block a user