From e2d65771ee3acc23b1ae09bc3d9c280844d54c8e Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 목, 09 12월 2021 10:47:49 +0900
Subject: [PATCH] 업체 기준 ISP/호스팅 연동 진행중 - ISP,호스팅 이름은 autoComplete 형태라 못 불러오는 문제 있음

---
 src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java |   28 ++++++++++++++++++++++++++++
 1 files changed, 28 insertions(+), 0 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 eee1084..d969fe6 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/HostingFieldServiceImpl.java
@@ -4,6 +4,7 @@
 import kr.wisestone.owl.common.ExcelConditionCheck;
 import kr.wisestone.owl.constant.Constants;
 import kr.wisestone.owl.constant.MsgConstants;
+import kr.wisestone.owl.domain.CompanyField;
 import kr.wisestone.owl.domain.HostingField;
 import kr.wisestone.owl.exception.OwlRuntimeException;
 import kr.wisestone.owl.mapper.HostingFieldMapper;
@@ -18,6 +19,7 @@
 import kr.wisestone.owl.web.condition.HostingFieldCondition;
 import kr.wisestone.owl.web.form.HostingFieldForm;
 import kr.wisestone.owl.web.view.ExcelView;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Pageable;
 import org.springframework.data.jpa.repository.JpaRepository;
@@ -56,9 +58,32 @@
     // Hosting 異붽�
     @Override
     public HostingField add(HostingFieldForm HostingFieldForm) {
+        //  url �쑀�슚�꽦 泥댄겕
+        this.verifyUrl(HostingFieldForm.getUrl(), null);
+
         HostingField HostingField = ConvertUtil.copyProperties(HostingFieldForm, HostingField.class);
         hostingFieldRepository.saveAndFlush(HostingField);
         return HostingField;
+    }
+
+    //  url �쑀�슚�꽦 泥댄겕
+    private void verifyUrl(String url, Long id) {
+        if (StringUtils.isEmpty(url)) {
+            throw new OwlRuntimeException(
+                    this.messageAccessor.getMessage(MsgConstants.COMPANYFIELD_NOT_URL));
+        }
+        HostingField hostingField;
+
+        if(id == null){
+            hostingField = this.hostingFieldRepository.findByUrl(url);
+        } else {
+            hostingField = this.hostingFieldRepository.findByUrlAndIdNot(url,id);
+        }
+
+        if (hostingField != null) {
+            throw new OwlRuntimeException(
+                    this.messageAccessor.getMessage(MsgConstants.COMPANYFIELD_USED_URL));
+        }
     }
 
     // Hosting 紐⑸줉�쓣 媛��졇�삩�떎.
@@ -91,6 +116,9 @@
     // Hosting �젙濡쒕�� �닔�젙�븳�떎.
     @Override
     public void modify(HostingFieldForm HostingFieldForm) {
+        //  url �쑀�슚�꽦 泥댄겕
+        this.verifyUrl(HostingFieldForm.getUrl(), HostingFieldForm.getId());
+
         HostingField HostingField = ConvertUtil.copyProperties(HostingFieldForm, HostingField.class);
         hostingFieldRepository.saveAndFlush(HostingField);
     }

--
Gitblit v1.8.0