OWL ITS + 탐지시스템(인터넷 진흥원)
jhjang
2022-01-03 4d692a614bba9d8954cbbdad2d79424afaab0298
src/main/webapp/scripts/app/issue/issueDetail.controller.js
@@ -51,6 +51,8 @@
                $scope.fn.containsPartner = containsPartner;
                $scope.fn.onActivate = onActivate;
                $scope.fn.issueBack = issueBack;
                $scope.fn.removeRelationIssue = removeRelationIssue;
                $scope.fn.removeDownIssue = removeDownIssue;
                //  이슈 목록 컨트롤러 vm, fn 상속 중
                $scope.vm.viewer = {};      // 현재 이슈
@@ -110,7 +112,7 @@
                $scope.vm.relTableConfigs = [];
                //  테이블 이벤트
                $scope.relTableEvent = {
                    removeRelationIssue : removeRelationIssue,   // 연관 일감 삭제
                    //removeRelationIssue : removeRelationIssue,   // 연관 일감 삭제
                    changeDetailView : changeDetailView
                };
@@ -118,7 +120,7 @@
                $scope.vm.downTableConfigs = [];
                //  테이블 이벤트
                $scope.downTableEvent = {
                    removeDownIssue : removeDownIssue,   // 연관 일감 삭제
                    //removeDownIssue : removeDownIssue,   // 연관 일감 삭제
                    changeDetailView : changeDetailView
                };
