六、流程操作(二)

6.6 完成整个出差申请流程

 // 完成jerry个人任务
    @Test
    public void completJerryTask(){
//        获取引擎
        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
//        获取taskService
        TaskService taskService = processEngine.getTaskService();

//        根据流程key 和 任务的负责人 查询任务
//        返回一个任务对象
        Task task = taskService.createTaskQuery()
                .processDefinitionKey("MyEvection") //流程Key
                .taskAssignee("jerry")  //要查询的负责人
                .singleResult();

//        完成任务,参数:任务id
        taskService.complete(task.getId());
    }

    // 完成jack个人任务
    @Test
    public void completJackTask(){
//        获取引擎
        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
//        获取taskService
        TaskService taskService = processEngine.getTaskService();

//        根据流程key 和 任务的负责人 查询任务
//        返回一个任务对象
        Task task = taskService.createTaskQuery()
                .processDefinitionKey("MyEvection") //流程Key
                .taskAssignee("jack")  //要查询的负责人
                .singleResult();

//        完成任务,参数:任务id
        taskService.complete(task.getId());
    }

    // 完成rose个人任务
    @Test
    public void completRoseTask(){
//        获取引擎
        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
//        获取taskService
        TaskService taskService = processEngine.getTaskService();

//        根据流程key 和 任务的负责人 查询任务
//        返回一个任务对象
        Task task = taskService.createTaskQuery()
                .processDefinitionKey("MyEvection") //流程Key
                .taskAssignee("rose")  //要查询的负责人
                .singleResult();

//        完成任务,参数:任务id
        taskService.complete(task.getId());
    }
USE activiti;

SELECT * FROM act_ge_bytearray #资源表  rev=1  deployment_id=1
SELECT * FROM act_re_procdef #流程定义表,记录流程定义信息  id=MyEvection:1:4  rev=1  key=MyEvection deployment_id=1
SELECT * FROM act_re_deployment #流程定义部署表,记录流程部署信息  id=1

#启动流程
SELECT * FROM act_hi_actinst        #流程实例执行历史(2条数据)   proc_def_id=MyEvection:1:4  proc_inst_id=2501 execution_id=2502 创建出差申请的task_id=2505,对应上act_ru_task的id
SELECT * FROM act_hi_identitylink   #流程的参与用户历史信息 id=2506 proc_inst_id=2501
SELECT * FROM act_hi_procinst       #流程实例历史信息 id=2501 proc_inst_id=2501 proc_def_id=MyEvection:1:4
SELECT * FROM act_hi_taskinst       #流程任务历史信息 id=2505 proc_def_id=MyEvection:1:4 proc_inst_id=2501 execution_id=2502

SELECT * FROM act_ru_identitylink   #流程的参与用户信息(流程走到哪里了暂停了该参与用户信息) id=2506 rev=1 proc_inst_id=2501 proc_def_id=null
SELECT * FROM act_ru_task           #任务信息(流程走到哪里了暂停了) id=2505 rev=1  execution_id=2502 proc_inst_id=2501 proc_def_id=MyEvection:1:4
SELECT * FROM act_ru_execution      #流程执行信息(2条数据) id=2501(start event)/2502(创建出差申请) rev=1 proc_inst_id=2501 proc_def_id=MyEvection:1:4 root_proc_inst_id=2501


#查询个人待办任务
SELECT DISTINCT RES.* FROM ACT_RU_TASK RES INNER JOIN ACT_RE_PROCDEF D ON RES.PROC_DEF_ID_ = D.ID_ WHERE RES.ASSIGNEE_ = 'zhangsan' AND D.KEY_ = 'MyEvection' 
ORDER BY RES.ID_ ASC LIMIT 2147483647 OFFSET 0

#完成个人待办任务
SELECT * FROM ACT_HI_TASKINST #INSERT
SELECT * FROM ACT_HI_ACTINST #INSERT
SELECT * FROM ACT_HI_IDENTITYLINK #insert
SELECT * FROM ACT_RU_TASK #insert
SELECT * FROM ACT_RU_IDENTITYLINK #insert

SELECT * FROM ACT_RU_EXECUTION #update
SELECT * FROM ACT_HI_TASKINST #update
SELECT * FROM ACT_HI_ACTINST  #update

SELECT * FROM ACT_RU_TASK #delete

#完成rose财务审批后
SELECT * FROM ACT_HI_ACTINST -- insert
SELECT * FROM ACT_RU_EXECUTION -- update
SELECT * FROM ACT_HI_TASKINST -- update
SELECT * FROM ACT_HI_PROCINST #update
SELECT * FROM ACT_HI_ACTINST #update
SELECT * FROM ACT_RU_IDENTITYLINK #delete
SELECT * FROM ACT_RU_TASK #delete
SELECT * FROM ACT_RU_EXECUTION #delete


6.7 流程定义信息查询

查询流程相关信息,包含流程定义,流程部署,流程定义版本

    /**
     * 查询流程定义
     */
    @Test
    public void queryProcessDefinition(){
        //        获取引擎
        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
//        repositoryService
        RepositoryService repositoryService = processEngine.getRepositoryService();
//        得到ProcessDefinitionQuery 对象
        ProcessDefinitionQuery processDefinitionQuery = repositoryService.createProcessDefinitionQuery();
//          查询出当前所有的流程定义
//          条件:processDefinitionKey =MyEvection
//          orderByProcessDefinitionVersion 按照版本排序
//        desc倒叙
//        list 返回集合
        List<ProcessDefinition> definitionList = processDefinitionQuery.processDefinitionKey("MyEvection")
                .orderByProcessDefinitionVersion()
                .desc()
                .list();
//      输出流程定义信息
        for (ProcessDefinition processDefinition : definitionList) {
            System.out.println("流程定义 id="+processDefinition.getId());
            System.out.println("流程定义 name="+processDefinition.getName());
            System.out.println("流程定义 key="+processDefinition.getKey());
            System.out.println("流程定义 Version="+processDefinition.getVersion());
            System.out.println("流程部署ID ="+processDefinition.getDeploymentId());
        }

    }

输出结果:

2022-04-04 14:40:49,646 3874  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- starting SchemaOperationsProcessEngineBuild --------------------------------------------------------
2022-04-04 14:40:49,650 3878  [           main] DEBUG da.DefaultActivitiEngineAgenda  - Operation class org.activiti.engine.impl.interceptor.CommandInvoker$1 added to agenda
2022-04-04 14:40:49,659 3887  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Executing performSchemaOperationsProcessEngineBuild with setting true
2022-04-04 14:40:49,659 3887  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Opening JDBC Connection
2022-04-04 14:40:49,659 3887  [           main] DEBUG source.pooled.PooledDataSource  - Checked out connection 101775274 from pool.
2022-04-04 14:40:49,659 3887  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 14:40:49,676 3904  [           main] DEBUG pertyEntityImpl.selectProperty  - ==>  Preparing: select * from ACT_GE_PROPERTY where NAME_ = ? 
2022-04-04 14:40:49,709 3937  [           main] DEBUG pertyEntityImpl.selectProperty  - ==> Parameters: schema.version(String)
2022-04-04 14:40:49,739 3967  [           main] DEBUG pertyEntityImpl.selectProperty  - <==      Total: 1
2022-04-04 14:40:49,743 3971  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Flushing dbSqlSession
2022-04-04 14:40:49,743 3971  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - flush summary: 0 insert, 0 update, 0 delete.
2022-04-04 14:40:49,743 3971  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - now executing flush...
2022-04-04 14:40:49,743 3971  [           main] DEBUG aloneMybatisTransactionContext  - firing event committing...
2022-04-04 14:40:49,751 3979  [           main] DEBUG aloneMybatisTransactionContext  - committing the ibatis sql session...
2022-04-04 14:40:49,751 3979  [           main] DEBUG aloneMybatisTransactionContext  - firing event committed...
2022-04-04 14:40:49,752 3980  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 14:40:49,752 3980  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 14:40:49,752 3980  [           main] DEBUG source.pooled.PooledDataSource  - Returned connection 101775274 to pool.
2022-04-04 14:40:49,752 3980  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- SchemaOperationsProcessEngineBuild finished --------------------------------------------------------
2022-04-04 14:40:49,753 3981  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 14:40:49,753 3981  [           main] INFO  .engine.impl.ProcessEngineImpl  - ProcessEngine default created
2022-04-04 14:40:49,758 3986  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 14:40:49,758 3986  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- starting ValidateExecutionRelatedEntityCountCfgCmd --------------------------------------------------------
2022-04-04 14:40:49,759 3987  [           main] DEBUG da.DefaultActivitiEngineAgenda  - Operation class org.activiti.engine.impl.interceptor.CommandInvoker$1 added to agenda
2022-04-04 14:40:49,759 3987  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Opening JDBC Connection
2022-04-04 14:40:49,759 3987  [           main] DEBUG source.pooled.PooledDataSource  - Checked out connection 101775274 from pool.
2022-04-04 14:40:49,759 3987  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 14:40:49,760 3988  [           main] DEBUG pertyEntityImpl.selectProperty  - ==>  Preparing: select * from ACT_GE_PROPERTY where NAME_ = ? 
2022-04-04 14:40:49,760 3988  [           main] DEBUG pertyEntityImpl.selectProperty  - ==> Parameters: cfg.execution-related-entities-count(String)
2022-04-04 14:40:49,761 3989  [           main] DEBUG pertyEntityImpl.selectProperty  - <==      Total: 1
2022-04-04 14:40:49,762 3990  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Flushing dbSqlSession
2022-04-04 14:40:49,762 3990  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - flush summary: 0 insert, 0 update, 0 delete.
2022-04-04 14:40:49,762 3990  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - now executing flush...
2022-04-04 14:40:49,762 3990  [           main] DEBUG aloneMybatisTransactionContext  - firing event committing...
2022-04-04 14:40:49,762 3990  [           main] DEBUG aloneMybatisTransactionContext  - committing the ibatis sql session...
2022-04-04 14:40:49,762 3990  [           main] DEBUG aloneMybatisTransactionContext  - firing event committed...
2022-04-04 14:40:49,762 3990  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 14:40:49,763 3991  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 14:40:49,763 3991  [           main] DEBUG source.pooled.PooledDataSource  - Returned connection 101775274 to pool.
2022-04-04 14:40:49,763 3991  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- ValidateExecutionRelatedEntityCountCfgCmd finished --------------------------------------------------------
2022-04-04 14:40:49,763 3991  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 14:40:49,763 3991  [           main] INFO  activiti.engine.ProcessEngines  - initialised process engine default
2022-04-04 14:40:49,766 3994  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 14:40:49,767 3995  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- starting ProcessDefinitionQueryImpl --------------------------------------------------------
2022-04-04 14:40:49,767 3995  [           main] DEBUG da.DefaultActivitiEngineAgenda  - Operation class org.activiti.engine.impl.interceptor.CommandInvoker$1 added to agenda
2022-04-04 14:40:49,812 4040  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Opening JDBC Connection
2022-04-04 14:40:49,813 4041  [           main] DEBUG source.pooled.PooledDataSource  - Checked out connection 101775274 from pool.
2022-04-04 14:40:49,813 4041  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 14:40:49,813 4041  [           main] DEBUG cessDefinitionsByQueryCriteria  - ==>  Preparing: select distinct RES.* from ACT_RE_PROCDEF RES WHERE RES.KEY_ = ? order by RES.VERSION_ desc LIMIT ? OFFSET ? 
2022-04-04 14:40:49,813 4041  [           main] DEBUG cessDefinitionsByQueryCriteria  - ==> Parameters: MyEvection(String), 2147483647(Integer), 0(Integer)
2022-04-04 14:40:49,817 4045  [           main] DEBUG cessDefinitionsByQueryCriteria  - <==      Total: 1
2022-04-04 14:40:49,818 4046  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Flushing dbSqlSession
2022-04-04 14:40:49,818 4046  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - flush summary: 0 insert, 0 update, 0 delete.
2022-04-04 14:40:49,818 4046  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - now executing flush...
2022-04-04 14:40:49,818 4046  [           main] DEBUG aloneMybatisTransactionContext  - firing event committing...
2022-04-04 14:40:49,818 4046  [           main] DEBUG aloneMybatisTransactionContext  - committing the ibatis sql session...
2022-04-04 14:40:49,818 4046  [           main] DEBUG aloneMybatisTransactionContext  - firing event committed...
2022-04-04 14:40:49,818 4046  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 14:40:49,819 4047  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 14:40:49,819 4047  [           main] DEBUG source.pooled.PooledDataSource  - Returned connection 101775274 to pool.
2022-04-04 14:40:49,819 4047  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- ProcessDefinitionQueryImpl finished --------------------------------------------------------
2022-04-04 14:40:49,819 4047  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

