From 71a5ce92795fb1a4fbff5fceab8135ec98a691e5 Mon Sep 17 00:00:00 2001
From: 박지현 <jhpark@maprex.co.kr>
Date: 월, 07 3월 2022 18:07:52 +0900
Subject: [PATCH] 이슈 목록 조회 방식 - 전체이슈 보기 / 상위 이슈만 보기 / 하위 이슈만 보기로 수정

---
 src/main/java/kr/wisestone/owl/web/condition/IssueCondition.java |   23 +++++++++++++++++++----
 src/main/webapp/views/issue/issueListNormal.html                 |   13 ++++++++-----
 src/main/resources/mybatis/query-template/issue-template.xml     |   14 +++++++++++---
 src/main/webapp/scripts/app/issue/issueList.controller.js        |    9 +++++----
 4 files changed, 43 insertions(+), 16 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/web/condition/IssueCondition.java b/src/main/java/kr/wisestone/owl/web/condition/IssueCondition.java
index a0b9fac..5f9c6f5 100644
--- a/src/main/java/kr/wisestone/owl/web/condition/IssueCondition.java
+++ b/src/main/java/kr/wisestone/owl/web/condition/IssueCondition.java
@@ -60,9 +60,9 @@
     private Boolean isTree; // �듃由ш뎄議� 紐⑤뱶 �씪�븣
     private Pageable relPageable;
     private Pageable downPageable;
-    private Boolean allIssue; // �쟾泥댁씠�뒋 蹂댁뿬二쇨린
+    private Boolean allIssue; // �셿猷뚮맂 �씠�뒋源뚯� 蹂댁뿬以꾩� �뿬遺�
     private Long issueTypeId;
-    private Boolean parentYN;   //�긽�쐞�씠�뒋留� 議고쉶 �쑀臾�
+    private Boolean parentYN;   //�긽�쐞�씠�뒋留� 議고쉶 �뿬遺�
 
     public IssueCondition(){}
 
@@ -219,9 +219,24 @@
             condition.setId(MapUtil.getLong(conditions, "issueId"));
         }
 
-        if (MapUtil.getBoolean(conditions, "hideDownIssue") != null) {
+
+        if (MapUtil.getInteger(conditions, "hideDownIssue") != null) {
+            int hideDownIssue = MapUtil.getInteger(conditions, "hideDownIssue");
             if(MapUtil.getBoolean(conditions, "isTree") != null && !MapUtil.getBoolean(conditions, "isTree")){
-                condition.setHideDownIssue(MapUtil.getBoolean(conditions, "hideDownIssue"));
+                switch (hideDownIssue){
+                    case 0 : // �씠�뒋 紐⑤몢 蹂댁뿬二쇨린
+                        condition.setHideDownIssue(false);
+                        condition.setParentYN(true);
+                        break;
+                    case 1 : // �긽�쐞�씠�뒋留� 蹂댁뿬二쇨린
+                        condition.setHideDownIssue(true);
+                        condition.setParentYN(true);
+                        break;
+                    case 2 : // �븯�쐞�씠�뒋留� 蹂댁뿬二쇨린
+                        condition.setHideDownIssue(false);
+                        condition.setParentYN(false);
+                        break;
+                }
             }else if(MapUtil.getBoolean(conditions, "isTree")) {
                 condition.setHideDownIssue(false);
             }
diff --git a/src/main/resources/mybatis/query-template/issue-template.xml b/src/main/resources/mybatis/query-template/issue-template.xml
index d529c00..8392915 100644
--- a/src/main/resources/mybatis/query-template/issue-template.xml
+++ b/src/main/resources/mybatis/query-template/issue-template.xml
@@ -139,7 +139,7 @@
         </if>
 
         <if test="combinationIssueNumber == null or combinationIssueNumber.equals('')">
-            <if test="hideDownIssue != null and hideDownIssue == true">
+            <if test="hideDownIssue != null and hideDownIssue == true and parentYN == true">
                 AND issue.parent_issue_id IS NULL
             </if>
         </if>
@@ -148,8 +148,12 @@
             AND issue_status.issue_status_type != 'CLOSE'
         </if>
 
-        <if test="parentYN != null and parentYN == true">
+        <if test="parentYN != null and parentYN == true and hideDownIssue == true">
             AND issue.parent_issue_id IS NULL
+        </if>
+
+        <if test="hideDownIssue == false and parentYN == false">
+            AND issue.parent_issue_id IS NOT NULL
         </if>
 
         <choose>
@@ -360,11 +364,15 @@
         </if>
 
         <if test="combinationIssueNumber == null or combinationIssueNumber.equals('')">
-            <if test="hideDownIssue != null and hideDownIssue == true">
+            <if test="hideDownIssue != null and hideDownIssue == true and parentYN == true">
                 AND issue.parent_issue_id IS NULL
             </if>
         </if>
 
+        <if test="hideDownIssue == false and parentYN == false">
+            AND issue.parent_issue_id IS NOT NULL
+        </if>
+
         <if test="hideCompleteIssue != null and hideCompleteIssue == true">
             AND issue_status.issue_status_type != 'CLOSE'
         </if>
diff --git a/src/main/webapp/scripts/app/issue/issueList.controller.js b/src/main/webapp/scripts/app/issue/issueList.controller.js
index 5c7873d..334553c 100644
--- a/src/main/webapp/scripts/app/issue/issueList.controller.js
+++ b/src/main/webapp/scripts/app/issue/issueList.controller.js
@@ -96,7 +96,7 @@
                     issueTreeConfigs : [],  //  �씠�뒋 �뀒�씠釉� �꽕�젙
                     parentIssueId : "",
                     hideCompleteIssue : false,
-                    hideDownIssue : true,
+                    hideDownIssue : "0", //�씠�뒋紐⑸줉�뿉�꽌 �쟾泥댁씠�뒋蹂닿린 :0 �긽�쐞�씠�뒋留뚮낫湲�: 1 �븯�쐞�씠�뒋留뚮낫湲�:1
                     listMode : 0, // 紐⑸줉 紐⑤뱶 0:湲곕낯 由ъ뒪�듃 1:�듃由ш뎄議� 由ъ뒪�듃
                     allIssue : false
                 };
@@ -655,9 +655,10 @@
                         $scope.vm.hideCompleteIssue = true;
                     }
 
