From b769c2dcd17af4978fe152ec2ae306a6d6d7773d Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 월, 03 1월 2022 14:31:05 +0900
Subject: [PATCH] 이메일 전송 템플릿을 가져올때 db에서 가져오지 않고 서버의 이메일 템플릿을 가져오도록 수정

---
 src/main/webapp/scripts/app/issue/issueSendMailPartners.controller.js |  121 ++++++++++++++++++++++------------------
 1 files changed, 66 insertions(+), 55 deletions(-)

diff --git a/src/main/webapp/scripts/app/issue/issueSendMailPartners.controller.js b/src/main/webapp/scripts/app/issue/issueSendMailPartners.controller.js
index c40379b..9e8d0c7 100644
--- a/src/main/webapp/scripts/app/issue/issueSendMailPartners.controller.js
+++ b/src/main/webapp/scripts/app/issue/issueSendMailPartners.controller.js
@@ -5,8 +5,8 @@
         'angular'
     ],
     function (app, angular) {
-        app.controller('issueSendMailPartnersController', ['$scope', '$rootScope', '$q','$log', '$resourceProvider', '$uibModalInstance', '$controller', '$injector', 'SweetAlert', '$filter', 'parameter', 'Issue',
-            function ($scope, $rootScope, $q, $log, $resourceProvider, $uibModalInstance, $controller, $injector, SweetAlert, $filter, parameter, Issue) {
+        app.controller('issueSendMailPartnersController', ['$scope', '$rootScope', '$q','$log', '$resourceProvider', '$uibModalInstance', '$controller', '$injector', 'SweetAlert', '$filter', 'parameter', 'Issue', 'EmailTemplate',
+            function ($scope, $rootScope, $q, $log, $resourceProvider, $uibModalInstance, $controller, $injector, SweetAlert, $filter, parameter, Issue, EmailTemplate) {
 
                 $scope.fn = {
                     getUserListCallBack : getUserListCallBack,  //  �궗�슜�옄 auto complete callback function
@@ -15,7 +15,8 @@
                     removeMailTarget : removeMailTarget,
                     formSubmit : formSubmit,    //  �뤌 �쟾�넚
                     formCheck : formCheck,   //  �뤌 泥댄겕
-                    changeTemplate : changeTemplate,
+                    onChangeEmailTemplate : onChangeEmailTemplate, // �씠硫붿씪 �뀥�뵆由� �꽑�깮�떆 �떎�뻾
+                    getEmailTemplateList : getEmailTemplateList // �씠硫붿씪 �뀥�뵆由� 紐⑸줉 媛��졇�삤湲�
                     // showEmailTemplate : showEmailTemplate,
                 };
 
@@ -24,9 +25,9 @@
                     ispVos : parameter.ispVos,
                     hostingVos : parameter.hostingVos,
                     partners : parameter.partnersAll.slice(),
+                    html : "",
                     form : {
                         id : parameter.issueId,  //  �씠�뒋 踰덊샇
-                        template : "ISSUE_SEND_2",
                         projects : [{ id : parameter.projectId}],  //  �봽濡쒖젥�듃
                         mailUsers : parameter.partners.slice()   //  硫붿씪 �쟾�넚諛쏅뒗 �궗�슜�옄
                     },
@@ -36,10 +37,64 @@
                             page : 0,
                             totalPage : 0
                         }
-                    }
+                    },
+                    emailTitle : "",
+                    emailTemplateId : -1,
+                    emailTemplates : [],
+                    emailTemplateType : "",
                 };
 
                 angular.extend(this, $controller('autoCompleteController', {$scope : $scope, $injector : $injector}));
+
+                function onChangeEmailTemplate() {
+                    var content = {
+                        templateType : $scope.vm.emailTemplateType,
+                        issueId : parameter.issueId
+                    }
+                    EmailTemplate.find($resourceProvider.getContent(
+                        content,
+                        $resourceProvider.getPageContent(0, 10))).then(function (result) {
+
+                        if (result.data.message.status === "success") {
+                            $scope.vm.html = result.data.data.template;
+                        }
+                        else {
+                            SweetAlert.error($filter("translate")("issue.failedIssueMail"), result.data.message.message); // "�씠�뒋 硫붿씪 諛쒖넚 �떎�뙣"
+                        }
+
+                        $rootScope.spinner = false;
+                    });
+                }
+
+                function getEmailTemplateList() {
+                    $scope.vm.emailTemplates.push({
+                            templateType : "ISSUE_SEND_1",
+                            title : "�뀥�뵆由�1"
+                    });
+
+                    $scope.vm.emailTemplates.push({
+                            templateType : "ISSUE_SEND_2",
+                            title : "�뀥�뵆由�2"
+                    });
+
+
+                    $scope.vm.emailTemplates.push({
+                            templateType : "ISSUE_SEND_3",
+                            title : "�뀥�뵆由�3"
+                    });
+
+                    $scope.vm.emailTemplateId = 1;
+                    $scope.vm.emailTitle = "";
+                    $scope.vm.emailTemplates.forEach(function (emailTemplate) {
+                        /*if (emailTemplate.id === $scope.vm.emailTemplateId) {
+                            $scope.vm.emailTitle = emailTemplate.title;
+                        }*/
+                        if (emailTemplate.templateType === $scope.vm.emailTemplateType) {
+                            $scope.vm.emailTitle = emailTemplate.title;
+                        }
+                    })
+                }
+
 
                 //  �궗�슜�옄 �궘�젣
                 function removeMailTarget(index) {
@@ -62,8 +117,10 @@
                 function formSubmit() {
                     $rootScope.spinner = true;
                     var content = {
-                        id : $scope.vm.form.id,
-                        template : $scope.vm.form.template,
+                        id : $scope.vm.emailTemplateId,
+                        template : $scope.vm.html,
+                        title : $scope.vm.emailTitle,
+                        issueId : $scope.vm.form.id,
                         sendEmails : (function () {
                             var sendEmails = [];
 
@@ -124,53 +181,7 @@
                     return deferred.promise;
                 }
 
-                function changeTemplate(templateId){
-                    $scope.vm.form.template = templateId;
-
-                    var elements = document.getElementsByClassName("TemplateIMG");
-                    for (let i = elements.length - 1; i >= 0; i--) {
-                        if (elements[i].id === templateId) {
-                            elements[i].className += " TemplateIMG-selected";
-                        } else {
-                            elements[i].className = "TemplateIMG";
-                        }
-                    }
-
-                    const div1 = document.getElementById('Email-Template1');
-                    const div2 = document.getElementById('Email-Template2');
-                    const div3 = document.getElementById('Email-Template3');
-                    const div4 = document.getElementById('Email-Template4');
-
-
-                    if(div1.style.display === 'none' && div4.style.display === 'none') {
-                        div1.style.display = 'block';
-                        div4.style.display = 'block';
-                    } else if (div1.style.display === 'block' && div4.style.display === 'block')  {
-                        div1.style.display = 'none';
-                        div4.style.display = 'none';
-                    }
-
-                    if (div2.style.display === 'none' && div4.style.display === 'none') {
-                        div2.style.display = 'block';
-                        div4.style.display = 'block'
-                    } else if (div2.style.display === 'block' && div4.style.display === 'block'){
-                        div2.style.display = 'none';
-                        div4.style.display = 'none'
-                    }
-
-                    if (div3.style.display == 'none' && div4.style.display === 'none') {
-                        div3.style.display = 'block';
-                        div4.style.display = 'block';
-                    } else if (div3.style.display === 'block' && div4.style.display === 'block'){
-                        div3.style.display = 'none';
-                        div4.style.display = 'none';
-                    }
-
-                    if (div4.style.display == 'none' || div4.style.display === 'block') {
-                        div4.style.display = 'block';
-                    } else {
-                        div4.style.display = 'none';
-                    }
-                }
+                $scope.fn.getEmailTemplateList();
             }]);
+
     });

--
Gitblit v1.8.0