From bdb1efdc604fce543e21152b4263a9362f64389f Mon Sep 17 00:00:00 2001 From: minhee <alsdldlfrl@gmail.com> Date: 목, 10 3월 2022 15:35:19 +0900 Subject: [PATCH] - api 이슈 추가 시 입력한 ip에 속해있는 업체정보를 가진 이슈의 하위로 입력되도록 수정 - issue_company 테이블에 ip 컬럼 추가 및 이슈 추가/수정 시 ip 대역대 항목 추가 --- src/main/webapp/scripts/app/issue/issueAddRelation.controller.js | 238 +++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 158 insertions(+), 80 deletions(-) diff --git a/src/main/webapp/scripts/app/issue/issueAddRelation.controller.js b/src/main/webapp/scripts/app/issue/issueAddRelation.controller.js index feda0af..b864616 100644 --- a/src/main/webapp/scripts/app/issue/issueAddRelation.controller.js +++ b/src/main/webapp/scripts/app/issue/issueAddRelation.controller.js @@ -45,6 +45,7 @@ getChildSectorListCallBack : getChildSectorListCallBack, getRegionListCallBack : getRegionListCallBack, getStatusListCallBack : getStatusListCallBack, + getIssueTypeOfProject : getIssueTypeOfProject }; $scope.vm = { @@ -97,6 +98,8 @@ companyTel : "", // �뾽泥� �쟾�솕踰덊샇 companyEmail : "", // �뾽泥� �씠硫붿씪 companyUrl : "", // �뾽泥� url + ipStart : "", //ip�떆�옉二쇱냼 + ipEnd : "", //ip醫낅즺二쇱냼 companyMemo : "", // �뾽泥� 鍮꾧퀬 ispId : -1, // ISP ID ispName : "", // ISP 紐� @@ -197,14 +200,14 @@ // �봽濡쒖젥�듃媛� 蹂�寃쎈릺硫� �떞�떦�옄 珥덇린�솕 $scope.$watch("vm.form.projects", function (newValue, oldValue) { - - if (angular.isDefined(newValue)) { if (newValue.length < 1) { $scope.vm.form.users = []; } else { // �씠�뒋 �쑀�삎�뿉 �뿰寃곕맂 �궗�슜�옄 �젙�쓽 �븘�뱶 媛��졇�삤湲� $scope.fn.getIssueTypeCustomFields(); + // �꽑�깮�븳 �봽濡쒖젥�듃�뿉 �냽�빐�엳�뒗 �씠�뒋�쑀�삎留� 蹂댁뿬二쇨린 + $scope.fn.getIssueTypeOfProject(); } } }); @@ -436,7 +439,16 @@ } // �뾽醫�(��遺꾨쪟) autocomplete page �뾽�뜲�씠�듃 - function getParentSectorListCallBack(result) { + function getParentSectorListCallBack(result, value) { + if (value === "") { + $scope.vm.form.parentSectorId = ""; + if ($rootScope.isDefined($scope.vm.form.parentSectors) && $rootScope.isDefined($scope.vm.form.parentSectors[0])) { + $scope.vm.form.parentSectors[0].id = ""; + } + $scope.vm.form.childSectorId = ""; + $scope.vm.form.childSector = ""; + $scope.vm.form.childSectors = []; + } $scope.vm.autoCompletePage.parentSector.totalPage = result.data.page.totalPage; } @@ -465,110 +477,131 @@ // �뾽泥댁젙蹂� 寃곌낵 媛� Event 泥섎━(set) $scope.$on("companyFieldEvent", function (event, result) { - var ispFieldVo = result[0].ispFieldVo; - var hostingFieldVo = result[0].hostingFieldVo; + if ($rootScope.isDefined(result) && $rootScope.isDefined(result[0])) { + var ispFieldVo = result[0].ispFieldVo; + var hostingFieldVo = result[0].hostingFieldVo; - $scope.vm.companyId = result[0].id; - $scope.vm.companyName = result[0].name; - $scope.vm.companyManager = result[0].manager; - $scope.vm.companyTel = result[0].tel; - $scope.vm.companyEmail = result[0].email; - $scope.vm.companyUrl = result[0].url; - $scope.vm.companyMemo = result[0].memo; - $scope.vm.form.companyTypeId = result[0].companyTypeId; - $scope.vm.form.parentSectorId = result[0].parentSectorId; - $scope.vm.form.childSectorId = result[0].childSectorId; - $scope.vm.form.regionId = result[0].regionId; - $scope.vm.form.statusId = result[0].statusId; - $scope.vm.form.companyType = result[0].companyTypeName; - $scope.vm.form.parentSector = result[0].parentSectorName; - $scope.vm.form.childSector = result[0].childSectorName; - $scope.vm.form.region = result[0].regionName; - $scope.vm.form.status = result[0].statusName; + $scope.vm.companyId = result[0].id; + $scope.vm.companyName = result[0].name; + $scope.vm.companyManager = result[0].manager; + $scope.vm.companyTel = result[0].tel; + $scope.vm.companyEmail = result[0].email; + $scope.vm.companyUrl = result[0].url; + $scope.vm.ipStart = result[0].ipStart; + $scope.vm.ipEnd = result[0].ipEnd; + $scope.vm.companyMemo = result[0].memo; + $scope.vm.form.companyTypeId = result[0].companyTypeId; + $scope.vm.form.parentSectorId = result[0].parentSectorId; + $scope.vm.form.childSectorId = result[0].childSectorId; + $scope.vm.form.regionId = result[0].regionId; + $scope.vm.form.statusId = result[0].statusId; + $scope.vm.form.companyType = result[0].companyTypeName; + $scope.vm.form.parentSector = result[0].parentSectorName; + $scope.vm.form.childSector = result[0].childSectorName; + $scope.vm.form.region = result[0].regionName; + $scope.vm.form.status = result[0].statusName; - $scope.vm.ispId = ""; - $scope.vm.ispName = ""; - $scope.vm.ispCode = ""; - $scope.vm.ispManager = ""; - $scope.vm.ispTel = ""; - $scope.vm.ispEmail = ""; - $scope.vm.ispUrl = ""; - $scope.vm.ispMemo = ""; + $scope.vm.ispId = ""; + $scope.vm.ispName = ""; + $scope.vm.ispCode = ""; + $scope.vm.ispManager = ""; + $scope.vm.ispTel = ""; + $scope.vm.ispEmail = ""; + $scope.vm.ispUrl = ""; + $scope.vm.ispMemo = ""; - $scope.vm.hostingId = ""; - $scope.vm.hostingName = ""; - $scope.vm.hostingCode = ""; - $scope.vm.hostingManager = ""; - $scope.vm.hostingTel = ""; - $scope.vm.hostingEmail = ""; - $scope.vm.hostingUrl = ""; - $scope.vm.hostingMemo = ""; + $scope.vm.hostingId = ""; + $scope.vm.hostingName = ""; + $scope.vm.hostingCode = ""; + $scope.vm.hostingManager = ""; + $scope.vm.hostingTel = ""; + $scope.vm.hostingEmail = ""; + $scope.vm.hostingUrl = ""; + $scope.vm.hostingMemo = ""; - if (ispFieldVo != null){ - $scope.vm.ispId = ispFieldVo.id; - $scope.vm.ispName = ispFieldVo.name; - $scope.vm.ispCode = ispFieldVo.code; - $scope.vm.ispManager = ispFieldVo.manager; - $scope.vm.ispTel = ispFieldVo.tel; - $scope.vm.ispEmail = ispFieldVo.email; - $scope.vm.ispUrl = ispFieldVo.url; - $scope.vm.ispMemo = ispFieldVo.memo; - } - if (hostingFieldVo != null){ - $scope.vm.hostingId = hostingFieldVo.id; - $scope.vm.hostingName = hostingFieldVo.name; - $scope.vm.hostingCode = hostingFieldVo.code; - $scope.vm.hostingManager = hostingFieldVo.manager; - $scope.vm.hostingTel = hostingFieldVo.tel; - $scope.vm.hostingEmail = hostingFieldVo.email; - $scope.vm.hostingUrl = hostingFieldVo.url; - $scope.vm.hostingMemo = hostingFieldVo.memo; + if (ispFieldVo != null) { + $scope.vm.ispId = ispFieldVo.id; + $scope.vm.ispName = ispFieldVo.name; + $scope.vm.ispCode = ispFieldVo.code; + $scope.vm.ispManager = ispFieldVo.manager; + $scope.vm.ispTel = ispFieldVo.tel; + $scope.vm.ispEmail = ispFieldVo.email; + $scope.vm.ispUrl = ispFieldVo.url; + $scope.vm.ispMemo = ispFieldVo.memo; + } + if (hostingFieldVo != null) { + $scope.vm.hostingId = hostingFieldVo.id; + $scope.vm.hostingName = hostingFieldVo.name; + $scope.vm.hostingCode = hostingFieldVo.code; + $scope.vm.hostingManager = hostingFieldVo.manager; + $scope.vm.hostingTel = hostingFieldVo.tel; + $scope.vm.hostingEmail = hostingFieldVo.email; + $scope.vm.hostingUrl = hostingFieldVo.url; + $scope.vm.hostingMemo = hostingFieldVo.memo; + } } }); // ISP�젙蹂� 寃곌낵 媛� Event 泥섎━(set) $scope.$on("ispFieldEvent", function (event, result) { - $scope.vm.ispId = result[0].id; - $scope.vm.ispName = result[0].name; - $scope.vm.ispCode = result[0].code; - $scope.vm.ispManager = result[0].manager; - $scope.vm.ispTel = result[0].tel; - $scope.vm.ispEmail = result[0].email; - $scope.vm.ispUrl = result[0].url; - $scope.vm.ispMemo = result[0].memo; + if ($rootScope.isDefined(result) && $rootScope.isDefined(result[0])) { + $scope.vm.ispId = result[0].id; + $scope.vm.ispName = result[0].name; + $scope.vm.ispCode = result[0].code; + $scope.vm.ispManager = result[0].manager; + $scope.vm.ispTel = result[0].tel; + $scope.vm.ispEmail = result[0].email; + $scope.vm.ispUrl = result[0].url; + $scope.vm.ispMemo = result[0].memo; + } }); // �샇�뒪�똿�젙蹂� 寃곌낵 媛� Event 泥섎━(set) $scope.$on("hostingFieldEvent", function (event, result) { - $scope.vm.hostingId = result[0].id; - $scope.vm.hostingName = result[0].name; - $scope.vm.hostingCode = result[0].code; - $scope.vm.hostingManager = result[0].manager; - $scope.vm.hostingTel = result[0].tel; - $scope.vm.hostingEmail = result[0].email; - $scope.vm.hostingUrl = result[0].url; - $scope.vm.hostingMemo = result[0].memo; + if ($rootScope.isDefined(result) && $rootScope.isDefined(result[0])) { + $scope.vm.hostingId = result[0].id; + $scope.vm.hostingName = result[0].name; + $scope.vm.hostingCode = result[0].code; + $scope.vm.hostingManager = result[0].manager; + $scope.vm.hostingTel = result[0].tel; + $scope.vm.hostingEmail = result[0].email; + $scope.vm.hostingUrl = result[0].url; + $scope.vm.hostingMemo = result[0].memo; + } }); $scope.$on("companyTypeEvent", function (event, result) { - $scope.vm.form.companyTypeId = result[0].id; + if ($rootScope.isDefined(result) && $rootScope.isDefined(result[0])) { + $scope.vm.form.companyTypeId = result[0].id; + } }); $scope.$on("parentSectorEvent", function (event, result) { - if ($rootScope.isDefined(result[0])) { + if ($rootScope.isDefined(result) && $rootScope.isDefined(result[0])) { $scope.vm.form.parentSectorId = result[0].id; + } else { + $scope.vm.form.parentSectorId = ""; + if ($rootScope.isDefined($scope.vm.form.parentSectors) && $rootScope.isDefined($scope.vm.form.parentSectors[0])) { + $scope.vm.form.parentSectors[0].id = ""; + } } $scope.vm.form.childSectorId = ""; $scope.vm.form.childSector = ""; $scope.vm.form.childSectors = []; }); $scope.$on("childSectorEvent", function (event, result) { - $scope.vm.form.childSectorId = result[0].id; + if ($rootScope.isDefined(result) && $rootScope.isDefined(result[0])) { + $scope.vm.form.childSectorId = result[0].id; + } }); $scope.$on("regionEvent", function (event, result) { - $scope.vm.form.regionId = result[0].id; + if ($rootScope.isDefined(result) && $rootScope.isDefined(result[0])) { + $scope.vm.form.regionId = result[0].id; + } }); $scope.$on("statusEvent", function (event, result) { - $scope.vm.form.statusId = result[0].id; + if ($rootScope.isDefined(result) && $rootScope.isDefined(result[0])) { + $scope.vm.form.statusId = result[0].id; + } }); // �뤌 �쟾�넚 @@ -584,6 +617,8 @@ companyTel : $scope.vm.companyTel, companyEmail :$scope.vm.companyEmail, companyUrl : $scope.vm.companyUrl, + ipStart :$scope.vm.ipStart, + ipEnd :$scope.vm.ipEnd, companyMemo : $scope.vm.companyMemo, companyTypeId : (function () { var companyTypeId = -1; @@ -655,7 +690,7 @@ companyId : (function () { var companyId = -1; - if ($scope.vm.form.issueCompanyFields.length > 0) { + if ($scope.vm.form.issueCompanyFields != null && $scope.vm.form.issueCompanyFields.length > 0) { companyId = $scope.vm.form.issueCompanyFields[0].id; } return companyId; @@ -728,12 +763,15 @@ tel : $scope.vm.companyTel, email :$scope.vm.companyEmail, url :$scope.vm.companyUrl, + ipStart :$scope.vm.ipStart, + ipEnd :$scope.vm.ipEnd, memo : $scope.vm.companyMemo, companyTypeId : $scope.vm.form.companyTypeId, parentSectorId : $scope.vm.form.parentSectorId, childSectorId : $scope.vm.form.childSectorId, regionId : $scope.vm.form.regionId, - statusId : $scope.vm.form.statusId + statusId : $scope.vm.form.statusId, + statusName : $scope.vm.form.status }); } @@ -898,6 +936,39 @@ if (result.data.message.status === "success") { $scope.vm.issueTypes = result.data.data; + } + else { + SweetAlert.swal($filter("translate")("issue.failedToIssueTypeListLookup"), result.data.message.message, "error"); // �씠�뒋 ���엯 紐⑸줉 議고쉶 �떎�뙣 + } + + deferred.resolve(result.data.data); + }); + + return deferred.promise; + } + + // �꽑�깮�븳 �봽濡쒖젥�듃�뿉 �냽�빐�엳�뒗 �씠�뒋�쑀�삎留� 蹂댁뿬二쇨린 + function getIssueTypeOfProject() { + var deferred = $q.defer(); + + IssueType.find($resourceProvider.getContent({projectId : $scope.vm.form.projects[0].id}, + $resourceProvider.getPageContent(0, 1000))).then(function (result) { + + if (result.data.message.status === "success") { + $scope.vm.issueTypes = result.data.data; + + // option 鍮덇컪 諛⑹� + if ($rootScope.isDefined($scope.vm.issueTypes) && $scope.vm.issueTypes.length > 0) { + let chk = 0; + angular.forEach($scope.vm.issueTypes, function (issueType) { + if (issueType.id.toString() === $scope.vm.form.issueTypeId.toString()) { + chk ++; + } + }); + if (chk === 0) { + $scope.vm.form.issueTypeId = null; + } + } } else { SweetAlert.swal($filter("translate")("issue.failedToIssueTypeListLookup"), result.data.message.message, "error"); // �씠�뒋 ���엯 紐⑸줉 議고쉶 �떎�뙣 @@ -1102,6 +1173,9 @@ $scope.vm.projectName = $rootScope.workProject.name; $scope.vm.form.projects = []; $scope.vm.form.projects.push($rootScope.workProject); + } else { + $scope.vm.projectName = parameter.project.name; + $scope.vm.form.projects.push(parameter.project); } // �쁽�옱 �씠�뒋���엯 �쑀�삎 �꽕�젙 var id = $rootScope.getCurrentIssueTypeId(); @@ -1110,6 +1184,10 @@ } else { $scope.vm.form.issueTypeId = parameter.issueTypeId.toString(); } + // �봽濡쒖젥�듃�쓽 �씠�뒋�쑀�삎 set + $scope.fn.getIssueTypeOfProject(); + // �씠�뒋�쑀�삎, �봽濡쒖젥�듃 set �븳 �썑�뿉 �궗�슜�옄�젙�쓽�븘�뱶 set + $scope.fn.getIssueTypeCustomFields(); $log.debug("promises 寃곌낵 ", results); }); } -- Gitblit v1.8.0