From d33e687ff5b3fdb50e3dccf50e3a276baf2e6c5c Mon Sep 17 00:00:00 2001 From: zzw <wander.zheng@qq.com> Date: 星期五, 17 十一月 2023 17:03:50 +0800 Subject: [PATCH] 编号 --- modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml | 567 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 567 insertions(+), 0 deletions(-) diff --git a/modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml b/modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml new file mode 100644 index 0000000..b548ba0 --- /dev/null +++ b/modules/mainPart/src/main/resources/mapper/newplan/TaskCenterDao.xml @@ -0,0 +1,567 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + +<mapper namespace="com.zt.life.modules.mainPart.task.dao.TaskCenterDao"> + <delete id="deleteTable"> + drop table ${tableName} + </delete> + + <select id="page" resultType="com.zt.modules.workflow.model.WfRunTask"> + 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} + <if test="projectId != null and projectId != ''"> + and a.biz_group_id = #{projectId} + </if> + <if test="djxlSystem != null and djxlSystem != ''"> + and a.FLOW_ID in (select id from wf_def where system_type = #{djxlSystem}) + </if> + ORDER BY a.receive_time DESC + </select> + + <update id="pageDone_temp"> + 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'))) + <if test="djxlSystem != null and djxlSystem != ''"> + and a1.FLOW_ID in (select id from wf_def where system_type = #{djxlSystem}) + </if> + + ) 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; + </update> + + <select id="pageDone" resultType="com.zt.modules.workflow.model.WfRunTask"> + 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> + + <select id="page2" resultType="com.zt.modules.workflow.model.WfRunTask"> + 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> + + <select id="pageDone2" resultType="com.zt.modules.workflow.model.WfRunTask"> + 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> + +<!-- + <select id="page3" resultType="com.zt.modules.workflow.model.WfRunTask"> + select + a.stepRouterId, + a.project_id as bizGroupId, + b.MODEL_NAME AS topic, + '鏃ヨ鍒�' as title, + plan_date as remark, + step_name, + a.id, + '0' STEP_ID, + a.STEP_MARKER, + 'rjhFlow' as 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 + *,'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 s2.USER_id = #{userId} + AND s1.CODE = 'zcbm' + ) + union + SELECT + *,'rjh_sh' as STEP_MARKER,'閮ㄩ棬闀垮鏍�' as STEP_Name,'1648318806923161601' as stepRouterId + FROM + wx_daily_plan + WHERE + IS_DELETE =0 + and FLOW_Status = 'rjh_sh' + AND EXISTS ( + SELECT + 1 + FROM + sys_role s1, + sys_role_user s2 + WHERE + s1.ID = s2.role_id + AND s2.USER_id = #{userId} + AND s1.CODE = 'ywzbm' + ) + union + SELECT + *,'rjh_cjfk' as STEP_MARKER,'鍘傚鍙嶉鎯呭喌' as STEP_MARKER,'1648319132719919106' as stepRouterId + FROM + wx_daily_plan + WHERE + IS_DELETE =0 + and FLOW_Status = 'rjh_fk' + AND cjfk_Status = 0 + AND MAINTAIN_UNIT = #{deptId} + AND EXISTS ( + SELECT + 1 + FROM + sys_role s1, + sys_role_user s2 + WHERE + s1.ID = s2.role_id + AND s2.USER_id = #{userId} + AND s1.CODE = 'cjbm' + ) + union + SELECT + *,'rjh_tyfk' as STEP_MARKER,'鑹囧憳鍙嶉鍔╀慨鎯呭喌' as STEP_Name,'1648318988234534914' as stepRouterId + FROM + wx_daily_plan + WHERE + IS_DELETE =0 + and FLOW_Status = 'rjh_fk' + AND tyfk_Status = 0 + AND REPAIR_PERSONNEL = #{userId} + AND EXISTS ( + SELECT + 1 + FROM + sys_role s1, + sys_role_user s2 + WHERE + s1.ID = s2.role_id + AND s2.USER_id = #{userId} + AND s1.CODE = 'tybm' + ) + 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> +--> + + <select id="page3" resultType="com.zt.modules.workflow.model.WfRunTask"> + 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> + + <select id="getRowByProjectId" resultType="com.zt.modules.workflow.model.WfRunTask"> + 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 + </select> + + <update id="oneKeyDoneCy"> + 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} + </update> +</mapper> -- Gitblit v1.9.1