From e0af96194a1fdc3c92d125f67370071b948dcde5 Mon Sep 17 00:00:00 2001 From: wyu <kknd09321@nate.com> Date: 월, 22 11월 2021 18:29:55 +0900 Subject: [PATCH] 이슈 상세 연관,하위 테이블 표시 설정 - [프론트] --- src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java | 105 +++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 82 insertions(+), 23 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 a404a90..b39658c 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java @@ -1,13 +1,13 @@ package kr.wisestone.owl.service.impl; import kr.wisestone.owl.constant.Constants; -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; @@ -37,53 +37,112 @@ return this.issueTableConfigRepository; } - // �씠�뒋 �뀒�씠釉� 而щ읆 �꽕�젙 �젙蹂대�� ���옣�븳�떎. - @Override - @Transactional - public IssueTableConfig addIssueTableConfig(Map<String, Object> params) { + 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 saveIssueTableConfig = this.findByUserIdAndWorkspaceId(); + IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceIdAndIssueIdAndIssueTableType(issueId, issueTableType); + //IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType); // �븘吏� �뀒�씠釉� 而щ읆 �꽕�젙�쓣 �븯吏� �븡�븯�쓣 寃쎌슦 - if (saveIssueTableConfig == null) { - IssueTableConfig issueTableConfig = new IssueTableConfig(); + 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.setIssueId(issueId); + issueTableConfig.setIssueTableType(issueTableType); issueTableConfig.setIssueTableConfigs(issueTableConfigs); - return this.issueTableConfigRepository.saveAndFlush(issueTableConfig); + /*}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); } - else { - saveIssueTableConfig.setIssueTableConfigs(issueTableConfigs); - return this.issueTableConfigRepository.saveAndFlush(saveIssueTableConfig); - } + return this.issueTableConfigRepository.saveAndFlush(issueTableConfig); + } + + // �씠�뒋 �뀒�씠釉� 而щ읆 �꽕�젙 �젙蹂대�� ���옣�븳�떎. + @Override + @Transactional + public IssueTableConfig addIssueTableConfig(Map<String, Object> params) { + issueId = (long) -1; + issueTableType = 1; + return this.addMultipleCode(params, issueId, issueTableType); + } + // �뿰愿� �씠�뒋 �뀒�씠釉� �꽕�젙 �젙蹂� ���옣 + @Override + public IssueTableConfig addRelationIssueTableConfig(Map<String, Object> params) { + issueId = MapUtil.getLong(params, "issueId"); + issueTableType = 2; + return this.addMultipleCode(params, issueId, issueTableType); + } + // �븯�쐞 �씠�뒋 �뀒�씠釉� �꽕�젙 �젙蹂� ���옣 + @Override + public IssueTableConfig addDownIssueTableConfig(Map<String, Object> params) { + issueId = MapUtil.getLong(params, "issueId"); + issueTableType = 3; + return this.addMultipleCode(params, issueId, issueTableType); } // �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 �뀒�씠釉� �꽕�젙�쓣 議고쉶�븳�떎. @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 議고쉶 @Override @Transactional(readOnly = true) - public void detailIssueTableConfig(Map<String, Object> resJsonData) { + 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 issueTableConfig = this.findByUserIdAndWorkspaceIdAndIssueIdAndIssueTableType(issueId, issueTableType); + IssueTableConfig saveIssueTableType = this.findByIssueIdAndIssueTableType(issueId,issueTableType); if (issueTableConfig != null) { - resJsonData.put(Constants.RES_KEY_CONTENTS, issueTableConfig.getIssueTableConfigs()); + resJsonData.put(Constants.RES_KEY_CONTENTS, saveIssueTableType.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