mirror of
https://gitee.com/dromara/liteFlow.git
synced 2026-05-14 04:02:09 +08:00
#IB0SJ1 调整逻辑
This commit is contained in:
@@ -18,13 +18,13 @@ public class SqlReadConstant {
|
||||
|
||||
public static final String INSTANT_CREATE_TABLE_SQL = "create table IF NOT EXISTS `node_instance_id_table`\n" +
|
||||
"(\n" +
|
||||
" `id` bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,\n" +
|
||||
" `application_name` varchar(32) NOT NULL,\n" +
|
||||
" `chain_id` varchar(32) NOT NULL,\n" +
|
||||
" `el_data_md5` varchar(128) NOT NULL,\n" +
|
||||
" `group_key_instance_id` varchar(1024) NOT NULL,\n" +
|
||||
" PRIMARY KEY (`id`)\n" +
|
||||
" `node_instance_id_map_json` varchar(1024) NOT NULL\n" +
|
||||
");";
|
||||
// a_XXX_0
|
||||
// {"chainId":"chain1","nodeId":"a","instanceId":"XXXX","index":0},
|
||||
|
||||
public static final String SQL_PATTERN = "SELECT * FROM {} WHERE {}='{}'";
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.yomahub.liteflow.parser.spi.instanceId;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.yomahub.liteflow.flow.entity.InstanceIdDto;
|
||||
import com.yomahub.liteflow.flow.instanceId.BaseNodeInstanceIdManageSpi;
|
||||
import com.yomahub.liteflow.parser.constant.ReadType;
|
||||
import com.yomahub.liteflow.parser.constant.SqlReadConstant;
|
||||
@@ -10,6 +11,7 @@ import com.yomahub.liteflow.parser.sql.read.SqlReadFactory;
|
||||
import com.yomahub.liteflow.parser.sql.read.vo.InstanceIdVO;
|
||||
import com.yomahub.liteflow.parser.sql.util.JDBCHelper;
|
||||
import com.yomahub.liteflow.parser.sql.vo.SQLParserVO;
|
||||
import com.yomahub.liteflow.util.JsonUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
@@ -30,22 +32,22 @@ public class SqlNodeInstanceIdManageSpiImpl extends BaseNodeInstanceIdManageSpi
|
||||
List<InstanceIdVO> readResult = insIdRead.read(chainId);
|
||||
|
||||
if (CollectionUtil.isNotEmpty(readResult)) {
|
||||
return Arrays.asList(readResult.get(0).getElDataMd5(), readResult.get(0).getGroupKeyInstanceId());
|
||||
return Arrays.asList(readResult.get(0).getElDataMd5(), readResult.get(0).getNodeInstanceIdMapJson());
|
||||
}
|
||||
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeInstanceIdFile(List<String> instanceIdList, String chainId) {
|
||||
public void writeInstanceIdFile(List<InstanceIdDto> instanceIdList, String elMd5, String chainId) {
|
||||
JDBCHelper jdbcHelper = JDBCHelper.getInstance();
|
||||
SQLParserVO conf = jdbcHelper.getSqlParserVO();
|
||||
|
||||
String insertSql = StrUtil.format(SqlReadConstant.INSTANT_INSERT_SQL, conf.getInstanceIdTableName(), conf.getInstanceIdApplicationNameField(),
|
||||
conf.getGroupKeyInstanceIdField(), conf.getElDataMd5Field(), conf.getInstanceChainIdField(), conf.getApplicationName(), instanceIdList.get(1),
|
||||
instanceIdList.get(0), chainId);
|
||||
String updateSql = StrUtil.format(SqlReadConstant.INSTANT_UPDATE_SQL, conf.getInstanceIdTableName(), conf.getElDataMd5Field(), instanceIdList.get(0),
|
||||
conf.getGroupKeyInstanceIdField(), instanceIdList.get(1), conf.getChainNameField(), chainId, conf.getInstanceIdApplicationNameField(), conf.getApplicationName());
|
||||
conf.getNodeInstanceIdMapJsondField(), conf.getElDataMd5Field(), conf.getInstanceChainIdField(), conf.getApplicationName(), JsonUtil.toJsonString(instanceIdList),
|
||||
elMd5, chainId);
|
||||
String updateSql = StrUtil.format(SqlReadConstant.INSTANT_UPDATE_SQL, conf.getInstanceIdTableName(), conf.getElDataMd5Field(), elMd5,
|
||||
conf.getNodeInstanceIdMapJsondField(), JsonUtil.toJsonString(instanceIdList), conf.getChainNameField(), chainId, conf.getInstanceIdApplicationNameField(), conf.getApplicationName());
|
||||
String selectSql = StrUtil.format(SqlReadConstant.INSTANT_SELECT_SQL, conf.getInstanceIdTableName(), conf.getInstanceChainIdField(), chainId,
|
||||
conf.getInstanceIdApplicationNameField(), conf.getApplicationName());
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ public class InstanceIdRead extends AbstractSqlRead<InstanceIdVO> {
|
||||
InstanceIdVO idVO = new InstanceIdVO();
|
||||
idVO.setChainId(getStringFromRsWithCheck(rs, super.config.getInstanceChainIdField()));
|
||||
idVO.setElDataMd5(getStringFromRsWithCheck(rs, super.config.getElDataMd5Field()));
|
||||
idVO.setGroupKeyInstanceId(getStringFromRsWithCheck(rs, super.config.getGroupKeyInstanceIdField()));
|
||||
idVO.setNodeInstanceIdMapJson(getStringFromRsWithCheck(rs, super.config.getNodeInstanceIdMapJsondField()));
|
||||
return idVO;
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ public class InstanceIdVO {
|
||||
|
||||
private String elDataMd5;
|
||||
|
||||
private String groupKeyInstanceId;
|
||||
private String nodeInstanceIdMapJson;
|
||||
|
||||
public String getChainId() {
|
||||
return chainId;
|
||||
@@ -29,11 +29,11 @@ public class InstanceIdVO {
|
||||
this.elDataMd5 = elDataMd5;
|
||||
}
|
||||
|
||||
public String getGroupKeyInstanceId() {
|
||||
return groupKeyInstanceId;
|
||||
public String getNodeInstanceIdMapJson() {
|
||||
return nodeInstanceIdMapJson;
|
||||
}
|
||||
|
||||
public void setGroupKeyInstanceId(String groupKeyInstanceId) {
|
||||
this.groupKeyInstanceId = groupKeyInstanceId;
|
||||
public void setNodeInstanceIdMapJson(String nodeInstanceIdMapJson) {
|
||||
this.nodeInstanceIdMapJson = nodeInstanceIdMapJson;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -79,7 +79,7 @@ public class SQLParserVO {
|
||||
/**
|
||||
* group_key_instance_id
|
||||
*/
|
||||
private String groupKeyInstanceIdField = "group_key_instance_id";
|
||||
private String nodeInstanceIdMapJsondField = "node_instance_id_map_json";
|
||||
|
||||
/**
|
||||
* 决策路由字段
|
||||
@@ -443,12 +443,12 @@ public class SQLParserVO {
|
||||
this.elDataMd5Field = elDataMd5Field;
|
||||
}
|
||||
|
||||
public String getGroupKeyInstanceIdField() {
|
||||
return groupKeyInstanceIdField;
|
||||
public String getNodeInstanceIdMapJsondField() {
|
||||
return nodeInstanceIdMapJsondField;
|
||||
}
|
||||
|
||||
public void setGroupKeyInstanceIdField(String groupKeyInstanceIdField) {
|
||||
this.groupKeyInstanceIdField = groupKeyInstanceIdField;
|
||||
public void setNodeInstanceIdMapJsondField(String nodeInstanceIdMapJsondField) {
|
||||
this.nodeInstanceIdMapJsondField = nodeInstanceIdMapJsondField;
|
||||
}
|
||||
|
||||
public DataSourceConfig getBaomidou() {
|
||||
|
||||
Reference in New Issue
Block a user