drop table ${tableName}
SELECT
a.id,
a.prev_id,
a.prev_step_id,
a.flow_id,
a.step_id,
a.step_name,
a.biz_id,
a.title,
a.sender_id,
a.sender_name,
a.sender_time,
a.group_id,
a.receive_id,
a.receive_name,
a.receive_time,
a.open_time,
/* a.finish_time,*/
a.finish_time2,
a.comment,
a.is_sign,
a.sort,
a.note,
a.remark,
a.is_delete,
a.dept_id,
a.company_id,
a.tenant_id,
a.topic,
a.apply_user_id,
a.apply_time,
/* a.apply_user,*/
a.step_marker,
/*--step_router,*/
a.flow_code,
a.group_id2,
a.finish_id,
a.finish_name,
a.biz_group_id,
a.opinion,
(case when status = 1 then '被驳回' else '' end) as statusName,
DateDiff(CURRENT_DATE,a.RECEIVE_TIME) as idleDays,
a.topic AS taskName,
a.step_name as taskType,
a.biz_id as id,
0 as Product_id,
0 as MAINTAIN_LEVEL,
0 as YEAR,
a.RECEIVE_NAME as apply_user,
date_add(a.RECEIVE_TIME,interval 7 day) AS finishTime,
a.STEP_ID as APPROVE_STEP_ID,
a.STEP_MARKER,
a.FLOW_CODE,
a.APPLY_USER as taskPeople,
2 code,
a.title as summary,
b.STEP_ROUTER,
b.STEP_ROUTER_ID
FROM WF_RUN_TASK a
left join WF_DEF_STEP b on a.step_id = b.id
WHERE a.is_delete =0 and a.status in (0,1)
AND a.RECEIVE_ID = #{userId}
and a.biz_group_id = #{projectId}
and a.FLOW_ID in (select id from wf_def where system_type = #{djxlSystem})
ORDER BY a.receive_time DESC
drop table if exists ${pageDone_temp1};
create table ${pageDone_temp1} as
SELECT * FROM (
SELECT
a1.id,
a1.title,
a1.topic,
a1.remark,
a1.biz_id,
a1.biz_group_id,
a1.flow_code,
a1.step_id,
a1.step_marker,
/*a.step_name as step_name_my,*/
a1.receive_name as sender_name,
a1.receive_time,
a1.finish_time as finish_time,
a1.status
FROM WF_RUN_TASK a1
WHERE a1.is_delete = 0
and (a1.receive_id=#{userId}
or EXISTS(SELECT 1 FROM sys_role s1,sys_role_user s2 WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} AND
s2.is_delete=0 and s1.CODE in ('all','xtglybm')))
and a1.FLOW_ID in (select id from wf_def where system_type = #{djxlSystem})
) a2
where status in (20,10)
group by a2.biz_id,a2.flow_code,a2.step_id;
drop table if exists ${pageDone_temp2};
create table ${pageDone_temp2} as
select * from
(select
b1.prev_id,
b1.group_id,
b1.biz_id,
b1.flow_code,
b1.step_id,
b1.step_marker,
b1.step_name,
b1.receive_name,
b1.receive_time,
b1.status
from ${pageDone_temp1} a1,
WF_RUN_TASK b1
WHERE b1.is_delete = 0
and b1.status in(0,1,100)
and a1.biz_id = b1.biz_id
and a1.flow_code = b1.flow_code
order by b1.receive_time DESC
) b2 group by biz_id,flow_code,step_id;
SELECT
a.id,
a.title,
a.topic,
a.remark,
a.biz_id,
a.flow_code,
a.biz_group_id,
c.STEP_READ_ROUTER_ID,
a.sender_name,
a.finish_time,
b.prev_id,
b.step_marker,
b.step_name,
case when c.CAN_RECALL=1 and a.id=b.prev_id and c.step_no < d.step_no and d.step_no < 100
then 1 else 0 end as canRecall,
c.step_no as myStepNo,
d.step_no as curStepNo,
(select group_concat(DISTINCT receive_name) from ${pageDone_temp2} s where s.group_id=b.group_id limit 0,3) receive_name,
b.receive_time,
(case when a.status = 10 then '驳回' else '' end) as statusName,
c.name as finishStepName,
a.sender_name as finishUserName
FROM ${pageDone_temp1} a
join ${pageDone_temp2} b on a.biz_id = b.biz_id and a.flow_code = b.flow_code
left join WF_DEF_STEP c on a.step_id = c.id
left join WF_DEF_STEP d on b.step_id = d.id
group by a.biz_id,a.flow_code,a.step_id
ORDER BY a.receive_time DESC
SELECT
0 as bizGroupId,
CONCAT(p.Name, '-', a.YEAR, '-', c.Dict_label ) AS topic,
case when a.CURRENT_STATE =1 then '助理修改计划' else '处长审批计划' end AS step_name,
case when a.CURRENT_STATE =1 then '驳回' else '' end AS statusName,
a.id,
'80' STEP_ID,
case when a.CURRENT_STATE =1 then 'zl' else 'cz' end AS STEP_MARKER,
'yearPlan' as FLOW_CODE,
u.nick_name as APPLY_USER,
2 as code,
'年度修理计划' as title,
'年度修理计划' as remark,
a.create_date AS RECEIVE_TIME,
DateDiff(CURRENT_DATE,a.create_date) as idleDays
FROM
ZHGL_ANNUAL_PLAN a
LEFT JOIN view_zt_boat_tree p on concat(a.product_id) = p.product_id
LEFT JOIN SYS_DICT_DATA c ON a.maintain_level = c.Dict_Value
AND dict_type_id IN(SELECT id FROM SYS_DICT_TYPE WHERE DICT_TYPE = 'question_level_type')
LEFT JOIN SYS_USER u ON u.user_id = a.CREATOR
WHERE a.is_delete = 0
and (
(CURRENT_STATE = 1
and EXISTS(SELECT 1 FROM sys_role s1,sys_role_user s2
WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} AND
s2.is_delete=0 and s1.CODE = 'zlbm')
) or (
CURRENT_STATE = '5'
and EXISTS(SELECT 1 FROM sys_role s1,sys_role_user s2
WHERE s1.ID = s2.role_id AND s2.USER_id = #{userId} AND
s2.is_delete=0 and s1.CODE = 'czbm')
)
)
order by a.update_date desc limit 0,1
select *,
case
when STEP_MARKER = 'zl' then '处长审核'
when STEP_MARKER = 'cz' then '助理编报'
else '处长审核' end as finishStepName,
case
when STEP_MARKER = 'zl' then '处长'
when STEP_MARKER = 'cz' then '助理'
else '处长' end as finishUserName
from (
SELECT 0 as bizGroupId,
CONCAT(p.Name, '-', a.YEAR, '-', c.Dict_label) AS topic,
case
when a.CURRENT_STATE = 1 then '助理修改计划'
when a.CURRENT_STATE = 5 then '处长审批计划'
else '完成' end AS step_name,
case when a.CURRENT_STATE = 1 then '驳回' else '' end AS statusName,
a.id,
'90' as STEP_ID,
case
when a.CURRENT_STATE = 1 then 'zl'
when a.CURRENT_STATE = 5 then 'cz'
else 'wc' end as STEP_MARKER,
a.id as bizId,
'yearPlan2' as FLOW_CODE,
u.nick_name as APPLY_USER,
2 as code,
'年度修理计划' as title,
'年度修理计划' as remark,
a.UPDATE_DATE AS RECEIVE_TIME,
case
when a.CURRENT_STATE = 1 then '助理'
when a.CURRENT_STATE = 5 then '处长'
else '' end AS receiveName,
DateDiff(CURRENT_DATE, a.create_date) as idleDays
FROM ZHGL_ANNUAL_PLAN a
LEFT JOIN view_zt_boat_tree p on concat(a.product_id) = p.product_id
LEFT JOIN SYS_DICT_DATA c ON a.maintain_level = c.Dict_Value
AND dict_type_id IN (SELECT id FROM SYS_DICT_TYPE WHERE DICT_TYPE = 'question_level_type')
LEFT JOIN SYS_USER u ON u.user_id = a.UPDATER
WHERE a.is_delete = 0
and (
(CURRENT_STATE in (1, 10)
and EXISTS(SELECT 1
FROM sys_role s1,
sys_role_user s2
WHERE s2.IS_DELETE = 0
and s1.ID = s2.role_id
AND s2.USER_id = #{userId}
AND s1.CODE = 'czbm')
)
or (
CURRENT_STATE in (5, 10)
and EXISTS(SELECT 1
FROM sys_role s1,
sys_role_user s2
WHERE s2.IS_DELETE = 0
and s1.ID = s2.role_id
AND s2.USER_id = #{userId}
AND s1.CODE = 'zlbm')
)
or ( CURRENT_STATE in (1, 5, 10)
and EXISTS(SELECT 1
FROM sys_role s1,
sys_role_user s2
WHERE s1.ID = s2.role_id
AND s2.USER_id = #{userId}
AND s2.is_delete = 0
and s1.CODE in ('all', 'xtglybm'))
)
)
) as c
order by c.RECEIVE_TIME desc
select
a.stepRouterId,
a.project_id as bizGroupId,
b.MODEL_NAME AS topic,
a.title,
a.remark,
step_name,
a.id,
'0' STEP_ID,
a.STEP_MARKER,
a.FLOW_CODE,
c.user_name as APPLY_USER,
'' as code,
a.create_date AS RECEIVE_TIME,
DateDiff(CURRENT_DATE,a.create_date) as idleDays
from
(
SELECT
id,project_id,create_date,SUBMIT_PERSONNEL,
'月计划' as title,
concat('月计划 (', select_date, ')') as remark,
'monthPlanFlow' as FLOW_CODE,
'yjh_hz' as STEP_MARKER,'总厂汇总' as STEP_Name,'1660911405324423170' as stepRouterId
FROM
wx_weekly_month_plan
WHERE
IS_DELETE = 0
and PLAN_TYPE = 1
and FLOW_Status = 'yjh_hz'
AND EXISTS (
SELECT
1
FROM
sys_role s1,
sys_role_user s2
WHERE
s1.ID = s2.role_id
AND s1.IS_DELETE=0
AND s2.IS_DELETE=0
AND s2.USER_id = #{userId}
AND s1.CODE = 'zcbm'
)
GROUP BY
project_id, select_date
union
SELECT
id,project_id,create_date,SUBMIT_PERSONNEL,
'周计划' as title,
concat('周计划 (', select_date, ')') as remark,
'weekPlanFlow' as FLOW_CODE,
'zjh_hz' as STEP_MARKER,'总厂汇总' as STEP_Name,'1660904721482895361' as stepRouterId
FROM
wx_weekly_month_plan
WHERE
IS_DELETE = 0
and PLAN_TYPE = 0
and FLOW_Status = 'zjh_hz'
AND EXISTS (
SELECT
1
FROM
sys_role s1,
sys_role_user s2
WHERE
s1.ID = s2.role_id
AND s1.IS_DELETE=0
AND s2.IS_DELETE=0
AND s2.USER_id = #{userId}
AND s1.CODE = 'zcbm'
)
GROUP BY
project_id, select_date
union
SELECT
id,project_id,create_date,SUBMIT_PERSONNEL,
'日计划' as title,
concat('日计划 (', plan_date, ')') as remark,
'rjhFlow' as FLOW_CODE,
'rjh_hz' as STEP_MARKER,'总厂汇总' as STEP_Name,'1648318473140449281' as stepRouterId
FROM
wx_daily_plan
WHERE
IS_DELETE = 0
and FLOW_Status = 'rjh_hz'
AND EXISTS (
SELECT
1
FROM
sys_role s1,
sys_role_user s2
WHERE
s1.ID = s2.role_id
AND s1.IS_DELETE=0
AND s2.IS_DELETE=0
AND s2.USER_id = #{userId}
AND s1.CODE = 'zcbm'
)
GROUP BY
project_id, plan_date
) a
left join wx_project b on a.project_id = b.id
left join sys_user c on a.SUBMIT_PERSONNEL = c.user_id
SELECT
a.id,
a.prev_id,
a.prev_step_id,
a.flow_id,
a.step_id,
a.step_name,
a.biz_id,
a.title,
a.sender_id,
a.sender_name,
a.sender_time,
a.group_id,
a.receive_id,
a.receive_name,
a.receive_time,
a.open_time,
a.finish_time,
a.finish_time2,
a.comment,
a.is_sign,
a.sort,
a.note,
a.remark,
a.is_delete,
a.dept_id,
a.company_id,
a.tenant_id,
a.topic,
a.apply_user_id,
a.apply_time,
a.apply_user,
a.step_marker,
/*--step_router,*/
a.flow_code,
a.group_id2,
a.finish_id,
a.finish_name,
a.biz_group_id,
a.opinion,
(case when status = 1 then '被驳回' else '' end) as statusName,
DateDiff(CURRENT_DATE,a.RECEIVE_TIME) as idleDays,
a.topic AS taskName,
a.step_name as taskType,
a.biz_id as id,
0 as Product_id,
0 as MAINTAIN_LEVEL,
0 as YEAR,
a.RECEIVE_TIME AS finishTime,
a.STEP_ID as APPROVE_STEP_ID,
a.STEP_MARKER,
a.FLOW_CODE,
a.APPLY_USER as taskPeople,
2 code,
a.title as summary,
b.STEP_ROUTER,
b.STEP_ROUTER_ID
FROM WF_RUN_TASK a
left join WF_DEF_STEP b on a.step_id = b.id
WHERE a.is_delete =0 and a.status in (0,1)
and a.topic=(select model_name from wx_project where id=#{projectId})
and a.step_marker='jsfa_sc'
ORDER BY a.receive_time DESC limit 1
update wf_run_task
set status=20, UPDATER=#{userId}, UPDATE_DATE=CURRENT_TIMESTAMP
where STEP_MARKER in('rjh_cy','zjh_cy','yjh_cy') and status=0 and RECEIVE_ID=#{userId}