This commit is contained in:
zt
2025-12-12 18:16:05 +08:00
parent 28f92b6138
commit 7b6ff3bcc6
4 changed files with 31 additions and 0 deletions

View File

@ -20,6 +20,7 @@ import org.dromara.workflow.common.ConditionalOnEnable;
import org.dromara.workflow.domain.bo.FlowDefinitionBo;
import org.dromara.workflow.domain.vo.FlowDefinitionVo;
import org.dromara.workflow.service.IFlwDefinitionService;
import org.dromara.workflow.service.IFlwInstanceService;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@ -43,6 +44,7 @@ public class FlwDefinitionController extends BaseController {
private final DefService defService;
private final IFlwDefinitionService flwDefinitionService;
private final IFlwInstanceService flwInstanceService;
/**
* 查询流程定义列表
@ -241,4 +243,12 @@ public class FlwDefinitionController extends BaseController {
return R.ok();
}
@PutMapping("/init/{projectId}")
@RepeatSubmit()
public R<Boolean> initProject(@PathVariable String projectId) {
flwInstanceService.initProject(projectId);
return R.ok();
}
}

View File

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;
import org.dromara.workflow.domain.bo.FlowInstanceBo;
import org.dromara.workflow.domain.vo.FlowInstanceVo;
@ -24,4 +25,10 @@ public interface FlwInstanceMapper {
*/
Page<FlowInstanceVo> selectInstanceList(@Param("page") Page<FlowInstanceVo> page, @Param(Constants.WRAPPER) Wrapper<FlowInstanceBo> queryWrapper);
@Update("update flow_node set permission_flag = '1' where definition_id in (select id from flow_definition where flow_code like concat('',#{projectId},'%'))")
void updateCode(String projectId);
@Update("update flow_definition set is_publish = 1 where flow_code like concat('',#{projectId},'%')")
void updateFlowDefinition(String projectId);
}

View File

@ -156,4 +156,12 @@ public interface IFlwInstanceService {
* @return 结果
*/
boolean processInvalid(FlowInvalidBo bo);
/**
* 初始化项目流程定义
*
* @param projectId 项目id
*/
void initProject(String projectId);
}

View File

@ -445,4 +445,10 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService {
throw new ServiceException(e.getMessage());
}
}
@Override
public void initProject(String projectId) {
flwInstanceMapper.updateCode(projectId);
flwInstanceMapper.updateFlowDefinition(projectId);
}
}