From 9b589820e73c0ca36ceca13ddd6b8c2dda810459 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 월, 29 11월 2021 17:03:41 +0900
Subject: [PATCH] 이슈 메일 보내기 기능 - 전체 대상자 출력 백엔드

---
 src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java |   70 +++++++++++++++++++++++++++++++---
 1 files changed, 63 insertions(+), 7 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
index c74683f..59a159b 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
@@ -2711,15 +2711,71 @@
     }
 
     @Override
-    public void findMailTarget(Map<String, Object> resJsonData, Map<String, Object> params) {
-        Long issueId = MapUtil.getLong(params, "issueId");
-        Issue issue = this.getIssue(issueId);
+    @Transactional
+    public void findMailTargetAll(Map<String, Object> resJsonData, IssueCondition condition, Pageable pageable) {
         IssueVo issueVo = new IssueVo();
+        //Long issueId = MapUtil.getLong(params, "issueId");
+        Long issueId = condition.getId();
 
-        this.setIssueCompanyField(issue, issueVo);  //�뾽泥� �젙蹂� �꽭�똿
-        this.setIssueIspField(issue, issueVo);  //ISP �젙蹂� �꽭�똿
-        this.setIssueHostingField(issue, issueVo);  //HOSTING �젙蹂� �꽭�똿
+        List<String> emailList = Lists.newArrayList();
 
-        resJsonData.put(Constants.RES_KEY_CONTENTS, issueVo);
+        if(issueId != null){
+            Issue issue = this.getIssue(issueId);
+            issueVo = ConvertUtil.copyProperties(issue, IssueVo.class);
+            this.setIssueCompanyField(issue, issueVo);  //�뾽泥� �젙蹂� �꽭�똿
+            this.setIssueIspField(issue, issueVo);  //ISP �젙蹂� �꽭�똿
+            this.setIssueHostingField(issue, issueVo);  //HOSTING �젙蹂� �꽭�똿
+            for(IssueCompanyVo issueCompanyVo : issueVo.getIssueCompanyVos()) {
+                emailList.add(issueCompanyVo.getEmail());
+            }
+            for(IssueIspVo issueIspVo : issueVo.getIssueIspVos()) {
+                emailList.add(issueIspVo.getEmail());
+            }
+            for(IssueHostingVo issueHostingVo : issueVo.getIssueHostingVos()) {
+                emailList.add(issueHostingVo.getEmail());
+            }
+
+        }
+
+        Long totalCount = this.issueMapper.count(condition);
+        int totalPage = (int) Math.ceil((totalCount - 1) / pageable.getPageSize()) + 1;
+
+        condition.setPage(pageable.getPageNumber() * pageable.getPageSize());
+        condition.setPageSize(pageable.getPageSize());
+        //resJsonData.put(Constants.RES_KEY_CONTENTS, emailList);
+        resJsonData.put(Constants.RES_KEY_CONTENTS, emailList);
+        resJsonData.put(Constants.REQ_KEY_PAGE_VO, new ResPage(pageable.getPageNumber(), pageable.getPageSize(),
+                totalPage, totalCount));
     }
+
+    /*@Override
+    @Transactional
+    public void findMailTargetCompany(Map<String, Object> resJsonData, Map<String, Object> params) {
+        IssueVo issueVo = new IssueVo();
+        Long issueId = MapUtil.getLong(params, "issueId");
+
+        List<String> emailList = Lists.newArrayList();
+
+        if(issueId != null){
+            Issue issue = this.getIssue(issueId);
+            issueVo = ConvertUtil.copyProperties(issue, IssueVo.class);
+            this.setIssueCompanyField(issue, issueVo);  //�뾽泥� �젙蹂� �꽭�똿
+            for(IssueCompanyVo issueCompanyVo : issueVo.getIssueCompanyVos()) {
+                emailList.add(issueCompanyVo.getEmail());
+            }
+        }
+        resJsonData.put(Constants.RES_KEY_CONTENTS, emailList);
+    }
+
+    @Override
+    @Transactional
+    public void findMailTargetIsp(Map<String, Object> resJsonData, Map<String, Object> params) {
+
+    }
+
+    @Override
+    @Transactional
+    public void findMailTargetHosting(Map<String, Object> resJsonData, Map<String, Object> params) {
+
+    }*/
 }

--
Gitblit v1.8.0