From 9f955be440cad5e6b868800ff0a0acd17c0a3004 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 목, 13 1월 2022 15:30:35 +0900
Subject: [PATCH] - issue_company 테이블에 컬럼 추가 및 'tel' 컬럼 사이즈 변경 - 이슈 추가,수정 시 업체 추가된 항목들 추가 - 하위이슈 페이징 오류 수정

---
 src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java |   49 +++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 39 insertions(+), 10 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java
index 73d49c4..9ae3495 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java
@@ -6,9 +6,11 @@
 import kr.wisestone.owl.constant.MsgConstants;
 import kr.wisestone.owl.domain.CompanyField;
 import kr.wisestone.owl.domain.HostingField;
+import kr.wisestone.owl.domain.IspField;
 import kr.wisestone.owl.exception.OwlRuntimeException;
 import kr.wisestone.owl.mapper.HostingFieldMapper;
 import kr.wisestone.owl.repository.HostingFieldRepository;
+import kr.wisestone.owl.service.CompanyFieldService;
 import kr.wisestone.owl.service.HostingFieldService;
 import kr.wisestone.owl.service.WorkspaceService;
 import kr.wisestone.owl.util.ConvertUtil;
@@ -24,6 +26,7 @@
 import org.springframework.data.domain.Pageable;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.ui.Model;
 import org.springframework.web.servlet.ModelAndView;
 
@@ -46,6 +49,9 @@
     private WorkspaceService workspaceService;
 
     @Autowired
+    private CompanyFieldService companyFieldService;
+
+    @Autowired
     private ExcelView excelView;
 
     @Autowired
@@ -60,12 +66,18 @@
     @Override
     public HostingField add(HostingFieldForm HostingFieldForm) {
         if (HostingFieldForm.getTelList() != null && HostingFieldForm.getTelList().size() > 0) {
-            String[] tels = ConvertUtil.ToArray(HostingFieldForm.getTelList());
-            HostingFieldForm.setTel(Arrays.toString(tels));
+            String tels = HostingFieldForm.getTelList().toString();
+            if (tels.contains("[")) {
+                tels = tels.substring(1, tels.indexOf("]"));
+            }
+            HostingFieldForm.setTel(tels.trim());
         }
         if (HostingFieldForm.getEmailList() != null && HostingFieldForm.getEmailList().size() > 0) {
-            String[] emails = ConvertUtil.ToArray(HostingFieldForm.getEmailList());
-            HostingFieldForm.setEmail(Arrays.toString(emails));
+            String emails = HostingFieldForm.getEmailList().toString();
+            if (emails.contains("[")) {
+                emails = emails.substring(1, emails.indexOf("]"));
+            }
+            HostingFieldForm.setEmail(emails.trim());
         }
 
         HostingField hostingField = ConvertUtil.copyProperties(HostingFieldForm, HostingField.class);
@@ -111,12 +123,18 @@
     @Override
     public void modify(HostingFieldForm HostingFieldForm) {
         if (HostingFieldForm.getTelList() != null && HostingFieldForm.getTelList().size() > 0) {
-            String[] tels = ConvertUtil.ToArray(HostingFieldForm.getTelList());
-            HostingFieldForm.setTel(Arrays.toString(tels));
+            String tels = HostingFieldForm.getTelList().toString();
+            if (tels.contains("[")) {
+                tels = tels.substring(1, tels.indexOf("]"));
+            }
+            HostingFieldForm.setTel(tels.trim());
         }
         if (HostingFieldForm.getEmailList() != null && HostingFieldForm.getEmailList().size() > 0) {
-            String[] emails = ConvertUtil.ToArray(HostingFieldForm.getEmailList());
-            HostingFieldForm.setEmail(Arrays.toString(emails));
+            String emails = HostingFieldForm.getEmailList().toString();
+            if (emails.contains("[")) {
+                emails = emails.substring(1, emails.indexOf("]"));
+            }
+            HostingFieldForm.setEmail(emails.trim());
         }
         HostingField HostingField = ConvertUtil.copyProperties(HostingFieldForm, HostingField.class);
         hostingFieldRepository.saveAndFlush(HostingField);
@@ -127,15 +145,26 @@
     public void remove(HostingFieldForm HostingFieldForm) {
         if (HostingFieldForm.getRemoveIds().size() < 1) {
             throw new OwlRuntimeException(
-                    this.messageAccessor.getMessage(MsgConstants.COMPANY_REMOVE_NOT_SELECT));
+                    this.messageAccessor.getMessage(MsgConstants.HOSTING_REMOVE_NOT_SELECT));
         }
         for (Long id : HostingFieldForm.getRemoveIds()) {
+            List<CompanyField> companyField = this.companyFieldService.findByHosting(id);
+            if (companyField != null && companyField.size() > 0) {
+                throw new OwlRuntimeException(
+                        this.messageAccessor.getMessage(MsgConstants.HOSTING_EXIST_COMPANY));
+            } else {
                 this.hostingFieldRepository.deleteById(id);
-
+            }
         }
         this.hostingFieldRepository.flush();
     }
 
+    @Override
+    @Transactional(readOnly = true)
+    public List<HostingField> findAll() {
+        return this.hostingFieldRepository.findAll();
+    }
+
     // Hosting 紐⑸줉�쓣 �뿊��濡� �떎�슫濡쒕뱶 �븳�떎.
     @Override
     public ModelAndView downloadExcel(HttpServletRequest request, Model model) {

--
Gitblit v1.8.0