src/main/java/kr/wisestone/owl/web/condition/IssueCondition.java | ●●●●● 패치 | 보기 | raw | blame | 히스토리 | |
src/main/resources/mybatis/query-template/issue-template.xml | ●●●●● 패치 | 보기 | raw | blame | 히스토리 | |
src/main/webapp/scripts/app/issue/issueList.controller.js | ●●●●● 패치 | 보기 | raw | blame | 히스토리 | |
src/main/webapp/views/issue/issueListNormal.html | ●●●●● 패치 | 보기 | raw | blame | 히스토리 |
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); } 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> 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; 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">