From 257766aa7e8a88b2b371fc6f8f52751af7d84eda Mon Sep 17 00:00:00 2001
From: wyu <kknd09321@nate.com>
Date: 수, 08 12월 2021 21:54:40 +0900
Subject: [PATCH] 연관 ,하위 이슈 요청 횟수 수정

---
 src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java |   93 +++++++++++++++++++---------------------------
 1 files changed, 38 insertions(+), 55 deletions(-)

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..dcdbf65 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java
@@ -16,6 +16,7 @@
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.List;
 import java.util.Map;
 
 @Service
@@ -32,22 +33,18 @@
     @Autowired
     private UserService userService;
 
-    @Autowired
-    private IssueTableConfigService issueTableConfigService;
-
     @Override
     protected JpaRepository<IssueTableConfig, Long> getRepository() {
         return this.issueTableConfigRepository;
     }
 
-    Long issueId;
+    Long issueTypeId;
     int issueTableType = 0; //issueTableType 珥덇린媛� �꽕�젙
 
     //  add 以묐났肄붾뱶 �젣嫄�
-    public IssueTableConfig addMultipleCode(Map<String, Object> params, Long issueId, int issueTableType) {
+    public IssueTableConfig addIssueTableConfig(Map<String, Object> params, Long issueTypeId, int issueTableType) {
         String issueTableConfigs = MapUtil.getString(params, "issueTableConfigs");
-        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceId();
-        IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
+        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceIdAndIssueTypeIdAndIssueTableType(issueTypeId, issueTableType);
 
         //  �븘吏� �뀒�씠釉� 而щ읆 �꽕�젙�쓣 �븯吏� �븡�븯�쓣 寃쎌슦
         if (issueTableConfig == null) {
@@ -56,12 +53,10 @@
             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.setIssueTypeId(issueTypeId);
             issueTableConfig.setIssueTableType(issueTableType);
             issueTableConfig.setIssueTableConfigs(issueTableConfigs);
-        }else{
+        }else {
             issueTableConfig.setIssueTableConfigs(issueTableConfigs);
         }
         return this.issueTableConfigRepository.saveAndFlush(issueTableConfig);
@@ -71,74 +66,62 @@
     @Override
     @Transactional
     public IssueTableConfig addIssueTableConfig(Map<String, Object> params) {
-        issueId = (long) -1;
-        issueTableType = 1;
-        return this.addMultipleCode(params, issueId, issueTableType);
+        issueTypeId = MapUtil.getLong(params, "issueTypeId");
+        issueTableType = 1; //硫붿씤
+        return this.addIssueTableConfig(params, issueTypeId, issueTableType);
     }
     // �뿰愿� �씠�뒋 �뀒�씠釉� �꽕�젙 �젙蹂� ���옣
     @Override
     public IssueTableConfig addRelationIssueTableConfig(Map<String, Object> params) {
-        issueId = MapUtil.getLong(params, "issueId");
-        issueTableType = 2;
-        return this.addMultipleCode(params, issueId, issueTableType);
+        issueTypeId = MapUtil.getLong(params, "issueTypeId");
+        issueTableType = 2; //�뿰愿�
+        return this.addIssueTableConfig(params, issueTypeId, issueTableType);
     }
     // �븯�쐞 �씠�뒋 �뀒�씠釉� �꽕�젙 �젙蹂� ���옣
     @Override
     public IssueTableConfig addDownIssueTableConfig(Map<String, Object> params) {
-        issueId = MapUtil.getLong(params, "issueId");
-        issueTableType = 3;
-        return this.addMultipleCode(params, issueId, issueTableType);
+        issueTypeId = MapUtil.getLong(params, "issueTypeId");
+        issueTableType = 3; //�븯�쐞
+        return this.addIssueTableConfig(params, issueTypeId, issueTableType);
     }
+
 
     //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 �뀒�씠釉� �꽕�젙�쓣 議고쉶�븳�떎.
     @Override
     @Transactional(readOnly = true)
-    public IssueTableConfig findByUserIdAndWorkspaceId() {
-        return this.issueTableConfigRepository.findByUserIdAndWorkspaceId(this.webAppUtil.getLoginId(),
-                this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId());
+    public IssueTableConfig findByUserIdAndWorkspaceIdAndIssueTypeIdAndIssueTableType(Long issueTypeId, int issueTableType) {
+        List<IssueTableConfig> issueTableConfigList = this.issueTableConfigRepository.findByUserIdAndWorkspaceIdAndIssueTypeIdAndIssueTableType(this.webAppUtil.getLoginId(),
+                this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId(), issueTypeId, issueTableType);
+
+        if (issueTableConfigList != null && issueTableConfigList.size() > 0) {
+            return  issueTableConfigList.get(0);
+        }
+        return null;
     }
 
-    //�씠�뒋 Id�� IssueTableType 議고쉶
+    //�씠�뒋���엯 Id�� IssueTableType 議고쉶
     @Override
     @Transactional(readOnly = true)
-    public IssueTableConfig findByIssueIdAndIssueTableType(Long issueId, int issueTableType) {
-        return this.issueTableConfigRepository.findByIssueIdAndIssueTableType(issueId, issueTableType);
+    public IssueTableConfig findByIssueTypeIdAndIssueTableType(Long issueTypeId, int issueTableType) {
+        List<IssueTableConfig> issueTableConfigs = this.issueTableConfigRepository.findByIssueTypeIdAndIssueTableType(issueTypeId, issueTableType);
+        if (issueTableConfigs != null && issueTableConfigs.size() > 0){
+            return issueTableConfigs.get(0);
+        }
+        return  null;
     }
 
-    // detail 以묐났 肄붾뱶 �젣嫄�
-    private void detailMultipleCode(Map<String, Object> resJsonData, Long issueId, int issueTableType) {
-        //  �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 寃��깋 議곌굔�쓣 議고쉶�븳�떎.
-        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceId();
-        IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType);
+    @Override
+    public void detailIssueTableConfig(Map<String, Object> params, Map<String, Object> resJsonData) {
+        Long issueTypeId = MapUtil.getLong(params,"issueTypeId");
+        int issueTableType = MapUtil.getInteger(params,"issueTableType");
 
-        if (issueTableConfig != null && saveIssueTableType != null) {
+        IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceIdAndIssueTypeIdAndIssueTableType(issueTypeId, issueTableType);
+
+        if (issueTableConfig != null) {
             resJsonData.put(Constants.RES_KEY_CONTENTS, issueTableConfig.getIssueTableConfigs());
         }
         else {
             resJsonData.put(Constants.RES_KEY_CONTENTS, "");
         }
     }
-
-    //  ���옣�맂 �씠�뒋 �뀒�씠釉� �꽕�젙�쓣 議고쉶�븳�떎.
-    @Override
-    @Transactional(readOnly = true)
-    public void detailIssueTableConfig(Map<String, Object> resJsonData) {
-        issueId = (long) -1;
-        issueTableType = 1;
-        this.detailMultipleCode(resJsonData, issueId, issueTableType);
-    }
-    //  ���옣�맂 �뿰愿� �씠�뒋 �뀒�씠釉� �꽕�젙 議고쉶
-    @Override
-    public void detailRelationIssueTableConfig(Long issueId, Map<String, Object> resJsonData) {
-        issueTableType = 2;
-        this.detailMultipleCode(resJsonData, issueId, issueTableType);
-    }
-    //  ���옣�맂 �븯�쐞 �씠�뒋 �뀒�씠釉� �꽕�젙 議고쉶
-    @Override
-    public void detailDownIssueTableConfig(Long issueId, Map<String, Object> resJsonData) {
-        issueTableType = 3;
-        this.detailMultipleCode(resJsonData, issueId, issueTableType);
-    }
-
-
 }

--
Gitblit v1.8.0