流程定义 id=MyEvection:1:4
流程定义 name=出差申请
流程定义 key=MyEvection
流程定义 Version=1
流程部署ID =1

Process finished with exit code 0

6.8 流程删除

@Test
public void deleteDeployment() {
		// 流程部署id
		String deploymentId = "1";
		
    ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
    // 通过流程引擎获取repositoryService
		RepositoryService repositoryService = processEngine
				.getRepositoryService();
		//删除流程定义,如果该流程定义已有流程实例启动则删除时出错
		repositoryService.deleteDeployment(deploymentId);
		//设置true 级联删除流程定义,即使该流程有流程实例启动也可以删除,设置为false非级别删除方式,如果流程
		//repositoryService.deleteDeployment(deploymentId, true);
	}

普通删除日志打印

2022-04-04 15:35:44,236 2939  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- starting SchemaOperationsProcessEngineBuild --------------------------------------------------------
2022-04-04 15:35:44,240 2943  [           main] DEBUG da.DefaultActivitiEngineAgenda  - Operation class org.activiti.engine.impl.interceptor.CommandInvoker$1 added to agenda
2022-04-04 15:35:44,251 2954  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Executing performSchemaOperationsProcessEngineBuild with setting true
2022-04-04 15:35:44,251 2954  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Opening JDBC Connection
2022-04-04 15:35:44,251 2954  [           main] DEBUG source.pooled.PooledDataSource  - Checked out connection 169663597 from pool.
2022-04-04 15:35:44,252 2955  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@a1cdc6d]
2022-04-04 15:35:44,271 2974  [           main] DEBUG pertyEntityImpl.selectProperty  - ==>  Preparing: select * from ACT_GE_PROPERTY where NAME_ = ? 
2022-04-04 15:35:44,307 3010  [           main] DEBUG pertyEntityImpl.selectProperty  - ==> Parameters: schema.version(String)
2022-04-04 15:35:44,330 3033  [           main] DEBUG pertyEntityImpl.selectProperty  - <==      Total: 1
2022-04-04 15:35:44,333 3036  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Flushing dbSqlSession
2022-04-04 15:35:44,333 3036  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - flush summary: 0 insert, 0 update, 0 delete.
2022-04-04 15:35:44,333 3036  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - now executing flush...
2022-04-04 15:35:44,333 3036  [           main] DEBUG aloneMybatisTransactionContext  - firing event committing...
2022-04-04 15:35:44,334 3037  [           main] DEBUG aloneMybatisTransactionContext  - committing the ibatis sql session...
2022-04-04 15:35:44,334 3037  [           main] DEBUG aloneMybatisTransactionContext  - firing event committed...
2022-04-04 15:35:44,334 3037  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@a1cdc6d]
2022-04-04 15:35:44,336 3039  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@a1cdc6d]
2022-04-04 15:35:44,337 3040  [           main] DEBUG source.pooled.PooledDataSource  - Returned connection 169663597 to pool.
2022-04-04 15:35:44,337 3040  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- SchemaOperationsProcessEngineBuild finished --------------------------------------------------------
2022-04-04 15:35:44,337 3040  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 15:35:44,337 3040  [           main] INFO  .engine.impl.ProcessEngineImpl  - ProcessEngine default created
2022-04-04 15:35:44,344 3047  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 15:35:44,344 3047  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- starting ValidateExecutionRelatedEntityCountCfgCmd --------------------------------------------------------
2022-04-04 15:35:44,344 3047  [           main] DEBUG da.DefaultActivitiEngineAgenda  - Operation class org.activiti.engine.impl.interceptor.CommandInvoker$1 added to agenda
2022-04-04 15:35:44,345 3048  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Opening JDBC Connection
2022-04-04 15:35:44,345 3048  [           main] DEBUG source.pooled.PooledDataSource  - Checked out connection 169663597 from pool.
2022-04-04 15:35:44,345 3048  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@a1cdc6d]
2022-04-04 15:35:44,345 3048  [           main] DEBUG pertyEntityImpl.selectProperty  - ==>  Preparing: select * from ACT_GE_PROPERTY where NAME_ = ? 
2022-04-04 15:35:44,346 3049  [           main] DEBUG pertyEntityImpl.selectProperty  - ==> Parameters: cfg.execution-related-entities-count(String)
2022-04-04 15:35:44,347 3050  [           main] DEBUG pertyEntityImpl.selectProperty  - <==      Total: 1
2022-04-04 15:35:44,347 3050  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Flushing dbSqlSession
2022-04-04 15:35:44,348 3051  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - flush summary: 0 insert, 0 update, 0 delete.
2022-04-04 15:35:44,348 3051  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - now executing flush...
2022-04-04 15:35:44,348 3051  [           main] DEBUG aloneMybatisTransactionContext  - firing event committing...
2022-04-04 15:35:44,348 3051  [           main] DEBUG aloneMybatisTransactionContext  - committing the ibatis sql session...
2022-04-04 15:35:44,348 3051  [           main] DEBUG aloneMybatisTransactionContext  - firing event committed...
2022-04-04 15:35:44,348 3051  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@a1cdc6d]
2022-04-04 15:35:44,349 3052  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@a1cdc6d]
2022-04-04 15:35:44,349 3052  [           main] DEBUG source.pooled.PooledDataSource  - Returned connection 169663597 to pool.
2022-04-04 15:35:44,349 3052  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- ValidateExecutionRelatedEntityCountCfgCmd finished --------------------------------------------------------
2022-04-04 15:35:44,349 3052  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 15:35:44,349 3052  [           main] INFO  activiti.engine.ProcessEngines  - initialised process engine default
2022-04-04 15:35:44,351 3054  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 15:35:44,351 3054  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- starting DeleteDeploymentCmd --------------------------------------------------------
2022-04-04 15:35:44,351 3054  [           main] DEBUG da.DefaultActivitiEngineAgenda  - Operation class org.activiti.engine.impl.interceptor.CommandInvoker$1 added to agenda
2022-04-04 15:35:44,352 3055  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Opening JDBC Connection
2022-04-04 15:35:44,352 3055  [           main] DEBUG source.pooled.PooledDataSource  - Checked out connection 169663597 from pool.
2022-04-04 15:35:44,352 3055  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@a1cdc6d]
2022-04-04 15:35:44,353 3056  [           main] DEBUG entEntityImpl.selectDeployment  - ==>  Preparing: select * from ACT_RE_DEPLOYMENT where ID_ = ? 
2022-04-04 15:35:44,353 3056  [           main] DEBUG entEntityImpl.selectDeployment  - ==> Parameters: 1(String)
2022-04-04 15:35:44,355 3058  [           main] DEBUG entEntityImpl.selectDeployment  - <==      Total: 1
2022-04-04 15:35:44,393 3096  [           main] DEBUG cessDefinitionsByQueryCriteria  - ==>  Preparing: select distinct RES.* from ACT_RE_PROCDEF RES WHERE RES.DEPLOYMENT_ID_ = ? order by RES.ID_ asc LIMIT ? OFFSET ? 
2022-04-04 15:35:44,394 3097  [           main] DEBUG cessDefinitionsByQueryCriteria  - ==> Parameters: 1(String), 2147483647(Integer), 0(Integer)
2022-04-04 15:35:44,397 3100  [           main] DEBUG cessDefinitionsByQueryCriteria  - <==      Total: 1
2022-04-04 15:35:44,400 3103  [           main] DEBUG pl.selectModelsByQueryCriteria  - ==>  Preparing: select distinct RES.* from ACT_RE_MODEL RES WHERE RES.DEPLOYMENT_ID_ = ? order by RES.ID_ asc LIMIT ? OFFSET ? 
2022-04-04 15:35:44,400 3103  [           main] DEBUG pl.selectModelsByQueryCriteria  - ==> Parameters: 1(String), 2147483647(Integer), 0(Integer)
2022-04-04 15:35:44,402 3105  [           main] DEBUG pl.selectModelsByQueryCriteria  - <==      Total: 0
2022-04-04 15:35:44,403 3106  [           main] DEBUG itionInfoByProcessDefinitionId  - ==>  Preparing: select * from ACT_PROCDEF_INFO where PROC_DEF_ID_ = ? 
2022-04-04 15:35:44,404 3107  [           main] DEBUG itionInfoByProcessDefinitionId  - ==> Parameters: MyEvection:1:4(String)
2022-04-04 15:35:44,405 3108  [           main] DEBUG itionInfoByProcessDefinitionId  - <==      Total: 0
2022-04-04 15:35:44,410 3113  [           main] DEBUG obByTypeAndProcessDefinitionId  - ==>  Preparing: select J.* from ACT_RU_TIMER_JOB J where J.HANDLER_TYPE_ = ? and J.PROC_DEF_ID_ = ? 
2022-04-04 15:35:44,411 3114  [           main] DEBUG obByTypeAndProcessDefinitionId  - ==> Parameters: timer-start-event(String), MyEvection:1:4(String)
2022-04-04 15:35:44,413 3116  [           main] DEBUG obByTypeAndProcessDefinitionId  - <==      Total: 0
2022-04-04 15:35:44,413 3116  [           main] DEBUG ctLatestProcessDefinitionByKey  - ==>  Preparing: select * from ACT_RE_PROCDEF where KEY_ = ? and (TENANT_ID_ = '' or TENANT_ID_ is null) and VERSION_ = (select max(VERSION_) from ACT_RE_PROCDEF where KEY_ = ? and (TENANT_ID_ = '' or TENANT_ID_ is null)) 
2022-04-04 15:35:44,414 3117  [           main] DEBUG ctLatestProcessDefinitionByKey  - ==> Parameters: MyEvection(String), MyEvection(String)
2022-04-04 15:35:44,416 3119  [           main] DEBUG ctLatestProcessDefinitionByKey  - <==      Total: 1
2022-04-04 15:35:44,418 3121  [           main] DEBUG cessDefinitionsByQueryCriteria  - ==>  Preparing: select distinct RES.* from ACT_RE_PROCDEF RES WHERE RES.KEY_ = ? and RES.VERSION_ < ? and (RES.TENANT_ID_ = '' or RES.TENANT_ID_ is null) order by RES.VERSION_ desc LIMIT ? OFFSET ? 
2022-04-04 15:35:44,419 3122  [           main] DEBUG cessDefinitionsByQueryCriteria  - ==> Parameters: MyEvection(String), 1(Integer), 1(Integer), 0(Integer)
2022-04-04 15:35:44,420 3123  [           main] DEBUG cessDefinitionsByQueryCriteria  - <==      Total: 0
2022-04-04 15:35:44,420 3123  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Flushing dbSqlSession
2022-04-04 15:35:44,420 3123  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   delete DeploymentEntity[id=1, name=出差申请流程] with id 1
2022-04-04 15:35:44,421 3124  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteIdentityLinkByProcDef(MyEvection:1:4)
2022-04-04 15:35:44,421 3124  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteProcessDefinitionsByDeploymentId(1)
2022-04-04 15:35:44,421 3124  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteResourcesByDeploymentId(1)
2022-04-04 15:35:44,421 3124  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteEventSubscriptionsForProcessDefinition(MyEvection:1:4)
2022-04-04 15:35:44,421 3124  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - flush summary: 0 insert, 0 update, 5 delete.
2022-04-04 15:35:44,421 3124  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - now executing flush...
2022-04-04 15:35:44,421 3124  [           main] DEBUG .deleteResourcesByDeploymentId  - ==>  Preparing: delete from ACT_GE_BYTEARRAY where DEPLOYMENT_ID_ = ? 
2022-04-04 15:35:44,421 3124  [           main] DEBUG .deleteResourcesByDeploymentId  - ==> Parameters: 1(String)
2022-04-04 15:35:44,423 3126  [           main] DEBUG .deleteResourcesByDeploymentId  - <==    Updates: 2
2022-04-04 15:35:44,423 3126  [           main] DEBUG entEntityImpl.deleteDeployment  - ==>  Preparing: delete from ACT_RE_DEPLOYMENT where ID_ = ? 
2022-04-04 15:35:44,423 3126  [           main] DEBUG entEntityImpl.deleteDeployment  - ==> Parameters: 1(String)
2022-04-04 15:35:44,424 3127  [           main] DEBUG entEntityImpl.deleteDeployment  - <==    Updates: 1
2022-04-04 15:35:44,425 3128  [           main] DEBUG scriptionsForProcessDefinition  - ==>  Preparing: delete from ACT_RU_EVENT_SUBSCR where PROC_DEF_ID_ = ? and EXECUTION_ID_ is null and PROC_INST_ID_ is null 
2022-04-04 15:35:44,425 3128  [           main] DEBUG scriptionsForProcessDefinition  - ==> Parameters: MyEvection:1:4(String)
2022-04-04 15:35:44,426 3129  [           main] DEBUG scriptionsForProcessDefinition  - <==    Updates: 0
2022-04-04 15:35:44,426 3129  [           main] DEBUG pl.deleteIdentityLinkByProcDef  - ==>  Preparing: delete from ACT_RU_IDENTITYLINK where PROC_DEF_ID_ = ? 
2022-04-04 15:35:44,426 3129  [           main] DEBUG pl.deleteIdentityLinkByProcDef  - ==> Parameters: MyEvection:1:4(String)
2022-04-04 15:35:44,427 3130  [           main] DEBUG pl.deleteIdentityLinkByProcDef  - <==    Updates: 0
2022-04-04 15:35:44,427 3130  [           main] DEBUG ocessDefinitionsByDeploymentId  - ==>  Preparing: delete from ACT_RE_PROCDEF where DEPLOYMENT_ID_ = ? 
2022-04-04 15:35:44,428 3131  [           main] DEBUG ocessDefinitionsByDeploymentId  - ==> Parameters: 1(String)
2022-04-04 15:35:44,429 3132  [           main] DEBUG ocessDefinitionsByDeploymentId  - <==    Updates: 1
2022-04-04 15:35:44,429 3132  [           main] DEBUG aloneMybatisTransactionContext  - firing event committing...
2022-04-04 15:35:44,429 3132  [           main] DEBUG aloneMybatisTransactionContext  - committing the ibatis sql session...
2022-04-04 15:35:44,429 3132  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Committing JDBC Connection [com.mysql.jdbc.JDBC4Connection@a1cdc6d]
2022-04-04 15:35:44,431 3134  [           main] DEBUG aloneMybatisTransactionContext  - firing event committed...
2022-04-04 15:35:44,431 3134  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@a1cdc6d]
2022-04-04 15:35:44,432 3135  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@a1cdc6d]
2022-04-04 15:35:44,432 3135  [           main] DEBUG source.pooled.PooledDataSource  - Returned connection 169663597 to pool.
2022-04-04 15:35:44,432 3135  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- DeleteDeploymentCmd finished --------------------------------------------------------
2022-04-04 15:35:44,432 3135  [           main] DEBUG mpl.interceptor.LogInterceptor  - 


