From 2ffa64e0b88f73c531b61afd590b7be3d8bfa6bc Mon Sep 17 00:00:00 2001 From: wyu <kknd09321@nate.com> Date: 화, 23 11월 2021 20:52:37 +0900 Subject: [PATCH] 이슈 상세 연관,하위 테이블 표시 설정 - [프론트] --- src/main/webapp/scripts/app/issue/issueDetail.controller.js | 103 +++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 83 insertions(+), 20 deletions(-) diff --git a/src/main/webapp/scripts/app/issue/issueDetail.controller.js b/src/main/webapp/scripts/app/issue/issueDetail.controller.js index 6c65f71..073e2ca 100644 --- a/src/main/webapp/scripts/app/issue/issueDetail.controller.js +++ b/src/main/webapp/scripts/app/issue/issueDetail.controller.js @@ -8,8 +8,8 @@ 'angular' ], function (app, angular) { - app.controller('issueDetailController', ['$scope', '$rootScope', '$log', '$resourceProvider', '$tableProvider', '$state', '$uibModal', 'SweetAlert', '$timeout', 'Issue', 'IssueComment', 'IssueRelation', 'AttachedFile', 'IssueStatus', 'IssueTableConfig', '$filter', - function ($scope, $rootScope, $log, $resourceProvider, $tableProvider, $state, $uibModal, SweetAlert, $timeout, Issue, IssueComment, IssueRelation, AttachedFile, IssueStatus, IssueTableConfig, $filter) { + app.controller('issueDetailController', ['$scope', '$rootScope', '$log', '$resourceProvider', '$tableProvider', '$state', '$uibModal', '$q','SweetAlert', '$timeout', 'Issue', 'IssueComment', 'IssueRelation', 'AttachedFile', 'IssueStatus', 'IssueTableConfig', '$filter', + function ($scope, $rootScope, $log, $resourceProvider, $tableProvider, $state, $uibModal, $q, SweetAlert, $timeout, Issue, IssueComment, IssueRelation, AttachedFile, IssueStatus, IssueTableConfig, $filter) { // IssueListController vm, fn 蹂��닔 �긽�냽. @@ -112,11 +112,11 @@ $scope.$parent.tableEvent.changeDetailView(issue.id); } - // �븯�쐞 �씪媛� �궘�젣 + // �븯�쐞 �씠�뒋 �궘�젣 function removeDownIssue(id) { // �궘�젣 �븣由� SweetAlert.swal({ - title : $filter("translate")("issue.downIssueRemove"), // �뿰愿� �씪媛� �궘�젣 + title : $filter("translate")("issue.downIssueRemove"), // �븯�쐞 �씠�뒋 �궘�젣 text : $filter("translate")("issue.wantToDeleteSelectIssue"), type : "warning", showCancelButton : true, @@ -154,11 +154,11 @@ } - // �뿰愿� �씪媛� �궘�젣 + // �뿰愿� �씠�뒋 �궘�젣 function removeRelationIssue(id) { // �궘�젣 �븣由� SweetAlert.swal({ - title : $filter("translate")("issue.relationIssueRemove"), // �뿰愿� �씪媛� �궘�젣 + title : $filter("translate")("issue.relationIssueRemove"), // �뿰愿� �씠�뒋 �궘�젣 text : $filter("translate")("issue.wantToDeleteSelectIssue"), type : "warning", showCancelButton : true, @@ -204,7 +204,7 @@ // �뀒�씠釉붿쓽 �뿰愿� �씠�뒋 而щ읆�쓣 留뚮뱾�뼱以��떎. function setRelTableColumn(issueTableConfig) { - // �뿰愿� �씠�뒋 而щ읆 + // �뿰愿� �씠�뒋 而щ읆 switch(issueTableConfig.key) { case "RELATION_ISSUE_TYPE" : $scope.vm.relTableConfigs.push($tableProvider.config() @@ -278,6 +278,14 @@ .setDAlign("text-center") .setDName("modifyDate")); break; + // default :"ISSUE_RELATION_DELETE" // �뿰愿� �궘�젣 + // $scope.vm.relTableConfigs.push($tableProvider.config() + // .setHName("issue.downIssueTitle") + // .setDType("renderer") + // .setHWidth("bold" + issueTableConfig.width) + // .setHSort(false) + // .setDRenderer("ISSUE_RELATION_DELETE")); + // break; } // �궗�슜�옄 �젙�쓽 �븘�뱶 而щ읆 @@ -287,7 +295,7 @@ var customField = $scope.vm.customFields[count]; if (customField.id === Number(issueTableConfig.key.substring(13))) { - $scope.vm.relTableConfigs.push($tableProvider.config() + $scope.vm.tableConfigs.push($tableProvider.config() .setHName(customField.name) .setDType("renderer") .setHWidth("bold " + issueTableConfig.width) @@ -307,7 +315,7 @@ // �븯�쐞 �씠�뒋 而щ읆 switch(issueTableConfig.key) { - case "DOWN_ISSUE_TITLE" : // �슦�꽑�닚�쐞 + case "DOWN_ISSUE_TITLE" : // �븯�쐞 �씠�뒋 �젣紐� $scope.vm.downTableConfigs.push($tableProvider.config() .setHName("issue.downIssueTitle") .setDType("renderer") @@ -394,23 +402,28 @@ } - - // �뿰愿� �씠�뒋 �뀒�씠釉� �꽕�젙 function makeRelTableConfigs() { $scope.vm.relTableConfigs = []; $scope.vm.relTableConfigs.push($tableProvider.config() .setHName("issue.relationIssueType") .setDType("renderer") - .setHWidth("width-30 bold") + .setHWidth("width-30-p bold") .setHSort(false) .setDRenderer("ISSUE_RELATION_TYPE")) $scope.vm.relTableConfigs.push($tableProvider.config() .setHName("issue.relationIssueTitle") .setDType("renderer") - .setHWidth("width-60 bold") + .setHWidth("width-60-p bold") .setHSort(false) .setDRenderer("ISSUE_RELATION_MOVE")) + $scope.vm.relTableConfigs.push($tableProvider.config() + .setHName("issue.relationIssueDelete") + .setDType("renderer") + .setHWidth("width-20-p bold") + .setDRenderer("ISSUE_RELATION_DELETE") + .setHSort(false) + .setDAlign("text-center")) angular.forEach($scope.vm.relTableConfigs, function (issueTableConfig) { // �몴�떆 ���긽�씤 而щ읆留� �솕硫댁뿉 洹몃젮以��떎. @@ -427,16 +440,17 @@ $scope.vm.downTableConfigs.push($tableProvider.config() .setHName("issue.downIssueTitle") .setDType("renderer") - .setHWidth("width-60 bold") + .setHWidth("width-60-p bold") .setHSort(false) .setDRenderer("ISSUE_DOWN_MOVE")) $scope.vm.downTableConfigs.push($tableProvider.config() .setHName("issue.relationIssueDelete") .setDType("renderer") - .setHWidth("width-10 bold") + .setHWidth("width-20-p bold") .setDRenderer("ISSUE_DOWN_DELETE") .setHSort(false) .setDAlign("text-center")) + angular.forEach($scope.vm.downTableConfigs, function (issueTableConfig) { // �몴�떆 ���긽�씤 而щ읆留� �솕硫댁뿉 洹몃젮以��떎. if (issueTableConfig.display) { @@ -462,19 +476,41 @@ // �뿰愿� �뒋 紐⑸줉 �뀒�씠釉� �꽕�젙 媛믪쓣 媛��졇���꽌 �쟻�슜�븳�떎. if ($rootScope.isDefined(issueTableConfigs)) { // �씠�뒋 �뀒�씠釉� �꽕�젙 �젙蹂대�� ���옣 �븳�떎. + $scope.vm.issueRelTableConfigs = []; $scope.vm.issueRelTableConfigs = JSON.parse(issueTableConfigs); $scope.vm.issueRelTableConfigs.sort(function (a, b) { return a.position < b.position ? -1 : a.position > b.position ? 1 : 0; }); + $scope.vm.relTableConfigs = []; + $scope.vm.relTableConfigs.push($tableProvider.config() + .setHName("issue.relationIssueType") + .setDType("renderer") + .setHWidth("width-30-p bold") + .setHSort(false) + .setDRenderer("ISSUE_RELATION_TYPE")) + $scope.vm.relTableConfigs.push($tableProvider.config() + .setHName("issue.relationIssueTitle") + .setDType("renderer") + .setHWidth("width-60-p bold") + .setHSort(false) + .setDRenderer("ISSUE_RELATION_MOVE")) angular.forEach($scope.vm.issueRelTableConfigs, function (issueTableConfig) { // �몴�떆 ���긽�씤 而щ읆留� �솕硫댁뿉 洹몃젮以��떎. if (issueTableConfig.display) { // �뀒�씠釉붿쓽 而щ읆�쓣 留뚮뱾�뼱以��떎. $scope.fn.setRelTableColumn(issueTableConfig); + } }); + $scope.vm.relTableConfigs.push($tableProvider.config() + .setHName("issue.relationIssueDelete") + .setDType("renderer") + .setHWidth("width-20-p bold") + .setDRenderer("ISSUE_RELATION_DELETE") + .setHSort(false) + .setDAlign("text-center")) } else { makeRelTableConfigs(); @@ -507,7 +543,13 @@ $scope.vm.issueDownTableConfigs.sort(function (a, b) { return a.position < b.position ? -1 : a.position > b.position ? 1 : 0; }); - + $scope.vm.downTableConfigs = []; + $scope.vm.downTableConfigs.push($tableProvider.config() + .setHName("issue.downIssueTitle") + .setDType("renderer") + .setHWidth("width-60-p bold") + .setHSort(false) + .setDRenderer("ISSUE_DOWN_MOVE")) angular.forEach($scope.vm.issueDownTableConfigs, function (issueTableConfig) { // �몴�떆 ���긽�씤 而щ읆留� �솕硫댁뿉 洹몃젮以��떎. if (issueTableConfig.display) { @@ -515,6 +557,13 @@ $scope.fn.setDownTableColumn(issueTableConfig); } }); + $scope.vm.downTableConfigs.push($tableProvider.config() + .setHName("issue.relationIssueDelete") + .setDType("renderer") + .setHWidth("width-20-p bold") + .setDRenderer("ISSUE_DOWN_DELETE") + .setHSort(false) + .setDAlign("text-center")) } else { makeDownTableConfigs(); @@ -541,7 +590,8 @@ var contents = { relationIssueType : $scope.vm.relationIssueType.id, issueId : $rootScope.currentDetailIssueId, - relationIssueId : $scope.vm.form.issues[0].id + relationIssueId : $scope.vm.form.issues[0].id, + priorityName : $scope.vm.priorityName }; IssueRelation.add($resourceProvider.getContent( @@ -583,6 +633,12 @@ } }); } + + // �씠�뒋紐낆쓣 �겢由��븯硫� �씠�뒋 �긽�꽭 �젙蹂대�� 議고쉶�븳�떎. + $rootScope.$on("getIssueDetail", function (event, args) { + $scope.vm.viewer.id = args["id"]; + $scope.fn.getIssueDetail(); + }); // �씠�뒋紐낆쓣 �겢由��븯硫� �씠�뒋 �긽�꽭 �젙蹂대�� 議고쉶�븳�떎. $scope.$on("getIssueDetail", function (event, args) { @@ -660,7 +716,7 @@ // �뿰愿� �씠�뒋 紐⑸줉 �뀒�씠釉� �꽕�젙 function addRelationIssueTableConfig() { $uibModal.open({ - templateUrl : 'views/issue/issueRelationTableConfig.html', + templateUrl : 'views/issue/issueAddRelationTableConfig.html', size : "lg", controller : 'issueAddRelationTableConfigController', backdrop : 'static', @@ -671,7 +727,7 @@ // �븯�쐞 �씠�뒋 紐⑸줉 �뀒�씠釉� �꽕�젙 function addDownIssueTableConfig() { $uibModal.open({ - templateUrl : 'views/issue/issueDownTableConfig.html', + templateUrl : 'views/issue/issueAddDownTableConfig.html', size : "lg", controller : 'issueAddDownTableConfigController', backdrop : 'static', @@ -754,9 +810,14 @@ $scope.vm.form.issuesDown.push(issueDownVo.issue); }); + // wyu + angular.forEach(result.data.data.issueRelationVos, function (issueRelationColum){ + issueRelationColum.issueRelation = $scope.vm.issueRelation; + $scope.vm.form.issues.push(issueRelationColum.issueRelation); + }); + $scope.vm.viewer.issueRelationVos = result.data.data.issueRelationVos; $scope.vm.viewer.issueDownVos = result.data.data.issueDownVos; - } } else { @@ -765,6 +826,8 @@ }); } + // =================================================================================== + // �씠�뒋 �씠誘몄� 誘몃━ 蹂닿린 留뚮뱾湲� function makePreviewImages(attachedFileVos) { // 誘몃━蹂닿린 �씠誘몄� 珥덇린�솕 -- Gitblit v1.8.0