From d25c62b6ff3ef7637f9358cfb0782c6706c9b55d Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 목, 02 12월 2021 10:13:00 +0900 Subject: [PATCH] 이슈 메일 전송 이력 남기기 완료 * 바로 이력이 안남겨지는 문제 해결필요(현재 새로고침을 해야 이력이 보임) --- src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java | 114 ++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 92 insertions(+), 22 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..ce863bf 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; @@ -16,6 +16,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.List; import java.util.Map; @Service @@ -37,44 +38,81 @@ return this.issueTableConfigRepository; } - // �씠�뒋 �뀒�씠釉� 而щ읆 �꽕�젙 �젙蹂대�� ���옣�븳�떎. - @Override - @Transactional - public IssueTableConfig addIssueTableConfig(Map<String, Object> params) { + Long issueTypeId; + int issueTableType = 0; //issueTableType 珥덇린媛� �꽕�젙 + + // add 以묐났肄붾뱶 �젣嫄� + public IssueTableConfig addIssueTableConfig(Map<String, Object> params, Long issueTypeId, int issueTableType) { String issueTableConfigs = MapUtil.getString(params, "issueTableConfigs"); - // �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 紐⑸줉 �뀒�씠釉� 而щ읆 �꽕�젙�쓣 議고쉶�븳�떎. - IssueTableConfig saveIssueTableConfig = this.findByUserIdAndWorkspaceId(); + IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceIdAndIssueTypeIdAndIssueTableType(issueTypeId, 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.setIssueTypeId(issueTypeId); + issueTableConfig.setIssueTableType(issueTableType); issueTableConfig.setIssueTableConfigs(issueTableConfigs); - return this.issueTableConfigRepository.saveAndFlush(issueTableConfig); + }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) { + issueTypeId = MapUtil.getLong(params, "issueTypeId"); + issueTableType = 1; //硫붿씤 + return this.addIssueTableConfig(params, issueTypeId, issueTableType); + } + // �뿰愿� �씠�뒋 �뀒�씠釉� �꽕�젙 �젙蹂� ���옣 + @Override + public IssueTableConfig addRelationIssueTableConfig(Map<String, Object> params) { + issueTypeId = MapUtil.getLong(params, "issueTypeId"); + issueTableType = 2; //�뿰愿� + return this.addIssueTableConfig(params, issueTypeId, issueTableType); + } + // �븯�쐞 �씠�뒋 �뀒�씠釉� �꽕�젙 �젙蹂� ���옣 + @Override + public IssueTableConfig addDownIssueTableConfig(Map<String, Object> params) { + 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 議고쉶 @Override @Transactional(readOnly = true) - public void detailIssueTableConfig(Map<String, Object> resJsonData) { + 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 detailIssueTableConfig(Map<String, Object> resJsonData, Long issueTypeId, int issueTableType) { // �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 寃��깋 議곌굔�쓣 議고쉶�븳�떎. - IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceId(); + IssueTableConfig issueTableConfig = this.findByUserIdAndWorkspaceIdAndIssueTypeIdAndIssueTableType(issueTypeId, issueTableType); if (issueTableConfig != null) { resJsonData.put(Constants.RES_KEY_CONTENTS, issueTableConfig.getIssueTableConfigs()); @@ -84,6 +122,38 @@ } } + // ���옣�맂 �씠�뒋 �뀒�씠釉� �꽕�젙�쓣 議고쉶�븳�떎. + @Override + @Transactional(readOnly = true) + public void detailIssueTableConfig(Map<String, Object> params, Map<String, Object> resJsonData) { + issueTypeId = MapUtil.getLong(params, "issueTypeId"); + + issueTableType = 1; + // �빐�떦 �뾽臾� 怨듦컙�뿉�꽌 �궗�슜�옄�쓽 �씠�뒋 寃��깋 議곌굔�쓣 議고쉶�븳�떎. + 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 + public void detailRelationIssueTableConfig(Map<String, Object> params, Map<String, Object> resJsonData) { + issueTableType = 2; + issueTypeId = MapUtil.getLong(params, "issueTypeId"); + this.detailIssueTableConfig(resJsonData, issueTypeId, issueTableType); + } + // ���옣�맂 �븯�쐞 �씠�뒋 �뀒�씠釉� �꽕�젙 議고쉶 + @Override + public void detailDownIssueTableConfig(Map<String, Object> params, Map<String, Object> resJsonData) { + issueTableType = 3; + issueTypeId = MapUtil.getLong(params, "issueTypeId"); + this.detailIssueTableConfig(resJsonData, issueTypeId, issueTableType); + } + } -- Gitblit v1.8.0