diff --git a/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/action/UpdateTaskNumber.java b/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/action/UpdateTaskNumber.java index 0bb45f3..ec5ccaa 100644 --- a/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/action/UpdateTaskNumber.java +++ b/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/action/UpdateTaskNumber.java @@ -1,6 +1,12 @@ package com.weaver.seconddev.interfaces.workflow.action; import com.weaver.common.i18n.tool.util.I18nContextUtil; +import com.weaver.ebuilder.common.util.TenantContext; +import com.weaver.ebuilder.datasource.api.entity.ExecuteSqlEntity; +import com.weaver.ebuilder.datasource.api.enums.SourceType; +import com.weaver.ebuilder.datasource.api.service.DataSetService; +import com.weaver.framework.rpc.context.impl.TenantRpcContext; +import com.weaver.teams.api.tenant.Tenant; import com.weaver.verupgrade.conn.CONN_TYPE; import java.lang.*; import java.util.*; @@ -26,6 +32,9 @@ public class UpdateTaskNumber implements Action, EsbServerlessRpcRemoteInterface @Autowired private RequestInfo requestInfoTemp; + @Autowired + private DataSetService dataSetService; + private static final Logger logger_2c12a616 = LoggerFactory.getLogger(UpdateTaskNumber.class); public WeaResult> execute(Map requestInfoMap) { @@ -67,12 +76,12 @@ public class UpdateTaskNumber implements Action, EsbServerlessRpcRemoteInterface seq = (k + 1) + ""; } String sql1 = "update e10_core_business.dbo." + tablename + "_dt1 set rwbh='" + rwbh + "_" + seq + "' where id=" + id; - logger_2c12a616.error(String.valueOf("sql1=" + sql1)); - String poolname_dw = CONN_TYPE.workflow.getType(); - // TODO E10执行sql方法第二参数必须指定源,默认使用流程源,单体客户无需修改,微服务/组合客户需根据查询表所属服务切换源,或使用外部数据源 - RecordSet rs1 = new RecordSet(); - boolean b1 = rs1.executeUpdate(sql1, poolname_dw); - logger_2c12a616.error( "b1--" + b1) ; +// logger_2c12a616.error(String.valueOf("sql1=" + sql1)); +// String poolname_dw = CONN_TYPE.workflow.getType(); +// // TODO E10执行sql方法第二参数必须指定源,默认使用流程源,单体客户无需修改,微服务/组合客户需根据查询表所属服务切换源,或使用外部数据源 +// RecordSet rs1 = new RecordSet(); +// boolean b1 = rs1.executeUpdate(sql1, poolname_dw); + executeForQuery(null2String(SourceType.LOGIC), "weaver-workflow-list-service", sql1); k++; } } catch (Exception e) { @@ -103,4 +112,30 @@ public class UpdateTaskNumber implements Action, EsbServerlessRpcRemoteInterface } return map; } + + public Map executeForQuery(String sourceType, String groupId, String sql) { +// log.error("executeForQuery sourceType-->" + sourceType + ",groupId-->" + groupId + ",sql-->" + sql); + final Tenant currentTenant = TenantContext.getCurrentTenant(); + TenantRpcContext.setTargetTenantKey(String.valueOf(currentTenant)); + ExecuteSqlEntity executeSqlEntity = new ExecuteSqlEntity(); + executeSqlEntity.setSql(cn.hutool.core.codec.Base64.encode(sql)); + executeSqlEntity.setGroupId(groupId); //groupid,可以访问 E10地址/api/datasource/ds/group?sourceType=LOGIC 获取 + executeSqlEntity.setSourceType(SourceType.valueOf(sourceType)); +// log.error("executeForQuery executeSqlEntity-->"+executeSqlEntity.getSql()+"-->"+executeSqlEntity.getGroupId()+"-->"+executeSqlEntity.getSourceType()); + Map datas = dataSetService.executeSql(executeSqlEntity); + logger_2c12a616.error("executeForQuery datas-->" + datas); + TenantRpcContext.removeTargetTenantKey(); + return datas; + } + public static String null2String(String s){ + return s == null ? "" : s; + } + + public static String null2String(Object o){ + return o == null ? "" : o.toString(); + } + + public static String null2String(String s1,String s2){ + return s1 == null ? (s2 == null ? "" : s2) : s1; + } }