OWL ITS + 탐지시스템(인터넷 진흥원)
jhjang
2021-11-25 305de5dd5a88baf49b9939fe3233f207f3f7acf8
src/main/webapp/scripts/app/issueType/issueTypeModify.controller.js
@@ -13,9 +13,11 @@
                $scope.fn = {
                    getWorkflowListCallBack : getWorkflowListCallBack,  //  워크플로우 auto complete callback function
                    getProjectListCallBack : getProjectListCallBack, // 프로젝트 auto complete callback function
                    cancel : cancel,    //  팝업 창 닫기
                    formSubmit : formSubmit,    //  폼 전송
                    formCheck : formCheck,  //  폼 체크
                    removeUseCompany : removeUseCompany, // 업체/isp/호스팅 삭제
                    detail : detail //  상세 정보
                };
@@ -28,12 +30,20 @@
                        id : parameter.id,
                        name : "",
                        workflows : [],    //  워크플로우
                        projects : [],      // 프로젝트
                        description : "",  //  설명
                        color : "" //  색상
                        color : "", //  색상
                        companies : [] // 업체/isp/호스팅 선택 배열
                    },
                    companyName : "",
                    workflowName : "",
                    projectName : "",
                    autoCompletePage : {
                        workflow : {
                            page : 0,
                            totalPage : 0
                        },
                        project : {
                            page : 0,
                            totalPage : 0
                        }
@@ -91,12 +101,17 @@
                angular.extend(this, $controller('autoCompleteController', {$scope : $scope, $injector : $injector}));
                function formCheck(formInvalid) {
                    if (formInvalid) {
                        return true;
                    }
                    if ($scope.vm.form.workflows.length < 1) {
                        return true;
                    }
                    if ($scope.vm.form.projects.length < 1) {
                        return true;
                    }
@@ -117,6 +132,24 @@
                            return workflowId;
                        })(),
                        projectId :  (function () {
                            var projectId = "";
                            if ($scope.vm.form.projects.length > 0) {
                                projectId = $scope.vm.form.projects[0].id;
                            }
                            return projectId;
                        })(),
                        companyIds :  (function () {
                            var companyIds = [];
                            $scope.vm.form.companies.forEach(function (company) {
                                companyIds.push(company.id);
                            });
                            return companyIds;
                        })(),
                        name : $rootScope.preventXss($scope.vm.form.name),
                        description : $rootScope.preventXss($scope.vm.form.description),
                        color : $scope.vm.form.color
@@ -128,6 +161,7 @@
                        if (result.data.message.status === "success") {
                            $scope.fn.cancel();
                            $rootScope.$broadcast("modifyIssueType", {});
                            //  목록 화면 갱신
                            $rootScope.$broadcast("getIssueTypeList", {});
                        }
@@ -144,11 +178,21 @@
                    $scope.vm.autoCompletePage.workflow.totalPage = result.data.page.totalPage;
                }
                function getProjectListCallBack(result) {
                    $scope.vm.autoCompletePage.project.totalPage = result.data.page.totalPage;
                }
                function cancel() {
                    $rootScope.$broadcast("closeLayer");    //  팝업이 열리고 나서 js-multi, js-single 등에서 body 이벤트가 날아가는 현상 수정
                    $uibModalInstance.dismiss('cancel');
                    $(document).unbind("keydown");  //  단축키 이벤트 제거
                }
                //  업체/ISP/호스팅 삭제
                function removeUseCompany(index) {
                    $scope.vm.form.companies.splice(index, 1);
                }
                function detail() {
                    $scope.vm.form.workflows = [];
@@ -163,6 +207,12 @@
                                $scope.vm.form.description = result.data.data.description;
                                $scope.vm.form.workflows.push(result.data.data.workflowVo);
                                $scope.vm.workflowName = result.data.data.workflowVo.name;
                                if (result.data.data.projectVo != null) {
                                    $scope.vm.form.projects.push(result.data.data.projectVo);
                                    $scope.vm.projectName = result.data.data.projectVo.name;
                                }
                                $scope.vm.form.companies = result.data.data.useCompanyVos;
                                $scope.vm.form.color = result.data.data.color;
                            }
                        }