@@ -152,7 +154,38 @@
                });
                // 하위 이슈 삭제
                function removeDownIssue(id) {
                function removeDownIssue() {
                    var removeIds = [];
                    var removePermission = true;
                    angular.forEach($scope.vm.viewer.issueDownVos, function (data) {
                        if (data.checked && data.modifyPermissionCheck) {
                            removeIds.push(data.id);
                        }
                        if (data.checked && !data.modifyPermissionCheck) {
                            removePermission = false;
                        }
                    });
                    if (!removePermission) {
                        SweetAlert.swal({
                            html : true,
                            title : $filter("translate")("common.deleteFailed"), // 삭제 실패
                            text : $filter("translate")("project.notHaveDeletePermissionExistsProject"), // "삭제 권한이 없는 프로젝트가 존재합니다."
                            type : "error"
                        });
                        return;
                    }
                    if (removeIds.length < 1) {
                        SweetAlert.swal({
                            title : $filter("translate")("common.checkPurgingTargets"), // 삭제 대상 확인
                            text : $filter("translate")("common.selectDestinationDeletion"), // 삭제 대상을 선택하세요.
                            type : "warning"
                        });
                        return;
                    }
                    //  삭제 알림
                    SweetAlert.swal({
                            title : $filter("translate")("issue.downIssueRemove"), // 하위 이슈 삭제
@@ -172,7 +205,7 @@
                                $rootScope.spinner = true;
                                var contents = {
                                    id : id
                                    ids : removeIds
                                };
                                Issue.modifyParentIssue($resourceProvider.getContent(
@@ -194,7 +227,38 @@
                }
                // 연관 이슈 삭제
                function removeRelationIssue(id) {
                function removeRelationIssue() {
                    var removeIds = [];
                    var removePermission = true;
                    angular.forEach($scope.vm.viewer.issueRelationVos, function (data) {
                        if (data.checked && data.modifyPermissionCheck) {
                            removeIds.push(data.id);
                        }
                        if (data.checked && !data.modifyPermissionCheck) {
                            removePermission = false;
                        }
                    });
                    if (!removePermission) {
                        SweetAlert.swal({
                            html : true,
                            title : $filter("translate")("common.deleteFailed"), // 삭제 실패
                            text : $filter("translate")("issue.notHaveDeletePermissionExistsAnIssue"), // 삭제 권한이 없는 이슈가 존재합니다.
                            type : "error"
                        });
                        return;
                    }
                    if (removeIds.length < 1) {
                        SweetAlert.swal({
                            title : $filter("translate")("common.checkPurgingTargets"), // 삭제 대상 확인
                            text : $filter("translate")("common.selectDestinationDeletion"), // 삭제 대상을 선택하세요.
                            type : "warning"
                        });
                        return;
                    }
                    //  삭제 알림
                    SweetAlert.swal({
                            title : $filter("translate")("issue.relationIssueRemove"), // 연관 이슈 삭제
@@ -214,7 +278,7 @@
                                $rootScope.spinner = true;
                                var contents = {
                                    id : id
                                    removeIds : removeIds
                                };
                                IssueRelation.delete($resourceProvider.getContent(
@@ -436,6 +500,10 @@
                function makeRelTableConfigs() {
                    $scope.vm.relTableConfigs = [];
                    $scope.vm.relTableConfigs.push($tableProvider.config()
                        .setDType("checkbox")
                        .setHWidth("width-20-p")
                        .setDAlign("text-center"))
                    $scope.vm.relTableConfigs.push($tableProvider.config()
                        .setHName("issue.relationIssueType")
                        .setDType("renderer")
                        .setDAlign("text-center")
@@ -449,7 +517,7 @@
                        .setHWidth("width-60-p bold")
                        .setHSort(false)
                        .setDRenderer("ISSUE_RELATION_MOVE"))
                    if($scope.vm.viewer.modifyPermissionCheck) {
                    /*if($scope.vm.viewer.modifyPermissionCheck) {
                        $scope.vm.relTableConfigs.push($tableProvider.config()
                            .setHName("issue.relationIssueDelete")
                            .setDType("renderer")
@@ -458,7 +526,7 @@
                            .setDRenderer("ISSUE_RELATION_DELETE")
                            .setHSort(false)
                            .setDAlign("text-center"))
                    }
                    }*/
                    angular.forEach($scope.vm.relTableConfigs, function (Rel_issueTableConfig) {
                        //  표시 대상인 컬럼만 화면에 그려준다.
                        if (Rel_issueTableConfig.display) {
@@ -472,13 +540,17 @@
                function makeDownTableConfigs() {
                    $scope.vm.downTableConfigs = [];
                    $scope.vm.downTableConfigs.push($tableProvider.config()
                        .setDType("checkbox")
                        .setHWidth("width-20-p")
                        .setDAlign("text-center"))
                    $scope.vm.downTableConfigs.push($tableProvider.config()
                        .setHName("issue.downIssueTitle")
                        .setDType("renderer")
                        .setDAlign("text-center")
                        .setHWidth("width-60-p bold")
                        .setHSort(false)
                        .setDRenderer("ISSUE_DOWN_MOVE"))
                    if($scope.vm.viewer.modifyPermissionCheck){
                    /*if($scope.vm.viewer.modifyPermissionCheck){
                        $scope.vm.downTableConfigs.push($tableProvider.config()
                            .setHName("issue.relationIssueDelete")
                            .setDType("renderer")
@@ -487,7 +559,7 @@
                            .setDRenderer("ISSUE_DOWN_DELETE")
                            .setHSort(false)
                            .setDAlign("text-center"))
                    }
                    }*/
                    angular.forEach($scope.vm.downTableConfigs, function (Down_issueTableConfig) {
                        //  표시 대상인 컬럼만 화면에 그려준다.
@@ -531,6 +603,10 @@
                           .setHWidth("width-60-p bold")
                           .setHSort(false)
                           .setDRenderer("ISSUE_RELATION_MOVE"))*/
                        $scope.vm.relTableConfigs.push($tableProvider.config()
                            .setDType("checkbox")
                            .setHWidth("width-20-p")
                            .setDAlign("text-center"))
                        angular.forEach($scope.vm.issueRelTableConfigs, function (Rel_issueTableConfig) {
                            //  표시 대상인 컬럼만 화면에 그려준다.
                            if (Rel_issueTableConfig.display) {
@@ -539,7 +615,7 @@
                            }
                        });
                        if($scope.vm.viewer.modifyPermissionCheck) {
                        /*if($scope.vm.viewer.modifyPermissionCheck) {
                            $scope.vm.relTableConfigs.push($tableProvider.config()
                                .setHName("issue.relationIssueDelete")
                                .setDType("renderer")
@@ -547,7 +623,7 @@
                                .setDRenderer("ISSUE_RELATION_DELETE")
                                .setHSort(false)
                                .setDAlign("text-center"))
                        }
                        }*/
                    } else {
                        makeRelTableConfigs();
                    }
@@ -575,6 +651,10 @@
                            .setHWidth("width-60-p bold")
                            .setHSort(false)
                            .setDRenderer("ISSUE_DOWN_MOVE"))*/
                        $scope.vm.downTableConfigs.push($tableProvider.config()
                            .setDType("checkbox")
                            .setHWidth("width-20-p")
                            .setDAlign("text-center"))
                        angular.forEach($scope.vm.issueDownTableConfigs, function (Down_issueTableConfig) {
                            //  표시 대상인 컬럼만 화면에 그려준다.
                            if (Down_issueTableConfig.display) {
@@ -582,7 +662,7 @@
                                $scope.fn.setDownTableColumn(Down_issueTableConfig);
                            }
                        });
                        if($scope.vm.viewer.modifyPermissionCheck) {
                        /*if($scope.vm.viewer.modifyPermissionCheck) {
                            $scope.vm.downTableConfigs.push($tableProvider.config()
                                .setHName("issue.relationIssueDelete")
                                .setDType("renderer")
@@ -590,7 +670,7 @@
                                .setDRenderer("ISSUE_DOWN_DELETE")
                                .setHSort(false)
                                .setDAlign("text-center"))
                        }
                        }*/
                    } else {
                        makeDownTableConfigs();
                    }
@@ -632,9 +712,14 @@
                        return;
                    }
                    var ids = [];
                    if ($scope.vm.form.issuesDown[0].id != null) {
                        ids.push($scope.vm.form.issuesDown[0].id);
                    }
                    var contents = {
                        issueId : $rootScope.currentDetailIssueId,
                        id : $scope.vm.form.issuesDown[0].id,
                        ids : ids,
                        parentIssueId : $rootScope.currentDetailIssueId
                    };
@@ -712,6 +797,20 @@
                }
                function modifyDownIssueStatus() {
                    var issueIds = [];
                    angular.forEach($scope.vm.viewer.issueDownVos, function (data) {
                        if (data.checked) {
                            issueIds.push(data.id);
                            //$scope.vm.projectId = data.projectId;
                        }
                    });
                    if (issueIds.length < 1) {
                        SweetAlert.warning($filter("translate")("issue.selectionCheck"), $filter("translate")("issue.selectIssueToChangeStatus")); // 선택 대상 확인, 상태 변경할 이슈를 선택하세요.
                        return;
                    }
                    $uibModal.open({
                        templateUrl : 'views/issue/downIssueModifyStatus.html',
                        size : "md",
@@ -722,7 +821,8 @@
                                return {
                                    issueTypeId : $scope.vm.viewer.issueTypeVo.id,
                                    issueIds : [$scope.vm.viewer.id],
                                    downIssues : $scope.vm.viewer.issueDownVos,
                                    //downIssues : $scope.vm.viewer.issueDownVos,
                                    downIssues : issueIds,
                                    projectId : $scope.vm.viewer.projectVo.id
                                };
                            }