From 9c88708bf366358bbbc891a605313ccb0a63bea1 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 목, 25 11월 2021 17:27:01 +0900
Subject: [PATCH] 사용자정의필드 백엔드 수정

---
 src/main/java/kr/wisestone/owl/service/impl/CustomFieldServiceImpl.java          |   28 ++++++++++++++++++++++------
 src/main/java/kr/wisestone/owl/service/impl/CustomFieldValueServiceImpl.java     |   18 +++++++++++++++---
 src/main/java/kr/wisestone/owl/web/condition/IssueCustomFieldValueCondition.java |    6 ++++++
 3 files changed, 43 insertions(+), 9 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/service/impl/CustomFieldServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/CustomFieldServiceImpl.java
index 391ffcf..8bafa4e 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/CustomFieldServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/CustomFieldServiceImpl.java
@@ -126,8 +126,8 @@
 
     //  �샃�뀡 媛� �쑀�슚 泥댄겕
     private void verifyOptions(CustomFieldForm customFieldForm) {
-        //  �궗�슜�옄 �젙�쓽 �븘�뱶 �쑀�삎�씠 �뀓�뒪�듃 �씪�븣�뒗 �샃�뀡 媛믪씠 議댁옱�븯硫� �븞�맂�떎.
-        if (CustomFieldType.valueOf(customFieldForm.getCustomFieldType()).equals(CustomFieldType.INPUT)) {
+        //  �궗�슜�옄 �젙�쓽 �븘�뱶 �쑀�삎�씠 �뀓�뒪�듃 �씪�븣�뒗 �샃�뀡 媛믪씠 議댁옱�븯硫� �븞�맂�떎. => �떒�씪�꽑�깮 �삉�뒗 �떎以묒꽑�깮 �븘�뱶媛� �븘�땺 寃쎌슦 �샃�뀡 媛� 議댁옱 �븯硫� �븞�릺�뒗 寃껋쑝濡� 蹂�寃�
+        if (!CustomFieldType.valueOf(customFieldForm.getCustomFieldType()).equals(CustomFieldType.MULTI_SELECT) && !CustomFieldType.valueOf(customFieldForm.getCustomFieldType()).equals(CustomFieldType.SINGLE_SELECT)) {
             if (customFieldForm.getOptions().size() > 0) {
                 throw new OwlRuntimeException(
                         this.messageAccessor.getMessage(MsgConstants.CUSTOM_FIELD_OPTIONS_NOT_USE_INPUT_FIELD));
@@ -163,7 +163,6 @@
                         }
                         //  湲곕낯 媛믪쑝濡� 吏��젙�븳 媛믪씠 �샃�뀡�뿉 �엳�뒗吏� �솗�씤�븳�떎.
                         this.verifyOptionsDefaultValue(customFieldForm);
-
                         break;
                     case MULTI_SELECT:
                         //  湲곕낯 媛믪쑝濡� 吏��젙�븳 媛믪씠 �샃�뀡�뿉 �엳�뒗吏� �솗�씤�븳�떎.
@@ -287,9 +286,9 @@
 
     //  �궗�슜�옄 �젙�쓽 �븘�뱶 �쑀�삎�씠 �떒�씪, �떎以� �꽑�깮�뿉�꽌 臾몄옄�뿴濡� 蹂�寃쎈맆 寃쎌슦 �궗�슜�옄 �젙�쓽 �븘�뱶 媛믪쓣 珥덇린�솕�븳�떎.
     private void checkChangeCustomFieldType(CustomFieldForm customFieldForm, CustomField customField) {
-        if (!customField.getCustomFieldType().equals(CustomFieldType.INPUT)) {
+        if (customField.getCustomFieldType().equals(CustomFieldType.MULTI_SELECT) || customField.getCustomFieldType().equals(CustomFieldType.SINGLE_SELECT)) {
             //  �떒�씪, �떎以� �꽑�깮�뿉�꽌 臾몄옄�뿴 �븘�뱶濡� 蹂�寃쎈맂 寃쎌슦
-            if (CustomFieldType.valueOf(customFieldForm.getCustomFieldType()).equals(CustomFieldType.INPUT)) {
+            if (!CustomFieldType.valueOf(customFieldForm.getCustomFieldType()).equals(CustomFieldType.MULTI_SELECT) && !CustomFieldType.valueOf(customFieldForm.getCustomFieldType()).equals(CustomFieldType.SINGLE_SELECT)) {
                 customField.getCustomFieldValues().clear();
             }
         }
@@ -302,7 +301,6 @@
             throw new OwlRuntimeException(
                     this.messageAccessor.getMessage(MsgConstants.CUSTOM_FIELD_NOT_EXIST));
         }
-
 
         CustomField customField = this.findOne(id);
 
@@ -383,6 +381,24 @@
                     case "MULTI_SELECT" :
                         customFieldTypeName = this.messageAccessor.message("common.multipleSelectionField"); // �떎以� �꽑�깮 �븘�뱶
                         break;
+                    case "NUMBER" :
+                        customFieldTypeName = this.messageAccessor.message("common.numberField"); // �닽�옄 �븘�뱶
+                        break;
+                    case "DATETIME" :
+                        customFieldTypeName = this.messageAccessor.message("common.datetimeField"); // �궇吏� �븘�뱶
+                        break;
+                    case "IP_ADDRESS" :
+                        customFieldTypeName = this.messageAccessor.message("common.ipAddressField"); // IP 二쇱냼 �븘�뱶
+                        break;
+                    case "EMAIL" :
+                        customFieldTypeName = this.messageAccessor.message("common.emailField"); // �씠硫붿씪 �븘�뱶
+                        break;
+                    case "SITE" :
+                        customFieldTypeName = this.messageAccessor.message("common.siteField"); // �솃�럹�씠吏� 二쇱냼 �븘�뱶
+                        break;
+                    case "TEL" :
+                        customFieldTypeName = this.messageAccessor.message("common.telField"); // �쟾�솕踰덊샇 �븘�뱶
+                        break;
                 }
             }
 
diff --git a/src/main/java/kr/wisestone/owl/service/impl/CustomFieldValueServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/CustomFieldValueServiceImpl.java
index 0eca579..adde3d3 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/CustomFieldValueServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/CustomFieldValueServiceImpl.java
@@ -39,9 +39,11 @@
     public void addCustomFieldValues(CustomField customField, List<String> values, CustomFieldType oldCustomFieldType) {
         if (oldCustomFieldType != null) {
             //  �뀓�뒪�듃 �엯�젰 �븘�뱶�씪 �븣�뒗 �씠�뒋�뿉�꽌 �궗�슜�릺怨� �엳�뒗 �궗�슜�옄 �젙�쓽 �븘�뱶 媛� �솗�씤 �썑 �궘�젣 泥섎━
-            if (customField.getCustomFieldType().equals(CustomFieldType.INPUT)) {
+            //if (customField.getCustomFieldType().equals(CustomFieldType.INPUT)) {
+            if(!customField.getCustomFieldType().equals(CustomFieldType.MULTI_SELECT) && !customField.getCustomFieldType().equals(CustomFieldType.SINGLE_SELECT)){
                 //  �씠�쟾�뿉�룄 �뀓�뒪�듃 �븘�뱶���떎硫� �궗�슜�옄 �젙�쓽 �븘�뱶 媛믪쓣 �궘�젣�븯吏� �븡�뒗�떎.
-                if (CustomFieldType.INPUT.equals(oldCustomFieldType)) {
+                //if (CustomFieldType.INPUT.equals(oldCustomFieldType)) {
+                if (!CustomFieldType.MULTI_SELECT.equals(oldCustomFieldType) && !CustomFieldType.SINGLE_SELECT.equals(oldCustomFieldType)) {
                     return;
                 }
                 //  �궗�슜�옄 �젙�쓽 �븘�뱶 �샃�뀡 媛믪씠 蹂�寃쎈릺�뿀�쓣 �븣 �궗�슜�옄 �젙�쓽 �븘�뱶 媛믪쓣 �궗�슜�븯�뒗 �씠�뒋�뿉�꽌 �빐�떦 媛믪씠 議댁옱�븯�뒗吏� �솗�씤�븯怨� �뾾�뼱議뚯쑝硫� �궘�젣�빐以��떎.
@@ -54,10 +56,20 @@
                 //  �씠�뒋�뿉�꽌 ���옣�맂 �빐�떦 �궗�슜�옄 �젙�쓽 �븘�뱶 媛믪쓣 紐⑤몢 �궘�젣�븳�떎.
                 this.issueCustomFieldValueService.removeIssueCustomFieldValuesByCustomFieldId(customField);
             }
+
+            /*if (customField.getCustomFieldType().equals(CustomFieldType.NUMBER)) {
+                if (CustomFieldType.NUMBER.equals(oldCustomFieldType)) {
+                    return;
+                }
+                //  �궗�슜�옄 �젙�쓽 �븘�뱶 �샃�뀡 媛믪씠 蹂�寃쎈릺�뿀�쓣 �븣 �궗�슜�옄 �젙�쓽 �븘�뱶 媛믪쓣 �궗�슜�븯�뒗 �씠�뒋�뿉�꽌 �빐�떦 媛믪씠 議댁옱�븯�뒗吏� �솗�씤�븯怨� �뾾�뼱議뚯쑝硫� �궘�젣�빐以��떎.
+                this.issueCustomFieldValueService.checkExistIssueCustomFieldValue(customField, values, oldCustomFieldType);
+                return;
+            }*/
         }
         else {
             //  �뀓�뒪�듃 �엯�젰 �븘�뱶�씪 �븣�뒗 諛붾줈 醫낅즺
-            if (customField.getCustomFieldType().equals(CustomFieldType.INPUT)) {
+            //if (customField.getCustomFieldType().equals(CustomFieldType.INPUT)) {
+            if (!customField.getCustomFieldType().equals(CustomFieldType.MULTI_SELECT) && !customField.getCustomFieldType().equals(CustomFieldType.SINGLE_SELECT)) {
                 return;
             }
         }
diff --git a/src/main/java/kr/wisestone/owl/web/condition/IssueCustomFieldValueCondition.java b/src/main/java/kr/wisestone/owl/web/condition/IssueCustomFieldValueCondition.java
index 61d82dd..a639a7d 100644
--- a/src/main/java/kr/wisestone/owl/web/condition/IssueCustomFieldValueCondition.java
+++ b/src/main/java/kr/wisestone/owl/web/condition/IssueCustomFieldValueCondition.java
@@ -28,6 +28,12 @@
 
         switch(customFieldType) {
             case INPUT:
+            case NUMBER:
+            case DATETIME:
+            case IP_ADDRESS:
+            case EMAIL:
+            case SITE:
+            case TEL:
                 if (MapUtil.getStrings(conditions, "useValues") != null) {
                     //  怨듬갚�씠 �븘�땶 臾몄옄媛� �뱾�뼱�엳�쓣 �븣留� useValues 媛� �쑝濡� �뀑�똿�븳�떎.
                     for (String useValue : MapUtil.getStrings(conditions, "useValues")) {

--
Gitblit v1.8.0