diff --git a/src/main/resources/mybatis/mapper/levy/levy/LevyMapper_maria.xml b/src/main/resources/mybatis/mapper/levy/levy/LevyMapper_maria.xml
index 65a2bc7..cb51881 100644
--- a/src/main/resources/mybatis/mapper/levy/levy/LevyMapper_maria.xml
+++ b/src/main/resources/mybatis/mapper/levy/levy/LevyMapper_maria.xml
@@ -57,6 +57,17 @@
FROM TB_IMPLT_INFO ii
INNER JOIN tb_crdn c ON ii.CRDN_YR = c.CRDN_YR AND ii.CRDN_NO = c.CRDN_NO AND c.DEL_YN = 'N'
LEFT JOIN tb_pstn_info p ON p.CRDN_YR = c.CRDN_YR AND p.CRDN_NO = c.CRDN_NO AND p.DEL_YN = 'N'
+ /* 중요로직: 조치처리상태 확인을 위한 행위정보 조인 - 미조치 건만 조회 */
+ LEFT JOIN (
+ SELECT
+ CRDN_YR,
+ CRDN_NO,
+ COUNT(1) as ACT_ALL_CNT,
+ SUM(CASE WHEN ACTN_PRCS_STTS_CD = '3' THEN 1 ELSE 0 END) as ACT_COMPLT_CNT
+ FROM tb_act_info
+ WHERE DEL_YN = 'N'
+ GROUP BY CRDN_YR, CRDN_NO
+ ) act_cnt ON act_cnt.CRDN_YR = c.CRDN_YR AND act_cnt.CRDN_NO = c.CRDN_NO
-- 코드성 데이터 조인
LEFT JOIN tb_cd_detail impltTaskSe ON impltTaskSe.CD_GROUP_ID = 'IMPLT_TASK_SE_CD' AND impltTaskSe.CD_ID = ii.IMPLT_TASK_SE_CD
LEFT JOIN tb_cd_detail stdgEmdCd ON stdgEmdCd.CD_GROUP_ID = 'STDG_EMD_CD' AND stdgEmdCd.CD_ID = p.STDG_EMD_CD
@@ -66,6 +77,8 @@
WHERE ii.CRDN_YR = #{schCrdnYr}
AND ii.DEL_YN = 'N'
AND ii.IMPLT_BGNG_YMD BETWEEN #{schImpltBgngYmd1} AND #{schImpltBgngYmd2}
+ /* 중요로직: 조치처리상태가 미조치(1)인 건만 조회 - 행위정보가 있고 조치완료되지 않은 경우 */
+ AND (IFNULL(act_cnt.ACT_ALL_CNT, 0) != 0 AND IFNULL(act_cnt.ACT_ALL_CNT, 0) != IFNULL(act_cnt.ACT_COMPLT_CNT, 0))
AND ii.IMPLT_TASK_SE_CD = #{schImpltTaskSeCd}
@@ -114,9 +127,22 @@
FROM TB_IMPLT_INFO ii
INNER JOIN tb_crdn c ON ii.CRDN_YR = c.CRDN_YR AND ii.CRDN_NO = c.CRDN_NO AND c.DEL_YN = 'N'
LEFT JOIN tb_pstn_info p ON p.CRDN_YR = c.CRDN_YR AND p.CRDN_NO = c.CRDN_NO AND p.DEL_YN = 'N'
+ /* 중요로직: 조치처리상태 확인을 위한 행위정보 조인 - 미조치 건만 조회 */
+ LEFT JOIN (
+ SELECT
+ CRDN_YR,
+ CRDN_NO,
+ COUNT(1) as ACT_ALL_CNT,
+ SUM(CASE WHEN ACTN_PRCS_STTS_CD = '3' THEN 1 ELSE 0 END) as ACT_COMPLT_CNT
+ FROM tb_act_info
+ WHERE DEL_YN = 'N'
+ GROUP BY CRDN_YR, CRDN_NO
+ ) act_cnt ON act_cnt.CRDN_YR = c.CRDN_YR AND act_cnt.CRDN_NO = c.CRDN_NO
WHERE ii.CRDN_YR = #{schCrdnYr}
AND ii.DEL_YN = 'N'
- AND ii.IMPLT_BGNG_YMD BETWEEN #{schImpltBgngYmd1} AND #{schImpltBgngYmd2}
+ AND ii.IMPLT_BGNG_YMD BETWEEN #{schImpltBgngYmd1} AND #{schImpltBgngYmd2}
+ /* 중요로직: 조치처리상태가 미조치(1)인 건만 조회 - 행위정보가 있고 조치완료되지 않은 경우 */
+ AND (IFNULL(act_cnt.ACT_ALL_CNT, 0) != 0 AND IFNULL(act_cnt.ACT_ALL_CNT, 0) != IFNULL(act_cnt.ACT_COMPLT_CNT, 0))
AND ii.IMPLT_TASK_SE_CD = #{schImpltTaskSeCd}
diff --git a/src/main/resources/mybatis/mapper/levy/levyRelevy/LevyRelevyMapper_maria.xml b/src/main/resources/mybatis/mapper/levy/levyRelevy/LevyRelevyMapper_maria.xml
index 8521b19..e59e428 100644
--- a/src/main/resources/mybatis/mapper/levy/levyRelevy/LevyRelevyMapper_maria.xml
+++ b/src/main/resources/mybatis/mapper/levy/levyRelevy/LevyRelevyMapper_maria.xml
@@ -94,10 +94,23 @@
LEFT JOIN tb_user u ON u.USER_ID = c.RGTR AND u.USE_YN = 'Y'
LEFT JOIN tb_pstn_info p ON p.CRDN_YR = c.CRDN_YR AND p.CRDN_NO = c.CRDN_NO AND p.DEL_YN = 'N'
LEFT JOIN tb_cd_detail emd ON emd.CD_GROUP_ID = 'STDG_EMD_CD' AND emd.CD_ID = p.STDG_EMD_CD
+ /* 중요로직: 조치처리상태 확인을 위한 행위정보 조인 - 미조치 건만 조회 */
+ LEFT JOIN (
+ SELECT
+ CRDN_YR,
+ CRDN_NO,
+ COUNT(1) as ACT_ALL_CNT,
+ SUM(CASE WHEN ACTN_PRCS_STTS_CD = '3' THEN 1 ELSE 0 END) as ACT_COMPLT_CNT
+ FROM tb_act_info
+ WHERE DEL_YN = 'N'
+ GROUP BY CRDN_YR, CRDN_NO
+ ) act_cnt ON act_cnt.CRDN_YR = c.CRDN_YR AND act_cnt.CRDN_NO = c.CRDN_NO
LEFT Join tb_act_info a ON a.CRDN_YR = c.CRDN_YR and a.CRDN_NO = c.CRDN_NO AND a.DEL_YN = 'N' AND a.ACT_NO = (SELECT MIN(a1.ACT_NO) FROM tb_act_info a1 WHERE a1.CRDN_YR = a.CRDN_YR AND a1.CRDN_NO = a.CRDN_NO AND a1.DEL_YN='N')
LEFT JOIN tb_act_type act ON act.ACT_TYPE_CD = a.ACT_TYPE_CD
LEFT JOIN tb_usg_idx usg ON usg.USG_IDX_CD = a.USG_IDX_CD
WHERE c.DEL_YN = 'N'
+ /* 중요로직: 조치처리상태가 미조치(1)인 건만 조회 - 행위정보가 있고 조치완료되지 않은 경우 */
+ AND (IFNULL(act_cnt.ACT_ALL_CNT, 0) != 0 AND IFNULL(act_cnt.ACT_ALL_CNT, 0) != IFNULL(act_cnt.ACT_COMPLT_CNT, 0))
AND c.CRDN_YR = #{schCrdnYr}
@@ -177,7 +190,20 @@
END AS RELEVY_TRGT_YN
FROM tb_crdn c
LEFT JOIN tb_pstn_info p ON p.CRDN_YR = c.CRDN_YR AND p.CRDN_NO = c.CRDN_NO AND p.DEL_YN = 'N'
+ /* 중요로직: 조치처리상태 확인을 위한 행위정보 조인 - 미조치 건만 조회 */
+ LEFT JOIN (
+ SELECT
+ CRDN_YR,
+ CRDN_NO,
+ COUNT(1) as ACT_ALL_CNT,
+ SUM(CASE WHEN ACTN_PRCS_STTS_CD = '3' THEN 1 ELSE 0 END) as ACT_COMPLT_CNT
+ FROM tb_act_info
+ WHERE DEL_YN = 'N'
+ GROUP BY CRDN_YR, CRDN_NO
+ ) act_cnt ON act_cnt.CRDN_YR = c.CRDN_YR AND act_cnt.CRDN_NO = c.CRDN_NO
WHERE c.DEL_YN = 'N'
+ /* 중요로직: 조치처리상태가 미조치(1)인 건만 조회 - 행위정보가 있고 조치완료되지 않은 경우 */
+ AND (IFNULL(act_cnt.ACT_ALL_CNT, 0) != 0 AND IFNULL(act_cnt.ACT_ALL_CNT, 0) != IFNULL(act_cnt.ACT_COMPLT_CNT, 0))
AND c.CRDN_YR = #{schCrdnYr}
diff --git a/src/main/resources/mybatis/mapper/noti/NotiMapper_maria.xml b/src/main/resources/mybatis/mapper/noti/NotiMapper_maria.xml
index 5e659dd..7f1e74c 100644
--- a/src/main/resources/mybatis/mapper/noti/NotiMapper_maria.xml
+++ b/src/main/resources/mybatis/mapper/noti/NotiMapper_maria.xml
@@ -57,6 +57,17 @@
FROM TB_IMPLT_INFO ii
INNER JOIN tb_crdn c ON ii.CRDN_YR = c.CRDN_YR AND ii.CRDN_NO = c.CRDN_NO AND c.DEL_YN = 'N'
LEFT JOIN tb_pstn_info p ON p.CRDN_YR = c.CRDN_YR AND p.CRDN_NO = c.CRDN_NO AND p.DEL_YN = 'N'
+ /* 중요로직: 조치처리상태 확인을 위한 행위정보 조인 - 미조치 건만 조회 */
+ LEFT JOIN (
+ SELECT
+ CRDN_YR,
+ CRDN_NO,
+ COUNT(1) as ACT_ALL_CNT,
+ SUM(CASE WHEN ACTN_PRCS_STTS_CD = '3' THEN 1 ELSE 0 END) as ACT_COMPLT_CNT
+ FROM tb_act_info
+ WHERE DEL_YN = 'N'
+ GROUP BY CRDN_YR, CRDN_NO
+ ) act_cnt ON act_cnt.CRDN_YR = c.CRDN_YR AND act_cnt.CRDN_NO = c.CRDN_NO
-- 코드성 데이터 조인
LEFT JOIN tb_cd_detail impltTaskSe ON impltTaskSe.CD_GROUP_ID = 'IMPLT_TASK_SE_CD' AND impltTaskSe.CD_ID = ii.IMPLT_TASK_SE_CD
LEFT JOIN tb_cd_detail stdgEmdCd ON stdgEmdCd.CD_GROUP_ID = 'STDG_EMD_CD' AND stdgEmdCd.CD_ID = p.STDG_EMD_CD
@@ -66,6 +77,8 @@
WHERE ii.CRDN_YR = #{schCrdnYr}
AND ii.DEL_YN = 'N'
AND ii.IMPLT_BGNG_YMD BETWEEN #{schImpltBgngYmd1} AND #{schImpltBgngYmd2}
+ /* 중요로직: 조치처리상태가 미조치(1)인 건만 조회 - 행위정보가 있고 조치완료되지 않은 경우 */
+ AND (IFNULL(act_cnt.ACT_ALL_CNT, 0) != 0 AND IFNULL(act_cnt.ACT_ALL_CNT, 0) != IFNULL(act_cnt.ACT_COMPLT_CNT, 0))
AND ii.IMPLT_TASK_SE_CD = #{schImpltTaskSeCd}
@@ -114,9 +127,22 @@
FROM TB_IMPLT_INFO ii
INNER JOIN tb_crdn c ON ii.CRDN_YR = c.CRDN_YR AND ii.CRDN_NO = c.CRDN_NO AND c.DEL_YN = 'N'
LEFT JOIN tb_pstn_info p ON p.CRDN_YR = c.CRDN_YR AND p.CRDN_NO = c.CRDN_NO AND p.DEL_YN = 'N'
+ /* 중요로직: 조치처리상태 확인을 위한 행위정보 조인 - 미조치 건만 조회 */
+ LEFT JOIN (
+ SELECT
+ CRDN_YR,
+ CRDN_NO,
+ COUNT(1) as ACT_ALL_CNT,
+ SUM(CASE WHEN ACTN_PRCS_STTS_CD = '3' THEN 1 ELSE 0 END) as ACT_COMPLT_CNT
+ FROM tb_act_info
+ WHERE DEL_YN = 'N'
+ GROUP BY CRDN_YR, CRDN_NO
+ ) act_cnt ON act_cnt.CRDN_YR = c.CRDN_YR AND act_cnt.CRDN_NO = c.CRDN_NO
WHERE ii.CRDN_YR = #{schCrdnYr}
AND ii.DEL_YN = 'N'
- AND ii.IMPLT_BGNG_YMD BETWEEN #{schImpltBgngYmd1} AND #{schImpltBgngYmd2}
+ AND ii.IMPLT_BGNG_YMD BETWEEN #{schImpltBgngYmd1} AND #{schImpltBgngYmd2}
+ /* 중요로직: 조치처리상태가 미조치(1)인 건만 조회 - 행위정보가 있고 조치완료되지 않은 경우 */
+ AND (IFNULL(act_cnt.ACT_ALL_CNT, 0) != 0 AND IFNULL(act_cnt.ACT_ALL_CNT, 0) != IFNULL(act_cnt.ACT_COMPLT_CNT, 0))
AND ii.IMPLT_TASK_SE_CD = #{schImpltTaskSeCd}