-                    if ($scope.vm.hideDownIssue) {
-                        $scope.vm.hideDownIssue = true;
-                    }
+                    // if ($scope.vm.hideDownIssue) {
+                    //     $scope.vm.hideDownIssue = true;
+                    // }
+
                     //  �쁽�옱 �럹�씠吏� �젙蹂�
                     var currentPage = 0;
 
diff --git a/src/main/webapp/views/issue/issueListNormal.html b/src/main/webapp/views/issue/issueListNormal.html
index 148e665..964d140 100644
--- a/src/main/webapp/views/issue/issueListNormal.html
+++ b/src/main/webapp/views/issue/issueListNormal.html
@@ -453,14 +453,17 @@
 
                             <!--    �슦痢�  -->
                             <div class="col-5" >
-                                <span class="issue-detail-label" ng-if="vm.listMode === 0" style="position: relative; left: 2.8rem; bottom: 5px"><span style="color: #0a7cf8">�뾾</span> �븯�쐞 �씠�뒋 �닲湲곌린</span>
-                                <label class='switch' ng-if="vm.listMode === 0" style="left: 3.3rem"><input type='checkbox' ng-model='vm.hideDownIssue' ng-click='fn.getPageList(0)'>
-                                    <span class='slider round'></span>
-                                </label>
-                                <span class="issue-detail-label" style="position: relative; left: 5.8rem; bottom: 5px"><span style="color: #0a7cf8">�뾾</span> �셿猷� �씠�뒋 �닲湲곌린</span>
+                                <span class="issue-detail-label" style="position: relative; left: 5.8rem; bottom: 7px"><span style="color: #0a7cf8">�뾾</span> �셿猷� �씠�뒋 �닲湲곌린</span>
                                 <label class='switch' style="left: 6.3rem"><input type='checkbox' ng-model='vm.hideCompleteIssue' ng-click='fn.getPageList(0)'>
                                     <span class='slider round'></span>
                                 </label>
+                                <label style="position: relative; left: 8rem; bottom: 9px">
+                                    <select class="form-control form-control-sm" ng-if="vm.listMode === 0" ng-model="vm.hideDownIssue" ng-change="fn.getPageList(0)" ng-init="0" style="width:160px">
+                                        <option value="0">�쟾泥� �씠�뒋 蹂닿린</option>
+                                        <option value="1">�긽�쐞 �씠�뒋留� 蹂닿린</option>
+                                        <option value="2">�븯�쐞 �씠�뒋留� 蹂닿린</option>
+                                    </select>
+                                </label>
                                 <form class="form-inline justify-content-sm-end  pull-right" method="post" action="/issue/downloadExcel" name="issueListForm" >
                                     <!--span class="badge-tip" function-tool-tip  data-placement="top" data-toggle="tooltip" data-original-title="�뿊�� �떎�슫濡쒕뱶, �씪愿� 蹂�寃� �벑 �떎�뼇�븳 湲곕뒫�쓣 �젣怨듯빀�땲�떎.">?</span-->
                                     <input type="hidden" name="conditions">

--
Gitblit v1.8.0