Process finished with exit code 0

普通删除操作数据库:

ACT_GE_BYTEARRAY

ACT_RE_DEPLOYMENT

ACT_RE_PROCDEF

级联删除日志打印

如果普通删除后,部署后,启动后,测试普通删除会报错的,需要使用级联删除

2022-04-04 15:50:48,657 3157  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- starting SchemaOperationsProcessEngineBuild --------------------------------------------------------
2022-04-04 15:50:48,660 3160  [           main] DEBUG da.DefaultActivitiEngineAgenda  - Operation class org.activiti.engine.impl.interceptor.CommandInvoker$1 added to agenda
2022-04-04 15:50:48,670 3170  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Executing performSchemaOperationsProcessEngineBuild with setting true
2022-04-04 15:50:48,670 3170  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Opening JDBC Connection
2022-04-04 15:50:48,670 3170  [           main] DEBUG source.pooled.PooledDataSource  - Checked out connection 101775274 from pool.
2022-04-04 15:50:48,670 3170  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 15:50:48,684 3184  [           main] DEBUG pertyEntityImpl.selectProperty  - ==>  Preparing: select * from ACT_GE_PROPERTY where NAME_ = ? 
2022-04-04 15:50:48,715 3215  [           main] DEBUG pertyEntityImpl.selectProperty  - ==> Parameters: schema.version(String)
2022-04-04 15:50:48,736 3236  [           main] DEBUG pertyEntityImpl.selectProperty  - <==      Total: 1
2022-04-04 15:50:48,738 3238  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Flushing dbSqlSession
2022-04-04 15:50:48,738 3238  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - flush summary: 0 insert, 0 update, 0 delete.
2022-04-04 15:50:48,739 3239  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - now executing flush...
2022-04-04 15:50:48,739 3239  [           main] DEBUG aloneMybatisTransactionContext  - firing event committing...
2022-04-04 15:50:48,739 3239  [           main] DEBUG aloneMybatisTransactionContext  - committing the ibatis sql session...
2022-04-04 15:50:48,739 3239  [           main] DEBUG aloneMybatisTransactionContext  - firing event committed...
2022-04-04 15:50:48,739 3239  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 15:50:48,740 3240  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 15:50:48,742 3242  [           main] DEBUG source.pooled.PooledDataSource  - Returned connection 101775274 to pool.
2022-04-04 15:50:48,742 3242  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- SchemaOperationsProcessEngineBuild finished --------------------------------------------------------
2022-04-04 15:50:48,742 3242  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 15:50:48,742 3242  [           main] INFO  .engine.impl.ProcessEngineImpl  - ProcessEngine default created
2022-04-04 15:50:48,749 3249  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 15:50:48,749 3249  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- starting ValidateExecutionRelatedEntityCountCfgCmd --------------------------------------------------------
2022-04-04 15:50:48,749 3249  [           main] DEBUG da.DefaultActivitiEngineAgenda  - Operation class org.activiti.engine.impl.interceptor.CommandInvoker$1 added to agenda
2022-04-04 15:50:48,749 3249  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Opening JDBC Connection
2022-04-04 15:50:48,749 3249  [           main] DEBUG source.pooled.PooledDataSource  - Checked out connection 101775274 from pool.
2022-04-04 15:50:48,750 3250  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 15:50:48,750 3250  [           main] DEBUG pertyEntityImpl.selectProperty  - ==>  Preparing: select * from ACT_GE_PROPERTY where NAME_ = ? 
2022-04-04 15:50:48,751 3251  [           main] DEBUG pertyEntityImpl.selectProperty  - ==> Parameters: cfg.execution-related-entities-count(String)
2022-04-04 15:50:48,752 3252  [           main] DEBUG pertyEntityImpl.selectProperty  - <==      Total: 1
2022-04-04 15:50:48,752 3252  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Flushing dbSqlSession
2022-04-04 15:50:48,752 3252  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - flush summary: 0 insert, 0 update, 0 delete.
2022-04-04 15:50:48,752 3252  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - now executing flush...
2022-04-04 15:50:48,752 3252  [           main] DEBUG aloneMybatisTransactionContext  - firing event committing...
2022-04-04 15:50:48,752 3252  [           main] DEBUG aloneMybatisTransactionContext  - committing the ibatis sql session...
2022-04-04 15:50:48,752 3252  [           main] DEBUG aloneMybatisTransactionContext  - firing event committed...
2022-04-04 15:50:48,752 3252  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 15:50:48,753 3253  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 15:50:48,753 3253  [           main] DEBUG source.pooled.PooledDataSource  - Returned connection 101775274 to pool.
2022-04-04 15:50:48,753 3253  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- ValidateExecutionRelatedEntityCountCfgCmd finished --------------------------------------------------------
2022-04-04 15:50:48,753 3253  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 15:50:48,753 3253  [           main] INFO  activiti.engine.ProcessEngines  - initialised process engine default
2022-04-04 15:50:48,754 3254  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 15:50:48,754 3254  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- starting DeleteDeploymentCmd --------------------------------------------------------
2022-04-04 15:50:48,754 3254  [           main] DEBUG da.DefaultActivitiEngineAgenda  - Operation class org.activiti.engine.impl.interceptor.CommandInvoker$1 added to agenda
2022-04-04 15:50:48,755 3255  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Opening JDBC Connection
2022-04-04 15:50:48,755 3255  [           main] DEBUG source.pooled.PooledDataSource  - Checked out connection 101775274 from pool.
2022-04-04 15:50:48,755 3255  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Setting autocommit to false on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 15:50:48,755 3255  [           main] DEBUG entEntityImpl.selectDeployment  - ==>  Preparing: select * from ACT_RE_DEPLOYMENT where ID_ = ? 
2022-04-04 15:50:48,755 3255  [           main] DEBUG entEntityImpl.selectDeployment  - ==> Parameters: 15001(String)
2022-04-04 15:50:48,757 3257  [           main] DEBUG entEntityImpl.selectDeployment  - <==      Total: 1
2022-04-04 15:50:48,794 3294  [           main] DEBUG cessDefinitionsByQueryCriteria  - ==>  Preparing: select distinct RES.* from ACT_RE_PROCDEF RES WHERE RES.DEPLOYMENT_ID_ = ? order by RES.ID_ asc LIMIT ? OFFSET ? 
2022-04-04 15:50:48,795 3295  [           main] DEBUG cessDefinitionsByQueryCriteria  - ==> Parameters: 15001(String), 2147483647(Integer), 0(Integer)
2022-04-04 15:50:48,798 3298  [           main] DEBUG cessDefinitionsByQueryCriteria  - <==      Total: 1
2022-04-04 15:50:48,801 3301  [           main] DEBUG pl.selectModelsByQueryCriteria  - ==>  Preparing: select distinct RES.* from ACT_RE_MODEL RES WHERE RES.DEPLOYMENT_ID_ = ? order by RES.ID_ asc LIMIT ? OFFSET ? 
2022-04-04 15:50:48,801 3301  [           main] DEBUG pl.selectModelsByQueryCriteria  - ==> Parameters: 15001(String), 2147483647(Integer), 0(Integer)
2022-04-04 15:50:48,802 3302  [           main] DEBUG pl.selectModelsByQueryCriteria  - <==      Total: 0
2022-04-04 15:50:48,803 3303  [           main] DEBUG stanceIdsByProcessDefinitionId  - ==>  Preparing: select ID_ from ACT_RU_EXECUTION where PROC_DEF_ID_ = ? and PARENT_ID_ is null 
2022-04-04 15:50:48,803 3303  [           main] DEBUG stanceIdsByProcessDefinitionId  - ==> Parameters: MyEvection:1:15004(String)
2022-04-04 15:50:48,806 3306  [           main] DEBUG stanceIdsByProcessDefinitionId  - <==      Total: 1
2022-04-04 15:50:48,807 3307  [           main] DEBUG tionEntityImpl.selectExecution  - ==>  Preparing: select * from ACT_RU_EXECUTION where ID_ = ? 
2022-04-04 15:50:48,808 3308  [           main] DEBUG tionEntityImpl.selectExecution  - ==> Parameters: 17501(String)
2022-04-04 15:50:48,809 3309  [           main] DEBUG tionEntityImpl.selectExecution  - <==      Total: 1
2022-04-04 15:50:48,810 3310  [           main] DEBUG tExecutionsByParentExecutionId  - ==>  Preparing: select * from ACT_RU_EXECUTION where PARENT_ID_ = ? 
2022-04-04 15:50:48,811 3311  [           main] DEBUG tExecutionsByParentExecutionId  - ==> Parameters: 17501(String)
2022-04-04 15:50:48,813 3313  [           main] DEBUG tExecutionsByParentExecutionId  - <==      Total: 1
2022-04-04 15:50:48,814 3314  [           main] DEBUG cessInstanceBySuperExecutionId  - ==>  Preparing: select * from ACT_RU_EXECUTION where SUPER_EXEC_ = ? 
2022-04-04 15:50:48,814 3314  [           main] DEBUG cessInstanceBySuperExecutionId  - ==> Parameters: 17502(String)
2022-04-04 15:50:48,815 3315  [           main] DEBUG cessInstanceBySuperExecutionId  - <==      Total: 0
2022-04-04 15:50:48,816 3316  [           main] DEBUG selectTasksByProcessInstanceId  - ==>  Preparing: select T.* from ACT_RU_TASK T where T.PROC_INST_ID_ = ? 
2022-04-04 15:50:48,816 3316  [           main] DEBUG selectTasksByProcessInstanceId  - ==> Parameters: 17501(String)
2022-04-04 15:50:48,818 3318  [           main] DEBUG selectTasksByProcessInstanceId  - <==      Total: 1
2022-04-04 15:50:48,820 3320  [           main] DEBUG mpl.bpmn.deployer.BpmnDeployer  - Processing deployment 出差申请流程
2022-04-04 15:50:48,821 3321  [           main] DEBUG .selectResourcesByDeploymentId  - ==>  Preparing: select * from ACT_GE_BYTEARRAY where DEPLOYMENT_ID_ = ? order by NAME_ asc 
2022-04-04 15:50:48,821 3321  [           main] DEBUG .selectResourcesByDeploymentId  - ==> Parameters: 15001(String)
2022-04-04 15:50:48,826 3326  [           main] DEBUG .selectResourcesByDeploymentId  - <==      Total: 2
2022-04-04 15:50:48,827 3327  [           main] DEBUG ployer.ParsedDeploymentBuilder  - Processing BPMN resource bpmn/evection.bpmn20.xml
2022-04-04 15:50:48,894 3394  [           main] DEBUG er.handler.ProcessParseHandler  - Parsing process MyEvection
2022-04-04 15:50:48,906 3406  [           main] DEBUG ssDefinitionByDeploymentAndKey  - ==>  Preparing: select * from ACT_RE_PROCDEF where DEPLOYMENT_ID_ = ? and KEY_ = ? and (TENANT_ID_ = '' or TENANT_ID_ is null) 
2022-04-04 15:50:48,908 3408  [           main] DEBUG ssDefinitionByDeploymentAndKey  - ==> Parameters: 15001(String), MyEvection(String)
2022-04-04 15:50:48,917 3417  [           main] DEBUG ssDefinitionByDeploymentAndKey  - <==      Total: 1
2022-04-04 15:50:48,919 3419  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 15:50:48,919 3419  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- starting GetProcessDefinitionInfoCmd --------------------------------------------------------
2022-04-04 15:50:48,920 3420  [           main] DEBUG ptor.CommandContextInterceptor  - Valid context found. Reusing it for the current command 'org.activiti.engine.impl.cmd.GetProcessDefinitionInfoCmd'
2022-04-04 15:50:48,920 3420  [           main] DEBUG da.DefaultActivitiEngineAgenda  - Operation class org.activiti.engine.impl.interceptor.CommandInvoker$1 added to agenda
2022-04-04 15:50:48,925 3425  [           main] DEBUG itionInfoByProcessDefinitionId  - ==>  Preparing: select * from ACT_PROCDEF_INFO where PROC_DEF_ID_ = ? 
2022-04-04 15:50:48,927 3427  [           main] DEBUG itionInfoByProcessDefinitionId  - ==> Parameters: MyEvection:1:15004(String)
2022-04-04 15:50:48,928 3428  [           main] DEBUG itionInfoByProcessDefinitionId  - <==      Total: 0
2022-04-04 15:50:48,929 3429  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- GetProcessDefinitionInfoCmd finished --------------------------------------------------------
2022-04-04 15:50:48,929 3429  [           main] DEBUG mpl.interceptor.LogInterceptor  - 

