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

---
 src/main/java/kr/wisestone/owl/web/controller/IssueTableConfigController.java |   44 +++++++++++-----------
 src/main/java/kr/wisestone/owl/service/IssueTableConfigService.java           |    2 
 src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java  |   32 +++++++++-------
 src/main/java/kr/wisestone/owl/repository/IssueTableConfigRepository.java     |    2 
 4 files changed, 42 insertions(+), 38 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/repository/IssueTableConfigRepository.java b/src/main/java/kr/wisestone/owl/repository/IssueTableConfigRepository.java
index 92cb5e2..4952e94 100644
--- a/src/main/java/kr/wisestone/owl/repository/IssueTableConfigRepository.java
+++ b/src/main/java/kr/wisestone/owl/repository/IssueTableConfigRepository.java
@@ -5,7 +5,7 @@
 import org.springframework.data.repository.query.Param;
 
 public interface IssueTableConfigRepository extends JpaRepository<IssueTableConfig, Long> {
-    IssueTableConfig findByUserIdAndWorkspaceId(@Param("userId") Long userId, @Param("workspaceId") Long workspaceId);
+    IssueTableConfig findByUserIdAndWorkspaceIdAndIssueIdAndIssueTableType(@Param("userId") Long userId, @Param("workspaceId") Long workspaceId, @Param("issueId") Long issueId, @Param("issueTableType") int issueTableType);
 
     IssueTableConfig findByIssueIdAndIssueTableType(@Param("issueId") Long issueId, @Param("issueTableType") int issueTableType);
 
diff --git a/src/main/java/kr/wisestone/owl/service/IssueTableConfigService.java b/src/main/java/kr/wisestone/owl/service/IssueTableConfigService.java
index b5d2563..af1ac62 100644
--- a/src/main/java/kr/wisestone/owl/service/IssueTableConfigService.java
+++ b/src/main/java/kr/wisestone/owl/service/IssueTableConfigService.java
@@ -18,7 +18,7 @@
 
     void detailDownIssueTableConfig(Long issueId, Map<String, Object> resJsonData);
 
-    IssueTableConfig findByUserIdAndWorkspaceId();
+    IssueTableConfig findByUserIdAndWorkspaceIdAndIssueIdAndIssueTableType(Long issueId, int issueTableType);
 
     IssueTableConfig findByIssueIdAndIssueTableType(Long issueId, int issueTableType);
 
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 c4a3bc4..b39658c 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java
@@ -32,9 +32,6 @@
     @Autowired
     private UserService userService;
 
-    @Autowired
-    private IssueTableConfigService issueTableConfigService;
-
     @Override
     protected JpaRepository<IssueTableConfig, Long> getRepository() {
         return this.issueTableConfigRepository;
@@ -46,8 +43,8 @@
     //  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);
+        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceIdAndIssueIdAndIssueTableType(issueId, issueTableType);
+        //IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
 
         //  �븘吏� �뀒�씠釉� 而щ읆 �꽕�젙�쓣 �븯吏� �븡�븯�쓣 寃쎌슦
         if (issueTableConfig == null) {
@@ -56,12 +53,19 @@
             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{
+        /*}else if(saveIssueTableType == 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.setIssueId(issueId);
+            issueTableConfig.setIssueTableType(issueTableType);
+            issueTableConfig.setIssueTableConfigs(issueTableConfigs);*/
+        }else {
             issueTableConfig.setIssueTableConfigs(issueTableConfigs);
         }
         return this.issueTableConfigRepository.saveAndFlush(issueTableConfig);
@@ -93,9 +97,9 @@
     //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 �뀒�씠釉� �꽕�젙�쓣 議고쉶�븳�떎.
     @Override
     @Transactional(readOnly = true)
-    public IssueTableConfig findByUserIdAndWorkspaceId() {
-        return this.issueTableConfigRepository.findByUserIdAndWorkspaceId(this.webAppUtil.getLoginId(),
-                this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId());
+    public IssueTableConfig findByUserIdAndWorkspaceIdAndIssueIdAndIssueTableType(Long issueId, int issueTableType) {
+        return this.issueTableConfigRepository.findByUserIdAndWorkspaceIdAndIssueIdAndIssueTableType(this.webAppUtil.getLoginId(),
+                this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId(), issueId, issueTableType);
     }
 
     //�씠�뒋 Id�� IssueTableType 議고쉶
@@ -108,11 +112,11 @@
     // detail 以묐났 肄붾뱶 �젣嫄�
     private void detailMultipleCode(Map<String, Object> resJsonData, Long issueId, int issueTableType) {
         //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 寃��깋 議곌굔�쓣 議고쉶�븳�떎.
-        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceId();
+        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceIdAndIssueIdAndIssueTableType(issueId, issueTableType);
         IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
 
-        if (issueTableConfig != null && saveIssueTableType != null) {
-            resJsonData.put(Constants.RES_KEY_CONTENTS, issueTableConfig.getIssueTableConfigs());
+        if (issueTableConfig != null) {
+            resJsonData.put(Constants.RES_KEY_CONTENTS, saveIssueTableType.getIssueTableConfigs());
         }
         else {
             resJsonData.put(Constants.RES_KEY_CONTENTS, "");
diff --git a/src/main/java/kr/wisestone/owl/web/controller/IssueTableConfigController.java b/src/main/java/kr/wisestone/owl/web/controller/IssueTableConfigController.java
index 115e6e8..c009ecd 100644
--- a/src/main/java/kr/wisestone/owl/web/controller/IssueTableConfigController.java
+++ b/src/main/java/kr/wisestone/owl/web/controller/IssueTableConfigController.java
@@ -33,17 +33,6 @@
         return this.setSuccessMessage(resJsonData);
     }
 
-    //  硫붿씤 �씠�뒋 �뀒�씠釉� �꽕�젙 �긽�꽭 議고쉶
-    @RequestMapping(value = "/issueTableConfig/detail", produces = MediaType.APPLICATION_JSON_VALUE)
-    public
-    @ResponseBody
-    Map<String, Object> detail() {
-        Map<String, Object> resJsonData = new HashMap<>();
-        this.issueTableConfigService.detailIssueTableConfig(resJsonData);
-
-        return this.setSuccessMessage(resJsonData);
-    }
-
     //  �뿰愿� �씠�뒋 �뀒�씠釉� �꽕�젙 ���옣
     @RequestMapping(value = "/issueTableConfig/relationAdd", produces = MediaType.APPLICATION_JSON_VALUE)
     public
@@ -56,17 +45,6 @@
         return this.setSuccessMessage(resJsonData);
     }
 
-    //  �뿰愿� �씠�뒋 �뀒�씠釉� �꽕�젙 �긽�꽭 議고쉶
-    @RequestMapping(value = "/issueTableConfig/relationDetail", produces = MediaType.APPLICATION_JSON_VALUE)
-    public
-    @ResponseBody
-    Map<String, Object> relationDetail(@RequestBody Long issueId) {
-        Map<String, Object> resJsonData = new HashMap<>();
-        this.issueTableConfigService.detailRelationIssueTableConfig(issueId,resJsonData);
-
-        return this.setSuccessMessage(resJsonData);
-    }
-
     //  �븯�쐞 �씠�뒋 �뀒�씠釉� �꽕�젙 ���옣
     @RequestMapping(value = "/issueTableConfig/downAdd", produces = MediaType.APPLICATION_JSON_VALUE)
     public
@@ -79,6 +57,28 @@
         return this.setSuccessMessage(resJsonData);
     }
 
+    //  硫붿씤 �씠�뒋 �뀒�씠釉� �꽕�젙 �긽�꽭 議고쉶
+    @RequestMapping(value = "/issueTableConfig/detail", produces = MediaType.APPLICATION_JSON_VALUE)
+    public
+    @ResponseBody
+    Map<String, Object> detail() {
+        Map<String, Object> resJsonData = new HashMap<>();
+        this.issueTableConfigService.detailIssueTableConfig(resJsonData);
+
+        return this.setSuccessMessage(resJsonData);
+    }
+
+    //  �뿰愿� �씠�뒋 �뀒�씠釉� �꽕�젙 �긽�꽭 議고쉶
+    @RequestMapping(value = "/issueTableConfig/relationDetail", produces = MediaType.APPLICATION_JSON_VALUE)
+    public
+    @ResponseBody
+    Map<String, Object> relationDetail(@RequestBody Long issueId) {
+        Map<String, Object> resJsonData = new HashMap<>();
+        this.issueTableConfigService.detailRelationIssueTableConfig(issueId,resJsonData);
+
+        return this.setSuccessMessage(resJsonData);
+    }
+
     //  �븯�쐞 �씠�뒋 �뀒�씠釉� �꽕�젙 �긽�꽭 議고쉶
     @RequestMapping(value = "/issueTableConfig/downDetail", produces = MediaType.APPLICATION_JSON_VALUE)
     public

--
Gitblit v1.8.0