From a90f191fed9d75235947711d452e2fc174e26a92 Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 금, 18 2월 2022 13:05:35 +0900 Subject: [PATCH] 이슈 엑셀 임포트 시 코드 수정 --- src/main/webapp/scripts/app/issue/issueImportExcel.controller.js | 129 ++++++++++++++++++++++++++++++++++++++----- 1 files changed, 114 insertions(+), 15 deletions(-) diff --git a/src/main/webapp/scripts/app/issue/issueImportExcel.controller.js b/src/main/webapp/scripts/app/issue/issueImportExcel.controller.js index 633ebb8..7d15419 100644 --- a/src/main/webapp/scripts/app/issue/issueImportExcel.controller.js +++ b/src/main/webapp/scripts/app/issue/issueImportExcel.controller.js @@ -17,7 +17,8 @@ formCheck : formCheck, // �뤌 泥댄겕 getIssueTypes : getIssueTypes, // �씠�뒋 ���엯 紐⑸줉 媛��졇�삤湲� makeSearchConditions : makeSearchConditions, // �꽑�깮�븳 議곌굔�쓣 json �쑝濡� 留뚮뱺�떎. - onFileSelect : onFileSelect // �뙆�씪 �뾽濡쒕뱶 + onFileSelect : onFileSelect, // �뙆�씪 �뾽濡쒕뱶 + getIssueListCallBack : getIssueListCallBack // �씠�뒋 autocomplete page �뾽�뜲�씠�듃 }; $scope.vm = { @@ -30,6 +31,10 @@ }, projectName : "", autoCompletePage : { + issue : { + page : 0, + totalPage : 0 + }, project : { page : 0, totalPage : 0 @@ -40,9 +45,23 @@ angular.extend(this, $controller('autoCompleteController', {$scope : $scope, $injector : $injector})); + // �씠�뒋 autocomplete page �뾽�뜲�씠�듃 + function getIssueListCallBack(result) { + $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") { @@ -84,6 +103,14 @@ // �뤌 泥댄겕 function formCheck() { + if ($scope.vm.form.projects == null || $scope.vm.form.projects.length === 0) { + return false; + } + + /*if ($scope.vm.form.issues == null || $scope.vm.form.issues.length === 0) { + return false; + }*/ + if ($scope.vm.form.file.length < 1) { return true; } @@ -95,30 +122,102 @@ function formSubmit() { $rootScope.spinner = true; - Issue.importExcel({ - method : "POST", - file : $scope.vm.form.file, - // data �냽�꽦�쑝濡� 蹂꾨룄�쓽 �뜲�씠�꽣 �쟾�넚 - fields : { - content : {} - }, - 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() { -- Gitblit v1.8.0