2022-04-04 15:50:48,929 3429  [           main] DEBUG Impl.selectTasksByParentTaskId  - ==>  Preparing: select * from ACT_RU_TASK where PARENT_TASK_ID_ = ? 
2022-04-04 15:50:48,929 3429  [           main] DEBUG Impl.selectTasksByParentTaskId  - ==> Parameters: 17505(String)
2022-04-04 15:50:48,930 3430  [           main] DEBUG Impl.selectTasksByParentTaskId  - <==      Total: 0
2022-04-04 15:50:48,932 3432  [           main] DEBUG Impl.selectIdentityLinksByTask  - ==>  Preparing: select * from ACT_RU_IDENTITYLINK where TASK_ID_ = ? 
2022-04-04 15:50:48,932 3432  [           main] DEBUG Impl.selectIdentityLinksByTask  - ==> Parameters: 17505(String)
2022-04-04 15:50:48,935 3435  [           main] DEBUG Impl.selectIdentityLinksByTask  - <==      Total: 0
2022-04-04 15:50:48,936 3436  [           main] DEBUG tyImpl.selectVariablesByTaskId  - ==>  Preparing: select * from ACT_RU_VARIABLE where TASK_ID_ = ? 
2022-04-04 15:50:48,937 3437  [           main] DEBUG tyImpl.selectVariablesByTaskId  - ==> Parameters: 17505(String)
2022-04-04 15:50:48,942 3442  [           main] DEBUG tyImpl.selectVariablesByTaskId  - <==      Total: 0
2022-04-04 15:50:48,945 3445  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:48,945 3445  [           main] DEBUG mpl.selectHistoricTaskInstance  - ==>  Preparing: select * from ACT_HI_TASKINST where ID_ = ? 
2022-04-04 15:50:48,945 3445  [           main] DEBUG mpl.selectHistoricTaskInstance  - ==> Parameters: 17505(String)
2022-04-04 15:50:48,948 3448  [           main] DEBUG mpl.selectHistoricTaskInstance  - <==      Total: 1
2022-04-04 15:50:48,949 3449  [           main] DEBUG ectHistoricTasksByParentTaskId  - ==>  Preparing: select * from ACT_HI_TASKINST where PARENT_TASK_ID_ = ? 
2022-04-04 15:50:48,950 3450  [           main] DEBUG ectHistoricTasksByParentTaskId  - ==> Parameters: 17505(String)
2022-04-04 15:50:48,952 3452  [           main] DEBUG ectHistoricTasksByParentTaskId  - <==      Total: 0
2022-04-04 15:50:48,952 3452  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: FULL
2022-04-04 15:50:48,952 3452  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: ACTIVITY
2022-04-04 15:50:48,952 3452  [           main] DEBUG storicVariableInstanceByTaskId  - ==>  Preparing: select * from ACT_HI_VARINST where TASK_ID_ = ? 
2022-04-04 15:50:48,953 3453  [           main] DEBUG storicVariableInstanceByTaskId  - ==> Parameters: 17505(String)
2022-04-04 15:50:48,954 3454  [           main] DEBUG storicVariableInstanceByTaskId  - <==      Total: 0
2022-04-04 15:50:48,955 3455  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:48,955 3455  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:48,956 3456  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:48,956 3456  [           main] DEBUG Impl.selectAttachmentsByTaskId  - ==>  Preparing: select * from ACT_HI_ATTACHMENT where TASK_ID_ = ? order by TIME_ desc 
2022-04-04 15:50:48,956 3456  [           main] DEBUG Impl.selectAttachmentsByTaskId  - ==> Parameters: 17505(String)
2022-04-04 15:50:48,963 3463  [           main] DEBUG Impl.selectAttachmentsByTaskId  - <==      Total: 0
2022-04-04 15:50:48,963 3463  [           main] DEBUG ectHistoricIdentityLinksByTask  - ==>  Preparing: select * from ACT_HI_IDENTITYLINK where TASK_ID_ = ? 
2022-04-04 15:50:48,964 3464  [           main] DEBUG ectHistoricIdentityLinksByTask  - ==> Parameters: 17505(String)
2022-04-04 15:50:48,964 3464  [           main] DEBUG ectHistoricIdentityLinksByTask  - <==      Total: 0
2022-04-04 15:50:48,965 3465  [           main] DEBUG tExecutionsByParentExecutionId  - ==>  Preparing: select * from ACT_RU_EXECUTION where PARENT_ID_ = ? 
2022-04-04 15:50:48,966 3466  [           main] DEBUG tExecutionsByParentExecutionId  - ==> Parameters: 17502(String)
2022-04-04 15:50:48,967 3467  [           main] DEBUG tExecutionsByParentExecutionId  - <==      Total: 0
2022-04-04 15:50:48,967 3467  [           main] DEBUG cessInstanceBySuperExecutionId  - ==>  Preparing: select * from ACT_RU_EXECUTION where SUPER_EXEC_ = ? 
2022-04-04 15:50:48,967 3467  [           main] DEBUG cessInstanceBySuperExecutionId  - ==> Parameters: 17501(String)
2022-04-04 15:50:48,968 3468  [           main] DEBUG cessInstanceBySuperExecutionId  - <==      Total: 0
2022-04-04 15:50:48,968 3468  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: ACTIVITY
2022-04-04 15:50:48,973 3473  [           main] DEBUG stanceExecutionIdAndActivityId  - ==>  Preparing: select * from ACT_HI_ACTINST RES where EXECUTION_ID_ = ? and ACT_ID_ = ? and END_TIME_ is null 
2022-04-04 15:50:48,973 3473  [           main] DEBUG stanceExecutionIdAndActivityId  - ==> Parameters: 17502(String), sid-5fd21b18-f8b2-4d57-b31f-a46fff991627(String)
2022-04-04 15:50:48,977 3477  [           main] DEBUG stanceExecutionIdAndActivityId  - <==      Total: 1
2022-04-04 15:50:48,977 3477  [           main] DEBUG l.selectVariablesByExecutionId  - ==>  Preparing: select * from ACT_RU_VARIABLE where EXECUTION_ID_ = ? and TASK_ID_ is null 
2022-04-04 15:50:48,978 3478  [           main] DEBUG l.selectVariablesByExecutionId  - ==> Parameters: 17502(String)
2022-04-04 15:50:48,979 3479  [           main] DEBUG l.selectVariablesByExecutionId  - <==      Total: 0
2022-04-04 15:50:48,979 3479  [           main] DEBUG yImpl.selectTasksByExecutionId  - ==>  Preparing: select distinct T.* from ACT_RU_TASK T where T.EXECUTION_ID_ = ? 
2022-04-04 15:50:48,979 3479  [           main] DEBUG yImpl.selectTasksByExecutionId  - ==> Parameters: 17502(String)
2022-04-04 15:50:48,981 3481  [           main] DEBUG yImpl.selectTasksByExecutionId  - <==      Total: 1
2022-04-04 15:50:48,981 3481  [           main] DEBUG l.selectTimerJobsByExecutionId  - ==>  Preparing: select * from ACT_RU_TIMER_JOB J where J.EXECUTION_ID_ = ? 
2022-04-04 15:50:48,981 3481  [           main] DEBUG l.selectTimerJobsByExecutionId  - ==> Parameters: 17502(String)
2022-04-04 15:50:48,982 3482  [           main] DEBUG l.selectTimerJobsByExecutionId  - <==      Total: 0
2022-04-04 15:50:48,983 3483  [           main] DEBUG tyImpl.selectJobsByExecutionId  - ==>  Preparing: select * from ACT_RU_JOB J where J.EXECUTION_ID_ = ? 
2022-04-04 15:50:48,983 3483  [           main] DEBUG tyImpl.selectJobsByExecutionId  - ==> Parameters: 17502(String)
2022-04-04 15:50:48,984 3484  [           main] DEBUG tyImpl.selectJobsByExecutionId  - <==      Total: 0
2022-04-04 15:50:48,985 3485  [           main] DEBUG lectSuspendedJobsByExecutionId  - ==>  Preparing: select * from ACT_RU_SUSPENDED_JOB J where J.EXECUTION_ID_ = ? 
2022-04-04 15:50:48,985 3485  [           main] DEBUG lectSuspendedJobsByExecutionId  - ==> Parameters: 17502(String)
2022-04-04 15:50:48,986 3486  [           main] DEBUG lectSuspendedJobsByExecutionId  - <==      Total: 0
2022-04-04 15:50:48,986 3486  [           main] DEBUG ectDeadLetterJobsByExecutionId  - ==>  Preparing: select * from ACT_RU_DEADLETTER_JOB J where J.EXECUTION_ID_ = ? 
2022-04-04 15:50:48,987 3487  [           main] DEBUG ectDeadLetterJobsByExecutionId  - ==> Parameters: 17502(String)
2022-04-04 15:50:48,987 3487  [           main] DEBUG ectDeadLetterJobsByExecutionId  - <==      Total: 0
2022-04-04 15:50:48,988 3488  [           main] DEBUG tEventSubscriptionsByExecution  - ==>  Preparing: select * from ACT_RU_EVENT_SUBSCR where (EXECUTION_ID_ = ?) 
2022-04-04 15:50:48,988 3488  [           main] DEBUG tEventSubscriptionsByExecution  - ==> Parameters: 17502(String)
2022-04-04 15:50:48,989 3489  [           main] DEBUG tEventSubscriptionsByExecution  - <==      Total: 0
2022-04-04 15:50:48,989 3489  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: ACTIVITY
2022-04-04 15:50:48,989 3489  [           main] DEBUG IdentityLinksByProcessInstance  - ==>  Preparing: select * from ACT_RU_IDENTITYLINK where PROC_INST_ID_ = ? 
2022-04-04 15:50:48,990 3490  [           main] DEBUG IdentityLinksByProcessInstance  - ==> Parameters: 17501(String)
2022-04-04 15:50:48,990 3490  [           main] DEBUG IdentityLinksByProcessInstance  - <==      Total: 1
2022-04-04 15:50:48,991 3491  [           main] DEBUG l.selectVariablesByExecutionId  - ==>  Preparing: select * from ACT_RU_VARIABLE where EXECUTION_ID_ = ? and TASK_ID_ is null 
2022-04-04 15:50:48,991 3491  [           main] DEBUG l.selectVariablesByExecutionId  - ==> Parameters: 17501(String)
2022-04-04 15:50:48,993 3493  [           main] DEBUG l.selectVariablesByExecutionId  - <==      Total: 0
2022-04-04 15:50:48,994 3494  [           main] DEBUG yImpl.selectTasksByExecutionId  - ==>  Preparing: select distinct T.* from ACT_RU_TASK T where T.EXECUTION_ID_ = ? 
2022-04-04 15:50:48,994 3494  [           main] DEBUG yImpl.selectTasksByExecutionId  - ==> Parameters: 17501(String)
2022-04-04 15:50:48,995 3495  [           main] DEBUG yImpl.selectTasksByExecutionId  - <==      Total: 0
2022-04-04 15:50:48,996 3496  [           main] DEBUG l.selectTimerJobsByExecutionId  - ==>  Preparing: select * from ACT_RU_TIMER_JOB J where J.EXECUTION_ID_ = ? 
2022-04-04 15:50:48,996 3496  [           main] DEBUG l.selectTimerJobsByExecutionId  - ==> Parameters: 17501(String)
2022-04-04 15:50:48,997 3497  [           main] DEBUG l.selectTimerJobsByExecutionId  - <==      Total: 0
2022-04-04 15:50:48,997 3497  [           main] DEBUG tyImpl.selectJobsByExecutionId  - ==>  Preparing: select * from ACT_RU_JOB J where J.EXECUTION_ID_ = ? 
2022-04-04 15:50:48,998 3498  [           main] DEBUG tyImpl.selectJobsByExecutionId  - ==> Parameters: 17501(String)
2022-04-04 15:50:48,999 3499  [           main] DEBUG tyImpl.selectJobsByExecutionId  - <==      Total: 0
2022-04-04 15:50:48,999 3499  [           main] DEBUG lectSuspendedJobsByExecutionId  - ==>  Preparing: select * from ACT_RU_SUSPENDED_JOB J where J.EXECUTION_ID_ = ? 
2022-04-04 15:50:48,999 3499  [           main] DEBUG lectSuspendedJobsByExecutionId  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,000 3500  [           main] DEBUG lectSuspendedJobsByExecutionId  - <==      Total: 0
2022-04-04 15:50:49,001 3501  [           main] DEBUG ectDeadLetterJobsByExecutionId  - ==>  Preparing: select * from ACT_RU_DEADLETTER_JOB J where J.EXECUTION_ID_ = ? 
2022-04-04 15:50:49,001 3501  [           main] DEBUG ectDeadLetterJobsByExecutionId  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,002 3502  [           main] DEBUG ectDeadLetterJobsByExecutionId  - <==      Total: 0
2022-04-04 15:50:49,002 3502  [           main] DEBUG tEventSubscriptionsByExecution  - ==>  Preparing: select * from ACT_RU_EVENT_SUBSCR where (EXECUTION_ID_ = ?) 
2022-04-04 15:50:49,003 3503  [           main] DEBUG tEventSubscriptionsByExecution  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,004 3504  [           main] DEBUG tEventSubscriptionsByExecution  - <==      Total: 0
2022-04-04 15:50:49,004 3504  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,005 3505  [           main] DEBUG .selectHistoricProcessInstance  - ==>  Preparing: select * from ACT_HI_PROCINST where PROC_INST_ID_ = ? 
2022-04-04 15:50:49,005 3505  [           main] DEBUG .selectHistoricProcessInstance  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,007 3507  [           main] DEBUG .selectHistoricProcessInstance  - <==      Total: 1
2022-04-04 15:50:49,008 3508  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: AUDIT
2022-04-04 15:50:49,008 3508  [           main] DEBUG toricDetailByProcessInstanceId  - ==>  Preparing: select * from ACT_HI_DETAIL where PROC_INST_ID_ = ? 
2022-04-04 15:50:49,009 3509  [           main] DEBUG toricDetailByProcessInstanceId  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,011 3511  [           main] DEBUG toricDetailByProcessInstanceId  - <==      Total: 0
2022-04-04 15:50:49,011 3511  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: ACTIVITY
2022-04-04 15:50:49,011 3511  [           main] DEBUG bleInstanceByProcessInstanceId  - ==>  Preparing: select * from ACT_HI_VARINST where PROC_INST_ID_ = ? 
2022-04-04 15:50:49,012 3512  [           main] DEBUG bleInstanceByProcessInstanceId  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,013 3513  [           main] DEBUG bleInstanceByProcessInstanceId  - <==      Total: 0
2022-04-04 15:50:49,013 3513  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: ACTIVITY
2022-04-04 15:50:49,013 3513  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: AUDIT
2022-04-04 15:50:49,014 3514  [           main] DEBUG skInstancesByProcessInstanceId  - ==>  Preparing: select * from ACT_HI_TASKINST where PROC_INST_ID_ = ? 
2022-04-04 15:50:49,014 3514  [           main] DEBUG skInstancesByProcessInstanceId  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,015 3515  [           main] DEBUG skInstancesByProcessInstanceId  - <==      Total: 1
2022-04-04 15:50:49,016 3516  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,016 3516  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: FULL
2022-04-04 15:50:49,016 3516  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: ACTIVITY
2022-04-04 15:50:49,016 3516  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,016 3516  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,017 3517  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,017 3517  [           main] DEBUG IdentityLinksByProcessInstance  - ==>  Preparing: select * from ACT_HI_IDENTITYLINK where PROC_INST_ID_ = ? 
2022-04-04 15:50:49,017 3517  [           main] DEBUG IdentityLinksByProcessInstance  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,018 3518  [           main] DEBUG IdentityLinksByProcessInstance  - <==      Total: 1
2022-04-04 15:50:49,019 3519  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,019 3519  [           main] DEBUG nceIdsBySuperProcessInstanceId  - ==>  Preparing: select * from ACT_HI_PROCINST where SUPER_PROCESS_INSTANCE_ID_ = ? 
2022-04-04 15:50:49,019 3519  [           main] DEBUG nceIdsBySuperProcessInstanceId  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,020 3520  [           main] DEBUG nceIdsBySuperProcessInstanceId  - <==      Total: 0
2022-04-04 15:50:49,020 3520  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: ACTIVITY
2022-04-04 15:50:49,020 3520  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,020 3520  [           main] DEBUG stanceIdsByProcessDefinitionId  - ==>  Preparing: select ID_ from ACT_HI_PROCINST where PROC_DEF_ID_ = ? 
2022-04-04 15:50:49,021 3521  [           main] DEBUG stanceIdsByProcessDefinitionId  - ==> Parameters: MyEvection:1:15004(String)
2022-04-04 15:50:49,021 3521  [           main] DEBUG stanceIdsByProcessDefinitionId  - <==      Total: 1
2022-04-04 15:50:49,022 3522  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,022 3522  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: AUDIT
2022-04-04 15:50:49,022 3522  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: ACTIVITY
2022-04-04 15:50:49,022 3522  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: ACTIVITY
2022-04-04 15:50:49,022 3522  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: AUDIT
2022-04-04 15:50:49,022 3522  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,022 3522  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: FULL
2022-04-04 15:50:49,022 3522  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT, level required: ACTIVITY
2022-04-04 15:50:49,023 3523  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,023 3523  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,023 3523  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,023 3523  [           main] DEBUG .history.DefaultHistoryManager  - Current history level: AUDIT
2022-04-04 15:50:49,023 3523  [           main] DEBUG obByTypeAndProcessDefinitionId  - ==>  Preparing: select J.* from ACT_RU_TIMER_JOB J where J.HANDLER_TYPE_ = ? and J.PROC_DEF_ID_ = ? 
2022-04-04 15:50:49,024 3524  [           main] DEBUG obByTypeAndProcessDefinitionId  - ==> Parameters: timer-start-event(String), MyEvection:1:15004(String)
2022-04-04 15:50:49,024 3524  [           main] DEBUG obByTypeAndProcessDefinitionId  - <==      Total: 0
2022-04-04 15:50:49,025 3525  [           main] DEBUG ctLatestProcessDefinitionByKey  - ==>  Preparing: select * from ACT_RE_PROCDEF where KEY_ = ? and (TENANT_ID_ = '' or TENANT_ID_ is null) and VERSION_ = (select max(VERSION_) from ACT_RE_PROCDEF where KEY_ = ? and (TENANT_ID_ = '' or TENANT_ID_ is null)) 
2022-04-04 15:50:49,026 3526  [           main] DEBUG ctLatestProcessDefinitionByKey  - ==> Parameters: MyEvection(String), MyEvection(String)
2022-04-04 15:50:49,028 3528  [           main] DEBUG ctLatestProcessDefinitionByKey  - <==      Total: 1
2022-04-04 15:50:49,029 3529  [           main] DEBUG cessDefinitionsByQueryCriteria  - ==>  Preparing: select distinct RES.* from ACT_RE_PROCDEF RES WHERE RES.KEY_ = ? and RES.VERSION_ < ? and (RES.TENANT_ID_ = '' or RES.TENANT_ID_ is null) order by RES.VERSION_ desc LIMIT ? OFFSET ? 
2022-04-04 15:50:49,030 3530  [           main] DEBUG cessDefinitionsByQueryCriteria  - ==> Parameters: MyEvection(String), 1(Integer), 1(Integer), 0(Integer)
2022-04-04 15:50:49,031 3531  [           main] DEBUG cessDefinitionsByQueryCriteria  - <==      Total: 0
2022-04-04 15:50:49,032 3532  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - Flushing dbSqlSession
2022-04-04 15:50:49,032 3532  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   update ProcessInstance[17501]
2022-04-04 15:50:49,032 3532  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   update Execution[ id '17502' ] - activity 'sid-5fd21b18-f8b2-4d57-b31f-a46fff991627 - parent '17501'
2022-04-04 15:50:49,033 3533  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   update HistoricActivityInstanceEntity[id=17504, activityId=sid-5fd21b18-f8b2-4d57-b31f-a46fff991627, activityName=创建出差申请]
2022-04-04 15:50:49,033 3533  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   delete DeploymentEntity[id=15001, name=出差申请流程] with id 15001
2022-04-04 15:50:49,033 3533  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   delete IdentityLinkEntity[id=17506, type=participant, userId=zhangsan, processInstanceId=17501] with id 17506
2022-04-04 15:50:49,033 3533  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   delete Task[id=17505, name=创建出差申请] with id 17505
2022-04-04 15:50:49,033 3533  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   delete org.activiti.engine.impl.persistence.entity.HistoricTaskInstanceEntityImpl@bf1ec20 with id 17505
2022-04-04 15:50:49,033 3533  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   delete org.activiti.engine.impl.persistence.entity.HistoricIdentityLinkEntityImpl@70efb718 with id 17506
2022-04-04 15:50:49,033 3533  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   delete Execution[ id '17502' ] - activity 'sid-5fd21b18-f8b2-4d57-b31f-a46fff991627 - parent '17501' with id 17502
2022-04-04 15:50:49,034 3534  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   delete ProcessInstance[17501] with id 17501
2022-04-04 15:50:49,034 3534  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   delete HistoricProcessInstanceEntity[superProcessInstanceId=null] with id 17501
2022-04-04 15:50:49,034 3534  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteIdentityLinkByProcDef(MyEvection:1:15004)
2022-04-04 15:50:49,034 3534  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteEventSubscriptionsForProcessDefinition(MyEvection:1:15004)
2022-04-04 15:50:49,034 3534  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteProcessDefinitionsByDeploymentId(15001)
2022-04-04 15:50:49,034 3534  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteCommentsByTaskId(17505)
2022-04-04 15:50:49,034 3534  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteCommentsByTaskId(17505)
2022-04-04 15:50:49,034 3534  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteCommentsByProcessInstanceId(17501)
2022-04-04 15:50:49,034 3534  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteCommentsByTaskId(17505)
2022-04-04 15:50:49,035 3535  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteCommentsByProcessInstanceId(17501)
2022-04-04 15:50:49,035 3535  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteResourcesByDeploymentId(15001)
2022-04-04 15:50:49,035 3535  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteHistoricActivityInstancesByProcessInstanceId(17501)
2022-04-04 15:50:49,035 3535  [           main] DEBUG ti.engine.impl.db.DbSqlSession  -   bulk delete: deleteHistoricActivityInstancesByProcessInstanceId(17501)
2022-04-04 15:50:49,035 3535  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - flush summary: 0 insert, 3 update, 19 delete.
2022-04-04 15:50:49,035 3535  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - now executing flush...
2022-04-04 15:50:49,035 3535  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - updating: ProcessInstance[17501]
2022-04-04 15:50:49,035 3535  [           main] DEBUG tionEntityImpl.updateExecution  - ==>  Preparing: update ACT_RU_EXECUTION set REV_ = ?, BUSINESS_KEY_ = ?, PROC_DEF_ID_ = ?, ACT_ID_ = ?, IS_ACTIVE_ = ?, IS_CONCURRENT_ = ?, IS_SCOPE_ = ?, IS_EVENT_SCOPE_ = ?, IS_MI_ROOT_ = ?, PARENT_ID_ = ?, SUPER_EXEC_ = ?, ROOT_PROC_INST_ID_ = ?, SUSPENSION_STATE_ = ?, NAME_ = ?, IS_COUNT_ENABLED_ = ?, EVT_SUBSCR_COUNT_ = ?, TASK_COUNT_ = ?, JOB_COUNT_ = ?, TIMER_JOB_COUNT_ = ?, SUSP_JOB_COUNT_ = ?, DEADLETTER_JOB_COUNT_ = ?, VAR_COUNT_ = ?, ID_LINK_COUNT_ = ? where ID_ = ? and REV_ = ? 
2022-04-04 15:50:49,037 3537  [           main] DEBUG tionEntityImpl.updateExecution  - ==> Parameters: 2(Integer), null, MyEvection:1:15004(String), null, false(Boolean), false(Boolean), true(Boolean), false(Boolean), false(Boolean), null, null, 17501(String), 1(Integer), null, false(Boolean), 0(Integer), 0(Integer), 0(Integer), 0(Integer), 0(Integer), 0(Integer), 0(Integer), 0(Integer), 17501(String), 1(Integer)
2022-04-04 15:50:49,038 3538  [           main] DEBUG tionEntityImpl.updateExecution  - <==    Updates: 1
2022-04-04 15:50:49,038 3538  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - updating: Execution[ id '17502' ] - activity 'sid-5fd21b18-f8b2-4d57-b31f-a46fff991627 - parent '17501'
2022-04-04 15:50:49,039 3539  [           main] DEBUG tionEntityImpl.updateExecution  - ==>  Preparing: update ACT_RU_EXECUTION set REV_ = ?, BUSINESS_KEY_ = ?, PROC_DEF_ID_ = ?, ACT_ID_ = ?, IS_ACTIVE_ = ?, IS_CONCURRENT_ = ?, IS_SCOPE_ = ?, IS_EVENT_SCOPE_ = ?, IS_MI_ROOT_ = ?, PARENT_ID_ = ?, SUPER_EXEC_ = ?, ROOT_PROC_INST_ID_ = ?, SUSPENSION_STATE_ = ?, NAME_ = ?, IS_COUNT_ENABLED_ = ?, EVT_SUBSCR_COUNT_ = ?, TASK_COUNT_ = ?, JOB_COUNT_ = ?, TIMER_JOB_COUNT_ = ?, SUSP_JOB_COUNT_ = ?, DEADLETTER_JOB_COUNT_ = ?, VAR_COUNT_ = ?, ID_LINK_COUNT_ = ? where ID_ = ? and REV_ = ? 
2022-04-04 15:50:49,040 3540  [           main] DEBUG tionEntityImpl.updateExecution  - ==> Parameters: 2(Integer), null, MyEvection:1:15004(String), sid-5fd21b18-f8b2-4d57-b31f-a46fff991627(String), false(Boolean), false(Boolean), false(Boolean), false(Boolean), false(Boolean), 17501(String), null, 17501(String), 1(Integer), null, false(Boolean), 0(Integer), 0(Integer), 0(Integer), 0(Integer), 0(Integer), 0(Integer), 0(Integer), 0(Integer), 17502(String), 1(Integer)
2022-04-04 15:50:49,041 3541  [           main] DEBUG tionEntityImpl.updateExecution  - <==    Updates: 1
2022-04-04 15:50:49,041 3541  [           main] DEBUG ti.engine.impl.db.DbSqlSession  - updating: HistoricActivityInstanceEntity[id=17504, activityId=sid-5fd21b18-f8b2-4d57-b31f-a46fff991627, activityName=创建出差申请]
2022-04-04 15:50:49,041 3541  [           main] DEBUG updateHistoricActivityInstance  - ==>  Preparing: update ACT_HI_ACTINST set EXECUTION_ID_ = ?, ASSIGNEE_ = ?, END_TIME_ = ?, DURATION_ = ?, DELETE_REASON_ = ? where ID_ = ? 
2022-04-04 15:50:49,042 3542  [           main] DEBUG updateHistoricActivityInstance  - ==> Parameters: 17502(String), zhangsan(String), 2022-04-04 15:50:48.977(Timestamp), 133977(Long), deleted deployment(String), 17504(String)
2022-04-04 15:50:49,044 3544  [           main] DEBUG updateHistoricActivityInstance  - <==    Updates: 1
2022-04-04 15:50:49,044 3544  [           main] DEBUG ityImpl.deleteCommentsByTaskId  - ==>  Preparing: delete from ACT_HI_COMMENT where TASK_ID_ = ? 
2022-04-04 15:50:49,044 3544  [           main] DEBUG ityImpl.deleteCommentsByTaskId  - ==> Parameters: 17505(String)
2022-04-04 15:50:49,045 3545  [           main] DEBUG ityImpl.deleteCommentsByTaskId  - <==    Updates: 0
2022-04-04 15:50:49,046 3546  [           main] DEBUG ityImpl.deleteCommentsByTaskId  - ==>  Preparing: delete from ACT_HI_COMMENT where TASK_ID_ = ? 
2022-04-04 15:50:49,046 3546  [           main] DEBUG ityImpl.deleteCommentsByTaskId  - ==> Parameters: 17505(String)
2022-04-04 15:50:49,046 3546  [           main] DEBUG ityImpl.deleteCommentsByTaskId  - <==    Updates: 0
2022-04-04 15:50:49,047 3547  [           main] DEBUG eteCommentsByProcessInstanceId  - ==>  Preparing: delete from ACT_HI_COMMENT where PROC_INST_ID_ = ? 
2022-04-04 15:50:49,047 3547  [           main] DEBUG eteCommentsByProcessInstanceId  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,047 3547  [           main] DEBUG eteCommentsByProcessInstanceId  - <==    Updates: 0
2022-04-04 15:50:49,048 3548  [           main] DEBUG ityImpl.deleteCommentsByTaskId  - ==>  Preparing: delete from ACT_HI_COMMENT where TASK_ID_ = ? 
2022-04-04 15:50:49,048 3548  [           main] DEBUG ityImpl.deleteCommentsByTaskId  - ==> Parameters: 17505(String)
2022-04-04 15:50:49,048 3548  [           main] DEBUG ityImpl.deleteCommentsByTaskId  - <==    Updates: 0
2022-04-04 15:50:49,048 3548  [           main] DEBUG eteCommentsByProcessInstanceId  - ==>  Preparing: delete from ACT_HI_COMMENT where PROC_INST_ID_ = ? 
2022-04-04 15:50:49,049 3549  [           main] DEBUG eteCommentsByProcessInstanceId  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,049 3549  [           main] DEBUG eteCommentsByProcessInstanceId  - <==    Updates: 0
2022-04-04 15:50:49,049 3549  [           main] DEBUG .deleteResourcesByDeploymentId  - ==>  Preparing: delete from ACT_GE_BYTEARRAY where DEPLOYMENT_ID_ = ? 
2022-04-04 15:50:49,050 3550  [           main] DEBUG .deleteResourcesByDeploymentId  - ==> Parameters: 15001(String)
2022-04-04 15:50:49,050 3550  [           main] DEBUG .deleteResourcesByDeploymentId  - <==    Updates: 2
2022-04-04 15:50:49,051 3551  [           main] DEBUG entEntityImpl.deleteDeployment  - ==>  Preparing: delete from ACT_RE_DEPLOYMENT where ID_ = ? 
2022-04-04 15:50:49,051 3551  [           main] DEBUG entEntityImpl.deleteDeployment  - ==> Parameters: 15001(String)
2022-04-04 15:50:49,051 3551  [           main] DEBUG entEntityImpl.deleteDeployment  - <==    Updates: 1
2022-04-04 15:50:49,052 3552  [           main] DEBUG scriptionsForProcessDefinition  - ==>  Preparing: delete from ACT_RU_EVENT_SUBSCR where PROC_DEF_ID_ = ? and EXECUTION_ID_ is null and PROC_INST_ID_ is null 
2022-04-04 15:50:49,052 3552  [           main] DEBUG scriptionsForProcessDefinition  - ==> Parameters: MyEvection:1:15004(String)
2022-04-04 15:50:49,052 3552  [           main] DEBUG scriptionsForProcessDefinition  - <==    Updates: 0
2022-04-04 15:50:49,052 3552  [           main] DEBUG kEntityImpl.deleteIdentityLink  - ==>  Preparing: delete from ACT_RU_IDENTITYLINK where ID_ = ? 
2022-04-04 15:50:49,053 3553  [           main] DEBUG kEntityImpl.deleteIdentityLink  - ==> Parameters: 17506(String)
2022-04-04 15:50:49,053 3553  [           main] DEBUG kEntityImpl.deleteIdentityLink  - <==    Updates: 1
2022-04-04 15:50:49,053 3553  [           main] DEBUG pl.deleteIdentityLinkByProcDef  - ==>  Preparing: delete from ACT_RU_IDENTITYLINK where PROC_DEF_ID_ = ? 
2022-04-04 15:50:49,054 3554  [           main] DEBUG pl.deleteIdentityLinkByProcDef  - ==> Parameters: MyEvection:1:15004(String)
2022-04-04 15:50:49,054 3554  [           main] DEBUG pl.deleteIdentityLinkByProcDef  - <==    Updates: 0
2022-04-04 15:50:49,054 3554  [           main] DEBUG tity.TaskEntityImpl.deleteTask  - ==>  Preparing: delete from ACT_RU_TASK where ID_ = ? and REV_ = ? 
2022-04-04 15:50:49,055 3555  [           main] DEBUG tity.TaskEntityImpl.deleteTask  - ==> Parameters: 17505(String), 1(Integer)
2022-04-04 15:50:49,055 3555  [           main] DEBUG tity.TaskEntityImpl.deleteTask  - <==    Updates: 1
2022-04-04 15:50:49,056 3556  [           main] DEBUG tionEntityImpl.deleteExecution  - ==>  Preparing: delete from ACT_RU_EXECUTION where ID_ = ? and REV_ = ? 
2022-04-04 15:50:49,056 3556  [           main] DEBUG tionEntityImpl.deleteExecution  - ==> Parameters: 17502(String), 2(Integer)
2022-04-04 15:50:49,057 3557  [           main] DEBUG tionEntityImpl.deleteExecution  - <==    Updates: 1
2022-04-04 15:50:49,058 3558  [           main] DEBUG tionEntityImpl.deleteExecution  - ==>  Preparing: delete from ACT_RU_EXECUTION where ID_ = ? and REV_ = ? 
2022-04-04 15:50:49,058 3558  [           main] DEBUG tionEntityImpl.deleteExecution  - ==> Parameters: 17501(String), 2(Integer)
2022-04-04 15:50:49,059 3559  [           main] DEBUG tionEntityImpl.deleteExecution  - <==    Updates: 1
2022-04-04 15:50:49,059 3559  [           main] DEBUG ocessDefinitionsByDeploymentId  - ==>  Preparing: delete from ACT_RE_PROCDEF where DEPLOYMENT_ID_ = ? 
2022-04-04 15:50:49,059 3559  [           main] DEBUG ocessDefinitionsByDeploymentId  - ==> Parameters: 15001(String)
2022-04-04 15:50:49,060 3560  [           main] DEBUG ocessDefinitionsByDeploymentId  - <==    Updates: 1
2022-04-04 15:50:49,060 3560  [           main] DEBUG mpl.deleteHistoricIdentityLink  - ==>  Preparing: delete from ACT_HI_IDENTITYLINK where ID_ = ? 
2022-04-04 15:50:49,060 3560  [           main] DEBUG mpl.deleteHistoricIdentityLink  - ==> Parameters: 17506(String)
2022-04-04 15:50:49,061 3561  [           main] DEBUG mpl.deleteHistoricIdentityLink  - <==    Updates: 1
2022-04-04 15:50:49,061 3561  [           main] DEBUG tyInstancesByProcessInstanceId  - ==>  Preparing: delete from ACT_HI_ACTINST where PROC_INST_ID_ = ? 
2022-04-04 15:50:49,061 3561  [           main] DEBUG tyInstancesByProcessInstanceId  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,062 3562  [           main] DEBUG tyInstancesByProcessInstanceId  - <==    Updates: 2
2022-04-04 15:50:49,062 3562  [           main] DEBUG tyInstancesByProcessInstanceId  - ==>  Preparing: delete from ACT_HI_ACTINST where PROC_INST_ID_ = ? 
2022-04-04 15:50:49,062 3562  [           main] DEBUG tyInstancesByProcessInstanceId  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,062 3562  [           main] DEBUG tyInstancesByProcessInstanceId  - <==    Updates: 0
2022-04-04 15:50:49,062 3562  [           main] DEBUG .deleteHistoricProcessInstance  - ==>  Preparing: delete from ACT_HI_PROCINST where PROC_INST_ID_ = ? 
2022-04-04 15:50:49,063 3563  [           main] DEBUG .deleteHistoricProcessInstance  - ==> Parameters: 17501(String)
2022-04-04 15:50:49,063 3563  [           main] DEBUG .deleteHistoricProcessInstance  - <==    Updates: 1
2022-04-04 15:50:49,063 3563  [           main] DEBUG mpl.deleteHistoricTaskInstance  - ==>  Preparing: delete from ACT_HI_TASKINST where ID_ = ? 
2022-04-04 15:50:49,063 3563  [           main] DEBUG mpl.deleteHistoricTaskInstance  - ==> Parameters: 17505(String)
2022-04-04 15:50:49,064 3564  [           main] DEBUG mpl.deleteHistoricTaskInstance  - <==    Updates: 1
2022-04-04 15:50:49,064 3564  [           main] DEBUG aloneMybatisTransactionContext  - firing event committing...
2022-04-04 15:50:49,064 3564  [           main] DEBUG aloneMybatisTransactionContext  - committing the ibatis sql session...
2022-04-04 15:50:49,064 3564  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Committing JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 15:50:49,064 3564  [           main] DEBUG aloneMybatisTransactionContext  - firing event committed...
2022-04-04 15:50:49,064 3564  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Resetting autocommit to true on JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 15:50:49,064 3564  [           main] DEBUG ansaction.jdbc.JdbcTransaction  - Closing JDBC Connection [com.mysql.jdbc.JDBC4Connection@610f7aa]
2022-04-04 15:50:49,065 3565  [           main] DEBUG source.pooled.PooledDataSource  - Returned connection 101775274 to pool.
2022-04-04 15:50:49,065 3565  [           main] DEBUG mpl.interceptor.LogInterceptor  - --- DeleteDeploymentCmd finished --------------------------------------------------------
2022-04-04 15:50:49,065 3565  [           main] DEBUG mpl.interceptor.LogInterceptor  - 


