From b8ab6de032d3a6ee029331dbb58d764a5409189b Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 월, 28 2월 2022 15:51:13 +0900
Subject: [PATCH] - api로 하위이슈 추가 시 상위이슈의 파트너 정보 적용

---
 src/main/java/kr/wisestone/owl/service/impl/IssueHostingServiceImpl.java |   37 +++++++++++++++++++++++++++++++++++--
 1 files changed, 35 insertions(+), 2 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/service/impl/IssueHostingServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IssueHostingServiceImpl.java
index 932da15..36d686e 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueHostingServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueHostingServiceImpl.java
@@ -1,7 +1,9 @@
 package kr.wisestone.owl.service.impl;
 
+import kr.wisestone.owl.constant.MsgConstants;
 import kr.wisestone.owl.domain.*;
 import kr.wisestone.owl.domain.enumType.IssueHistoryType;
+import kr.wisestone.owl.exception.OwlRuntimeException;
 import kr.wisestone.owl.mapper.HostingFieldMapper;
 import kr.wisestone.owl.mapper.IssueHostingMapper;
 import kr.wisestone.owl.repository.IssueHostingRepository;
@@ -53,6 +55,9 @@
      * @param issue Issue
      */
     private void CreateHostingField(IssueForm issueForm, Issue issue, StringBuilder sb) {
+        //肄붾뱶 �쑀�슚�꽦 泥댄겕
+        this.verifyCode(issueForm);
+
         // issueHosting �븘�뱶 �뤌 留뚮뱾湲�
         HostingFieldForm hostingFieldForm = new HostingFieldForm();
         hostingFieldForm.setName(issueForm.getHostingName());
@@ -89,7 +94,7 @@
      * @return IssueHosting
      */
     private IssueHosting CreateIssueHosting(HostingFieldForm hostingFieldForm, Issue issue) {
-        IssueHosting issueHosting = ConvertUtil.copyProperties(hostingFieldForm, IssueHosting.class);
+        IssueHosting issueHosting = ConvertUtil.copyProperties(hostingFieldForm, IssueHosting.class, "id");
         issueHosting.setIssue(issue);
         if (hostingFieldForm.getId() != null && hostingFieldForm.getId() != -1) {
             HostingField hostingField = this.hostingFieldService.getHosting(hostingFieldForm.getId());
@@ -111,6 +116,32 @@
         return CreateIssueHosting(hostingFieldForm, issue);
     }
 
+    /**
+     * 肄붾뱶 �쑀�슚�꽦 寃��궗
+     * @param param Map<String, Object>
+     */
+    private void verifyCode(Map<String, Object> param) {
+        if (param != null) {
+            if (MapUtil.getString(param, "code") == null || Objects.equals(MapUtil.getString(param, "code"), "")) {
+                throw new OwlRuntimeException(
+                        this.messageAccessor.getMessage(MsgConstants.HOSTING_CODE_NOT_ENTER));
+            }
+        }
+    }
+
+    /**
+     * 肄붾뱶 �쑀�슚�꽦 寃��궗
+     * @param issueForm IssueForm
+     */
+    private void verifyCode(IssueForm issueForm) {
+        if (issueForm != null) {
+            if (issueForm.getHostingCode() == null || issueForm.getHostingCode().equals("")) {
+                throw new OwlRuntimeException(
+                        this.messageAccessor.getMessage(MsgConstants.HOSTING_CODE_NOT_ENTER));
+            }
+        }
+    }
+
     //  �씠�뒋�뿉�꽌 �궗�슜�릺�뒗 �뾽泥� 媛믪쓣 �뾽�뜲�씠�듃�븳�떎.
     @Override
     @Transactional
@@ -121,8 +152,10 @@
             if (issueHostingFields != null && issueHostingFields.size() > 0) {
                 Map<String, Object> param = issueHostingFields.get(0);
 
+                this.verifyCode(param); //肄붾뱶 �쑀�슚�꽦 泥댄겕
+
+                // 蹂�寃� �씠�젰 �궓湲곌퀬 issueHosting�뿉 set�빐二쇨린
                 if (issueHosting != null) { //�닔�젙 �떆
-                    // 蹂�寃� �씠�젰 �궓湲곌퀬 issueHosting�뿉 set �빐二쇨린
                     issueHistoryService.detectIssueHosting(IssueHistoryType.MODIFY, param, null, issueHosting, sb);
 
                     issueHosting.setName(MapUtil.getString(param, "name"));

--
Gitblit v1.8.0