From f04c1ae0ff0388427f83a579002880d5dbb149d2 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 금, 28 1월 2022 16:12:22 +0900
Subject: [PATCH] 모든 게시물 제목 입력시 특수문자 허용

---
 src/main/webapp/scripts/app/issue/issueAdd.controller.js |  117 +++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 79 insertions(+), 38 deletions(-)

diff --git a/src/main/webapp/scripts/app/issue/issueAdd.controller.js b/src/main/webapp/scripts/app/issue/issueAdd.controller.js
index c81b38c..b75de6a 100644
--- a/src/main/webapp/scripts/app/issue/issueAdd.controller.js
+++ b/src/main/webapp/scripts/app/issue/issueAdd.controller.js
@@ -9,9 +9,9 @@
     ],
     function (app, angular) {
         app.controller('issueAddController', ['$scope', '$rootScope', '$log', '$resourceProvider', '$uibModalInstance', '$uibModal', '$injector',
-            '$controller', '$tableProvider', 'SweetAlert', '$timeout', '$stateParams', '$q', 'Issue', 'User', 'AttachedFile', 'IssueType', 'Priority', 'Severity', 'IssueTypeCustomField', '$filter', '$state',
+            '$controller', '$tableProvider', 'SweetAlert', '$timeout', '$stateParams', '$q', 'Issue', 'User', 'AttachedFile', 'Project', 'IssueType', 'Priority', 'Severity', 'IssueTypeCustomField', '$filter', '$state',
             function ($scope, $rootScope, $log, $resourceProvider, $uibModalInstance, $uibModal,  $injector, $controller, $tableProvider, SweetAlert, $timeout,
-                      $stateParams, $q, Issue, User, AttachedFile, IssueType, Priority, Severity, IssueTypeCustomField, $filter, $state) {
+                      $stateParams, $q, Issue, User, AttachedFile, Project, IssueType, Priority, Severity, IssueTypeCustomField, $filter, $state) {
 
                 $scope.fn = {
                     cancel : cancel,    //  �뙘�뾽 李� �떕湲�
@@ -27,6 +27,7 @@
                     onFileSelect : onFileSelect,    //  �뙆�씪 泥⑤�
                     infiniteAddForm : infiniteAddForm,  //  怨꾩냽 �깮�꽦
                     imageUpload : imageUpload,  //  �꽟癒몃끂�듃 �씠誘몄� �뾽濡쒕뱶
+                    getProject : getProject,    //�봽濡쒖젥�듃 媛��졇�삤湲�(�쟾泥� �봽濡쒖젥�듃 �씪 寃쎌슦 �궗�슜)
                     getIssueTypes : getIssueTypes,  //  �씠�뒋 ���엯 紐⑸줉 媛��졇�삤湲�
                     getPriorities : getPriorities,  //  �슦�꽑�닚�쐞 紐⑸줉 媛��졇�삤湲�
                     getSeverities : getSeverities,  //  以묒슂�룄 紐⑸줉 媛��졇�삤湲�
@@ -524,47 +525,59 @@
 
                 //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[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[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;
+                    }
                 });
 
                 $scope.$on("companyTypeEvent", function (event, result) {
-                    $scope.vm.form.companyTypeId = result[0].id;
+                    if ($rootScope.isDefined(result[0])) {
+                        $scope.vm.form.companyTypeId = result[0].id;
+                    }
                 });
                 $scope.$on("parentSectorEvent", function (event, result) {
                     if ($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) {
-                    $scope.vm.form.childSectorId = result[0].id;
+                    if ($rootScope.isDefined(result[0])) {
+                        $scope.vm.form.childSectorId = result[0].id;
+                    }
                 });
                 $scope.$on("regionEvent", function (event, result) {
-                    $scope.vm.form.regionId = result[0].id;
+                    if ($rootScope.isDefined(result[0])) {
+                        $scope.vm.form.regionId = result[0].id;
+                    }
                 });
                 $scope.$on("statusEvent", function (event, result) {
-                    $scope.vm.form.statusId = result[0].id;
+                    if ($rootScope.isDefined(result[0])) {
+                        $scope.vm.form.statusId = result[0].id;
+                    }
                 });
 
                 //  �뤌 �쟾�넚
@@ -590,7 +603,7 @@
                         severityId : $scope.vm.form.severityId,    //  以묒슂�룄 �븘�씠�뵒
 
                         companyId : (function () {   //  �뾽泥� �븘�씠�뵒
-                            var companyId = -1;
+                            var companyId = null;
                             if ($scope.vm.form.issueCompanyFields != null && $scope.vm.form.issueCompanyFields.length > 0) {
                                 companyId = $scope.vm.form.issueCompanyFields[0].id;
                             }
@@ -598,7 +611,7 @@
                         })(),
 
                         ispId : (function () {  // ISP �븘�씠�뵒
-                            var ispId = -1;
+                            var ispId = null;
                             if ($scope.vm.form.issueCompanyFields != null && $scope.vm.form.issueCompanyFields.length > 0) {
                                 if ($scope.vm.form.issueCompanyFields[0].ispId != null){
                                     ispId = $scope.vm.form.issueCompanyFields[0].ispId;
@@ -610,7 +623,7 @@
                         })(),
 
                         hostingId : (function () {  // Hosting �븘�씠�뵒
-                            var hostingId = -1;
+                            var hostingId = null;
                             if ($scope.vm.form.issueCompanyFields != null && $scope.vm.form.issueCompanyFields.length > 0) {
                                 if ($scope.vm.form.issueCompanyFields[0].hostingId != null){
                                     hostingId = $scope.vm.form.issueCompanyFields[0].hostingId;
@@ -679,36 +692,36 @@
                         companyUrl :$scope.vm.companyUrl,
                         companyMemo : $scope.vm.companyMemo,
                         companyTypeId : (function () {
-                            var companyTypeId = -1;
-                            if ($scope.vm.form.companyTypes != null) {
+                            var companyTypeId = null;
+                            if ($scope.vm.form.companyTypes != null && $scope.vm.form.companyTypes.length > 0) {
                                 companyTypeId = $scope.vm.form.companyTypes[0].id;
                             }
                             return companyTypeId;
                         })(),
                         parentSectorId : (function () {
-                            var parentSectorId = -1;
-                            if ($scope.vm.form.parentSectors != null) {
+                            var parentSectorId = null;
+                            if ($scope.vm.form.parentSectors != null && $scope.vm.form.parentSectors.length > 0) {
                                 parentSectorId = $scope.vm.form.parentSectors[0].id;
                             }
                             return parentSectorId;
                         })(),
                         childSectorId : (function () {
-                            var childSectorId = -1;
-                            if ($scope.vm.form.childSectors != null) {
+                            var childSectorId = null;
+                            if ($scope.vm.form.childSectors != null && $scope.vm.form.childSectors.length > 0) {
                                 childSectorId = $scope.vm.form.childSectors[0].id;
                             }
                             return childSectorId;
                         })(),
                         regionId : (function () {
-                            var regionId = -1;
-                            if ($scope.vm.form.regions != null) {
+                            var regionId = null;
+                            if ($scope.vm.form.regions != null && $scope.vm.form.regions.length > 0) {
                                 regionId = $scope.vm.form.regions[0].id;
                             }
                             return regionId;
                         })(),
                         statusId : (function () {
-                            var statusId = -1;
-                            if ($scope.vm.form.statuses != null) {
+                            var statusId = null;
+                            if ($scope.vm.form.statuses != null && $scope.vm.form.statuses.length > 0) {
                                 statusId = $scope.vm.form.statuses[0].id;
                             } else if ($scope.vm.form.status !== ""){
                                 statusId = 120; //吏곸젒�엯�젰 �씪 寃쎌슦
@@ -840,6 +853,31 @@
                     $(document).unbind("keydown");  //  �떒異뺥궎 �씠踰ㅽ듃 �젣嫄�
                 }
 
+                //  �봽濡쒖젥�듃 媛��졇�삤湲�(�쟾泥� �봽濡쒖젥�듃 �씪 寃쎌슦 �궗�슜)
+                function getProject() {
+                    var deferred = $q.defer();
+
+                    Project.findIssueType($resourceProvider.getContent({issueTypeId : $rootScope.getCurrentIssueTypeId()},
+                        $resourceProvider.getPageContent(0, 1000))).then(function (result) {
+
+                        if (result.data.message.status === "success") {
+                            if ($rootScope.isDefined(result.data.data)) {
+                                $scope.vm.form.projects.push(result.data.data);
+                                $scope.vm.projectName = result.data.data.name;
+                                $scope.fn.getIssueTypeOfProject();
+                                $scope.fn.getIssueTypeCustomFields();
+                            }
+                        }
+                        else {
+                            SweetAlert.swal($filter("translate")("issue.failedToIssueTypeListLookup"), result.data.message.message, "error"); // �씠�뒋 ���엯 紐⑸줉 議고쉶 �떎�뙣
+                        }
+
+                        deferred.resolve(result.data.data);
+                    });
+
+                    return deferred.promise;
+                }
+
                 //  �씠�뒋 �쑀�삎 紐⑸줉
                 function getIssueTypes() {
                     var deferred = $q.defer();
@@ -893,6 +931,7 @@
 
                         if (result.data.message.status === "success") {
                             $scope.vm.priorities = result.data.data;
+                            $scope.vm.form.priorityId = $scope.vm.priorities[2].id.toString();
                         }
                         else {
                             SweetAlert.swal($filter("translate")("issue.failedToPriorityListLookup"), result.data.message.message, "error"); // �슦�꽑�닚�쐞 紐⑸줉 議고쉶 �떎�뙣
@@ -913,6 +952,7 @@
 
                         if (result.data.message.status === "success") {
                             $scope.vm.severities = result.data.data;
+                            $scope.vm.form.severityId = $scope.vm.severities[2].id.toString();
                         }
                         else {
                             SweetAlert.swal($filter("translate")("issue.failedToCriticalListLookup"), result.data.message.message, "error"); // 以묒슂�룄 紐⑸줉 議고쉶 �떎�뙣
@@ -1023,7 +1063,7 @@
                 }
 
                 function getPartners() {
-                    if($scope.vm.form.issueTypeId === ""){
+                    if($scope.vm.form.issueTypeId === "" && $rootScope.issueTypeMenu != null){
                         $scope.vm.form.issueTypeId = $rootScope.issueTypeMenu.id
                     }
                     var content = {
@@ -1039,7 +1079,7 @@
                 }
 
                 function getDepartments() {
-                    if($scope.vm.form.issueTypeId === ""){
+                    if($scope.vm.form.issueTypeId === "" && $rootScope.issueTypeMenu != null){
                         $scope.vm.form.issueTypeId = $rootScope.issueTypeMenu.id
                     }
                     var content = {
@@ -1062,6 +1102,7 @@
                 function startExecute() {
 
                     var promises = {
+                        getProject : $scope.fn.getProject(),
                         getIssueTypes : $scope.fn.getIssueTypes(),
                         getPriorities : $scope.fn.getPriorities(),
                         getSeverities : $scope.fn.getSeverities(),

--
Gitblit v1.8.0