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/issueDetail.controller.js |  155 ++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 128 insertions(+), 27 deletions(-)

diff --git a/src/main/webapp/scripts/app/issue/issueDetail.controller.js b/src/main/webapp/scripts/app/issue/issueDetail.controller.js
index b4c7884..b63cd07 100644
--- a/src/main/webapp/scripts/app/issue/issueDetail.controller.js
+++ b/src/main/webapp/scripts/app/issue/issueDetail.controller.js
@@ -51,6 +51,7 @@
                 $scope.fn.containsPartner = containsPartner;
                 $scope.fn.onActivate = onActivate;
                 $scope.fn.issueBack = issueBack;
+                $scope.fn.goParentIssue = goParentIssue;
                 $scope.fn.removeRelationIssue = removeRelationIssue;
                 $scope.fn.removeDownIssue = removeDownIssue;
                 $scope.fn.changeDetailPageRowCount = changeDetailPageRowCount;    //  �럹�씠吏� 蹂�寃�
@@ -113,6 +114,7 @@
 
                 $scope.vm.issueName = "";       // �꽑�깮�맂 �뿰愿� �씪媛� �씠由�
                 $scope.vm.issueId = "";       //
+                $scope.vm.parentIssueId = "";
                 $scope.vm.issueTypeId = "";
                 $scope.vm.autoCompletePage = {
                     issue : {
@@ -145,7 +147,7 @@
                     $scope.fn.onActivate();
                 }
 
-                // �긽�쐞 �씠�뒋 �겢由��떆 �긽�쐞 �씠�뒋濡� �씠�룞
+                // �뮘濡쒓�湲� 踰꾪듉
                 function issueBack() {
                     var index = $scope.$parent.vm.issueIds.length -2;
                     if (index > -1) {
@@ -153,6 +155,14 @@
                         $scope.$parent.vm.issueIds.splice(index + 1, 1);
                         $scope.$parent.tableEvent.changeDetailView(preIssueId, true);
                     }
+                }
+
+                // �긽�쐞 �씠�뒋 �겢由��떆 �긽�쐞 �씠�뒋濡� �씠�룞
+                function goParentIssue() {
+                    var parentIssueId = $scope.vm.parentIssueId;
+                    $scope.$parent.tableEvent.changeDetailView(parentIssueId, true);
+                    //�븯�쐞�씠�뒋-> �긽�쐞�씠�뒋 -> �뿰愿��씠�뒋�뿉�꽌 �뮘濡쒓�湲� 踰꾪듉 �겢由� �떆 �븯�쐞�씠�뒋濡� �씠�룞�릺�뒗 臾몄젣濡� 留덉�留� 諛곗뿴媛� �젣嫄�
+                    $scope.$parent.vm.issueIds.pop();
                 }
 
                 //  �럹�씠吏� 蹂�寃�
@@ -673,7 +683,7 @@
                         $scope.vm.issueRelTableConfigs = [];
                         $scope.vm.issueRelTableConfigs = JSON.parse(issueTableConfigs);
                         $scope.vm.issueRelTableConfigs.sort(function (a, b) {
-                            return a.position < b.position ? -1 : a.position > b.position ? 1 : 0;
+                            return parseInt(a.position) < parseInt(b.position) ? -1 : parseInt(a.position) > parseInt(b.position) ? 1 : 0;
                         });
 
                         $scope.vm.relTableConfigs = [];
@@ -729,7 +739,7 @@
                         $scope.vm.issueDownTableConfigs = [];
                         $scope.vm.issueDownTableConfigs = JSON.parse(issueTableConfigs);
                         $scope.vm.issueDownTableConfigs.sort(function (a, b) {
-                            return a.position < b.position ? -1 : a.position > b.position ? 1 : 0;
+                            return parseInt(a.position) < parseInt(b.position) ? -1 : parseInt(a.position) > parseInt(b.position) ? 1 : 0;
                         });
                         $scope.vm.downTableConfigs = [];
 /*                      $scope.vm.downTableConfigs.push($downProvider.config()
@@ -1112,6 +1122,10 @@
                                 //  �솢�룞 �씠�젰 留뚮뱾湲�
                                 $scope.fn.makeActiveHistory();
 
+                                if ($rootScope.isDefined($scope.vm.viewer.parentIssueVo)) {
+                                    $scope.vm.parentIssueId = $scope.vm.viewer.parentIssueVo.id;
+                                }
+
                                 $scope.vm.viewer.startDate = result.data.data.startDate == null ? "common.unspecified" : result.data.data.startDate; // 誘몄��젙
                                 $scope.vm.viewer.completeDate = result.data.data.completeDate == null ? "common.unspecified" : result.data.data.completeDate; // 誘몄��젙
 
@@ -1245,21 +1259,69 @@
 
                 //  �솢�룞 �씠�젰 留뚮뱾湲�
                 function makeActiveHistory() {
-                    $scope.vm.viewer.activeParentHistory = "";
-                    $scope.vm.viewer.activeHistory = "";
+                    $scope.vm.viewer.activeParentHistory = [];
+                    $scope.vm.viewer.activeHistory = [];
+                    $scope.vm.viewer.activeParentMailHistory = [];
+                    $scope.vm.viewer.activeAllMailAndReplyHistory = []; //�긽�쐞+�븯�쐞 硫붿씪,�뙎湲� �엳�뒪�넗由�
+                    var oriMailHistory = [];
+                    var oriCommentHistory = [];
+
+                    if ($scope.vm.viewer.issueHistoryVos != null && $scope.vm.viewer.issueHistoryVos.length > 0) {
+                        //  �긽�쐞�씠�뒋 硫붿씪 �엳�뒪�넗由�
+                        for (var i=0; i<$scope.vm.viewer.issueHistoryVos.length; i++) {
+                            if ($scope.vm.viewer.issueHistoryVos[i].issueHistoryType === "SEND") {
+                                oriMailHistory.push($scope.vm.viewer.issueHistoryVos[i]);
+                            }
+                        }
+                        //$scope.vm.viewer.activeParentMailHistory = angular.copy(oriMailHistory);
+                    }
+                    
+                    //  �긽�쐞�씠�뒋 �뙎湲� �엳�뒪�넗由�
+                    if ($scope.vm.viewer.issueCommentVos != null && $scope.vm.viewer.issueCommentVos.length > 0) {
+                        for (var i=0; i<$scope.vm.viewer.issueCommentVos.length; i++) {
+                            oriCommentHistory.push($scope.vm.viewer.issueCommentVos[i]);
+                        }
+                    }
+
+                    $scope.vm.viewer.activeAllMailAndReplyHistory = oriMailHistory.concat(oriCommentHistory);
+                    
+                    //  �븯�쐞�씠�뒋 �엳�뒪�넗由�
                     if ($scope.vm.viewer.issueDownVos != null && $scope.vm.viewer.issueDownVos.length > 0) {
-                        $scope.vm.viewer.activeDownHistory = ""; //�븯�쐞�씠�뒋 �엳�뒪�넗由щ쭔
-                        $scope.vm.viewer.downComment = ""; //�븯�쐞�씠�뒋 �뙎湲�留�
-                        $scope.vm.viewer.activeDownAllHistory = ""; //�븯�쐞�씠�뒋 �엳�뒪�넗由�+�뙎湲�
+                        $scope.vm.viewer.activeDownHistory = []; //�븯�쐞�씠�뒋 �엳�뒪�넗由щ쭔
+                        $scope.vm.viewer.downComment = []; //�븯�쐞�씠�뒋 �뙎湲�留�
+                        $scope.vm.viewer.activeDownAllHistory = []; //�븯�쐞�씠�뒋 �엳�뒪�넗由�+�뙎湲�
+                        $scope.vm.viewer.activeDownMailAndReplyHistory = []; //�븯�쐞 硫붿씪+�뙎湲� �엳�뒪�넗由�
                         var downTitle = "";
                         var oriDownHistory = [];
                         var oriDownCommentHistory = [];
+                        var oriDownMailHistory = [];
 
                         // �븯�쐞�씠�뒋 �엳�뒪�넗由�
                         for (var i=0; i<$scope.vm.viewer.issueDownVos.length; i++){
                             oriDownHistory.push($scope.vm.viewer.issueDownVos[i].issueHistoryVos);
-                            oriDownCommentHistory.push($scope.vm.viewer.issueDownVos[i].issueCommentVos);
+
+                            //  �븯�쐞�씠�뒋 硫붿씪 湲곕줉
+                            for (var j=0; j<$scope.vm.viewer.issueDownVos[i].issueHistoryVos.length; j++) {
+                                if($scope.vm.viewer.issueDownVos[i].issueHistoryVos[j].issueHistoryType === "SEND") {
+                                    oriDownMailHistory.push($scope.vm.viewer.issueDownVos[i].issueHistoryVos[j]);
+                                }
+                            }
+                            //  �븯�쐞�씠�뒋 �뙎湲� 湲곕줉
+                            for (var k=0; k<$scope.vm.viewer.issueDownVos[i].issueCommentVos.length; k++) {
+                                oriDownCommentHistory.push($scope.vm.viewer.issueDownVos[i].issueCommentVos[k]);
+                            }
                         }
+                        //  �븯�쐞�씠�뒋 硫붿씪+�뙎湲� ���옣
+                        $scope.vm.viewer.activeDownMailAndReplyHistory = oriDownCommentHistory.concat(oriDownMailHistory);
+                        for (var i=0; i<$scope.vm.viewer.activeDownMailAndReplyHistory.length; i++){
+                            downTitle = "<div class='dot' style='margin-bottom: -8px'>*�븯�쐞�씠�뒋 : "+$scope.vm.viewer.activeDownMailAndReplyHistory[i].title+"</div>";
+                            $scope.vm.viewer.activeDownMailAndReplyHistory[i].desc = downTitle + $scope.vm.viewer.activeDownMailAndReplyHistory[i].description;
+                        }
+
+                        $scope.vm.viewer.activeDownMailAndReplyHistory.sort(function (a, b) {   //"MAIL_AND_REPLY_DOWN" �궡由쇱감�닚
+                            return a.registerDate > b.registerDate ? -1 : a.registerDate < b.registerDate ? 1 : 0;
+                        });
+
                         for (var i=0; i<oriDownHistory.length; i++){
                             if ($scope.vm.viewer.activeDownHistory === "") {
                                 $scope.vm.viewer.activeDownHistory = oriDownHistory[i];
@@ -1277,29 +1339,41 @@
                         });
 
                         // �븯�쐞�씠�뒋 �뙎湲� �엳�뒪�넗由�
-                       for (var i=0; i<oriDownCommentHistory.length; i++) {
+                        for (var i=0; i<oriDownCommentHistory.length; i++) {
                            if ($scope.vm.viewer.downComment === "") {
                                $scope.vm.viewer.downComment = oriDownCommentHistory[i];
                            } else {
                                $scope.vm.viewer.downComment = $scope.vm.viewer.downComment.concat(oriDownCommentHistory[i]);
                            }
-                       }
-                       $scope.vm.viewer.issueDownVos.sort(function (a, b) {   //�궡由쇱감�닚
-                           return a.registerDate > b.registerDate ? -1 : a.registerDate < b.registerDate ? 1 : 0;
-                       });
+                        }
+                        $scope.vm.viewer.issueDownVos.sort(function (a, b) {   //�궡由쇱감�닚
+                            return a.registerDate > b.registerDate ? -1 : a.registerDate < b.registerDate ? 1 : 0;
+                        });
 
-                       $scope.vm.viewer.activeDownAllHistory = $scope.vm.viewer.downComment.concat($scope.vm.viewer.activeDownHistory);
-                       $scope.vm.viewer.activeParentHistory = $scope.vm.viewer.issueCommentVos.concat($scope.vm.viewer.issueHistoryVos);
-                       $scope.vm.viewer.activeHistory = $scope.vm.viewer.activeParentHistory.concat($scope.vm.viewer.activeDownAllHistory);
+                        $scope.vm.viewer.activeDownAllHistory = $scope.vm.viewer.downComment.concat($scope.vm.viewer.activeDownHistory);
+
+                        $scope.vm.viewer.activeDownAllHistory.sort(function (a, b) {   //"RECODE_DOWN" �궡由쇱감�닚
+                            return a.registerDate > b.registerDate ? -1 : a.registerDate < b.registerDate ? 1 : 0;
+                        });
+
+                        $scope.vm.viewer.activeParentHistory = $scope.vm.viewer.issueCommentVos.concat($scope.vm.viewer.issueHistoryVos);
+                        $scope.vm.viewer.activeHistory = $scope.vm.viewer.activeParentHistory.concat($scope.vm.viewer.activeDownAllHistory);
+                        $scope.vm.viewer.activeAllMailAndReplyHistory = $scope.vm.viewer.activeAllMailAndReplyHistory.concat($scope.vm.viewer.activeDownMailAndReplyHistory);
 
                     }else {
                         $scope.vm.viewer.activeParentHistory = $scope.vm.viewer.issueCommentVos.concat($scope.vm.viewer.issueHistoryVos);
                         $scope.vm.viewer.activeHistory = $scope.vm.viewer.issueCommentVos.concat($scope.vm.viewer.issueHistoryVos);
                     }
-                    $scope.vm.viewer.activeParentHistory.sort(function (a, b) {   //�궡由쇱감�닚
+
+                    $scope.vm.viewer.activeHistory.sort(function (a, b) {   //"ALL" �궡由쇱감�닚
                         return a.registerDate > b.registerDate ? -1 : a.registerDate < b.registerDate ? 1 : 0;
                     });
-                    $scope.vm.viewer.activeHistory.sort(function (a, b) {   //�궡由쇱감�닚
+
+                    $scope.vm.viewer.activeParentHistory.sort(function (a, b) {   //"RECODE" �궡由쇱감�닚
+                        return a.registerDate > b.registerDate ? -1 : a.registerDate < b.registerDate ? 1 : 0;
+                    });
+
+                    $scope.vm.viewer.activeAllMailAndReplyHistory.sort(function (a, b) {   //"MAIL_AND_REPLY" �궡由쇱감�닚
                         return a.registerDate > b.registerDate ? -1 : a.registerDate < b.registerDate ? 1 : 0;
                     });
                 }
@@ -1449,16 +1523,43 @@
                 }
 
                 function getParametersAll() {
-                    var params = $scope.fn.getParameters(null, $scope.vm.viewer.issueCompanyVos);
-                    params = $scope.fn.getParameters(params, $scope.vm.viewer.issueIspVos);
-                    params = $scope.fn.getParameters(params, $scope.vm.viewer.issueHostingVos);
-
-                    if (params != null && params.length > 0) {
-                        for (let i = 0; i < params.length; i++) {
-                            params[i].id = i;
+                    var params = [];
+                    if ($scope.vm.viewer.issueCompanyVos != null && $scope.vm.viewer.issueCompanyVos.length > 0) {
+                        var issueCompany = $scope.fn.getParameters(params, $scope.vm.viewer.issueCompanyVos);
+                        if (issueCompany != null && issueCompany.length > 0) {
+                            angular.forEach(issueCompany, function (data) {
+                                params.push(data);
+                            });
                         }
                     }
-                    return params;
+                    if ($scope.vm.viewer.issueIspVos != null && $scope.vm.viewer.issueIspVos.length > 0) {
+                        var issueIsp = $scope.fn.getParameters(params, $scope.vm.viewer.issueIspVos)
+                        if (issueIsp != null && issueIsp.length > 0) {
+                            angular.forEach(issueIsp, function (data) {
+                                params.push(data);
+                            });
+                        }
+                    }
+                    if ($scope.vm.viewer.issueHostingVos != null && $scope.vm.viewer.issueHostingVos.length > 0) {
+                        var issueHosting = $scope.fn.getParameters(params, $scope.vm.viewer.issueHostingVos);
+                        if (issueHosting != null && issueHosting.length > 0) {
+                            angular.forEach(issueHosting, function (data) {
+                                params.push(data);
+                            });
+                        }
+                    }
+
+                    if (params != null && params.length > 0) {
+                        var filterData = params.filter(function(item, idx){
+                            return params.findIndex(function(item2, idx2){
+                                return item.email === item2.email
+                            }) == idx;
+                        });
+                        for (let i = 0; i < filterData.length; i++) {
+                            filterData[i].id = i;
+                        }
+                    }
+                    return filterData;
                 }
 
                 function getParameters(sourceArr, partnerVos) {

--
Gitblit v1.8.0