From 7e50b125b9e1a62d6c2273c2deabe6d4c29478d2 Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 수, 23 2월 2022 18:03:30 +0900 Subject: [PATCH] - 이슈 임포트 화면 전체 프로젝트 아닐경우 현재 프로젝트 및 현재 이슈로 세팅 --- src/main/webapp/scripts/app/issue/issueImportExcel.controller.js | 157 ++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 134 insertions(+), 23 deletions(-) diff --git a/src/main/webapp/scripts/app/issue/issueImportExcel.controller.js b/src/main/webapp/scripts/app/issue/issueImportExcel.controller.js index b4983b4..58b15f2 100644 --- a/src/main/webapp/scripts/app/issue/issueImportExcel.controller.js +++ b/src/main/webapp/scripts/app/issue/issueImportExcel.controller.js @@ -18,7 +18,8 @@ getIssueTypes : getIssueTypes, // �씠�뒋 ���엯 紐⑸줉 媛��졇�삤湲� makeSearchConditions : makeSearchConditions, // �꽑�깮�븳 議곌굔�쓣 json �쑝濡� 留뚮뱺�떎. onFileSelect : onFileSelect, // �뙆�씪 �뾽濡쒕뱶 - getIssueListCallBack : getIssueListCallBack // �씠�뒋 autocomplete page �뾽�뜲�씠�듃 + getIssueListCallBack : getIssueListCallBack, // �씠�뒋 autocomplete page �뾽�뜲�씠�듃 + startExecute : startExecute, // 而⑦듃濡� 濡쒕뵫�떆 泥섏쓬�쑝濡� �떆�옉�릺�뒗 �븿�닔 }; $scope.vm = { @@ -31,6 +32,10 @@ }, projectName : "", autoCompletePage : { + issue : { + page : 0, + totalPage : 0 + }, project : { page : 0, totalPage : 0 @@ -46,13 +51,41 @@ $scope.vm.autoCompletePage.issue.totalPage = result.data.page.totalPage; } + $scope.$on("projectListEvent", function (event, result) { + $scope.vm.form.projects = result; + $scope.vm.form.issues = ""; + $scope.fn.getIssueTypes(); + }); + // �씠�뒋 �쑀�삎 紐⑸줉 function getIssueTypes() { - IssueType.find($resourceProvider.getContent({}, + if (!$rootScope.isDefined($scope.vm.form.projects[0])) { + return; + } + 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; + + // �쁽�옱 �씠�뒋���엯 �쑀�삎 �꽕�젙 + let currentIssueTypeId = $rootScope.getCurrentIssueTypeId(); + if (currentIssueTypeId != null) { + $scope.vm.form.issueTypeId = currentIssueTypeId.toString(); + } + + // 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.error($filter("translate")("issue.failedToIssueTypeListLookup"), result.data.message.message); // "�씠�뒋 ���엯 紐⑸줉 議고쉶 �떎�뙣" @@ -94,9 +127,9 @@ return false; } - if ($scope.vm.form.issues == null || $scope.vm.form.issues.length === 0) { + /*if ($scope.vm.form.issues == null || $scope.vm.form.issues.length === 0) { return false; - } + }*/ if ($scope.vm.form.file.length < 1) { return true; @@ -109,34 +142,102 @@ function formSubmit() { $rootScope.spinner = true; - Issue.importExcel({ - method : "POST", - file : $scope.vm.form.file, - // data �냽�꽦�쑝濡� 蹂꾨룄�쓽 �뜲�씠�꽣 �쟾�넚 - fields : { - content : { - projectId : $scope.vm.form.projects[0].id, - issueTypeId : $scope.vm.form.issueTypeId, - parentIssueId : $scope.vm.form.issues[0].id - } - }, - fileFormDataName : "file" - }) - .then(function (result) { - if (result.data.message.status === "success") { + let inheritYn = false; + // �븯�쐞�씠�뒋 �벑濡� & �뙆�듃�꼫 �젙蹂� �긽�냽 �씪 寃쎌슦 �븣由� 李� + if ($rootScope.isDefined($scope.vm.form.issues) && $rootScope.isDefined($scope.vm.form.issues[0]) + && $scope.vm.form.issues[0].inheritPartners != null && $scope.vm.form.issues[0].inheritPartners === true) { + SweetAlert.swal({ + title : $filter("translate")("issue.addDownIssue"), // �븯�쐞 �씠�뒋 異붽� + text : $filter("translate")("issue.wantToInheritPartnersOfParentIssue"), // �긽�쐞�씠�뒋�쓽 �뙆�듃�꼫 �젙蹂�(�뾽泥�/ISP/�샇�뒪�똿)瑜� �쟻�슜�떆�궎寃좎뒿�땲源�? + type : "warning", + showCancelButton : true, + confirmButtonColor : "#DD6B55", + confirmButtonText : $filter("translate")("common.ok"), // �꽕 + cancelButtonText : $filter("translate")("common.no"), // �븘�땲�삤 + closeOnConfirm : false, + closeOnCancel : false + }, + function (isConfirm) { + if (isConfirm) { + inheritYn = true; + } + SweetAlert.close(); + + Issue.importExcel({ + method : "POST", + file : $scope.vm.form.file, + // data �냽�꽦�쑝濡� 蹂꾨룄�쓽 �뜲�씠�꽣 �쟾�넚 + fields : { + content : { + projectId : $scope.vm.form.projects[0].id, + issueTypeId : $scope.vm.form.issueTypeId, + parentIssueId : (function () { + let id = -1; + if ($rootScope.isDefined($scope.vm.form.issues)) { + if ($rootScope.isDefined($scope.vm.form.issues[0])) { + id = $scope.vm.form.issues[0].id; + } + } + return id; + })(), + inheritYn : inheritYn + } + }, + fileFormDataName : "file", + }).then(function (result) { + if (result.data.message.status === "success") { + $timeout(function () { + SweetAlert.success($filter("translate")("issue.succeededIssueRegistration"), result.data.message.message); // �씠�뒋 �벑濡� �꽦怨� + $scope.fn.cancel(); + $rootScope.$broadcast("getIssueList"); + $rootScope.spinner = false; + }, 1000); + } + else { + SweetAlert.error($filter("translate")("issue.failedIssueRegistration"), result.data.message.message); // �씠�뒋 �벑濡� �떎�뙣 + $rootScope.spinner = false; + } + }); + }); + } else { + Issue.importExcel({ + method : "POST", + file : $scope.vm.form.file, + // data �냽�꽦�쑝濡� 蹂꾨룄�쓽 �뜲�씠�꽣 �쟾�넚 + fields : { + content : { + projectId : $scope.vm.form.projects[0].id, + issueTypeId : $scope.vm.form.issueTypeId, + parentIssueId : (function () { + let id = -1; + if ($rootScope.isDefined($scope.vm.form.issues)) { + if ($rootScope.isDefined($scope.vm.form.issues[0])) { + id = $scope.vm.form.issues[0].id; + } + } + return id; + })(), + inheritYn : inheritYn + } + }, + fileFormDataName : "file", + }).then(function (result) { + if (result.data.message.status === "success") { $timeout(function () { SweetAlert.success($filter("translate")("issue.succeededIssueRegistration"), result.data.message.message); // �씠�뒋 �벑濡� �꽦怨� $scope.fn.cancel(); $rootScope.$broadcast("getIssueList"); + $rootScope.spinner = false; }, 1000); } else { SweetAlert.error($filter("translate")("issue.failedIssueRegistration"), result.data.message.message); // �씠�뒋 �벑濡� �떎�뙣 + $rootScope.spinner = false; } - - $rootScope.spinner = false; }); + } + } function cancel() { @@ -144,7 +245,17 @@ $uibModalInstance.dismiss('cancel'); } - // �씠�뒋 �쑀�삎 議고쉶 - $scope.fn.getIssueTypes(); + // 理쒖큹 �떎�뻾 + function startExecute() { + // �쁽�옱 �봽濡쒖젥�듃 �꽕�젙 + if ($rootScope.workProject != null && $rootScope.workProject.id > -1) { + $scope.vm.projectName = $rootScope.workProject.name; + $scope.vm.form.projects = []; + $scope.vm.form.projects.push($rootScope.workProject); + } + $scope.fn.getIssueTypes(); + } + + $scope.fn.startExecute(); }]); }); -- Gitblit v1.8.0