From d438f9c81cffd2e2cbec48150b43a5a89c9ab749 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 수, 16 2월 2022 15:56:56 +0900
Subject: [PATCH] - 하위이슈 직접 생성 시 프로젝트 변경 못하도록 수정 - 연관이슈 직접 생성 시 프로젝트 변경 할 경우 이슈타입도 변경 되도록 수정

---
 src/main/webapp/views/issue/issueAddDown.html                    |   14 ++++++-
 src/main/webapp/scripts/app/issue/issueAddRelation.controller.js |   30 +++++++++++++++
 src/main/webapp/scripts/app/issue/issueList.controller.js        |   10 +++--
 src/main/webapp/views/issue/issueAddRelation.html                |    2 +
 src/main/webapp/scripts/app/issue/issueAddDown.controller.js     |    5 ++
 src/main/webapp/views/issue/issueDetail.html                     |    4 +-
 6 files changed, 57 insertions(+), 8 deletions(-)

diff --git a/src/main/webapp/scripts/app/issue/issueAddDown.controller.js b/src/main/webapp/scripts/app/issue/issueAddDown.controller.js
index 1557c57..251cba8 100644
--- a/src/main/webapp/scripts/app/issue/issueAddDown.controller.js
+++ b/src/main/webapp/scripts/app/issue/issueAddDown.controller.js
@@ -1117,6 +1117,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();
@@ -1125,6 +1128,8 @@
                         } else {
                             $scope.vm.form.issueTypeId = parameter.issueTypeId.toString();
                         }
+                        // �씠�뒋�쑀�삎, �봽濡쒖젥�듃 set �븳 �썑�뿉 �궗�슜�옄�젙�쓽�븘�뱶 set
+                        $scope.fn.getIssueTypeCustomFields();
                         $log.debug("promises 寃곌낵 ", results);
                     });
                 }
diff --git a/src/main/webapp/scripts/app/issue/issueAddRelation.controller.js b/src/main/webapp/scripts/app/issue/issueAddRelation.controller.js
index 94dee8e..2b41351 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 = {
@@ -203,6 +204,8 @@
                         } else {
                             //  �씠�뒋 �쑀�삎�뿉 �뿰寃곕맂 �궗�슜�옄 �젙�쓽 �븘�뱶 媛��졇�삤湲�
                             $scope.fn.getIssueTypeCustomFields();
+                            //  �꽑�깮�븳 �봽濡쒖젥�듃�뿉 �냽�빐�엳�뒗 �씠�뒋�쑀�삎留� 蹂댁뿬二쇨린
+                            $scope.fn.getIssueTypeOfProject();
                         }
                     }
                 });
@@ -936,6 +939,26 @@
                     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;
+                        }
+                        else {
+                            SweetAlert.swal($filter("translate")("issue.failedToIssueTypeListLookup"), result.data.message.message, "error"); // �씠�뒋 ���엯 紐⑸줉 議고쉶 �떎�뙣
+                        }
+
+                        deferred.resolve(result.data.data);
+                    });
+
+                    return deferred.promise;
+                }
+
                 //  �슦�꽑�닚�쐞 紐⑸줉
                 function getPriorities() {
                     var deferred = $q.defer();
@@ -1129,6 +1152,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();
@@ -1137,6 +1163,10 @@
                         } else {
                             $scope.vm.form.issueTypeId = parameter.issueTypeId.toString();
                         }
+                        //  �봽濡쒖젥�듃�쓽 �씠�뒋�쑀�삎 set
+                        $scope.fn.getIssueTypeOfProject();
+                        // �씠�뒋�쑀�삎, �봽濡쒖젥�듃 set �븳 �썑�뿉 �궗�슜�옄�젙�쓽�븘�뱶 set
+                        $scope.fn.getIssueTypeCustomFields();
                         $log.debug("promises 寃곌낵 ", results);
                     });
                 }
diff --git a/src/main/webapp/scripts/app/issue/issueList.controller.js b/src/main/webapp/scripts/app/issue/issueList.controller.js
index 53ddc18..c07ba31 100644
--- a/src/main/webapp/scripts/app/issue/issueList.controller.js
+++ b/src/main/webapp/scripts/app/issue/issueList.controller.js
@@ -338,7 +338,7 @@
                         case "ISSUE_TITLE" :   //  �씠�뒋 �젣紐�
                             $scope.vm.tableConfigs.push($tableProvider.config()
                                 .setHName("issue.issueTitle")
-                                .setDName("issueTitle")
+                                .setDName("title")
                                 .setDType("renderer")
                                 .setHWidth("bold " + issueTableConfig.width)
                                 .setDAlign("text-center")
@@ -454,7 +454,7 @@
                                 $scope.vm.tableConfigs.push($tableProvider.config()
                                     .setHName(customField.name)
                                     .setDType("renderer")
-                                    .setDName("useValue" + [count]) /* todo 泥댄겕*/
+                                    .setDName("useValue" + count.toString()) /* todo 泥댄겕*/
                                     .setHWidth("bold " + issueTableConfig.width)
                                     .setDAlign("text-center")
                                     .setColumnHint(customField)
@@ -865,7 +865,7 @@
                     });
                 }
 