Process finished with exit code 0

ACT_RU_EXECUTION

ACT_HI_ACTINST

ACT_HI_COMMENT

ACT_GE_BYTEARRAY

ACT_RE_DEPLOYMENT

ACT_RU_EVENT_SUBSCR

ACT_RU_IDENTITYLINK

ACT_RU_TASK

说明:

  1.   使用repositoryService删除流程定义,历史表信息不会被删除
    
  2.   如果该流程定义下没有正在运行的流程,则可以用普通删除。
    

如果该流程定义下存在已经运行的流程,使用普通删除报错,可用级联删除方法将流程及相关记录全部删除。

先删除没有完成流程节点,最后就可以完全删除流程定义信息,也会删除流程历史记录

项目开发中级联删除操作一般只开放给超级管理员使用.

6.9 流程资源下载

现在我们的流程资源文件已经上传到数据库了,如果其他用户想要查看这些资源文件,可以从数据库中把资源文件下载到本地。

解决方案有:

1、jdbc对blob类型,clob类型数据读取出来,保存到文件目录

2、使用activiti的api来实现

使用commons-io.jar 解决IO的操作

引入commons-io依赖包

<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.6</version>
</dependency>

通过流程定义对象获取流程定义资源,获取bpmn和png

import org.apache.commons.io.IOUtils;

