From 875d386d01ea72451788eef95067fb5e6de3983d Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 월, 22 11월 2021 16:05:03 +0900
Subject: [PATCH] 이슈 테이블 표시 설정 추가 완료(백엔드)

---
 src/main/java/kr/wisestone/owl/domain/IssueTableConfig.java                  |   21 ++---
 src/main/java/kr/wisestone/owl/service/IssueTableConfigService.java          |    2 
 src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java |  159 ++++++++++++---------------------------
 3 files changed, 59 insertions(+), 123 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/domain/IssueTableConfig.java b/src/main/java/kr/wisestone/owl/domain/IssueTableConfig.java
index 8b7e5dc..9a83edf 100644
--- a/src/main/java/kr/wisestone/owl/domain/IssueTableConfig.java
+++ b/src/main/java/kr/wisestone/owl/domain/IssueTableConfig.java
@@ -15,6 +15,7 @@
     private Long id;
     private String issueTableConfigs;
     private int issueTableType;
+    private Long issueId;
 
     @ManyToOne(fetch = FetchType.LAZY)
     @JoinColumn(name = "workspace_id")
@@ -23,10 +24,6 @@
     @ManyToOne(fetch = FetchType.LAZY)
     @JoinColumn(name = "user_id")
     private User user;
-
-    @ManyToOne(fetch = FetchType.LAZY)
-    @JoinColumn(name = "issue_id")
-    private Issue issue;
 
     public IssueTableConfig(){}
 
@@ -62,14 +59,6 @@
         this.user = user;
     }
 
-    public Issue getIssue() {
-        return issue;
-    }
-
-    public void setIssue(Issue issue) {
-        this.issue = issue;
-    }
-
     public int getIssueTableType() {
         return issueTableType;
     }
@@ -77,4 +66,12 @@
     public void setIssueTableType(int issueTableType) {
         this.issueTableType = issueTableType;
     }
+
+    public Long getIssueId() {
+        return issueId;
+    }
+
+    public void setIssueId(Long issueId) {
+        this.issueId = issueId;
+    }
 }
diff --git a/src/main/java/kr/wisestone/owl/service/IssueTableConfigService.java b/src/main/java/kr/wisestone/owl/service/IssueTableConfigService.java
index c301940..b5d2563 100644
--- a/src/main/java/kr/wisestone/owl/service/IssueTableConfigService.java
+++ b/src/main/java/kr/wisestone/owl/service/IssueTableConfigService.java
@@ -22,6 +22,4 @@
 
     IssueTableConfig findByIssueIdAndIssueTableType(Long issueId, int issueTableType);
 
-    void multipleCode();
-
 }
diff --git a/src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java
index 8f99a4e..c4a3bc4 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java
@@ -1,15 +1,13 @@
 package kr.wisestone.owl.service.impl;
 
 import kr.wisestone.owl.constant.Constants;
-import kr.wisestone.owl.domain.Issue;
-import kr.wisestone.owl.domain.IssueTableConfig;
-import kr.wisestone.owl.domain.User;
-import kr.wisestone.owl.domain.Workspace;
+import kr.wisestone.owl.domain.*;
 import kr.wisestone.owl.repository.IssueTableConfigRepository;
 import kr.wisestone.owl.service.IssueService;
 import kr.wisestone.owl.service.IssueTableConfigService;
 import kr.wisestone.owl.service.UserService;
 import kr.wisestone.owl.service.WorkspaceService;
+import kr.wisestone.owl.util.ConvertUtil;
 import kr.wisestone.owl.util.MapUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -35,104 +33,61 @@
     private UserService userService;
 
     @Autowired
-    private IssueService issueService;
+    private IssueTableConfigService issueTableConfigService;
 
     @Override
     protected JpaRepository<IssueTableConfig, Long> getRepository() {
         return this.issueTableConfigRepository;
     }
 
-    @Override
-    public void multipleCode() {
-
-    }
     Long issueId;
     int issueTableType = 0; //issueTableType 珥덇린媛� �꽕�젙
