
就是查询sql,可以开启sql,查看sql输出来调试:
主要sql:
-- 我发起的流程
SELECT DISTINCT
RES.*,
DEF.KEY_ AS PROC_DEF_KEY_,
DEF.NAME_ AS PROC_DEF_NAME_,
DEF.VERSION_ AS PROC_DEF_VERSION_,
DEF.DEPLOYMENT_ID_ AS DEPLOYMENT_ID_,
deployment.CATEGORY_ AS CATEGORY_
FROM
ACT_HI_PROCINST RES
LEFT OUTER JOIN ACT_RE_PROCDEF DEF ON RES.PROC_DEF_ID_ = DEF.ID_
LEFT JOIN ACT_RE_DEPLOYMENT deployment ON DEF.DEPLOYMENT_ID_ = deployment.ID_
LEFT JOIN act_business_form form ON deployment.CATEGORY_ = form.process_code
WHERE
RES.START_USER_ID_ = '用户id'
ORDER BY
RES.START_TIME_ DESC
LIMIT 10
-- 待我审批的流程
SELECT
t1.*
FROM
(
SELECT DISTINCT
RES.*,
DEF.KEY_ AS PROC_DEF_KEY_,
DEF.NAME_ AS PROC_DEF_NAME_,
DEF.VERSION_ AS PROC_DEF_VERSION_,
DEF.DEPLOYMENT_ID_ AS DEPLOYMENT_ID_,
deployment.CATEGORY_ AS CATEGORY_,
USER.NAME startUserName,
form.NAME formName
FROM
ACT_HI_PROCINST RES
LEFT OUTER JOIN ACT_RE_PROCDEF DEF ON RES.PROC_DEF_ID_ = DEF.ID_
LEFT JOIN ACT_RE_DEPLOYMENT deployment ON DEF.DEPLOYMENT_ID_ = deployment.ID_
LEFT JOIN act_business_form form ON deployment.CATEGORY_ = form.process_code
LEFT JOIN sys_user USER ON RES.START_USER_ID_ = CONCAT( USER.id, '' )
) t1
INNER JOIN ( SELECT DISTINCT RES.PROC_INST_ID_ FROM ACT_RU_TASK RES WHERE RES.ASSIGNEE_ = '用户id' ORDER BY RES.CREATE_TIME_ DESC ) t2 ON t1.PROC_INST_ID_ = t2.PROC_INST_ID_
LIMIT 10
-- 所有流程实例
SELECT DISTINCT
RES.*,
DEF.KEY_ AS PROC_DEF_KEY_,
DEF.NAME_ AS PROC_DEF_NAME_,
DEF.VERSION_ AS PROC_DEF_VERSION_,
DEF.DEPLOYMENT_ID_ AS DEPLOYMENT_ID_,
deployment.CATEGORY_ AS CATEGORY_
FROM
ACT_HI_PROCINST RES
LEFT OUTER JOIN ACT_RE_PROCDEF DEF ON RES.PROC_DEF_ID_ = DEF.ID_
LEFT JOIN ACT_RE_DEPLOYMENT deployment ON DEF.DEPLOYMENT_ID_ = deployment.ID_
LEFT JOIN act_business_form form ON deployment.CATEGORY_ = form.process_code
LEFT JOIN sys_user USER ON RES.START_USER_ID_ = CONCAT( USER.id, '' )
ORDER BY
RES.START_TIME_ DESC
LIMIT 10
-- 我已审批的流程
SELECT
t1.*
FROM
(
SELECT DISTINCT
RES.*,
DEF.KEY_ AS PROC_DEF_KEY_,
DEF.NAME_ AS PROC_DEF_NAME_,
DEF.VERSION_ AS PROC_DEF_VERSION_,
DEF.DEPLOYMENT_ID_ AS DEPLOYMENT_ID_,
deployment.CATEGORY_ AS CATEGORY_,
USER.NAME startUserName,
form.NAME formName
FROM
ACT_HI_PROCINST RES
LEFT OUTER JOIN ACT_RE_PROCDEF DEF ON RES.PROC_DEF_ID_ = DEF.ID_
LEFT JOIN ACT_RE_DEPLOYMENT deployment ON DEF.DEPLOYMENT_ID_ = deployment.ID_
LEFT JOIN act_business_form form ON deployment.CATEGORY_ = form.process_code
LEFT JOIN sys_user USER ON RES.START_USER_ID_ = CONCAT( USER.id, '' )
) t1
INNER JOIN (
SELECT DISTINCT
RES.PROC_INST_ID_
FROM
ACT_HI_TASKINST RES
WHERE
RES.ASSIGNEE_ = '用户id'
AND RES.END_TIME_ IS NOT NULL
ORDER BY
RES.END_TIME_ DESC
) t2 ON t1.PROC_INST_ID_ = t2.PROC_INST_ID_
AND ( t1.DELETE_REASON_ IS NULL OR t1.DELETE_REASON_ != t1.PROC_INST_ID_ )
LIMIT 10
-- 抄送我的流程
SELECT
t1.*,
t2.id copy_id,
t2.read_flag,
t2.read_time
FROM
(
SELECT DISTINCT
RES.*,
DEF.KEY_ AS PROC_DEF_KEY_,
DEF.NAME_ AS PROC_DEF_NAME_,
DEF.VERSION_ AS PROC_DEF_VERSION_,
DEF.DEPLOYMENT_ID_ AS DEPLOYMENT_ID_,
deployment.CATEGORY_ AS CATEGORY_,
USER.NAME startUserName,
form.NAME formName
FROM
ACT_HI_PROCINST RES
LEFT OUTER JOIN ACT_RE_PROCDEF DEF ON RES.PROC_DEF_ID_ = DEF.ID_
LEFT JOIN ACT_RE_DEPLOYMENT deployment ON DEF.DEPLOYMENT_ID_ = deployment.ID_
LEFT JOIN act_business_form form ON deployment.CATEGORY_ = form.process_code
LEFT JOIN sys_user USER ON RES.START_USER_ID_ = CONCAT( USER.id, '' )
) t1
INNER JOIN ( SELECT RES.id, RES.process_instance_id PROC_INST_ID_, RES.read_flag, RES.read_time FROM act_copy_task RES WHERE RES.user_id = '用户id' ) t2 ON t1.PROC_INST_ID_ = t2.PROC_INST_ID_
ORDER BY
t2.id DESC
LIMIT 10抄送实现:
- 1.建一个用户和流程的关联关系表,比如用户id-流程id;
- 2.用serviceTask节点,把要抄送的人放节点属性上,执行服务节点时候往第1步的表里面塞值;
- 3.查询的时候,用用户id去查第1步的表关联查询流程信息表。
抄送表结构

版权声明:本文为ltx1472580369原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。