/**
     * 下载 资源文件
     * 方案1:使用Activiti提供的api。来下载资源文件
     * 方案2:自己写代码从数据库中下载文件,使用jdbc对blob类型,clob类型数据读取出来,保存到文件目录
     * 解决io:commons-io.jar
     * 这里我们使用方案1
     */
    @Test
    public void  queryBpmnFile() throws IOException {
//        1、得到引擎
        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
//        2、获取repositoryService
        RepositoryService repositoryService = processEngine.getRepositoryService();
//        3、得到查询器:ProcessDefinitionQuery,设置查询条件,得到想要的流程定义
        ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
                .processDefinitionKey("MyEvection")
                .singleResult();
//        4、通过流程定义信息,得到部署ID
        String deploymentId = processDefinition.getDeploymentId();
//        5、通过repositoryService的方法,实现读取图片信息和bpmn信息
//          5.1、获取png图片的流
        //从流程定义表(act_re_procdef)中,获取png图片的目录和名字
        InputStream pngInput = repositoryService.getResourceAsStream(deploymentId, processDefinition.getDiagramResourceName());
//          5.2、获取bpmn文件的流
        InputStream bpmnInput = repositoryService.getResourceAsStream(deploymentId, processDefinition.getResourceName());
//        6、构造OutputStream流
        File file_png = new File("d:/evectionflow01.png");
        File file_bpmn = new File("d:/evectionflow01.bpmn20.xml");
        FileOutputStream bpmnOut = new FileOutputStream(file_bpmn);
        FileOutputStream pngOut = new FileOutputStream(file_png);
//        7、输入流,输出流的转换
        IOUtils.copy(pngInput,pngOut);
        IOUtils.copy(bpmnInput,bpmnOut);
//        8、关闭流
        pngOut.close();
        bpmnOut.close();
        pngInput.close();
        bpmnInput.close();
    }

