OWL ITS + 탐지시스템(인터넷 진흥원)
wyu
2021-11-18 a993b44941dfd5de7df8a15a7f1c1fb314b00c22
src/main/webapp/scripts/app/issue/issueModify.controller.js
@@ -19,10 +19,10 @@
                    formCheck : formCheck,  //  폼 체크
                    getUserListCallBack : getUserListCallBack,  //  담당자 autocomplete 페이징
                    getProjectListCallBack : getProjectListCallBack,    //  프로젝트 autocomplete 페이징
                    getCompanyFieldListCallBack : getCompanyFieldListCallBack,    // 업체정보 autocomplete 페이징
                    getIssueCompanyFieldListCallBack : getIssueCompanyFieldListCallBack,    // 업체정보 autocomplete 페이징
                    getIssueDepartmentListCallBack : getIssueDepartmentListCallBack,    // 담당자 -> 담당부서 autocomplete 페이징
                    getIspFieldListCallBack : getIspFieldListCallBack,    // ISP정보 autocomplete 페이징
                    getHostingFieldListCallBack : getHostingFieldListCallBack,    // 호스팅정보 autocomplete 페이징
                    getIssueIspFieldListCallBack : getIssueIspFieldListCallBack,    // ISP정보 autocomplete 페이징
                    getIssueHostingFieldListCallBack : getIssueHostingFieldListCallBack,    // 호스팅정보 autocomplete 페이징
                    getOptionColor : getOptionColor,    //  우선순위, 중요도 색상으로 Select 태그 적용
                    onFileSelect : onFileSelect,    //  파일 첨부
                    imageUpload : imageUpload,  //  섬머노트 이미지 업로드
