From fde64479e1c100a9667c40d5d1ae07cba4713959 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 수, 24 11월 2021 10:55:08 +0900
Subject: [PATCH] 활동내역 이력 수정

---
 src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java         |   25 +++++-------
 src/main/java/kr/wisestone/owl/service/impl/IssueRelationServiceImpl.java |    4 ++
 src/main/java/kr/wisestone/owl/service/impl/IssueHistoryServiceImpl.java  |   39 ++++++++++---------
 3 files changed, 35 insertions(+), 33 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/service/impl/IssueHistoryServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IssueHistoryServiceImpl.java
index fc67609..cef768e 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueHistoryServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueHistoryServiceImpl.java
@@ -484,28 +484,29 @@
     @Override
     public void detectIssueCompany(IssueHistoryType type, Map<String, Object> param, IssueCompany issueCompany, StringBuilder description) {
         Long id = MapUtil.getLong(param, "id");
+        Long companyFieldId = issueCompany.getCompanyField().getId();
 
         if (type == IssueHistoryType.ADD) { //異붽� �븷 寃쎌슦
             description.append("<span translate=\"issue.issueCompanyAddHistory\">�뾽泥� �젙蹂닿� 異붽��릺�뿀�뒿�땲�떎. </span>");
             description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + issueCompany.getCompanyField().getName() + "</span>");
         } else if (type == IssueHistoryType.MODIFY) { //�닔�젙 �븷 寃쎌슦
-            if (id != null && !issueCompany.getId().equals(id)) {
+            if (id != null && !companyFieldId.equals(id)) {
                 description.append("<span translate=\"issue.issueCompanyModifyHistory\">�뾽泥� �젙蹂닿� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
-                description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + issueCompany.getCompanyField().getName() + "</span>");
+                description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("name") + "</span>");
             }
-            if (param.get("manager") != null && (issueCompany.getManager() == null || !issueCompany.getManager().equals(param.get("manager")))) {
+            if (companyFieldId.equals(id) && param.get("manager") != null && (issueCompany.getManager() == null || !issueCompany.getManager().equals(param.get("manager")))) {
                 description.append("<span translate=\"issue.issueCompanyModifyManagerHistory\">&nbsp;>&nbsp;�뾽泥� �젙蹂댁쓽 �떞�떦�옄媛� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("manager") + "</span>");
             }
-            if (param.get("tel") != null && (issueCompany.getTel() == null || !issueCompany.getTel().equals(param.get("tel")))) {
+            if (companyFieldId.equals(id) && param.get("tel") != null && (issueCompany.getTel() == null || !issueCompany.getTel().equals(param.get("tel")))) {
                 description.append("<span translate=\"issue.issueCompanyModifyTelHistory\">&nbsp;>&nbsp;�뾽泥� �젙蹂댁쓽 �쟾�솕踰덊샇媛� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("tel") + "</span>");
             }
-            if (param.get("email") != null && (issueCompany.getEmail() == null || !issueCompany.getEmail().equals(param.get("email")))) {
+            if (companyFieldId.equals(id) && param.get("email") != null && (issueCompany.getEmail() == null || !issueCompany.getEmail().equals(param.get("email")))) {
                 description.append("<span translate=\"issue.issueCompanyModifyEmailHistory\">&nbsp;>&nbsp;�뾽泥� �젙蹂댁쓽 �씠硫붿씪�씠 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("email") + "</span>");
             }
-            if (param.get("memo") != null && (issueCompany.getMemo() == null || !issueCompany.getMemo().equals(param.get("memo")))) {
+            if (companyFieldId.equals(id) && param.get("memo") != null && (issueCompany.getMemo() == null || !issueCompany.getMemo().equals(param.get("memo")))) {
                 description.append("<span translate=\"issue.issueCompanyModifyMemoHistory\">&nbsp;>&nbsp;�뾽泥� �젙蹂댁쓽 鍮꾧퀬媛� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("memo") + "</span>");
             }
@@ -519,28 +520,29 @@
     @Override
     public void detectIssueIsp(IssueHistoryType type, Map<String, Object> param, IssueIsp issueIsp, StringBuilder description) {
         Long id = MapUtil.getLong(param, "id");
+        Long ispFieldId = issueIsp.getIspField().getId();
 
         if (type == IssueHistoryType.ADD) {
             description.append("<span translate=\"issue.issueIspAddHistory\">ISP �젙蹂닿� 異붽��릺�뿀�뒿�땲�떎. </span>");
             description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + issueIsp.getIspField().getName() + "</span>");
         } else if (type == IssueHistoryType.MODIFY) {
-            if (id != null && !issueIsp.getId().equals(id)) { //�닔�젙 �븷 寃쎌슦
+            if (id != null && !ispFieldId.equals(id)) { //�닔�젙 �븷 寃쎌슦
                 description.append("<span translate=\"issue.issueIspModifyHistory\">ISP �젙蹂닿� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
-                description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + issueIsp.getIspField().getName() + "</span>");
+                description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("name") + "</span>");
             }
-            if (param.get("manager") != null && (issueIsp.getManager() == null || !issueIsp.getManager().equals(param.get("manager")))) {
+            if (ispFieldId.equals(id) && param.get("manager") != null && (issueIsp.getManager() == null || !issueIsp.getManager().equals(param.get("manager")))) {
                 description.append("<span translate=\"issue.issueIspModifyManagerHistory\">ISP �젙蹂댁쓽 �떞�떦�옄媛� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("manager") + "</span>");
             }
-            if (param.get("tel") != null && (issueIsp.getTel() == null || !issueIsp.getTel().equals(param.get("tel")))) {
+            if (ispFieldId.equals(id) && param.get("tel") != null && (issueIsp.getTel() == null || !issueIsp.getTel().equals(param.get("tel")))) {
                 description.append("<span translate=\"issue.issueIspModifyTelHistory\">ISP �젙蹂댁쓽 �쟾�솕踰덊샇媛� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("tel") + "</span>");
             }
-            if (param.get("email") != null && (issueIsp.getEmail() == null || !issueIsp.getEmail().equals(param.get("email")))) {
+            if (ispFieldId.equals(id) && param.get("email") != null && (issueIsp.getEmail() == null || !issueIsp.getEmail().equals(param.get("email")))) {
                 description.append("<span translate=\"issue.issueIspModifyEmailHistory\">ISP �젙蹂댁쓽 �씠硫붿씪�씠 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("email") + "</span>");
             }
-            if (param.get("memo") != null && (issueIsp.getMemo() == null || !issueIsp.getMemo().equals(param.get("memo")))) {
+            if (ispFieldId.equals(id) && param.get("memo") != null && (issueIsp.getMemo() == null || !issueIsp.getMemo().equals(param.get("memo")))) {
                 description.append("<span translate=\"issue.issueIspModifyMemoHistory\">ISP �젙蹂댁쓽 鍮꾧퀬媛� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("memo") + "</span>");
             }
@@ -554,28 +556,29 @@
     @Override
     public void detectIssueHosting(IssueHistoryType type, Map<String, Object> param, IssueHosting issueHosting, StringBuilder description) {
         Long id = MapUtil.getLong(param, "id");
+        Long hostingFieldId = issueHosting.getHostingField().getId();
 
         if (type == IssueHistoryType.ADD) {
             description.append("<span translate=\"issue.issueHostingAddHistory\">�샇�뒪�똿 �젙蹂닿� 異붽��릺�뿀�뒿�땲�떎. </span>");
             description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + issueHosting.getHostingField().getName() + "</span>");
         }else if(type == IssueHistoryType.MODIFY){
-            if(id != null && !issueHosting.getId().equals(id)){ //�닔�젙 �븷 寃쎌슦
+            if(id != null && !hostingFieldId.equals(id)){ //�닔�젙 �븷 寃쎌슦
                 description.append("<span translate=\"issue.issueHostingModifyHistory\">�샇�뒪�똿 �젙蹂닿� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
-                description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + issueHosting.getHostingField().getName() + "</span>");
+                description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("name") + "</span>");
             }
-            if(param.get("manager") != null && (issueHosting.getManager() == null || !issueHosting.getManager().equals(param.get("manager")))){
+            if(hostingFieldId.equals(id) && param.get("manager") != null && (issueHosting.getManager() == null || !issueHosting.getManager().equals(param.get("manager")))){
                 description.append("<span translate=\"issue.issueHostingModifyManagerHistory\">�샇�뒪�똿 �젙蹂댁쓽 �떞�떦�옄媛� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("manager") + "</span>");
             }
-            if(param.get("tel") != null && (issueHosting.getTel() == null || !issueHosting.getTel().equals(param.get("tel")))){
+            if(hostingFieldId.equals(id) && param.get("tel") != null && (issueHosting.getTel() == null || !issueHosting.getTel().equals(param.get("tel")))){
                 description.append("<span translate=\"issue.issueHostingModifyTelHistory\">�샇�뒪�똿 �젙蹂댁쓽 �쟾�솕踰덊샇媛� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("tel") + "</span>");
             }
-            if(param.get("email") != null && (issueHosting.getEmail() == null || !issueHosting.getEmail().equals(param.get("email")))){
+            if(hostingFieldId.equals(id) && param.get("email") != null && (issueHosting.getEmail() == null || !issueHosting.getEmail().equals(param.get("email")))){
                 description.append("<span translate=\"issue.issueHostingModifyEmailHistory\">�샇�뒪�똿 �젙蹂댁쓽 �씠硫붿씪�씠 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("email") + "</span>");
             }
-            if(param.get("memo") != null && (issueHosting.getMemo() == null || !issueHosting.getMemo().equals(param.get("memo")))){
+            if(hostingFieldId.equals(id) && param.get("memo") != null && (issueHosting.getMemo() == null || !issueHosting.getMemo().equals(param.get("memo")))){
                 description.append("<span translate=\"issue.issueHostingModifyMemoHistory\">�샇�뒪�똿 �젙蹂댁쓽 鍮꾧퀬媛� 蹂�寃쎈릺�뿀�뒿�땲�떎. </span>");
                 description.append("<span class=\"text-primary bold\">&nbsp;>&nbsp;" + param.get("memo") + "</span>");
             }
diff --git a/src/main/java/kr/wisestone/owl/service/impl/IssueRelationServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IssueRelationServiceImpl.java
index 3782207..c613a5d 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueRelationServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueRelationServiceImpl.java
@@ -55,6 +55,10 @@
             issueRelation.setRelationIssueType(condition.getRelationIssueType());
 
             issueRelationRepository.saveAndFlush(issueRelation);
+
+            StringBuilder sb = new StringBuilder();
+            issueHistoryService.detectRelationIssue(IssueHistoryType.ADD, issueRelation, sb);
+            issueHistoryService.addIssueHistory(issue, IssueHistoryType.MODIFY, sb.toString());
         }
     }
 
diff --git a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
index ebf90a3..ac137a7 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
@@ -2627,28 +2627,23 @@
     @Transactional
     @Override
     public void modifyParentIssue(IssueForm issueDownForm) {
-        System.out.println(issueDownForm.getTitle());
-        Issue issue = this.getIssue(issueDownForm.getId());
-        Issue parentIssue = issue.getParentIssue();
+        Issue issue = this.getIssue(issueDownForm.getId()); //�븯�쐞 �씠�뒋
+        Issue parentIssue = issue.getParentIssue(); //蹂�寃� �쟾 �븯�쐞�씠�뒋�쓽 �긽�쐞�씠�뒋
 
-        Long newParentIssueId = issueDownForm.getParentIssueId();
+        Long newParentIssueId = issueDownForm.getParentIssueId(); //蹂�寃쏀븷 �븯�쐞�씠�뒋�쓽 �긽�쐞�씠�뒋
         StringBuilder sb = new StringBuilder();
 
-        IssueHistoryType type =  IssueHistoryType.ADD;
-        if (newParentIssueId != null) {
+        if (newParentIssueId != null) { // 異붽� �븷 寃쎌슦
            // todo �씠�쟾 �븯�쐞 �씪媛� �엳�뒪�넗由ш린濡� �븘�슂
-            type = IssueHistoryType.ADD;
-            parentIssue = this.getIssue(newParentIssueId);
-            issue.setParentIssue(parentIssue);
-            this.issueHistoryService.detectDownIssues(type, issue, sb);
+            parentIssue = this.getIssue(newParentIssueId); //�긽�쐞�씠�뒋(myIssue)
+            issue.setParentIssue(parentIssue); //myIssue瑜� �븯�쐞�씠�뒋�쓽 �긽�쐞�씠�뒋濡� set
+            this.issueHistoryService.detectDownIssues(IssueHistoryType.ADD, issue, sb); //issue = �븯�쐞�씠�뒋
         } else  {
-            // remove
-            type = IssueHistoryType.DELETE;
-            this.issueHistoryService.detectDownIssues(type, issue, sb);
+            // �궘�젣 �븷 寃쎌슦
+            this.issueHistoryService.detectDownIssues(IssueHistoryType.DELETE, issue, sb);
             issue.setParentIssue(null);
         }
-
-        this.issueHistoryService.addIssueHistory(parentIssue, IssueHistoryType.MODIFY, sb.toString());
+        this.issueHistoryService.addIssueHistory(parentIssue, IssueHistoryType.MODIFY, sb.toString()); //parentIssue = myIssue(湲곕줉�� �쁽�옱 �긽�꽭�럹�씠吏��뿉 �빐�빞�븯�땲源�)
         this.issueRepository.saveAndFlush(issue);
 
     }

--
Gitblit v1.8.0