说明:

  1.   deploymentId为流程部署ID
    
  2.   resource_name为act_ge_bytearray表中NAME_列的值
    
  3.   使用repositoryService的getDeploymentResourceNames方法可以获取指定部署下得所有文件的名称
    
  4.   使用repositoryService的getResourceAsStream方法传入部署ID和资源图片名称可以获取部署下指定名称文件的输入流
    

最后的将输入流中的图片资源进行输出。

6.10 流程历史信息的查看

即使流程定义已经删除了,流程执行的历史信息通过前面的分析,依然保存在activiti的act_hi_*相关的表中。所以我们还是可以查询流程执行的历史信息,可以通过HistoryService来查看相关的历史记录。

    /**
     * 查看历史信息
     */
    @Test
    public void findHistoryInfo(){
//      获取引擎
        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
//        获取HistoryService
        HistoryService historyService = processEngine.getHistoryService();
//        获取 actinst表的查询对象
        HistoricActivityInstanceQuery instanceQuery = historyService.createHistoricActivityInstanceQuery();
//        查询 actinst表,条件:根据 InstanceId 查询
//        instanceQuery.processInstanceId("2501");
//        查询 actinst表,条件:根据 DefinitionId 查询
        instanceQuery.processDefinitionId("myEvection:1:4");
//        增加排序操作,orderByHistoricActivityInstanceStartTime 根据开始时间排序 asc 升序
        instanceQuery.orderByHistoricActivityInstanceStartTime().asc();
//        查询所有内容
        List<HistoricActivityInstance> activityInstanceList = instanceQuery.list();
//        输出
        for (HistoricActivityInstance hi : activityInstanceList) {
            System.out.println(hi.getActivityId());
            System.out.println(hi.getActivityName());
            System.out.println(hi.getProcessDefinitionId());
            System.out.println(hi.getProcessInstanceId());
            System.out.println("<==========================>");
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值