141 lines
3.8 KiB
MySQL
141 lines
3.8 KiB
MySQL
|
##全部,根据finishTime判断代办,已办
|
|||
|
DROP view vw_flow_all;
|
|||
|
CREATE VIEW vw_flow_all AS (
|
|||
|
SELECT
|
|||
|
RES.ID_ AS procInsId,
|
|||
|
DEF.DEPLOYMENT_ID_ AS deployId,
|
|||
|
RES.START_TIME_ AS createTime,
|
|||
|
RES.END_TIME_ AS finishTime,
|
|||
|
CASE
|
|||
|
WHEN RES.END_TIME_ IS NULL THEN
|
|||
|
TIMESTAMPDIFF(
|
|||
|
MINUTE,
|
|||
|
RES.START_TIME_,
|
|||
|
DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S')
|
|||
|
)
|
|||
|
ELSE
|
|||
|
TIMESTAMPDIFF(
|
|||
|
MINUTE,
|
|||
|
RES.START_TIME_,
|
|||
|
RES.END_TIME_
|
|||
|
)
|
|||
|
END AS duration,
|
|||
|
DEF.NAME_ AS procDefName,
|
|||
|
DEF.VERSION_ AS procDefVersion,
|
|||
|
DEF.CATEGORY_ AS category,
|
|||
|
DEF.KEY_ AS procDefKey,
|
|||
|
ppa.id AS businessKey,
|
|||
|
ppa.dept_id as businessDeptId,
|
|||
|
ppa.proj_name AS businessKeyName,
|
|||
|
ppa.par_proj_name as businessKeyParName,
|
|||
|
ru.user_id AS startUserId,
|
|||
|
ru.nick_name AS startUserName,
|
|||
|
rd.dept_name AS startDeptName,
|
|||
|
ht.*
|
|||
|
FROM
|
|||
|
ACT_HI_PROCINST RES
|
|||
|
LEFT OUTER JOIN ACT_RE_PROCDEF DEF ON RES.PROC_DEF_ID_ = DEF.ID_
|
|||
|
LEFT OUTER JOIN pro_project_apply ppa ON RES.BUSINESS_KEY_ = ppa.id
|
|||
|
LEFT JOIN sys_user ru ON ru.user_id = RES.START_USER_ID_
|
|||
|
LEFT JOIN sys_dept rd ON rd.dept_id = ru.dept_id
|
|||
|
LEFT JOIN (
|
|||
|
SELECT
|
|||
|
ht.ID_ AS taskId,
|
|||
|
ht.NAME_ AS taskName,
|
|||
|
tu.user_id AS assigneeId,
|
|||
|
tu.nick_name AS assigneeName,
|
|||
|
td.dept_name AS assigneeDeptName,
|
|||
|
ht.PROC_INST_ID_
|
|||
|
FROM
|
|||
|
act_hi_taskinst ht
|
|||
|
LEFT JOIN sys_user tu ON tu.user_id = ht.ASSIGNEE_
|
|||
|
LEFT JOIN sys_dept td ON td.dept_id = tu.dept_id
|
|||
|
WHERE
|
|||
|
ht.ID_ IN (
|
|||
|
SELECT
|
|||
|
MAX(ID_)
|
|||
|
FROM
|
|||
|
act_hi_taskinst
|
|||
|
GROUP BY
|
|||
|
PROC_INST_ID_
|
|||
|
)
|
|||
|
GROUP BY ht.PROC_INST_ID_
|
|||
|
) ht ON ht.PROC_INST_ID_ = RES.PROC_INST_ID_
|
|||
|
);
|
|||
|
|
|||
|
##待办
|
|||
|
DROP view vw_flow_await;
|
|||
|
CREATE VIEW vw_flow_await AS (SELECT
|
|||
|
RES.ID_ AS taskId,
|
|||
|
RES.NAME_ AS taskName,
|
|||
|
re.ID_ AS procInsId,
|
|||
|
DEF.DEPLOYMENT_ID_ AS deployId,
|
|||
|
DATE_FORMAT(re.START_TIME_, '%Y-%m-%d %H:%i:%S') AS createTime,
|
|||
|
TIMESTAMPDIFF(
|
|||
|
MINUTE,
|
|||
|
re.START_TIME_,
|
|||
|
DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S')
|
|||
|
) AS duration,
|
|||
|
DEF.NAME_ AS procDefName,
|
|||
|
DEF.VERSION_ AS procDefVersion,
|
|||
|
DEF.CATEGORY_ AS category,
|
|||
|
DEF.KEY_ AS procDefKey,
|
|||
|
ppa.id AS businessKey,
|
|||
|
ppa.dept_id AS businessDeptId,
|
|||
|
ppa.proj_name AS businessKeyName,
|
|||
|
ppa.par_proj_name as businessKeyParName,
|
|||
|
ru.user_id AS startUserId,
|
|||
|
ru.nick_name AS startUserName,
|
|||
|
rd.dept_name AS startDeptName,
|
|||
|
RES.SUSPENSION_STATE_,
|
|||
|
RES.ASSIGNEE_,
|
|||
|
LINK.USER_ID_,
|
|||
|
LINK.GROUP_ID_
|
|||
|
FROM
|
|||
|
ACT_RU_TASK RES
|
|||
|
LEFT JOIN act_ru_execution re ON re.PARENT_ID_ IS NULL
|
|||
|
AND re.PROC_INST_ID_ = RES.PROC_INST_ID_
|
|||
|
LEFT OUTER JOIN ACT_RE_PROCDEF DEF ON re.PROC_DEF_ID_ = DEF.ID_
|
|||
|
LEFT OUTER JOIN pro_project_apply ppa ON re.BUSINESS_KEY_ = ppa.id
|
|||
|
LEFT JOIN sys_user ru ON ru.user_id = re.START_USER_ID_
|
|||
|
LEFT JOIN sys_dept rd ON rd.dept_id = ru.dept_id
|
|||
|
left JOIN ACT_RU_IDENTITYLINK LINK on LINK.TASK_ID_ = RES.ID_ AND LINK.TYPE_ = 'candidate'
|
|||
|
WHERE
|
|||
|
RES.SUSPENSION_STATE_ = 1)
|
|||
|
|
|||
|
|
|||
|
##已办
|
|||
|
DROP view vw_flow_finished;
|
|||
|
CREATE VIEW vw_flow_finished AS (SELECT
|
|||
|
RES.ID_ AS taskId,
|
|||
|
RES.NAME_ AS taskName,
|
|||
|
RES.PROC_INST_ID_ AS procInsId,
|
|||
|
pd.DEPLOYMENT_ID_ as deployId,
|
|||
|
DATE_FORMAT(RES.START_TIME_, '%Y-%m-%d %H:%i:%S') AS createTime,
|
|||
|
DATE_FORMAT(RES.END_TIME_, '%Y-%m-%d %H:%i:%S') AS endTime,
|
|||
|
TIMESTAMPDIFF(
|
|||
|
MINUTE,
|
|||
|
res.START_TIME_,
|
|||
|
RES.END_TIME_
|
|||
|
) AS duration,
|
|||
|
DEF.END_TIME_ as finishTime,
|
|||
|
pd.NAME_ AS procDefName,
|
|||
|
pd.CATEGORY_ AS category,
|
|||
|
pd.KEY_ AS procDefKey,
|
|||
|
ppa.id AS businessKey,
|
|||
|
ppa.dept_id AS businessDeptId,
|
|||
|
ppa.proj_name AS businessKeyName,
|
|||
|
ppa.par_proj_name as businessKeyParName,
|
|||
|
ru.user_id AS startUserId,
|
|||
|
ru.nick_name AS startUserName,
|
|||
|
rd.dept_name AS startDeptName,
|
|||
|
RES.ASSIGNEE_
|
|||
|
FROM
|
|||
|
act_hi_taskinst RES
|
|||
|
LEFT OUTER JOIN act_hi_procinst DEF ON RES.PROC_INST_ID_ = DEF.PROC_INST_ID_
|
|||
|
LEFT OUTER join act_re_procdef pd on RES.PROC_DEF_ID_ = pd.ID_
|
|||
|
LEFT OUTER JOIN pro_project_apply ppa ON DEF.BUSINESS_KEY_ = ppa.id
|
|||
|
LEFT JOIN sys_user ru ON ru.user_id = RES.ASSIGNEE_
|
|||
|
LEFT JOIN sys_dept rd ON rd.dept_id = ru.dept_id
|
|||
|
WHERE
|
|||
|
RES.ASSIGNEE_ is not null and RES.END_TIME_ is not null)
|