From 8e62d47c7210854b570db5e9164a6a9da6351c12 Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 수, 09 2월 2022 17:59:06 +0900 Subject: [PATCH] - 이슈 추가,수정 시 파트너 정보 null 체크 추가 --- src/main/webapp/scripts/app/issue/issueModify.controller.js | 327 +++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 270 insertions(+), 57 deletions(-) diff --git a/src/main/webapp/scripts/app/issue/issueModify.controller.js b/src/main/webapp/scripts/app/issue/issueModify.controller.js index 65cf2c2..6d89d2b 100644 --- a/src/main/webapp/scripts/app/issue/issueModify.controller.js +++ b/src/main/webapp/scripts/app/issue/issueModify.controller.js @@ -39,7 +39,12 @@ setIssueTypeTemplate : setIssueTypeTemplate, // �씠�뒋 �쑀�삎 �뀥�뵆由� �쟻�슜�븯湲� startExecute : startExecute, // 理쒖큹 �떎�뻾 containsPartner : containsPartner, - getPartners : getPartners + getPartners : getPartners, + getCompanyTypeListCallBack : getCompanyTypeListCallBack, + getParentSectorListCallBack : getParentSectorListCallBack, + getChildSectorListCallBack : getChildSectorListCallBack, + getRegionListCallBack : getRegionListCallBack, + getStatusListCallBack : getStatusListCallBack, }; $scope.vm = { @@ -55,7 +60,7 @@ issueCompanyFields : [], // �뾽泥댁젙蹂� issueIspFields : [], // ISP �젙蹂� issueHostingFields : [], // �샇�뒪�똿�젙蹂� - issueTypeId : "", // �씠�뒋 �쑀�삎 �븘�씠�뵒 + issueTypeId : parameter.issueTypeId, // �씠�뒋 �쑀�삎 �븘�씠�뵒 priorityId : "", // �슦�꽑�닚�쐞 �븘�씠�뵒 severityId : "", // 以묒슂�룄 �븘�씠�뵒 issueStatusId : "", // �씠�뒋 �긽�깭 �븘�씠�뵒 @@ -66,6 +71,23 @@ startCompleteDateRange : "", // �떆�옉�씪 ~ 醫낅즺�씪 issueCustomFields : [], // �씠�뒋�뿉�꽌 �궗�슜�릺�뒗 �궗�슜�옄 �젙�쓽 �븘�뱶 removeFiles : [], // �궘�젣�븳 �뙆�씪 �젙蹂� + companyTypeId : "", + companyType : "", //湲곗뾽援щ텇 + parentSectorId : "", + parentSector : "", //�뾽醫�(��遺꾨쪟) + childSectorId : "", + childSector : "", //�뾽醫�(以묐텇瑜�) + regionId : "", + region : "", //吏��뿭 + statusId : "", + status : "", //�긽�깭 + }, + typeCategory : { + companyType : "COMPANYTYPE", + parentSector : "PARENTSECTOR", + childSector : "CHILDSECTOR", + region : "REGION", + status : "STATUS" }, projectName : "", // �봽濡쒖젥�듃 紐� 寃��깋 userName : "", // �궗�슜�옄 寃��깋 @@ -115,6 +137,26 @@ totalPage : 0 }, hostingField : { + page : 0, + totalPage : 0 + }, + companyType : { + page : 0, + totalPage : 0 + }, + parentSector : { + page : 0, + totalPage : 0 + }, + childSector : { + page : 0, + totalPage : 0 + }, + region : { + page : 0, + totalPage : 0 + }, + status : { page : 0, totalPage : 0 } @@ -356,6 +398,30 @@ $scope.vm.autoCompletePage.hostingField.totalPage = result.data.page.totalPage; } + // �뾽泥� 移댄뀒怨좊━ autocomplete page �뾽�뜲�씠�듃 + function getCompanyTypeListCallBack(result) { + $scope.vm.autoCompletePage.companyType.totalPage = result.data.page.totalPage; + } + + // �뾽泥� 移댄뀒怨좊━ autocomplete page �뾽�뜲�씠�듃 + function getParentSectorListCallBack(result) { + $scope.vm.autoCompletePage.parentSector.totalPage = result.data.page.totalPage; + } + + // �뾽泥� 移댄뀒怨좊━ autocomplete page �뾽�뜲�씠�듃 + function getChildSectorListCallBack(result) { + $scope.vm.autoCompletePage.childSector.totalPage = result.data.page.totalPage; + } + + // �뾽泥� 移댄뀒怨좊━ autocomplete page �뾽�뜲�씠�듃 + function getRegionListCallBack(result) { + $scope.vm.autoCompletePage.region.totalPage = result.data.page.totalPage; + } + + // �뾽泥� 移댄뀒怨좊━ autocomplete page �뾽�뜲�씠�듃 + function getStatusListCallBack(result) { + $scope.vm.autoCompletePage.status.totalPage = result.data.page.totalPage; + } function formCheck(formInvalid) { if (formInvalid) { @@ -369,61 +435,128 @@ return false; } + $scope.$on("companyTypeEvent", function (event, result) { + 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) && $rootScope.isDefined(result[0])) { + $scope.vm.form.parentSectorId = result[0].id; + } + $scope.vm.form.childSectorId = ""; + $scope.vm.form.childSector = ""; + $scope.vm.form.childSectors = []; + }); + $scope.$on("childSectorEvent", function (event, result) { + if ($rootScope.isDefined(result) && $rootScope.isDefined(result[0])) { + $scope.vm.form.childSectorId = result[0].id; + } + }); + $scope.$on("regionEvent", function (event, result) { + if ($rootScope.isDefined(result) && $rootScope.isDefined(result[0])) { + $scope.vm.form.regionId = result[0].id; + } + }); + $scope.$on("statusEvent", function (event, result) { + if ($rootScope.isDefined(result) && $rootScope.isDefined(result[0])) { + $scope.vm.form.statusId = result[0].id; + } + }); + // �뾽泥댁젙蹂� 寃곌낵 媛� 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.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.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; + $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 = 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; + $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.form.issueIspFields[0] = angular.copy(ispFieldVo); + $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.form.issueHostingFields[0] = angular.copy(hostingFieldVo); + $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; + } }); function formSubmit() { @@ -439,6 +572,54 @@ companyEmail :$scope.vm.companyEmail, companyUrl : $scope.vm.companyUrl, companyMemo : $scope.vm.companyMemo, + + companyTypeId : (function () { + var companyTypeId = null; + if ($scope.vm.form.companyTypes != null && $scope.vm.form.companyTypes.length > 0) { + companyTypeId = $scope.vm.form.companyTypes[0].id; + } else { + companyTypeId = $scope.vm.form.companyTypeId; + } + return companyTypeId; + })(), + parentSectorId : (function () { + var parentSectorId = null; + if ($scope.vm.form.parentSectors != null && $scope.vm.form.parentSectors.length > 0) { + parentSectorId = $scope.vm.form.parentSectors[0].id; + } else { + parentSectorId = $scope.vm.form.parentSectorId; + } + return parentSectorId; + })(), + childSectorId : (function () { + var childSectorId = null; + if ($scope.vm.form.childSectors != null && $scope.vm.form.childSectors.length > 0) { + childSectorId = $scope.vm.form.childSectors[0].id; + } else { + childSectorId = $scope.vm.form.childSectorId; + } + return childSectorId; + })(), + regionId : (function () { + var regionId = null; + if ($scope.vm.form.regions != null && $scope.vm.form.regions.length > 0) { + regionId = $scope.vm.form.regions[0].id; + } else { + regionId = $scope.vm.form.regionId; + } + return regionId; + })(), + statusId : (function () { + var statusId = null; + if ($scope.vm.form.statuses != null && $scope.vm.form.statuses.length > 0) { + statusId = $scope.vm.form.statuses[0].id; + } else { + statusId = $scope.vm.form.statusId; + } + return statusId; + })(), + statusName : $scope.vm.form.status, + ispName : $scope.vm.ispName, ispCode : $scope.vm.ispCode, ispManager : $scope.vm.ispManager, @@ -470,9 +651,9 @@ issueStatusId : $scope.vm.form.issueStatusId, // �씠�뒋 �긽�깭 �븘�씠�뵒 companyId : (function () { - var companyId = -1; + var companyId = null; - 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; } @@ -480,9 +661,9 @@ }), ispId : (function () { - var ispId = -1; + var ispId = null; - if ($scope.vm.form.issueIspFields.length > 0) { + if ($scope.vm.form.issueIspFields != null && $scope.vm.form.issueIspFields.length > 0) { ispId = $scope.vm.form.issueIspFields[0].id; } @@ -490,7 +671,7 @@ }), hostingId : (function () { - var hostingId = -1; + var hostingId = null; if ($scope.vm.form.issueHostingFields != null && $scope.vm.form.issueHostingFields.length > 0) { hostingId = $scope.vm.form.issueHostingFields[0].id; @@ -533,7 +714,12 @@ issueCompanyFields : (function () { var issueCompanyFields = []; if ($scope.vm.form.issueCompanyFields != null && $scope.vm.form.issueCompanyFields.length > 0 ){ + var companyField = $scope.vm.form.issueCompanyFields[0]; + //�궗�슜�옄媛� 吏곸젒 �뾽泥� 異붽� �븷 寃쎌슦 + if ($rootScope.isDefined(companyField) && companyField.name !== $scope.vm.companyName) { + return issueCompanyFields; + } issueCompanyFields.push({ id : companyField.id, @@ -543,7 +729,12 @@ tel : $scope.vm.companyTel, email :$scope.vm.companyEmail, url :$scope.vm.companyUrl, - memo : $scope.vm.companyMemo + 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 }); } @@ -552,11 +743,17 @@ issueIspFields : (function () { var issueIspFields = []; - if ($scope.vm.form.issueIspFields != null && $scope.vm.form.issueIspFields.length > 0 ){ + if ($scope.vm.form.issueCompanyFields != null && $scope.vm.form.issueCompanyFields.length > 0 + && $scope.vm.form.issueCompanyFields[0].ispFieldVo != null + || $scope.vm.form.issueIspFields != null && $scope.vm.form.issueIspFields.length > 0 ){ + var ispField = $scope.vm.form.issueIspFields[0]; + //�궗�슜�옄媛� 吏곸젒 ISP 異붽� �븷 寃쎌슦 + if ($rootScope.isDefined(ispField) && ispField.name !== $scope.vm.ispName) { + return issueIspFields; + } issueIspFields.push({ - id : ispField.id, ispId : $scope.vm.ispId, code : $scope.vm.ispCode, name : $scope.vm.ispName, @@ -574,12 +771,17 @@ issueHostingFields : (function () { var issueHostingFields = []; - if ($scope.vm.form.issueHostingFields != null && $scope.vm.form.issueHostingFields.length > 0 ){ + if ($scope.vm.form.issueCompanyFields != null && $scope.vm.form.issueCompanyFields.length > 0 + && $scope.vm.form.issueCompanyFields[0].hostingFieldVo != null + || $scope.vm.form.issueHostingFields != null && $scope.vm.form.issueHostingFields.length > 0 ){ var hostingField = $scope.vm.form.issueHostingFields[0]; + //�궗�슜�옄媛� 吏곸젒 �샇�뒪�똿 異붽� �븷 寃쎌슦 + if ($rootScope.isDefined(hostingField) && hostingField.name !== $scope.vm.hostingName) { + return issueHostingFields; + } issueHostingFields.push({ - id : hostingField.id, hostingId : $scope.vm.hostingId, name : $scope.vm.hostingName, code : $scope.vm.hostingCode, @@ -826,8 +1028,8 @@ // �씠�뒋 �긽�꽭 �젙蹂� function detail() { + $rootScope.spinner = true; var deferred = $q.defer(); - Issue.detail($resourceProvider.getContent( $scope.vm.search, $resourceProvider.getPageContent(0, 1))).then(function (result) { @@ -859,6 +1061,16 @@ $scope.vm.companyEmail = issueCompanyFieldValue.email; $scope.vm.companyUrl = issueCompanyFieldValue.url; $scope.vm.companyMemo = issueCompanyFieldValue.memo; + $scope.vm.form.companyTypeId = issueCompanyFieldValue.companyTypeId; + $scope.vm.form.companyType = issueCompanyFieldValue.companyTypeName; + $scope.vm.form.parentSectorId = issueCompanyFieldValue.parentSectorId; + $scope.vm.form.parentSector = issueCompanyFieldValue.parentSectorName; + $scope.vm.form.childSectorId = issueCompanyFieldValue.childSectorId; + $scope.vm.form.childSector = issueCompanyFieldValue.childSectorName; + $scope.vm.form.regionId = issueCompanyFieldValue.regionId; + $scope.vm.form.region = issueCompanyFieldValue.regionName; + $scope.vm.form.statusId = issueCompanyFieldValue.statusId; + $scope.vm.form.status = issueCompanyFieldValue.statusName; } if (result.data.data.issueIspVos != null && result.data.data.issueIspVos.length > 0) { $scope.vm.form.issueIspFields = result.data.data.issueIspVos; @@ -902,10 +1114,9 @@ else { SweetAlert.error($filter("translate")("issue.failedToProjectDetails"), result.data.message.message); // �봽濡쒖젥�듃 �긽�꽭 �젙蹂� 議고쉶 �떎�뙣 } - + $rootScope.spinner = false; deferred.resolve(result.data.data); }); - return deferred.promise; } @@ -951,7 +1162,9 @@ function getPartners() { if($scope.vm.form.issueTypeId === ""){ - $scope.vm.form.issueTypeId = $rootScope.issueTypeMenu.id + if ($rootScope.issueTypeMenu != null) { + $scope.vm.form.issueTypeId = $rootScope.issueTypeMenu.id + } } var content = { issueTypeId : $scope.vm.form.issueTypeId, -- Gitblit v1.8.0