调整流程查询租户id

This commit is contained in:
gssong 2023-06-07 22:30:21 +08:00
parent 6f934d16ec
commit e98532e034
4 changed files with 16 additions and 17 deletions

View File

@ -32,7 +32,6 @@ public class StartProcessBo implements Serializable {
private String processKey;
/**
* 如果传实体 需要序列化后的
* 流程变量前端会提交一个元素{'entity': {业务详情数据对象}}
*/
private Map<String, Object> variables;

View File

@ -16,7 +16,7 @@ import org.apache.commons.lang3.StringUtils;
import org.dromara.common.core.exception.ServiceException;
import org.dromara.common.json.utils.JsonUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.tenant.helper.TenantHelper;
import org.dromara.workflow.domain.bo.ModelBo;
import org.dromara.workflow.service.IActModelService;
import org.dromara.workflow.utils.WorkflowUtils;
@ -64,7 +64,7 @@ public class ActModelServiceImpl implements IActModelService {
@Override
public TableDataInfo<Model> getByPage(ModelBo modelBo) {
ModelQuery query = repositoryService.createModelQuery();
query.modelTenantId(LoginHelper.getTenantId());
query.modelTenantId(TenantHelper.getTenantId());
if (StringUtils.isNotEmpty(modelBo.getName())) {
query.modelNameLike("%" + modelBo.getName() + "%");
}
@ -105,7 +105,7 @@ public class ActModelServiceImpl implements IActModelService {
String key = modelBo.getKey();
String name = modelBo.getName();
String description = modelBo.getDescription();
Model checkModel = repositoryService.createModelQuery().modelKey(key).modelTenantId(LoginHelper.getTenantId()).singleResult();
Model checkModel = repositoryService.createModelQuery().modelKey(key).modelTenantId(TenantHelper.getTenantId()).singleResult();
if (ObjectUtil.isNotNull(checkModel)) {
throw new ServiceException("模型key已存在");
}
@ -114,7 +114,7 @@ public class ActModelServiceImpl implements IActModelService {
model.setKey(key);
model.setName(name);
model.setVersion(version);
model.setTenantId(LoginHelper.getTenantId());
model.setTenantId(TenantHelper.getTenantId());
ObjectMapper objectMapper = JsonUtils.getObjectMapper();
// 封装模型json对象
ObjectNode objectNode = JsonUtils.getObjectMapper().createObjectNode();
@ -152,7 +152,7 @@ public class ActModelServiceImpl implements IActModelService {
@Override
public ObjectNode getModelInfo(String modelId) {
ObjectNode modelNode = null;
Model model = repositoryService.createModelQuery().modelId(modelId).modelTenantId(LoginHelper.getTenantId()).singleResult();
Model model = repositoryService.createModelQuery().modelId(modelId).modelTenantId(TenantHelper.getTenantId()).singleResult();
ObjectMapper objectMapper = JsonUtils.getObjectMapper();
if (model != null) {
try {
@ -195,7 +195,7 @@ public class ActModelServiceImpl implements IActModelService {
@Transactional(rollbackFor = Exception.class)
public boolean editModel(String modelId, MultiValueMap<String, String> values) {
try {
Model model = repositoryService.createModelQuery().modelId(modelId).modelTenantId(LoginHelper.getTenantId()).singleResult();
Model model = repositoryService.createModelQuery().modelId(modelId).modelTenantId(TenantHelper.getTenantId()).singleResult();
ObjectMapper objectMapper = JsonUtils.getObjectMapper();
ObjectNode modelJson = (ObjectNode) objectMapper.readTree(model.getMetaInfo());
@ -208,7 +208,7 @@ public class ActModelServiceImpl implements IActModelService {
model.setVersion(model.getVersion() + 1);
// 获取唯一标识key
String key = values.getFirst("key");
List<Model> list = repositoryService.createModelQuery().modelKey(key).modelTenantId(LoginHelper.getTenantId()).list();
List<Model> list = repositoryService.createModelQuery().modelKey(key).modelTenantId(TenantHelper.getTenantId()).list();
list.stream().filter(e -> !e.getId().equals(model.getId())).findFirst().ifPresent(e -> {
throw new ServiceException("模型key已存在");
});
@ -270,7 +270,7 @@ public class ActModelServiceImpl implements IActModelService {
// bpmn20.xml资源
.addBytes(processName, xmlBytes)
// 租户id
.tenantId(LoginHelper.getTenantId())
.tenantId(TenantHelper.getTenantId())
.deploy();
// 更新 部署id 到流程定义模型数据表中

View File

@ -14,7 +14,7 @@ import org.apache.commons.io.IOUtils;
import org.dromara.common.core.exception.ServiceException;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.tenant.helper.TenantHelper;
import org.dromara.workflow.domain.bo.ProcessDefinitionBo;
import org.dromara.workflow.domain.vo.ProcessDefinitionVo;
import org.dromara.workflow.service.IActProcessDefinitionService;
@ -60,7 +60,7 @@ public class ActProcessDefinitionServiceImpl implements IActProcessDefinitionSer
@Override
public TableDataInfo<ProcessDefinitionVo> getByPage(ProcessDefinitionBo processDefinitionBo) {
ProcessDefinitionQuery query = repositoryService.createProcessDefinitionQuery();
query.processDefinitionTenantId(LoginHelper.getTenantId());
query.processDefinitionTenantId(TenantHelper.getTenantId());
if (StringUtils.isNotEmpty(processDefinitionBo.getKey())) {
query.processDefinitionKey(processDefinitionBo.getKey());
}
@ -101,7 +101,7 @@ public class ActProcessDefinitionServiceImpl implements IActProcessDefinitionSer
public List<ProcessDefinitionVo> getProcessDefinitionListByKey(String key) {
List<ProcessDefinitionVo> processDefinitionVoList = new ArrayList<>();
ProcessDefinitionQuery query = repositoryService.createProcessDefinitionQuery();
List<ProcessDefinition> definitionList = query.processDefinitionTenantId(LoginHelper.getTenantId()).processDefinitionKey(key).list();
List<ProcessDefinition> definitionList = query.processDefinitionTenantId(TenantHelper.getTenantId()).processDefinitionKey(key).list();
List<Deployment> deploymentList = null;
if (CollUtil.isNotEmpty(definitionList)) {
List<String> deploymentIds = definitionList.stream().map(ProcessDefinition::getDeploymentId).collect(Collectors.toList());
@ -210,7 +210,7 @@ public class ActProcessDefinitionServiceImpl implements IActProcessDefinitionSer
public boolean updateProcessDefState(String processDefinitionId) {
try {
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
.processDefinitionId(processDefinitionId).processDefinitionTenantId(LoginHelper.getTenantId()).singleResult();
.processDefinitionId(processDefinitionId).processDefinitionTenantId(TenantHelper.getTenantId()).singleResult();
//将当前为挂起状态更新为激活状态
//参数说明参数1流程定义id,参数2是否激活true是否级联对应流程实例激活了则对应流程实例都可以审批
//参数3什么时候激活如果为null则立即激活如果为具体时间则到达此时间后激活
@ -264,7 +264,7 @@ public class ActProcessDefinitionServiceImpl implements IActProcessDefinitionSer
ProcessDefinition pd = repositoryService.createProcessDefinitionQuery()
.processDefinitionId(processDefinitionId).singleResult();
InputStream inputStream = repositoryService.getResourceAsStream(pd.getDeploymentId(), pd.getResourceName());
Model model = repositoryService.createModelQuery().modelKey(pd.getKey()).modelTenantId(LoginHelper.getTenantId()).singleResult();
Model model = repositoryService.createModelQuery().modelKey(pd.getKey()).modelTenantId(TenantHelper.getTenantId()).singleResult();
try {
if (ObjectUtil.isNotNull(model)) {
repositoryService.addModelEditorSource(model.getId(), IoUtil.readBytes(inputStream));

View File

@ -1,11 +1,11 @@
package org.dromara.workflow.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.exception.ServiceException;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.tenant.helper.TenantHelper;
import org.dromara.workflow.domain.bo.StartProcessBo;
import org.dromara.workflow.service.IActTaskService;
import org.flowable.common.engine.impl.identity.Authentication;
@ -63,9 +63,9 @@ public class ActTaskServiceImpl implements IActTaskService {
variables.put("_FLOWABLE_SKIP_EXPRESSION_ENABLED", true);
ProcessInstance pi;
if (CollUtil.isNotEmpty(variables)) {
pi = runtimeService.startProcessInstanceByKeyAndTenantId(startProcessBo.getProcessKey(), startProcessBo.getBusinessKey(), variables, LoginHelper.getTenantId());
pi = runtimeService.startProcessInstanceByKeyAndTenantId(startProcessBo.getProcessKey(), startProcessBo.getBusinessKey(), variables, TenantHelper.getTenantId());
} else {
pi = runtimeService.startProcessInstanceByKeyAndTenantId(startProcessBo.getProcessKey(), startProcessBo.getBusinessKey(), LoginHelper.getTenantId());
pi = runtimeService.startProcessInstanceByKeyAndTenantId(startProcessBo.getProcessKey(), startProcessBo.getBusinessKey(), TenantHelper.getTenantId());
}
// 将流程定义名称 作为 流程实例名称
runtimeService.setProcessInstanceName(pi.getProcessInstanceId(), pi.getProcessDefinitionName());