diff --git a/common/common-botp/pom.xml b/common/common-botp/pom.xml
index 1fc7b12..f121380 100644
--- a/common/common-botp/pom.xml
+++ b/common/common-botp/pom.xml
@@ -17,17 +17,17 @@
apelet
common-core
- 1.0.0
+ ${common-core.version}
apelet
common-generator
- 1.0.3
+ 1.0.5
apelet
common-online
- 1.0.3
+ 1.0.6
compile
diff --git a/common/common-flow/src/main/java/apelet/common/flow/service/FlowEntryService.java b/common/common-flow/src/main/java/apelet/common/flow/service/FlowEntryService.java
index a21c89f..5d62b08 100644
--- a/common/common-flow/src/main/java/apelet/common/flow/service/FlowEntryService.java
+++ b/common/common-flow/src/main/java/apelet/common/flow/service/FlowEntryService.java
@@ -79,6 +79,16 @@ public interface FlowEntryService extends IBaseService {
*/
FlowEntry getFlowEntryFromCache(String processDefinitionKey);
+
+ /**
+ * 根据流程定义标识获取流程对象。从缓存中读取,如不存在则从数据库读取后,再同步到缓存。
+ *
+ * @param processDefinitionKey 流程定义标识。
+ * @param isToken 是否存在登录态
+ * @return 流程对象。
+ */
+ FlowEntry getFlowEntryFromCache(String processDefinitionKey ,Boolean isToken);
+
/**
* 根据流程Id获取流程发布列表数据。
*
diff --git a/common/common-flow/src/main/java/apelet/common/flow/service/impl/FlowEntryServiceImpl.java b/common/common-flow/src/main/java/apelet/common/flow/service/impl/FlowEntryServiceImpl.java
index 9642c75..602db84 100644
--- a/common/common-flow/src/main/java/apelet/common/flow/service/impl/FlowEntryServiceImpl.java
+++ b/common/common-flow/src/main/java/apelet/common/flow/service/impl/FlowEntryServiceImpl.java
@@ -240,10 +240,21 @@ public class FlowEntryServiceImpl extends BaseService implement
@Override
public FlowEntry getFlowEntryFromCache(String processDefinitionKey) {
+ return getFlowEntryFromCache(processDefinitionKey, true);
+ }
+
+ @Override
+ public FlowEntry getFlowEntryFromCache(String processDefinitionKey, Boolean isToken) {
String key = FlowRedisKeyUtil.makeFlowEntryKey(processDefinitionKey);
LambdaQueryWrapper qw = new LambdaQueryWrapper<>();
qw.eq(FlowEntry::getProcessDefinitionKey, processDefinitionKey);
+ if (Boolean.FALSE.equals(isToken)) {
+ return commonRedisUtil.getFromCacheWithQueryWrapper(key, qw, flowEntryMapper::selectOne, FlowEntry.class);
+ }
TokenData tokenData = TokenData.takeFromRequest();
+ if (tokenData == null) {
+ return null;
+ }
if (StrUtil.isNotBlank(tokenData.getAppCode())) {
qw.eq(FlowEntry::getAppCode, tokenData.getAppCode());
} else {
diff --git a/common/common-flow/src/main/java/apelet/common/flow/service/impl/FlowTaskTitleBackfillServiceImpl.java b/common/common-flow/src/main/java/apelet/common/flow/service/impl/FlowTaskTitleBackfillServiceImpl.java
index eab2a97..4e01c45 100644
--- a/common/common-flow/src/main/java/apelet/common/flow/service/impl/FlowTaskTitleBackfillServiceImpl.java
+++ b/common/common-flow/src/main/java/apelet/common/flow/service/impl/FlowTaskTitleBackfillServiceImpl.java
@@ -11,12 +11,7 @@ import apelet.common.flow.model.FlowTaskExt;
import apelet.common.flow.model.FlowTaskInstanceExt;
import apelet.common.flow.model.FlowWorkOrder;
import apelet.common.flow.model.constant.FlowBindFormType;
-import apelet.common.flow.service.FlowApiService;
-import apelet.common.flow.service.FlowEntryService;
-import apelet.common.flow.service.FlowTaskExtService;
-import apelet.common.flow.service.FlowTaskInstanceExtService;
-import apelet.common.flow.service.FlowTaskTitleBackfillService;
-import apelet.common.flow.service.FlowWorkOrderService;
+import apelet.common.flow.service.*;
import apelet.common.flow.vo.FlowTaskTitleBackfillVo;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.BooleanUtil;
@@ -30,11 +25,7 @@ import org.flowable.task.api.history.HistoricTaskInstance;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
/**
* 节点标题回填服务实现。
@@ -84,7 +75,7 @@ public class FlowTaskTitleBackfillServiceImpl implements FlowTaskTitleBackfillSe
result.setDryRun(onlyCount);
// 回填是没有登录态的运维动作,且要跨租户跑;关掉数据权限过滤,
// 否则 getMasterData -> buildDataPermFilter -> processDataPerm 会因 TokenData 为空而 NPE。
- boolean dataFilterEnabled = GlobalThreadLocal.setDataFilter(false);
+ boolean dataFilterEnabled = false;
try {
List workOrderList = flowWorkOrderService.getListByWorkOrderIdAfter(cursorWorkOrderId, size);
for (FlowWorkOrder workOrder : workOrderList) {
@@ -113,8 +104,10 @@ public class FlowTaskTitleBackfillServiceImpl implements FlowTaskTitleBackfillSe
if (StrUtil.isBlank(processInstanceId)) {
return;
}
- FlowEntry flowEntry = StrUtil.isBlank(workOrder.getProcessDefinitionKey()) ? null
- : flowEntryService.getFlowEntryFromCache(workOrder.getProcessDefinitionKey());
+ if (StrUtil.isBlank(workOrder.getProcessDefinitionKey())) {
+ return;
+ }
+ FlowEntry flowEntry = flowEntryService.getFlowEntryFromCache(workOrder.getProcessDefinitionKey(), false);
// 路由表单流程本来就没有标题,跳过
if (flowEntry == null || !ObjectUtil.equal(flowEntry.getBindFormType(), FlowBindFormType.ONLINE_FORM)) {
return;
diff --git a/common/pom.xml b/common/pom.xml
index d79f21d..a2c592f 100644
--- a/common/pom.xml
+++ b/common/pom.xml
@@ -24,6 +24,8 @@
common-openapi
common-core
+
+ common-botp
diff --git a/pom.xml b/pom.xml
index 147aa5f..0a0aebf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -138,13 +138,13 @@
nexus
nexus
- http://58.48.135.45:8081/repository/maven-releases/
+ http://192.168.100.25:8081/repository/maven-releases/
maven-snapshots
maven-snapshots
- http://58.48.135.45:8081/repository/maven-snapshots/
+ http://192.168.100.25:8081/repository/maven-snapshots/