From f846fa62722566a00436c0ebfc394e9ddf1c0cb6 Mon Sep 17 00:00:00 2001 From: jhjang <jhjang@maprex.co.kr> Date: 금, 24 12월 2021 11:09:07 +0900 Subject: [PATCH] - 통합 검색 완료 --- src/main/webapp/scripts/config.js | 20 ++++++++++ src/main/webapp/scripts/app/issue/issueManager.controller.js | 9 ++-- src/main/webapp/scripts/app/common/common.controller.js | 19 +++++---- src/main/webapp/scripts/app/issue/issueList.controller.js | 46 +++++++++++++---------- 4 files changed, 61 insertions(+), 33 deletions(-) diff --git a/src/main/webapp/scripts/app/common/common.controller.js b/src/main/webapp/scripts/app/common/common.controller.js index 37778c7..8a4e5bb 100644 --- a/src/main/webapp/scripts/app/common/common.controller.js +++ b/src/main/webapp/scripts/app/common/common.controller.js @@ -58,17 +58,18 @@ //} }); + $rootScope.$on("$stateChangeStart", function (event, toState, toStateParams) { + var keyWord = $rootScope.getCookie("searchKeyword"); + + if (keyWord == null || keyWord === '') { + $scope.vm.searchAll.keyWord = ""; + } + }); + // 硫붿씤 �긽�떒 寃��깋 function searchAll() { - if ($state.current.name !== "issues.list") { - // $state.go("issues.list"); - var myUrl = window.location.href.split('#/'); - location.href = myUrl[0] + "#/issues/issueList?keyWord=" + $scope.vm.searchAll.keyWord; - } else { - $scope.$broadcast("searchIssueList", {keyWord: $scope.vm.searchAll.keyWord}); - } - //$scope.vm.searchAll.keyWord = ""; - //$rootScope.previousGetParams = null; + $rootScope.setCookie("searchKeyword", $scope.vm.searchAll.keyWord, 60000); + moveMenu("issues.list"); } function setLastIssueType() { diff --git a/src/main/webapp/scripts/app/issue/issueList.controller.js b/src/main/webapp/scripts/app/issue/issueList.controller.js index d27ae11..f62d60f 100644 --- a/src/main/webapp/scripts/app/issue/issueList.controller.js +++ b/src/main/webapp/scripts/app/issue/issueList.controller.js @@ -66,15 +66,13 @@ issueStatusIds : [], // �씠�뒋 �긽�깭 寃��깋 issueTypeIds : [] // �씠�뒋 �쑀�삎 寃��깋 }, - searchAll : { - keyWord : "", // �쟾泥� 寃��깋 - }, searchView : false, // �긽�꽭 寃��깋 議곌굔 �몴�떆 �뿬遺� detailView : false, // �긽�꽭 紐⑤뱶 蹂�寃� 媛� page : { selectedPage : 0, selectedPageRowCount : String(10) }, + tableConfigs : [], // �뀒�씠釉� �뀑�똿 �젙蹂� treeConfigs : [], // �듃由� �뀑�똿 �젙蹂� responseData : { @@ -130,14 +128,8 @@ $scope.$on("changedIssueListMenu", function (event, args) { $scope.vm.search.keyWord = ""; - $scope.vm.searchAll.keyWord = ""; - $scope.fn.getPageList($scope.vm.page.selectedPage - 1); - }); - - // �긽�떒 寃��깋�떆 - $scope.$on("searchIssueList", function (event, args) { - $scope.vm.search.keyWord = args.keyWord; - $scope.fn.getPageList(0); + $rootScope.isMainSearch = false; + //$scope.fn.getPageList($scope.vm.page.selectedPage - 1); }); // 寃��깋 議곌굔�쓣 湲곗뼲�븳�떎. - �쟻�슜 蹂대쪟 @@ -167,7 +159,7 @@ } // �꽌踰꾩뿉 ���옣�븳 �씠�뒋 寃��깋 議곌굔�쓣 媛��졇�삩�떎. - function getVmSearchObject() { + function getVmSearchObject(keyWord = null) { IssueSearch.detail($resourceProvider.getContent({}, $resourceProvider.getPageContent(0, 0))).then(function (result) { @@ -181,9 +173,9 @@ // $scope.vm.projects = issueListSearchObject.projects; // $scope.vm.registers = issueListSearchObject.registers; - $scope.fn.getPageList(0, true); + $scope.fn.getPageList(0, true, keyWord); } else { - $scope.fn.getPageList(0); + $scope.fn.getPageList(0, false, keyWord); } } else { @@ -597,14 +589,17 @@ } // �씠�뒋 紐⑸줉�쓣 議고쉶�븳�떎. - function getPageList(selectedPage, detail = false, keyWord = "") { + function getPageList(selectedPage, detail = false, keyWord = null) { $rootScope.spinner = true; // �봽濡쒓렇�옒�뒪 諛� if (selectedPage < 0) { selectedPage = 0; } - if (keyWord !== "") { + if (keyWord != null) { $scope.vm.search.keyWord = keyWord; + $rootScope.isMainSearch = true; + + $rootScope.$broadcast("getPageListKeyWord", {keyWord: $scope.vm.search.keyWord}); } if ($scope.vm.hideCompleteIssue) { @@ -628,7 +623,7 @@ // 寃��깋 湲곕낯媛� �꽭�똿 $scope.vm.search.issueTypeIds = []; $scope.vm.projects = []; - if ($scope.vm.searchAll.keyWord == null || $scope.vm.searchAll.keyWord === "") { + if (keyWord == null || keyWord === '') { // 硫붾돱�뿉�꽌 �꽑�깮�맂 �씠�뒋 �쑀�삎�쓣 湲곕낯�쑝濡� 異붽� if ($rootScope.issueTypeMenu != null) { //$scope.vm.pageTitle = $rootScope.issueTypeMenu.name; @@ -654,6 +649,9 @@ // �씠�뒋 寃��깋 議곌굔�쓣 留뚮뱺�떎. var conditions = $scope.fn.makeSearchConditions(); + + if ($rootScope.previousGetParams != null) + $rootScope.previousGetParams = null; Issue.find($resourceProvider.getContent(conditions, $resourceProvider.getPageContent(currentPage, $scope.vm.page.selectedPageRowCount))).then(function (result) { @@ -1260,13 +1258,21 @@ // 理쒖큹 �떎�뻾 function startExecute() { + // 荑좏궎 �씫湲� + var paramKeyWord = null; + + var keyWord = $rootScope.getCookie("searchKeyword"); + if (keyWord != null && keyWord !== '') { + paramKeyWord = keyWord; + $rootScope.deleteCookie("searchKeyword"); + } + // �뙆�씪誘명꽣 �씫湲� var params = $rootScope.previousGetParams; if ($rootScope.isDefined(params)) { // $rootScope.$broadcast("makeIssueSearch", { projectKey : params.projectKey, issueNumber : params.issueNumber }); if (params.keyWord != null) { - $scope.vm.searchAll.keyWord = params.keyWord; - getPageList(0,false, params.keyWord); + paramKeyWord = params.keyWord; }else { getDetailList(params.projectKey, params.issueNumber); return; @@ -1304,7 +1310,7 @@ // �씠�뒋 �뀒�씠釉� �꽕�젙 $scope.fn.makeTableConfigs(); // �꽌踰꾩뿉 ���옣�븳 �씠�뒋 寃��깋 議곌굔�쓣 媛��졇���꽌 �씠�뒋 紐⑸줉 寃��깋�쓣 吏꾪뻾�븳�떎. - $scope.fn.getVmSearchObject(); + $scope.fn.getVmSearchObject(paramKeyWord); }); }); } diff --git a/src/main/webapp/scripts/app/issue/issueManager.controller.js b/src/main/webapp/scripts/app/issue/issueManager.controller.js index b03c0cf..169be48 100644 --- a/src/main/webapp/scripts/app/issue/issueManager.controller.js +++ b/src/main/webapp/scripts/app/issue/issueManager.controller.js @@ -47,12 +47,13 @@ }); // �긽�떒 寃��깋�떆 - if ($rootScope.previousGetParams != null && $rootScope.previousGetParams.keyWord != null && $rootScope.previousGetParams.keyWord !== "") { + $scope.$on("searchIssueList", function (event, args) { $scope.vm.pageTitle = $filter("translate")("issue.searchIssue"); - } - /*$scope.$on("searchIssueList", function (event, args) { + }); + + $scope.$on("getPageListKeyWord", function (event, args) { $scope.vm.pageTitle = $filter("translate")("issue.searchIssue"); - });*/ + }); function start() { if ($rootScope.issueTypeMenu != null) { diff --git a/src/main/webapp/scripts/config.js b/src/main/webapp/scripts/config.js index 8c0a0f1..7804678 100644 --- a/src/main/webapp/scripts/config.js +++ b/src/main/webapp/scripts/config.js @@ -119,6 +119,8 @@ file : 314572800 // 100MB }; + $rootScope.isMainSearch = false; // �넻�빀 寃��깋 �뿬遺� + // �뀒�씠釉� �꽕�젙 諛� 湲곕뒫�쓣 愿�由ы븯�뒗 �꽌鍮꾩뒪 $rootScope.$tableProvider = $tableProvider; @@ -258,6 +260,24 @@ "USER_PERMISSION_MNG_GUIDE" : 2, }; + // 荑좏궎 ���옣 + $rootScope.setCookie = function (name, value, exp) { + var date = new Date(); + date.setTime(date.getTime() + exp*24*60*60*1000); + document.cookie = name + '=' + value + ';expires=' + date.toUTCString() + ';path=/'; + }; + + // 荑좏궎 媛��졇�삤湲� + $rootScope.getCookie = function (name) { + var value = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)'); + return value? value[2] : null; + } + + // 荑좏궎 �궘�젣 + $rootScope.deleteCookie = function (name) { + document.cookie = name + '=; expires=Thu, 01 Jan 1999 00:00:10 GMT;'; + } + // �쁽�옱 �꽑�깮�맂 �씠�뒋 ���엯 �븘�씠�뵒 媛��졇�삤湲� $rootScope.getCurrentIssueTypeId = function () { return $rootScope.issueTypeMenu != null ? $rootScope.issueTypeMenu.id : null; -- Gitblit v1.8.0