-                function addRelationIssueForm(id, issueTypeId) {
+                function addRelationIssueForm(id, project, issueTypeId) {
                     $uibModal.open({
                         templateUrl : 'views/issue/issueAddRelation.html',
                         size : "lg",
@@ -875,6 +875,7 @@
                             parameter : function () {
                                 return {
                                     id : id,
+                                    project : project,
                                     issueTypeId : issueTypeId
                                 };
                             }
@@ -882,7 +883,7 @@
                     });
                 }
 
-                function addDownIssueForm(id, issueTypeId) {
+                function addDownIssueForm(id, project, issueTypeId) {
                     $uibModal.open({
                         templateUrl : 'views/issue/issueAddDown.html',
                         size : "lg",
@@ -892,6 +893,7 @@
                             parameter : function () {
                                 return {
                                     id : id,
+                                    project : project,
                                     issueTypeId : issueTypeId
                                 };
                             }
diff --git a/src/main/webapp/views/issue/issueAddDown.html b/src/main/webapp/views/issue/issueAddDown.html
index b54842c..858ec63 100644
--- a/src/main/webapp/views/issue/issueAddDown.html
+++ b/src/main/webapp/views/issue/issueAddDown.html
@@ -34,7 +34,7 @@
                     <div class="form-group mb10">
                         <label class="issue-label"> <span translate="common.project">�봽濡쒖젥�듃</span> <code
                                 class="highlighter-rouge">*</code></label>
-                        <js-autocomplete-single data-input-name="project"
+                        <!--<js-autocomplete-single data-input-name="project"
                                                 selected-model="vm.form.projects"
                                                 search="vm.projectName"
                                                 source="fn.getProjectList(vm.projectName, vm.form.projects, vm.autoCompletePage.project.page, fn.getProjectListCallBack)"
@@ -42,7 +42,17 @@
                                                 total-page="vm.autoCompletePage.project.totalPage"
                                                 translation-texts="{ empty : 'common.emptyProject' }"
                                                 extra-settings="{ displayProp : 'name' , idProp : 'id', imageable : false, imagePathProp : '',
-                                                type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"></js-autocomplete-single>
+                                                type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"
+                                                >
+                        </js-autocomplete-single>-->
+                        <select id="issueAddDownForm6"
+                                name="issueType"
+                                class="form-control input-sm issue-select-label"
+                                ng-model="vm.projectName"
+                                required
+                                disabled>
+                            <option>{{vm.projectName}}</option>
+                        </select>
                     </div>
                 </div>
 
diff --git a/src/main/webapp/views/issue/issueAddRelation.html b/src/main/webapp/views/issue/issueAddRelation.html
index 87dd46a..dd3cfbd 100644
--- a/src/main/webapp/views/issue/issueAddRelation.html
+++ b/src/main/webapp/views/issue/issueAddRelation.html
@@ -48,6 +48,8 @@
                                 class="highlighter-rouge">*</code></label>
                         <js-autocomplete-single data-input-name="project"
                                                 selected-model="vm.form.projects"
+                                                ng-model="vm.form.projects"
+                                                ng-change="fn.getIssueTypeOfProject()"
                                                 search="vm.projectName"
                                                 source="fn.getProjectList(vm.projectName, vm.form.projects, vm.autoCompletePage.project.page, fn.getProjectListCallBack)"
                                                 page="vm.autoCompletePage.project.page"
diff --git a/src/main/webapp/views/issue/issueDetail.html b/src/main/webapp/views/issue/issueDetail.html
index 2468131..6ccfedc 100644
--- a/src/main/webapp/views/issue/issueDetail.html
+++ b/src/main/webapp/views/issue/issueDetail.html
@@ -629,7 +629,7 @@
                                     ng-click="fn.addRelationIssue()"
                                     translate="issue.addRelationIssue">�뿰愿� �씠�뒋 異붽�</button>
                             <button type="button" class="btn btn-sm btn-primary btn-roundRel  offset-1"
-                                    ng-click="fn.addRelationIssueForm(vm.viewer.id, vm.viewer.issueTypeVo.id)">
+                                    ng-click="fn.addRelationIssueForm(vm.viewer.id, vm.viewer.projectVo, vm.viewer.issueTypeVo.id)">
                                 <i class="os-icon os-icon-plus"><span></span></i>
                             </button>
                         </div>
@@ -719,7 +719,7 @@
                                     ng-click="fn.addDownIssue()"
                                     translate="issue.addDownIssue">異붽�</button>
                             <button type="button" class="btn btn-sm btn-primary btn-roundRel  offset-1"
-                                    ng-click="fn.addDownIssueForm(vm.viewer.id, vm.viewer.issueTypeVo.id)">
+                                    ng-click="fn.addDownIssueForm(vm.viewer.id, vm.viewer.projectVo, vm.viewer.issueTypeVo.id)">
                                 <i class="os-icon os-icon-plus"><span></span></i>
                             </button>
                         </div>

--
Gitblit v1.8.0