From f557cd3c7c1d981e23ed6b8220c8d8c4906a7e27 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 화, 07 12월 2021 19:30:47 +0900
Subject: [PATCH] - 사용자 필드 기능 수정 - 이슈 추가/수정시 워크플로우에 설정된 담당부서로 변경되도록 수정 * DB 초기화 필요

---
 src/main/webapp/scripts/app/issue/issueAdd.controller.js |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 51 insertions(+), 8 deletions(-)

diff --git a/src/main/webapp/scripts/app/issue/issueAdd.controller.js b/src/main/webapp/scripts/app/issue/issueAdd.controller.js
index 7ec3cdf..151503e 100644
--- a/src/main/webapp/scripts/app/issue/issueAdd.controller.js
+++ b/src/main/webapp/scripts/app/issue/issueAdd.controller.js
@@ -58,7 +58,8 @@
                         attachedFiles : [], //  �꽟癒몃끂�듃濡� �뙆�씪 �뾽濡쒕뱶瑜� �븷 寃쎌슦 �꽌踰꾩뿉�꽌 pk瑜� �뵲怨� issue id�� �뿰�룞 �옉�뾽�씠 �븘�슂�븯�떎.
                         startCompleteDateRange : "", //  �떆�옉�씪 ~ 醫낅즺�씪
                         detectingDateRange : "", //  �깘吏��씪
-                        issueCustomFields : []  //  �씠�뒋�뿉�꽌 �궗�슜�릺�뒗 �궗�슜�옄 �젙�쓽 �븘�뱶
+                        issueCustomFields : [],  //  �씠�뒋�뿉�꽌 �궗�슜�릺�뒗 �궗�슜�옄 �젙�쓽 �븘�뱶
+                        requiredDatas : []  // �궗�슜�옄 �젙�쓽 �븘�뱶 �븘�닔 �뜲�씠�꽣 泥댄겕
                     },
                     infiniteAdd : false,    //  �뿰�냽 �깮�꽦
                     projectName : "",   //  �봽濡쒖젥�듃 紐� 寃��깋
@@ -120,6 +121,18 @@
                     fileTableConfigs : [],   //  �뙆�씪 �뾽濡쒕뱶 �젙蹂� �뀒�씠釉�
                 };
 
+                // �뿰愿� �씪媛� 愿��젴
+                $scope.vm.relationIssueTypes =
+                    [
+                        { id: 0, name: $filter("translate")("issue.relationIssueType1") },
+                        { id: 1, name: $filter("translate")("issue.relationIssueType2") },
+                        { id: 2, name: $filter("translate")("issue.relationIssueType3") },
+                        { id: 3, name: $filter("translate")("issue.relationIssueType4") },
+                        { id: 4, name: $filter("translate")("issue.relationIssueType5") },
+                        { id: 5, name: $filter("translate")("issue.relationIssueType6") }
+                    ];
+                $scope.vm.relationIssueType = $scope.vm.relationIssueTypes[0];
+
                 angular.extend(this, $controller('autoCompleteController', {$scope : $scope, $injector : $injector}));
 
                 function getStartProjectListCallback(result){
@@ -132,13 +145,15 @@
 
                 //  �봽濡쒖젥�듃媛� 蹂�寃쎈릺硫� �떞�떦�옄 珥덇린�솕
                 $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.getIssueTypeCustomFields();
                     }
                 });
 
@@ -544,6 +559,30 @@
                         startCompleteDateRange : $scope.vm.form.startCompleteDateRange,
                         detectingDateRange : $scope.vm.form.detectingDateRange,
 
+                        requiredDatas : (function () {    //  �궗�슜�옄 �젙�쓽 �븘�뱶 �븘�닔 �뜲�씠�꽣 泥댄겕
+                            var requiredDatas = [];
+
+                            angular.forEach($scope.vm.form.requiredDatas, function (issueCustomField) {
+                                var useValues = [];
+
+                                if (angular.isArray(issueCustomField.useValues)) {
+                                    angular.forEach(issueCustomField.useValues, function (useValue) {
+                                        useValues.push(useValue.value);
+                                    });
+                                }
+                                else {
+                                    useValues.push(issueCustomField.useValues);
+                                }
+
+                                //  useValues 瑜� 諛곗뿴濡� 蹂��솚�븳�떎.
+                                var temp = angular.copy(issueCustomField);
+                                temp.useValues = useValues;
+                                issueCustomFields.push(temp);
+                            });
+
+                            return issueCustomFields;
+                        })(),
+
                         issueCustomFields : (function () {    //  �씠�뒋�뿉�꽌 �궗�슜�릺�뒗 �궗�슜�옄 �젙�쓽 �븘�뱶
                             var issueCustomFields = [];
 
@@ -672,6 +711,7 @@
                 //  �씠�뒋 �쑀�삎�뿉 �뿰寃곕맂 �궗�슜�옄 �젙�쓽 �븘�뱶
                 function getIssueTypeCustomFields() {
                     $scope.vm.form.issueCustomFields = [];
+                    $scope.vm.form.requiredDatas = [];
                     //  �씠�뒋 ���엯 �븘�씠�뵒�굹 �봽濡쒖젥�듃 �븘�씠�뵒媛� �뾾�쑝硫� �넻�떊�쓣 �븯吏� �븡�뒗�떎.
                     if (!$rootScope.isDefined($scope.vm.form.issueTypeId) || $scope.vm.form.projects.length < 1) {
                         return;
@@ -686,6 +726,8 @@
 
                         if (result.data.message.status === "success") {
 
+                            $scope.vm.form.issueCustomFields = [];
+                            $scope.vm.form.requiredDatas = [];
                             angular.forEach(result.data.data, function (issueTypeCustomField) {
                                 switch (issueTypeCustomField.customFieldVo.customFieldType) {
                                     case "INPUT" :
@@ -713,8 +755,10 @@
                                         });
                                         break;
                                 }
-
                                 $scope.vm.form.issueCustomFields.push(issueTypeCustomField);
+                                if(issueTypeCustomField.customFieldVo.requiredData === "Y") {
+                                    $scope.vm.form.requiredDatas.push(issueTypeCustomField.customFieldVo.requiredData);
+                                }
                             });
                         }
                         else {
@@ -797,9 +841,8 @@
                         // �쁽�옱 �봽濡쒖젥�듃 �꽕�젙
                         if ($rootScope.workProject != null && $rootScope.workProject.id > -1) {
                             $scope.vm.projectName = $rootScope.workProject.name;
-                            $scope.fn.projects = [];
-                            $scope.fn.projects.push($rootScope.workProject);
-                            $scope.fn.getProjectList($scope.vm.projectName, $scope.vm.form.projects, $scope.vm.autoCompletePage.project.page, getStartProjectListCallback);
+                            $scope.vm.form.projects = [];
+                            $scope.vm.form.projects.push($rootScope.workProject);
                         }
                         // �쁽�옱 �씠�뒋���엯 �쑀�삎 �꽕�젙
                         var id = $rootScope.getCurrentIssueTypeId();

--
Gitblit v1.8.0