@@ -43,15 +43,15 @@
                $scope.vm = {
                    search : {
                        id : parameter.id,
                        deep : "01"    //  프로젝트 연관된 모든 정보를 어느정도까지 가져올지 결정, 01 - 사용자, 관리자 정보
                        deep : "02"    //  프로젝트 연관된 모든 정보를 어느정도까지 가져올지 결정, 01 - 사용자, 관리자 정보
                    },
                    form : {
                        title : "",    //  제목
                        description : "",   //  내용
                        projects : [],  //  프로젝트
                        companyFields : [], // 업체정보
                        ispFields : [], // ISP 정보
                        hostingFields : [], // 호스팅정보
                        issueCompanyFields : [], // 업체정보
                        issueIspFields : [], // ISP 정보
                        issueHostingFields : [], // 호스팅정보
                        issueTypeId : "",   //  이슈 유형 아이디
                        priorityId : "",    //  우선순위 아이디
                        severityId : "",    //  중요도 아이디
@@ -93,7 +93,7 @@
                            page : 0,
                            totalPage : 0
                        },
                        companyField : {
                        issueCompanyField : {
                            page : 0,
                            totalPage : 0
                        },
@@ -311,8 +311,8 @@
                }
                //  업체정보 autocomplete page 업데이트
                function getCompanyFieldListCallBack(result) {
                    $scope.vm.autoCompletePage.companyField.totalPage = result.data.page.totalPage;
                function getIssueCompanyFieldListCallBack(result) {
                    $scope.vm.autoCompletePage.issueCompanyField.totalPage = result.data.page.totalPage;
                }
                // 부서정보 autocomplete page 업데이트
@@ -321,12 +321,12 @@
                }
                // ISP정보 autocomplete page 업데이트
                function getIspFieldListCallBack(result) {
                function getIssueIspFieldListCallBack(result) {
                    $scope.vm.autoCompletePage.ispField.totalPage = result.data.page.totalPage;
                }
                // 호스팅정보 autocomplete page 업데이트
                function getHostingFieldListCallBack(result) {
                function getIssueHostingFieldListCallBack(result) {
                    $scope.vm.autoCompletePage.hostingField.totalPage = result.data.page.totalPage;
                }
@@ -345,6 +345,7 @@
                // 업체정보 결과 값 Event 처리(set)
                $scope.$on("companyFieldEvent", function (event, result) {
                    $scope.vm.companyId = result[0].id;
                    $scope.vm.companyManager = result[0].manager;
                    $scope.vm.companyTel = result[0].tel;
                    $scope.vm.companyEmail = result[0].email;
@@ -389,8 +390,8 @@
                        companyId : (function () {   //  프로젝트 아이디
                            var companyId = "";
                            if ($scope.vm.form.companyFields.length > 0) {
                                companyId = $scope.vm.form.companyFields[0].id;
                            if ($scope.vm.form.issueCompanyFields.length > 0) {
                                companyId = $scope.vm.form.issueCompanyFields[0].id;
                            }
                            return companyId;
@@ -399,8 +400,8 @@
                        ispId : (function () {
                            var ispId = "";
                            if ($scope.vm.form.ispFields.length > 0) {
                                ispId = $scope.vm.form.ispFields[0].id;
                            if ($scope.vm.form.issueIspFields.length > 0) {
                                ispId = $scope.vm.form.issueIspFields[0].id;
                            }
                            return ispId;
@@ -408,8 +409,8 @@
                        hostingId : (function () {
                            var hostingId = "";
                            if ($scope.vm.form.hostingFields.length > 0) {
                                hostingId = $scope.vm.form.hostingFields[0].id;
                            if ($scope.vm.form.issueHostingFields.length > 0) {
                                hostingId = $scope.vm.form.issueHostingFields[0].id;
                            }
                            return hostingId;
@@ -451,76 +452,37 @@
                        })(),
                        startCompleteDateRange : $scope.vm.form.startCompleteDateRange,
                        companyFields : (function () {
                            var companyFields = [];
                        issueCompanyFields : (function () {
                            var issueCompanyFields = [];
                            angular.forEach($scope.vm.form.companyFields, function (companyField) {
                                var useValues = [];
                            var companyField = $scope.vm.form.issueCompanyFields;
                            issueCompanyFields.companyId = companyField.id;
                            //companyField.id = null;
                            issueCompanyFields.push(companyField);
                                if (angular.isArray(companyField.useValues)) {
                                    angular.forEach(companyField.useValues, function (useValue) {
                                        useValues.push(useValue.value);
                                    });
                                }
                                else {
                                    useValues.push(companyField.useValues);
                                }
                                //  useValues 를 배열로 변환한다.
                                var temp = angular.copy(companyField);
                                temp.useValues = useValues;
                                companyFields.push(temp);
                            });
                            return companyFields;
                            return issueCompanyFields;
                        })(),
                        ispFields : (function () {
                            var ispFields = [];
                        issueIspFields : (function () {
                            var issueIspFields = [];
                            angular.forEach($scope.vm.form.ispFields, function (ispField) {
                                var useValues = [];
                            var ispField = $scope.vm.form.issueIspFields;
                            issueIspFields.ispId = ispField.id;
                            ispField.id = null;
                            issueIspFields.push(ispField);
                                if (angular.isArray(ispField.useValues)) {
                                    angular.forEach(ispField.useValues, function (useValue) {
                                        useValues.push(useValue.value);
                                    });
                                }
                                else {
                                    useValues.push(ispField.useValues);
                                }
                                //  useValues 를 배열로 변환한다.
                                var temp = angular.copy(ispField);
                                temp.useValues = useValues;
                                ispFields.push(temp);
                            });
                            return ispFields;
                            return issueIspFields;
                        })(),
                        hostingFields : (function () {
                            var hostingFields = [];
                        issueHostingFields : (function () {
                            var issueHostingFields = [];
                            angular.forEach($scope.vm.form.hostingFields, function (hostingField) {
                                var useValues = [];
                            var hostingField = $scope.vm.form.issueHostingFields;
                            issueHostingFields.hostingId = hostingField.id;
                            hostingField.id = null;
                            issueHostingFields.push(hostingField);
                                if (angular.isArray(hostingField.useValues)) {
                                    angular.forEach(hostingField.useValues, function (useValue) {
                                        useValues.push(useValue.value);
                                    });
                                }
                                else {
                                    useValues.push(hostingField.useValues);
                                }
                                //  useValues 를 배열로 변환한다.
                                var temp = angular.copy(hostingField);
                                temp.useValues = useValues;
                                hostingFields.push(temp);
                            });
                            return hostingFields;
                            return issueHostingFields;
                        })(),
                        issueCustomFields : (function () {    //  이슈에서 사용되는 사용자 정의 필드
@@ -753,30 +715,33 @@
                                $scope.vm.form.users = result.data.data.userVos;
                                $scope.vm.form.departments = result.data.data.departmentVos;
                                $scope.vm.form.files = result.data.data.attachedFileVos;
                                // issueVo 에 get & set 설정값 설정 ex)issueCompanyVos
                                $scope.vm.form.issueCompanyFields = result.data.data.issueCompanyVos[0];
                                var issueCompanyFieldValue = result.data.data.issueCompanyVos[0];
                                $scope.vm.companyName = issueCompanyFieldValue.name;
                                $scope.vm.companyManager = issueCompanyFieldValue.manager;
                                $scope.vm.companyTel = issueCompanyFieldValue.tel;
                                $scope.vm.companyEmail = issueCompanyFieldValue.email;
                                $scope.vm.companyMemo = issueCompanyFieldValue.memo;
                                //
                                $scope.vm.form.companyFields.push(result.data.data.companyFieldVo);
                                $scope.vm.companyName = result.data.data.companyFieldVo.name;
                                $scope.vm.companyManager = result.data.data.companyFieldVo.manager;
                                $scope.vm.companyTel = result.data.data.companyFieldVo.tel;
                                $scope.vm.companyEmail = result.data.data.companyFieldVo.email;
                                $scope.vm.companyMemo = result.data.data.companyFieldVo.memo;
                                $scope.vm.form.ispFields.push(result.data.data.ispFieldVo);
                                $scope.vm.ispName = result.data.data.ispFieldVo.name;
                                $scope.vm.ispCode = result.data.data.ispFieldVo.code;
                                $scope.vm.ispManager = result.data.data.ispFieldVo.manager;
                                $scope.vm.ispTel = result.data.data.ispFieldVo.tel;
                                $scope.vm.ispEmail = result.data.data.ispFieldVo.email;
                                $scope.vm.ispMemo = result.data.data.ispFieldVo.memo;
                                $scope.vm.form.hostingFields.push(result.data.data.hostingFieldVo);
                                $scope.vm.hostingName = result.data.data.hostingFieldVo.name;
                                $scope.vm.hostingCode = result.data.data.hostingFieldVo.code;
                                $scope.vm.hostingManager = result.data.data.hostingFieldVo.manager;
                                $scope.vm.hostingTel = result.data.data.hostingFieldVo.tel;
                                $scope.vm.hostingEmail = result.data.data.hostingFieldVo.email;
                                $scope.vm.hostingMemo = result.data.data.hostingFieldVo.memo;
                                $scope.vm.form.issueIspFields = result.data.data.issueIspVos[0]
                                var issueIspFieldValue = result.data.data.issueIspVos[0];
                                $scope.vm.ispName = issueIspFieldValue.name;
                                $scope.vm.ispCode = issueIspFieldValue.code;
                                $scope.vm.ispManager = issueIspFieldValue.manager;
                                $scope.vm.ispTel = issueIspFieldValue.tel;
                                $scope.vm.ispEmail = issueIspFieldValue.email;
                                $scope.vm.ispMemo = issueIspFieldValue.memo;
                                //
                                $scope.vm.form.issueHostingFields = result.data.data.issueHostingVos[0];
                                var issueHostingFieldValue = result.data.data.issueHostingVos[0];
                                $scope.vm.hostingName = issueHostingFieldValue.name;
                                $scope.vm.hostingCode = issueHostingFieldValue.code;
                                $scope.vm.hostingManager = issueHostingFieldValue.manager;
                                $scope.vm.hostingTel = issueHostingFieldValue.tel;
                                $scope.vm.hostingEmail = issueHostingFieldValue.email;
                                $scope.vm.hostingMemo = issueHostingFieldValue.memo;
                                //
                                if ($rootScope.isDefined(result.data.data.startDate)) {
                                    $scope.vm.form.startCompleteDateRange = result.data.data.startDate + " ~ " + result.data.data.completeDate;
                                }