From 2738a018508fda6ea79af263fb605af8d306897f Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 월, 24 1월 2022 16:42:11 +0900
Subject: [PATCH] - 업체 excel import 오류 수정 및 유효성 검사 추가

---
 src/main/java/kr/wisestone/owl/service/impl/CompanyFieldServiceImpl.java |   51 ++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 36 insertions(+), 15 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/service/impl/CompanyFieldServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/CompanyFieldServiceImpl.java
index d1512ee..80f374d 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/CompanyFieldServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/CompanyFieldServiceImpl.java
@@ -419,6 +419,15 @@
         }
     }
 
+    /**
+     * cell NULL 泥댄겕 �븿�닔
+     * @param cell Cell
+     * @return boolean
+     */
+    private Boolean cellNullCheck (Cell cell) {
+        return cell != null && cell.getStringCellValue() != null && cell.getCellType() != Cell.CELL_TYPE_BLANK;
+    }
+
     //  �뿊�� �븘�뱶�뿉 �엳�뒗 �젙蹂대�� �뾽泥� form �쑝濡� �삷湲대떎.
     private CompanyFieldForm setCompanyFieldFormToExcelField(Row row, int rowIndex, Map<String, IspField> ispFieldMaps, Map<String, HostingField> hostingFieldMaps,
                                                              Map<String, Map<String, Object>> companyTypeMaps, Map<String, Map<String, Object>> parentSectorMaps,
@@ -443,76 +452,76 @@
 
                 case 2:
                     // isp紐�
-                    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) {
+                    if (cellNullCheck(cell)) {
                         this.setCompanyFormIspName(cell, ispFieldMaps, companyFieldForm, rowIndex);
                     }
                     break;
 
                 case 3:
                     // �샇�뒪�똿紐�
-                    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) {
+                    if (cellNullCheck(cell)) {
                         this.setCompanyFormHostingName(cell, hostingFieldMaps, companyFieldForm, rowIndex);
                     }
                     break;
 
                 case 4:
                     // �뿰�씫泥�
-                    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) {
+                    if (cellNullCheck(cell)) {
                         this.setCompanyFormTel(cell, companyFieldForm, rowIndex);
                     }
                     break;
 
                 case 5:
                     // �씠硫붿씪
-                    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) {
+                    if (cellNullCheck(cell)) {
                         this.setCompanyFormEmail(cell, companyFieldForm, rowIndex);
                     }
                     break;
 
                 case 6:
                     // �떞�떦�옄
-                    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) {
+                    if (cellNullCheck(cell)) {
                         this.setCompanyFormManager(cell, companyFieldForm, rowIndex);
                     }
                     break;
 
                 case 7:
                     // 湲곗뾽援щ텇
-                    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) {
+                    if (cellNullCheck(cell)) {
                         this.setCompanyFormCompanyType(cell, companyTypeMaps, companyFieldForm, rowIndex);
                     }
                     break;
 
                 case 8:
                     // �뾽醫�(��遺꾨쪟)
-                    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) {
+                    if (cellNullCheck(cell)) {
                         this.setCompanyFormParentSector(cell, parentSectorMaps, companyFieldForm, rowIndex);
                     }
                     break;
 
                 case 9:
                     // �뾽醫�(以묐텇瑜�)
-                    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) {
+                    if (cellNullCheck(cell)) {
                         this.setCompanyFormChildSector(cell, childSectorMaps, companyFieldForm, rowIndex);
                     }
                     break;
 
                 case 10:
                     // 吏��뿭
-                    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) {
+                    if (cellNullCheck(cell)) {
                         this.setCompanyFormRegion(cell, regionMaps, companyFieldForm, rowIndex);
                     }
                     break;
 
                 case 11:
                     // �긽�깭
-                    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) {
+                    if (cellNullCheck(cell)) {
                         this.setCompanyFormStatus(cell, statusMaps, companyFieldForm, rowIndex);
                     }
 
                 case 12:
                     // 鍮꾧퀬
-                    if (cell != null && cell.getCellType() != Cell.CELL_TYPE_BLANK) {
+                    if (cellNullCheck(cell)) {
                         this.setCompanyFormMemo(cell, companyFieldForm, rowIndex);
                     }
                     break;
@@ -590,19 +599,29 @@
 
     private void setCompanyFormEmail(Cell cell, CompanyFieldForm companyFieldForm, int rowIndex) {
         if (cell != null) {
-            companyFieldForm.setEmail(CommonUtil.convertExcelStringToCell(cell));
+            String email = CommonUtil.convertExcelStringToCell(cell);
+            if (CommonUtil.convertExcelStringToCell(cell).contains(" ")) {
+                email = CommonUtil.convertExcelStringToCell(cell).replace(" ", "");
+            }
+            companyFieldForm.setEmail(email);
         }
     }
 
     private void setCompanyFormTel(Cell cell, CompanyFieldForm companyFieldForm, int rowIndex) {
         if (cell != null) {
-            companyFieldForm.setTel(CommonUtil.convertExcelStringToCell(cell));
+            String tel = CommonUtil.convertExcelStringToCell(cell);
+            if (tel.contains("-")) {
+                tel = tel.replace("-", "");
+            }
+            if (tel.contains(" ")) {
+                tel = tel.replace(" ", "");
+            }
+            companyFieldForm.setTel(tel);
         }
     }
 
     private void setCompanyFormHostingName(Cell cell, Map<String, HostingField> hostingFieldMaps, CompanyFieldForm companyFieldForm, int rowIndex) {
         if (cell != null) {
-
             HostingField hostingField = hostingFieldMaps.get(CommonUtil.convertExcelStringToCell(cell));
             if (hostingField == null) {
                 throw new OwlRuntimeException(
@@ -614,7 +633,6 @@
 
     private void setCompanyFormIspName(Cell cell, Map<String, IspField> ispFieldMaps, CompanyFieldForm companyFieldForm, int rowIndex) {
         if (cell != null) {
-
             IspField ispField = ispFieldMaps.get(CommonUtil.convertExcelStringToCell(cell));
             if (ispField == null) {
                 throw new OwlRuntimeException(
@@ -643,6 +661,9 @@
                     this.messageAccessor.getMessage(MsgConstants.EXCEL_IMPORT_URL_IS_NULL, rowIndex));
         }
         String url = CommonUtil.convertExcelStringToCell(cell);
+        if (url.contains(" ")) {
+            url = url.replace(" ", "");
+        }
         this.verifyUrl(url, null); //url �쑀�슚�꽦 寃��궗
 
         companyFieldForm.setUrl(url);

--
Gitblit v1.8.0