From eee313007ce5c4f0879d764d56d3a1ba93f6fb37 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 수, 01 12월 2021 16:33:49 +0900
Subject: [PATCH] 대시보드 - 멤버별 진행률 완료 및 오류 수정

---
 src/main/resources/mybatis/query-template/widget-template.xml |   61 ++++++++++++++++--------------
 1 files changed, 32 insertions(+), 29 deletions(-)

diff --git a/src/main/resources/mybatis/query-template/widget-template.xml b/src/main/resources/mybatis/query-template/widget-template.xml
index 37ab4d1..b482c87 100644
--- a/src/main/resources/mybatis/query-template/widget-template.xml
+++ b/src/main/resources/mybatis/query-template/widget-template.xml
@@ -15,7 +15,7 @@
         WHERE EXISTS(SELECT 1 FROM issue_status iss WHERE iss.issue_status_type != 'CLOSE' AND i.issue_status_id =
         iss.id)
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -31,7 +31,7 @@
         COUNT(i.id) FROM issue i where
         exists(select 1 from issue_status iss where iss.id = i.issue_status_id and iss.issue_status_type != 'CLOSE')
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -86,7 +86,7 @@
         </choose>
         ) AND EXISTS(SELECT 1 FROM issue_status iss WHERE iss.id = i.issue_status_id and iss.issue_status_type != 'CLOSE')
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -102,7 +102,7 @@
         count(i.id) as todayCount from issue i where
         i.register_id = #{loginUserId}
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -140,7 +140,7 @@
         WHERE
         EXISTS(select 1 from issue_status iss where iss.id = i.issue_status_id and iss.issue_status_type != 'CLOSE')
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -158,7 +158,7 @@
         inner join issue_status iss on iss.id = i.issue_status_id
         where iss.issue_status_type = 'CLOSE'
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -180,7 +180,7 @@
         where iss.issue_status_type = 'CLOSE'
         and i.modify_date between #{searchStartDate} and #{searchEndDate}
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -197,7 +197,7 @@
         inner join issue_status iss on iss.id = i.issue_status_id
         where 1=1
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -277,7 +277,7 @@
         left outer join issue_status iss on iss.id = i.issue_status_id
         WHERE 1=1
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND p.id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -389,7 +389,7 @@
         and id.register_date
         BETWEEN (CURDATE()) AND (CURDATE() + INTERVAL 1 DAY))
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -429,7 +429,7 @@
         inner join issue_status iss on iss.id = i.issue_status_id
         WHERE 1=1
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -502,7 +502,7 @@
         inner join project p on p.id = i.project_id
         WHERE 1=1
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND p.id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -562,7 +562,7 @@
         inner join issue_status iss on iss.id = i.issue_status_id
         where iss.issue_status_type != 'CLOSE'
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -607,14 +607,15 @@
         (case when ir.change_issue_status_count > 3 then true else false end) as changeIssueStatusType,
         CONCAT(p.project_key, '-', i.issue_number) AS issueKey,
         i.issue_number as issueNumber,
-        p.project_key as projectKey
+        p.project_key as projectKey,
+        p.name as projectName
         from issue i
         inner join issue_risk ir on ir.issue_id = i.id
         inner join issue_status iss on iss.id = i.issue_status_id
         inner join project p on p.id = i.project_id
         where iss.issue_status_type != 'CLOSE'
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND p.id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -637,7 +638,7 @@
         inner join issue_status iss on iss.id = i.issue_status_id
         where iss.issue_status_type != 'CLOSE'
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -675,7 +676,7 @@
         WHERE 1=1
         AND i.register_id = #{loginUserId}
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -706,7 +707,7 @@
             AND EXISTS (SELECT 1 FROM issue_status iss WHERE iss.id = i.issue_status_id AND iss.issue_status_type != 'CLOSE')
         </if>
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -744,7 +745,7 @@
         </if>
         WHERE 1=1
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -770,7 +771,7 @@
         </if>
         WHERE 1=1
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -807,7 +808,7 @@
         inner join issue_status iss on iss.id = i.issue_status_id
         where 1=1
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -851,6 +852,7 @@
             parameterType="kr.wisestone.owl.web.condition.WidgetCondition">
         select
         d.department_name as departmentName,
+        p.name as projectName,
         (select count(*) from issue i
         inner join issue_department id on id.issue_id = i.id
         inner join issue_status iss on iss.id = i.issue_status_id
@@ -870,7 +872,7 @@
         inner join project p on p.id = pr.project_id
         WHERE
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 p.id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -894,7 +896,7 @@
         'CLOSE') AND
         i.register_id = #{loginUserId}
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -912,7 +914,7 @@
         'CLOSE')
         AND i.register_id = #{loginUserId}
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -959,7 +961,7 @@
         </choose>
         and iss.issue_status_type = 'CLOSE'
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -1006,7 +1008,7 @@
             </otherwise>
         </choose>
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -1046,7 +1048,7 @@
         WHERE w.id = #{workspaceId}
         AND iss.issue_status_type != 'CLOSE'
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -1066,6 +1068,7 @@
         replace(i.complete_date, "-", ".")  AS completeDate,
         i.issue_number AS issueNumber,
         p.project_key AS projectKey,
+        p.name AS projectName,
         iss.name AS issueStatusName,
         CONCAT(p.project_key, '-', i.issue_number) AS issueKey
         FROM issue i
@@ -1077,7 +1080,7 @@
         AND s.id = #{severityId}
         AND iss.issue_status_type != 'CLOSE'
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}
@@ -1102,7 +1105,7 @@
         AND s.id = #{severityId}
         AND iss.issue_status_type != 'CLOSE'
         <choose>
-            <when test="meAndDownProjectIds.size != 0">
+            <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0">
                 AND i.project_id IN
                 <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")">
                     #{item}

--
Gitblit v1.8.0