From 66f0597bf6a1e79540c6bc51dedf561c22f3bdb5 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期二, 13 五月 2025 17:49:26 +0800 Subject: [PATCH] 修改 --- src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml | 107 +++++++++++++++++++++++++++++------------------------ 1 files changed, 58 insertions(+), 49 deletions(-) diff --git a/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml b/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml index f4883e6..22b7237 100644 --- a/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml +++ b/src/main/resources/mapper/progressTrack/DjJdgzTrackRecordDao.xml @@ -90,7 +90,7 @@ <if test="deptId!=null"> and c.dept_id = ${deptId} </if> - <if test="isealCabin!=10000"> + <if test="isealCabin!=10000 and isealCabin!=null"> and c.iseal_cabin = ${isealCabin} </if> <if test="teamId!=null"> @@ -137,38 +137,38 @@ </select> <select id="getReport" resultType="com.example.server.progressTrack.Dto.StatistReportsDto"> select d.*, e.name as teamGroupName - from ( - select TEAMGROUP_ID, - count(1) as allNum, - sum(case when status = 'zcjxz' or status = 'lq' then 1 else 0 end) as jxzNum, - sum(case when status = 'lq' then 1 else 0 end) as lqNum, - sum(case when status = 'yq' then 1 else 0 end) as yqNum, - sum(case when status = 'zcwc' then 1 else 0 end) as zcwcNum, - sum(case when status = 'cqwc' then 1 else 0 end) as cqwcNum - from ( - select a.TEAMGROUP_ID, - CASE - WHEN b.CURRENT_STATUS = 1 - AND b.REQUIRED_COMPLETION_TIME > b.ACTUAL_COMPLETION THEN - 'cqwc' - WHEN b.CURRENT_STATUS = 1 THEN - 'zcwc' - WHEN b.REQUIRED_COMPLETION_TIME < (SELECT datetime('now')) THEN 'yq' - WHEN b.REQUIRED_COMPLETION_TIME < - (SELECT date('now', '-' || c.advent_day || ' days')) THEN 'lq' + from (select TEAMGROUP_ID, + count(1) as allNum, + sum(case when status = 'zcjxz' or status = 'lq' then 1 else 0 end) as jxzNum, + sum(case when status = 'lq' then 1 else 0 end) as lqNum, + sum(case when status = 'yq' then 1 else 0 end) as yqNum, + sum(case when status = 'zcwc' then 1 else 0 end) as zcwcNum, + sum(case when status = 'cqwc' then 1 else 0 end) as cqwcNum + from (select c.TEAMGROUP_ID, + CASE + WHEN b.CURRENT_STATUS = 1 + AND b.REQUIRED_COMPLETION_TIME > b.ACTUAL_COMPLETION THEN + 'cqwc' + WHEN b.CURRENT_STATUS = 1 THEN + 'zcwc' + WHEN b.REQUIRED_COMPLETION_TIME < (SELECT datetime('now')) THEN 'yq' + WHEN b.REQUIRED_COMPLETION_TIME < + (SELECT date('now', '-' || d.advent_day || ' days')) THEN 'lq' ELSE 'zcjxz' END AS status - from dj_jdgz_network_level3 a, - dj_jdgz_network_level3_list b, - dj_jdgz_network_level1 c - where a.IS_DELETE = 0 - and a.LEVEL1_NETWORK_ID = ${level1NetworkId} - and a.LEVEL1_NETWORK_ID = c.id - and b.IS_DELETE = 0 - and b.NETWORK_ID = a.id - ) c - group by TEAMGROUP_ID - ) d, + FROM dj_jdgz_track_record a + LEFT JOIN dj_jdgz_network_level3_list b + on b.ID = a.LEVEL3_NODE_ID + LEFT JOIN dj_jdgz_network_level3 c on c.ID = b.NETWORK_ID + LEFT JOIN dj_jdgz_network_level1 d on d.ID = c.LEVEL1_NETWORK_ID + where c.IS_DELETE = 0 + and c.LEVEL1_NETWORK_ID = ${level1NetworkId} + and c.LEVEL1_NETWORK_ID = d.id + and b.IS_DELETE = 0 + and a.IS_DELETE = 0 + and d.IS_DELETE = 0 + and b.NETWORK_ID = c.id) c + group by TEAMGROUP_ID ) d, dj_sys_teamgroup_class e where d.TEAMGROUP_ID = e.id </select> @@ -258,7 +258,7 @@ a.IS_DELETE = 0 and a.network_id != 10000 <if test="teamgroupId!=null and teamgroupId!=''"> - AND a.TEAMGROUP_ID in (${teamgroupId}) + AND h.ID in (${teamgroupId}) </if> <if test="istq!=1 and istq!=null"> AND a.REQUIRED_COMPLETION_TIME < b.estimated_completion_time @@ -470,24 +470,26 @@ a.REQUIRED_COMPLETION_TIME </select> <select id="getReportRecord" resultType="com.example.server.progressTrack.Dto.ReportRecordDto"> - select a.NAME,b.PROCESS_NAME - from dj_jdgz_network_level3 a, - dj_jdgz_network_level3_list b, - dj_jdgz_network_level1 c + select c.NAME,b.PROCESS_NAME + FROM dj_jdgz_track_record a + LEFT JOIN dj_jdgz_network_level3_list b on b.ID = a.LEVEL3_NODE_ID + LEFT JOIN dj_jdgz_network_level3 c on c.ID = b.NETWORK_ID + LEFT JOIN dj_jdgz_network_level1 d on d.ID = c.LEVEL1_NETWORK_ID where a.IS_DELETE = 0 - and a.LEVEL1_NETWORK_ID = ${level1NetworkId} - and a.TEAMGROUP_ID = ${teamgroupId} - and a.LEVEL1_NETWORK_ID = c.id + and c.LEVEL1_NETWORK_ID = ${level1NetworkId} + and c.TEAMGROUP_ID = ${teamgroupId} + and c.LEVEL1_NETWORK_ID = d.id and b.IS_DELETE = 0 - and b.NETWORK_ID = a.id + and b.NETWORK_ID = c.id and c.IS_DELETE = 0 + and d.IS_DELETE = 0 <if test="column==2"> and (b.CURRENT_STATUS = 0 or b.CURRENT_STATUS is null) - and b.REQUIRED_COMPLETION_TIME >= ( SELECT date( 'now', '-' || c.advent_day || ' days' ) ) + and b.REQUIRED_COMPLETION_TIME >= ( SELECT date( 'now', '-' || d.advent_day || ' days' ) ) </if> <if test="column==3"> and (b.CURRENT_STATUS = 0 or b.CURRENT_STATUS is null) - and b.REQUIRED_COMPLETION_TIME < ( SELECT date( 'now', '-' || c.advent_day || ' days' ) ) + and b.REQUIRED_COMPLETION_TIME < ( SELECT date( 'now', '-' || d.advent_day || ' days' ) ) </if> <if test="column==4"> and (b.CURRENT_STATUS = 0 or b.CURRENT_STATUS is null) @@ -508,13 +510,10 @@ WHERE LEVEL3_NETWORK_ID = ${level3NetworkId} AND process_name = #{processName} AND is_delete = 0 - AND update_date = ( - SELECT MAX(update_date) - FROM dj_jdgz_track_record - WHERE LEVEL3_NETWORK_ID = ${level3NetworkId} - AND process_name = #{processName} - AND is_delete = 0 - ) + <if test="weekNo!=null"> + and week_no = ${weekNo} + </if> + limit 1 </select> <select id="getName" resultType="com.example.server.progressTrack.model.DjJdgzTrackRecord"> SELECT @@ -529,5 +528,15 @@ ORDER BY CREATE_DATE ,UPDATE_DATE </select> + <select id="isExistTrackRecord" resultType="com.example.server.progressTrack.model.DjJdgzNetworkLevel3List"> + select a.*,b.id as trackRecordId + from dj_jdgz_network_level3_list a + left join dj_jdgz_track_record b on b.is_delete = 0 and a.id = b.LEVEL3_NODE_ID + where a.is_delete = 0 + and a.network_id = ${level3NetworkId} + and a.sort > ${sort} + order by a.sort + limit 1 + </select> </mapper> -- Gitblit v1.9.1