From f5d5f75a0513ec6079482cc1a28b59b00ae58ea7 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 목, 27 1월 2022 19:32:25 +0900
Subject: [PATCH] 업체 url 예외 처리

---
 src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java |   61 +++++++++++++++++-------------
 1 files changed, 35 insertions(+), 26 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 765ab69..8d3e1be 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
@@ -356,17 +356,17 @@
                     if(companyFields != null && companyFields.size() > 0) {
                         for (Map<String, Object> companyField : companyFields) {
                             CompanyFieldVo companyFieldVo = ConvertUtil.convertMapToClass(companyField, CompanyFieldVo.class);
-                            if(useValue.equals(companyFieldVo.getUrl())) {
+                            if(companyFieldVo.getUrl() != null && useValue.equals(companyFieldVo.getUrl())) {
                                 companyField.put("companyId", companyField.get("id"));
                                 issueCompanyFields.add(companyField);
-                                if(companyFieldVo.getIspId() != null) {
+                                if(companyFieldVo.getIspId() != null && companyFieldVo.getIspId() != -1) {
                                     Map<String, Object> ispField = this.ispFieldService.find(companyFieldVo.getIspId());
                                     if (ispField != null) {
                                         ispField.put("ispId", ispField.get("id"));
                                         issueIspFields.add(ispField);
                                     }
                                 }
-                                if(companyFieldVo.getHostingId() != null) {
+                                if(companyFieldVo.getHostingId() != null && companyFieldVo.getHostingId() != -1) {
                                     Map<String, Object> hostingField = this.hostingFieldService.find(companyFieldVo.getHostingId());
                                     if (hostingField != null) {
                                         hostingField.put("hostingId", hostingField.get("id"));
@@ -3204,37 +3204,46 @@
      * @param issueForm IssueForm
      */
     private void setIssuePartners(IssueForm issueForm, Issue issue) {
+        IssueCompany issueCompany = new IssueCompany();
+        IssueIsp issueIsp = new IssueIsp();
+        IssueHosting issueHosting = new IssueHosting();
         //issueCompany �벑濡�
         if (issueForm.getIssueCompanyFields() != null && issueForm.getIssueCompanyFields().size() > 0) {
             for (Map<String, Object> issueCompanyMap : issueForm.getIssueCompanyFields()) {
                 CompanyField companyField =  ConvertUtil.convertMapToClass(issueCompanyMap, CompanyField.class);
-                IssueCompany issueCompany = ConvertUtil.convertMapToClass(issueCompanyMap, IssueCompany.class);
+                issueCompany = ConvertUtil.convertMapToClass(issueCompanyMap, IssueCompany.class, "id");
                 issueCompany.setCompanyField(companyField);
                 issueCompany.setIssue(issue);
                 this.issueCompanyRepository.saveAndFlush(issueCompany);
-
-                //  �뾽泥댁쓽 ISP媛� �엳�뒗 寃쎌슦 issueISP �벑濡�
-                if (companyField.getIspId() != null) {
-                    IspField ispField = this.ispFieldService.getIsp(companyField.getIspId());
-                    IssueIsp issueIsp = ConvertUtil.copyProperties(ispField, IssueIsp.class);
-                    issueIsp.setIspField(ispField);
-                    issueIsp.setIssue(issue);
-                    this.issueIspRepository.saveAndFlush(issueIsp);
+                
+                //  �궗�슜�옄媛� ISP瑜� 吏곸젒 �엯�젰�븯吏� �븡�븯�쓣 寃쎌슦 �뾽泥댁뿉 �벑濡앸릺�뼱�엳�뒗 ISP �꽕�젙 
+                if (issueForm.getIssueIspFields() == null || issueForm.getIssueIspFields().size() < 1) {
+                    //  �뾽泥댁쓽 ISP媛� �엳�뒗 寃쎌슦 issueISP �벑濡�
+                    if (companyField.getIspId() != null && companyField.getIspId() != -1) {
+                        IspField ispField = this.ispFieldService.getIsp(companyField.getIspId());
+                        issueIsp = ConvertUtil.copyProperties(ispField, IssueIsp.class, "id");
+                        issueIsp.setIspField(ispField);
+                        issueIsp.setIssue(issue);
+                        this.issueIspRepository.saveAndFlush(issueIsp);
+                    }
                 }
-                //  �뾽泥댁쓽 �샇�뒪�똿�씠 �엳�뒗 寃쎌슦 issueHosting �벑濡�
-                if (companyField.getHostingId() != null) {
-                    HostingField hostingField = this.hostingFieldService.getHosting(companyField.getHostingId());
-                    IssueHosting issueHosting = ConvertUtil.copyProperties(hostingField, IssueHosting.class);
-                    issueHosting.setHostingField(hostingField);
-                    issueHosting.setIssue(issue);
-                    this.issueHostingRepository.saveAndFlush(issueHosting);
+                //  �궗�슜�옄媛� �샇�뒪�똿�쓣 吏곸젒 �엯�젰�븯吏� �븡�븯�쓣 寃쎌슦 �뾽泥댁뿉 �벑濡앸릺�뼱�엳�뒗 �샇�뒪�똿 �꽕�젙
+                if (issueForm.getIssueHostingFields() == null || issueForm.getIssueHostingFields().size() < 1) {
+                    //  �뾽泥댁쓽 �샇�뒪�똿�씠 �엳�뒗 寃쎌슦 issueHosting �벑濡�
+                    if (companyField.getHostingId() != null && companyField.getHostingId() != -1) {
+                        HostingField hostingField = this.hostingFieldService.getHosting(companyField.getHostingId());
+                        issueHosting = ConvertUtil.copyProperties(hostingField, IssueHosting.class, "id");
+                        issueHosting.setHostingField(hostingField);
+                        issueHosting.setIssue(issue);
+                        this.issueHostingRepository.saveAndFlush(issueHosting);
+                    }
                 }
             }
         }
         //issueIsp �벑濡�
         if (issueForm.getIssueIspFields() != null && issueForm.getIssueIspFields().size() > 0) {
             for (Map<String, Object> issueIspMap : issueForm.getIssueIspFields()) {
-                IssueIsp issueIsp = ConvertUtil.convertMapToClass(issueIspMap, IssueIsp.class);
+                issueIsp = ConvertUtil.convertMapToClass(issueIspMap, IssueIsp.class, "id");
                 IspField ispField = ConvertUtil.convertMapToClass(issueIspMap, IspField.class);
                 issueIsp.setIspField(ispField);
                 issueIsp.setIssue(issue);
@@ -3244,7 +3253,7 @@
         //issueHosting �벑濡�
         if (issueForm.getIssueHostingFields() != null && issueForm.getIssueHostingFields().size() > 0) {
             for (Map<String, Object> issueHostingMap : issueForm.getIssueHostingFields()) {
-                IssueHosting issueHosting = ConvertUtil.convertMapToClass(issueHostingMap, IssueHosting.class);
+                issueHosting = ConvertUtil.convertMapToClass(issueHostingMap, IssueHosting.class, "id");
                 HostingField hostingField = ConvertUtil.convertMapToClass(issueHostingMap, HostingField.class);
                 issueHosting.setHostingField(hostingField);
                 issueHosting.setIssue(issue);
@@ -3446,7 +3455,7 @@
      * @return boolean
      */
     private Boolean cellNullCheck (Cell cell) {
-        return cell != null && cell.getStringCellValue() != null && cell.getCellType() != Cell.CELL_TYPE_BLANK;
+        return cell != null && cell.getStringCellValue() != null && !cell.getStringCellValue().equals("") && cell.getCellType() != Cell.CELL_TYPE_BLANK;
     }
 
     //  �뿊�� �븘�뱶�뿉 �엳�뒗 �젙蹂대�� �씠�뒋 form �쑝濡� �삷湲대떎.
@@ -3842,7 +3851,7 @@
     //  �씠�뒋瑜� �뀥�뵆由우뿉 �뵲�씪 �뙆�듃�꼫 �떞�떦�옄�뿉寃� 硫붿씪濡� 諛쒖넚�븳�떎.
     @Override
     @Transactional(readOnly = true)
-    public void sendIssueEmailPartners(EmailTemplateForm emailTemplateForm) {
+    public void sendIssueEmailPartners(EmailTemplateForm emailTemplateForm, List<MultipartFile> multipartFiles) {
         if (emailTemplateForm.getSendEmails().size() < 1) {
             throw new OwlRuntimeException(
                     this.messageAccessor.getMessage(MsgConstants.ISSUE_NOT_SEND_USER));
@@ -3869,14 +3878,14 @@
         for(int i=0; i < sendMails.length; i++) {
             sendMails[i] = CommonUtil.decryptAES128(sendMails[i]);
         }
-        this.systemEmailService.sendEmail(emailTemplateForm.getTitle(), emailTemplateForm.getTemplate(), sendMails, null);
+        this.systemEmailService.sendEmail(emailTemplateForm.getTitle(), emailTemplateForm.getTemplate(), sendMails, null, multipartFiles);
 
         this.issueHistoryService.detectSendIssueMail(IssueHistoryType.SEND, emailTemplateForm.getSendEmails(), sb);
         this.issueHistoryService.addIssueHistory(issue, IssueHistoryType.SEND, sb.toString());
     }
 
     @Override
-    public void sendCommonEmail(EmailCommonForm emailCommonForm) {
+    public void sendCommonEmail(EmailCommonForm emailCommonForm, List<MultipartFile> multipartFiles) {
         if (emailCommonForm.getSendEmails().size() < 1) {
             throw new OwlRuntimeException(
                     this.messageAccessor.getMessage(MsgConstants.ISSUE_NOT_SEND_USER));
@@ -3900,7 +3909,7 @@
         for(int i=0; i < sendMails.length; i++) {
             sendMails[i] = CommonUtil.decryptAES128(sendMails[i]);
         }
-        this.systemEmailService.sendEmail(emailCommonForm.getTitle(), emailCommonForm.getDescription(), sendMails, null);
+        this.systemEmailService.sendEmail(emailCommonForm.getTitle(), emailCommonForm.getDescription(), sendMails, null, multipartFiles);
 
         if (issue != null) {
             this.issueHistoryService.detectSendIssueMail(IssueHistoryType.SEND, emailCommonForm.getSendEmails(), sb);

--
Gitblit v1.8.0