refactor(dify): 优化 workflow 数据处理
- 修改 WorkflowData 实体类,将 data 字段类型从 String 改为 WorkflowRunResponse.WorkflowRunData - 更新 DifyWorkflowServiceImpl 中的数据处理逻辑,直接使用 WorkflowRunResponse.WorkflowRunData 对象 - 在 WorkflowRepository 中添加 getData 方法,用于获取未解析的 data 字符串
This commit is contained in:
parent
b299e5a6b1
commit
b6ba156d67
@ -35,9 +35,9 @@ public class WorkflowData{
|
||||
@TableField(value = "dept_id", fill = FieldFill.INSERT)
|
||||
private Long deptId;
|
||||
|
||||
@TableField(exist = false)
|
||||
private WorkflowRunResponse.WorkflowRunData runData;
|
||||
|
||||
@TableField(typeHandler = JsonbTypeHandler.class)
|
||||
private String data;
|
||||
private WorkflowRunResponse.WorkflowRunData data;
|
||||
|
||||
// @TableField(typeHandler = JsonbTypeHandler.class)
|
||||
// private String runData;
|
||||
}
|
||||
|
@ -2,6 +2,10 @@ package com.zsc.edu.dify.modules.dify.repo;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.zsc.edu.dify.modules.dify.entity.WorkflowData;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
public interface WorkflowRepository extends BaseMapper<WorkflowData> {
|
||||
|
||||
@Select("select data from workflow_data where id = #{id}")
|
||||
String getData(Long id);
|
||||
}
|
||||
|
@ -16,6 +16,8 @@ import jakarta.annotation.Resource;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.nio.ByteBuffer;
|
||||
|
||||
@AllArgsConstructor
|
||||
@Service
|
||||
public class DifyWorkflowServiceImpl extends ServiceImpl<WorkflowRepository, WorkflowData> implements DifyWorkflowService {
|
||||
@ -39,7 +41,7 @@ public class DifyWorkflowServiceImpl extends ServiceImpl<WorkflowRepository, Wor
|
||||
WorkflowRunResponse response = difyWorkflow.runWorkflow(request);
|
||||
WorkflowData workflowData =mapper.toEntity(response);
|
||||
workflowData.setAppId(appId);
|
||||
workflowData.setData(String.valueOf(response.getData()));
|
||||
workflowData.setData(response.getData());
|
||||
baseMapper.insert(workflowData);
|
||||
return response;
|
||||
}
|
||||
@ -51,8 +53,8 @@ public class DifyWorkflowServiceImpl extends ServiceImpl<WorkflowRepository, Wor
|
||||
throw new RuntimeException("未找到数据");
|
||||
}
|
||||
WorkflowRunResponse.WorkflowRunData parsedData =
|
||||
JSON.parseObject(workflowData.getData(), WorkflowRunResponse.WorkflowRunData.class);
|
||||
workflowData.setRunData(parsedData);
|
||||
JSON.parseObject(baseMapper.getData(id), WorkflowRunResponse.WorkflowRunData.class);
|
||||
workflowData.setData(parsedData);
|
||||
return workflowData;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user