+
+    //  add 以묐났肄붾뱶 �젣嫄�
+    public IssueTableConfig addMultipleCode(Map<String, Object> params, Long issueId, int issueTableType) {
+        String issueTableConfigs = MapUtil.getString(params, "issueTableConfigs");
+        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceId();
+        IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
+
+        //  �븘吏� �뀒�씠釉� 而щ읆 �꽕�젙�쓣 �븯吏� �븡�븯�쓣 寃쎌슦
+        if (issueTableConfig == null) {
+            issueTableConfig = new IssueTableConfig();
+            Workspace workspace = this.workspaceService.getWorkspace(this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId());
+            User user = this.userService.getUser(this.webAppUtil.getLoginId());
+            issueTableConfig.setWorkspace(workspace);
+            issueTableConfig.setUser(user);
+            issueTableConfig.setIssueTableConfigs(issueTableConfigs);
+        }else if(saveIssueTableType == null){
+            issueTableConfig.setIssueId(issueId);
+            issueTableConfig.setIssueTableType(issueTableType);
+            issueTableConfig.setIssueTableConfigs(issueTableConfigs);
+        }else{
+            issueTableConfig.setIssueTableConfigs(issueTableConfigs);
+        }
+        return this.issueTableConfigRepository.saveAndFlush(issueTableConfig);
+    }
 
     //  �씠�뒋 �뀒�씠釉� 而щ읆 �꽕�젙 �젙蹂대�� ���옣�븳�떎.
     @Override
     @Transactional
     public IssueTableConfig addIssueTableConfig(Map<String, Object> params) {
-        String issueTableConfigs = MapUtil.getString(params, "issueTableConfigs");
         issueId = (long) -1;
         issueTableType = 1;
-
-        //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 紐⑸줉 �뀒�씠釉� 而щ읆 �꽕�젙�쓣 議고쉶�븳�떎.
-        IssueTableConfig saveIssueTableConfig = this.findByUserIdAndWorkspaceId();
-        IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
-        //  �븘吏� �뀒�씠釉� 而щ읆 �꽕�젙�쓣 �븯吏� �븡�븯�쓣 寃쎌슦
-        if (saveIssueTableConfig == null && saveIssueTableType == null) {
-            IssueTableConfig issueTableConfig = new IssueTableConfig();
-            Workspace workspace = this.workspaceService.getWorkspace(this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId());
-            User user = this.userService.getUser(this.webAppUtil.getLoginId());
-            Issue issue = this.issueService.getIssue(issueId);
-            issueTableConfig.setWorkspace(workspace);
-            issueTableConfig.setUser(user);
-            issueTableConfig.setIssue(issue);
-            issueTableConfig.setIssueTableType(issueTableType);
-            issueTableConfig.setIssueTableConfigs(issueTableConfigs);
-            return this.issueTableConfigRepository.saveAndFlush(issueTableConfig);
-        }
-        else {
-            saveIssueTableConfig.setIssueTableConfigs(issueTableConfigs);
-            return this.issueTableConfigRepository.saveAndFlush(saveIssueTableConfig);
-        }
+        return this.addMultipleCode(params, issueId, issueTableType);
     }
-
+    // �뿰愿� �씠�뒋 �뀒�씠釉� �꽕�젙 �젙蹂� ���옣
     @Override
     public IssueTableConfig addRelationIssueTableConfig(Map<String, Object> params) {
-        String issueTableConfigs = MapUtil.getString(params, "issueTableConfigs");
-
         issueId = MapUtil.getLong(params, "issueId");
         issueTableType = 2;
-        //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 紐⑸줉 �뀒�씠釉� 而щ읆 �꽕�젙�쓣 議고쉶�븳�떎.
-        IssueTableConfig saveIssueTableConfig = this.findByUserIdAndWorkspaceId();
-        IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
-
-        //  �븘吏� �뀒�씠釉� 而щ읆 �꽕�젙�쓣 �븯吏� �븡�븯�쓣 寃쎌슦
-        if (saveIssueTableConfig == null && saveIssueTableType == null) {
-            IssueTableConfig issueTableConfig = new IssueTableConfig();
-            Workspace workspace = this.workspaceService.getWorkspace(this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId());
-            User user = this.userService.getUser(this.webAppUtil.getLoginId());
-            Issue issue = this.issueService.getIssue(issueId);
-            issueTableConfig.setWorkspace(workspace);
-            issueTableConfig.setUser(user);
-            issueTableConfig.setIssue(issue);
-            issueTableConfig.setIssueTableType(issueTableType);
-            issueTableConfig.setIssueTableConfigs(issueTableConfigs);
-            return this.issueTableConfigRepository.saveAndFlush(issueTableConfig);
-        }else {
-            saveIssueTableConfig.setIssueTableConfigs(issueTableConfigs);
-            return this.issueTableConfigRepository.saveAndFlush(saveIssueTableConfig);
-        }
+        return this.addMultipleCode(params, issueId, issueTableType);
     }
-
+    // �븯�쐞 �씠�뒋 �뀒�씠釉� �꽕�젙 �젙蹂� ���옣
     @Override
     public IssueTableConfig addDownIssueTableConfig(Map<String, Object> params) {
-        String issueTableConfigs = MapUtil.getString(params, "issueTableConfigs");
-
         issueId = MapUtil.getLong(params, "issueId");
         issueTableType = 3;
-        //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 紐⑸줉 �뀒�씠釉� 而щ읆 �꽕�젙�쓣 議고쉶�븳�떎.
-        IssueTableConfig saveIssueTableConfig = this.findByUserIdAndWorkspaceId();
-        IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
-
-        //  �븘吏� �뀒�씠釉� 而щ읆 �꽕�젙�쓣 �븯吏� �븡�븯�쓣 寃쎌슦
-        if (saveIssueTableConfig == null && saveIssueTableType == null) {
-            IssueTableConfig issueTableConfig = new IssueTableConfig();
-            Workspace workspace = this.workspaceService.getWorkspace(this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId());
-            User user = this.userService.getUser(this.webAppUtil.getLoginId());
-            Issue issue = this.issueService.getIssue(issueId);
-            issueTableConfig.setWorkspace(workspace);
-            issueTableConfig.setUser(user);
-            issueTableConfig.setIssue(issue);
-            issueTableConfig.setIssueTableType(issueTableType);
-            issueTableConfig.setIssueTableConfigs(issueTableConfigs);
-            return this.issueTableConfigRepository.saveAndFlush(issueTableConfig);
-        }else {
-            saveIssueTableConfig.setIssueTableConfigs(issueTableConfigs);
-            return this.issueTableConfigRepository.saveAndFlush(saveIssueTableConfig);
-        }
+        return this.addMultipleCode(params, issueId, issueTableType);
     }
 
     //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 �뀒�씠釉� �꽕�젙�쓣 議고쉶�븳�떎.
@@ -143,10 +98,25 @@
                 this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId());
     }
 
+    //�씠�뒋 Id�� IssueTableType 議고쉶
     @Override
     @Transactional(readOnly = true)
     public IssueTableConfig findByIssueIdAndIssueTableType(Long issueId, int issueTableType) {
         return this.issueTableConfigRepository.findByIssueIdAndIssueTableType(issueId, issueTableType);
+    }
+
+    // detail 以묐났 肄붾뱶 �젣嫄�
+    private void detailMultipleCode(Map<String, Object> resJsonData, Long issueId, int issueTableType) {
+        //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 寃��깋 議곌굔�쓣 議고쉶�븳�떎.
+        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceId();
+        IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
+
+        if (issueTableConfig != null && saveIssueTableType != null) {
+            resJsonData.put(Constants.RES_KEY_CONTENTS, issueTableConfig.getIssueTableConfigs());
+        }
+        else {
+            resJsonData.put(Constants.RES_KEY_CONTENTS, "");
+        }
     }
 
     //  ���옣�맂 �씠�뒋 �뀒�씠釉� �꽕�젙�쓣 議고쉶�븳�떎.
@@ -155,48 +125,19 @@
     public void detailIssueTableConfig(Map<String, Object> resJsonData) {
         issueId = (long) -1;
         issueTableType = 1;
-        //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 寃��깋 議곌굔�쓣 議고쉶�븳�떎.
-        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceId();
-        IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
-
-        if (issueTableConfig != null && saveIssueTableType != null) {
-            resJsonData.put(Constants.RES_KEY_CONTENTS, issueTableConfig.getIssueTableConfigs());
-        }
-        else {
-            resJsonData.put(Constants.RES_KEY_CONTENTS, "");
-        }
+        this.detailMultipleCode(resJsonData, issueId, issueTableType);
     }
-    
     //  ���옣�맂 �뿰愿� �씠�뒋 �뀒�씠釉� �꽕�젙 議고쉶
     @Override
     public void detailRelationIssueTableConfig(Long issueId, Map<String, Object> resJsonData) {
         issueTableType = 2;
-        //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 寃��깋 議곌굔�쓣 議고쉶�븳�떎.
-        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceId();
-        IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
-        
-        if (issueTableConfig != null && saveIssueTableType != null) {
-            resJsonData.put(Constants.RES_KEY_CONTENTS, issueTableConfig.getIssueTableConfigs());
-        }
-        else {
-            resJsonData.put(Constants.RES_KEY_CONTENTS, "");
-        }
+        this.detailMultipleCode(resJsonData, issueId, issueTableType);
     }
-
     //  ���옣�맂 �븯�쐞 �씠�뒋 �뀒�씠釉� �꽕�젙 議고쉶
     @Override
     public void detailDownIssueTableConfig(Long issueId, Map<String, Object> resJsonData) {
         issueTableType = 3;
-        //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 寃��깋 議곌굔�쓣 議고쉶�븳�떎.
-        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceId();
-        IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
-
-        if (issueTableConfig != null && saveIssueTableType != null) {
-            resJsonData.put(Constants.RES_KEY_CONTENTS, issueTableConfig.getIssueTableConfigs());
-        }
-        else {
-            resJsonData.put(Constants.RES_KEY_CONTENTS, "");
-        }
+        this.detailMultipleCode(resJsonData, issueId, issueTableType);
     }
 
 

--
Gitblit v1.8.0