From b070c969c3aef01166d59d7f8aa0159f5facb0f9 Mon Sep 17 00:00:00 2001
From: wyu <kknd09321@nate.com>
Date: 화, 30 11월 2021 16:12:56 +0900
Subject: [PATCH] 사용자 정의 필드 관련 수정

---
 src/main/webapp/views/issue/issueAdd.html |  197 ++++++++++++++++++++++++++++++++-----------------
 1 files changed, 129 insertions(+), 68 deletions(-)

diff --git a/src/main/webapp/views/issue/issueAdd.html b/src/main/webapp/views/issue/issueAdd.html
index 7b40110..a6b1a34 100644
--- a/src/main/webapp/views/issue/issueAdd.html
+++ b/src/main/webapp/views/issue/issueAdd.html
@@ -128,13 +128,13 @@
                                                search="vm.departmentName"
                                                source="fn.getIssueDepartmentList(vm.departmentName, vm.form.departments)"
                                                input-disabled="false"
-                                               translation-texts="{ count : 'common.userNum', empty : 'common.emptyDepartment'}"
+                                               translation-texts="{ count : 'common.userNum', empty : 'common.emptyProjectDepartment'}"
                                                extra-settings="{ displayProp : 'byName' , idProp : 'id', imageable : false, maxlength : 100, autoResize : true}"></js-autocomplete-multi>
 
                         <div class="select3-selection__choicediv mt-10">
                             <span class="select3-selection__choice" ng-repeat="department in vm.form.departments">
                                 <span>{{department.byName}}</span>
-                                <span class="select3-selection__choice__remove" ng-click="fn.removeManager($index)">횞</span>
+                                <span class="select3-selection__choice__remove" ng-click="fn.removeDepartment($index)">횞</span>
                             </span>
                         </div>
                     </div>
@@ -210,81 +210,136 @@
                     </div>
                 </div>
             </div>
+            <hr>
             <div class="row">
                 <div class="col-lg-4 fontcolor_green">
                     <label class="issue-label"><span class="fontcolor_green" translate="common.detectingInfo">�깘吏��젙蹂�</span></label>
                 </div>
             </div>
 
-            <div class="row">
-                <div class="col-lg-4">
-                    <div class="form-group mb10">
-                        <label for="detectingDateAddForm" class="issue-label"> <span translate="common.detectingData">�깘吏��씪�떆</span> </label>
-                        <input id="detectingDateAddForm"
-                               tabindex="-1"
-                               type="text"
-                               readonly
-                               class="form-control cursor"
-                               placeholder="{{'issue.clickToSelectDate' | translate}}"
-                               ng-model="vm.form.detectingDateRange"
-                               modal-form-auto-scroll
-                               date-format="YYYY-MM-DD"
-                               parent-el="'#createdWidget2'"
-                               date-range-picker>
-                        <div class="row">
-                            <div class="col-xs-12">
-                                <div id="createdWidget2" class="bootstrap-datepicker"></div>
+            <div class="col-lg-8">
+                <div class="row">
+                    <div class="col-md-12">
+                        <div class="form-group mgb5" ng-show="vm.form.issueCustomFields.length < 1">
+                            <label class="issue-label" translate="issue.notIssueTypeCustomFields">�씠�뒋 ���엯�뿉 �뿰寃곕맂 �궗�슜�옄 �젙�쓽
+                                �븘�뱶媛� �뾾�뒿�땲�떎.</label>
+                        </div>
+                    </div>
+
+                    <div class="col-md-6" ng-repeat="issueCustomField in vm.form.issueCustomFields">
+                        <div class="form-group mgb5">
+                            <label class="issue-label">{{issueCustomField.customFieldVo.name}}</label>
+
+                            <div ng-switch on="issueCustomField.customFieldVo.customFieldType">
+                                <!-- 湲곕낯 �엯�젰 -->
+                                <div ng-switch-when="INPUT">
+                                    <input type="text" class="form-control input-sm"
+                                           ng-model="issueCustomField.useValues"
+                                           maxlength="100"
+                                           autocomplete="off"
+                                           kr-input
+                                           ng-required="issueCustomField.fieldOption == '01'">
+                                </div>
+
+                                <div ng-switch-when="NUMBER">
+                                    <input type="text" class="form-control input-sm"
+                                           ng-model="issueCustomField.useValues"
+                                           maxlength="100"
+                                           autocomplete="off"
+                                           kr-input
+                                           ng-required="issueCustomField.fieldOption == '01'">
+                                </div>
+
+                                <div ng-switch-when="DATETIME">
+                                    <input type="text" class="form-control input-sm"
+                                           ng-model="issueCustomField.useValues"
+                                           maxlength="100"
+                                           autocomplete="off"
+                                           kr-input
+                                           ng-required="issueCustomField.fieldOption == '01'">
+                                </div>
+
+                                <div ng-switch-when="IP_ADDRESS">
+                                    <input type="text" class="form-control input-sm"
+                                           ng-model="issueCustomField.useValues"
+                                           maxlength="100"
+                                           autocomplete="off"
+                                           kr-input
+                                           ng-required="issueCustomField.fieldOption == '01'">
+                                </div>
+
+                                <div ng-switch-when="EMAIL">
+                                    <input type="text" class="form-control input-sm"
+                                           ng-model="issueCustomField.useValues"
+                                           maxlength="100"
+                                           autocomplete="off"
+                                           kr-input
+                                           ng-required="issueCustomField.fieldOption == '01'">
+                                </div>
+
+                                <div ng-switch-when="SITE">
+                                    <input type="text" class="form-control input-sm"
+                                           ng-model="issueCustomField.useValues"
+                                           maxlength="100"
+                                           autocomplete="off"
+                                           kr-input
+                                           ng-required="issueCustomField.fieldOption == '01'">
+                                </div>
+
+                                <div ng-switch-when="TEL">
+                                    <input type="text" class="form-control input-sm"
+                                           ng-model="issueCustomField.useValues"
+                                           maxlength="100"
+                                           autocomplete="off"
+                                           kr-input
+                                           ng-required="issueCustomField.fieldOption == '01'">
+                                </div>
+
+                                <!-- �떒�씪 ���젆�듃 -->
+                                <div ng-switch-when="SINGLE_SELECT">
+                                    <select class="form-control input-sm issue-select-label"
+                                            ng-required="issueCustomField.fieldOption == '01'"
+                                            ng-model="issueCustomField.useValues">
+                                        <option value="" value="" translate="common.choose">�꽑�깮�븯�꽭�슂.</option>
+                                        <option ng-repeat="customFieldValueVo in issueCustomField.customFieldVo.customFieldValueVos"
+                                                value="{{customFieldValueVo.value}}"
+                                                ng-selected="$root.selectOption(issueCustomField.useValues, customFieldValueVo.value)">
+                                            {{customFieldValueVo.value}}
+                                        </option>
+                                    </select>
+                                </div>
+
+                                <!-- 硫��떚 ���젆�듃 -->
+                                <div ng-switch-when="MULTI_SELECT">
+                                    <ng-dropdown-multiselect class="multiSelect cursor"
+                                                             data-input-name=""
+                                                             modal-form-auto-scroll
+                                                             selected-model="issueCustomField.useValues"
+                                                             extra-settings="{ 'idProp' : 'value', 'externalIdProp' : 'value', 'displayProp' : 'value', 'stringTypeOption' : 'true', stopRemoveBodyEvent : true }"
+                                                             options="issueCustomField.customFieldVo.customFieldValueVos"></ng-dropdown-multiselect>
+                                </div>
                             </div>
                         </div>
                     </div>
                 </div>
-                <div class="col-lg-4">
-                    <div class="form-group mb10">
-                        <label for="domainAddForm" class="issue-label"><span translate="companyField.domain">�룄硫붿씤</span></label>
-                        <input id="domainAddForm"
-                               name="domain"
-                               type="text"
-                               class="form-control"
-                               kr-input
-                               input-regex="[^a-zA-Z0-9 媛�-�옡�꽦-�뀕�뀖-�뀭\u318D\u119E\u11A2\u2022\u2025a\u00B7\uFE55]"
-                               autocomplete="off"
-                               ng-model="vm.form.domain"
-                               ng-maxlength="200"
-                               maxlength="200">
-                    </div>
-                </div>
-                <div class="col-lg-4">
-                    <div class="form-group mgb5">
-                        <label for="ipAdressAddForm" class="issue-label"><span translate="companyField.ipAdress">ip二쇱냼</span></label>
-                        <input id="ipAdressAddForm"
-                               name="ipAdress"
-                               type="text"
-                               class="form-control"
-                               kr-input
-                               input-regex="[^a-zA-Z0-9 媛�-�옡�꽦-�뀕�뀖-�뀭\u318D\u119E\u11A2\u2022\u2025a\u00B7\uFE55]"
-                               autocomplete="off"
-                               ng-model="vm.form.ipAdress"
-                               ng-maxlength="200"
-                               maxlength="200">
-                    </div>
-                </div>
             </div>
             <hr>
-            <div class="row">
+            <div ng-show="fn.containsPartner('�뾽泥�')" class="row">
                 <div class="col-lg-8 fontcolor_green">
                     <label class="issue-label"><span class="fontcolor_green" translate="companyField.info">�뾽泥댁젙蹂�</span>
-                        &nbsp;&nbsp; <span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code>&nbsp;&nbsp;媛� �젙蹂댁쓽 �씠由� �겢由��떆 �빐�떦 �씠由꾩쓽 �젙蹂닿� 議고쉶�맗�땲�떎.</span></label>
+                        &nbsp;&nbsp;<span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code>&nbsp;&nbsp;�뾽泥� �씠由� �겢由��떆 �꽑�깮�맂 �씠由꾩쓽 �뾽泥� �젙蹂닿� 議고쉶�맗�땲�떎.</span>
+                    </label>
                 </div>
             </div>
 
-            <div class="row">
+            <div ng-show="fn.containsPartner('�뾽泥�')" class="row">
                 <div class="col-lg-4">
                     <div class="form-group mb10">
                         <label class="issue-label"> <span translate="companyField.name">�뾽泥댁씠由�</span> </label>
-                        <js-autocomplete-single data-input-name="companyField"
-                                                selected-model="vm.form.companyFields"
+                        <js-autocomplete-single data-input-name="issueCompanyField"
+                                                selected-model="vm.form.issueCompanyFields"
                                                 search="vm.companyName"
-                                                source="fn.getCompanyFieldList(vm.companyName, vm.form.companyFields, vm.autoCompletePage.companyField.page, fn.getCompanyFieldListCallBack)"
+                                                source="fn.getIssueCompanyFieldList(vm.companyName, vm.form.issueCompanyFields, vm.autoCompletePage.companyField.page, fn.getIssueCompanyFieldListCallBack)"
                                                 page="vm.autoCompletePage.companyField.page"
                                                 total-page="vm.autoCompletePage.companyField.totalPage"
                                                 input-disabled="false"
@@ -360,20 +415,23 @@
                     </div>
                 </div>
             </div>
-            <div class="row">
-                <div class="col-lg-4 fontcolor_green">
-                    <label class="issue-label"><span class="fontcolor_green" translate="ispField.info">ISP �젙蹂�</span></label>
+            <p></p>
+            <div ng-show="fn.containsPartner('ISP')" class="row">
+                <div class="col-lg-8 fontcolor_green">
+                    <label class="issue-label"><span class="fontcolor_green" translate="ispField.info">ISP �젙蹂�</span>
+                        &nbsp;&nbsp;<span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code>&nbsp;&nbsp;ISP �씠由� �겢由��떆 �꽑�깮�맂 �씠由꾩쓽 ISP �젙蹂닿� 議고쉶�맗�땲�떎.</span>
+                    </label>
                 </div>
             </div>
 
-            <div class="row">
+            <div ng-show="fn.containsPartner('ISP')" class="row">
                 <div class="col-lg-4">
                     <div class="form-group mb10">
                         <label class="issue-label"> <span translate="ispField.name">ISP �씠由�</span> </label>
                         <js-autocomplete-single data-input-name="ispField"
-                                                selected-model="vm.form.ispFields"
+                                                selected-model="vm.form.issueIspFields"
                                                 search="vm.ispName"
-                                                source="fn.getIspFieldList(vm.ispName, vm.form.ispFields, vm.autoCompletePage.ispField.page, fn.getIspFieldListCallBack)"
+                                                source="fn.getIssueIspFieldList(vm.ispName, vm.form.issueIspFields, vm.autoCompletePage.ispField.page, fn.getIssueIspFieldListCallBack)"
                                                 page="vm.autoCompletePage.ispField.page"
                                                 total-page="vm.autoCompletePage.ispField.totalPage"
                                                 input-disabled="false"
@@ -463,20 +521,23 @@
                     </div>
                 </div>
             </div>
-            <div class="row">
-                <div class="col-lg-4 fontcolor_green">
-                    <label class="issue-label"><span class="fontcolor_green" translate="hostingField.info">�샇�뒪�똿 �젙蹂�</span></label>
+            <p></p>
+            <div ng-show="fn.containsPartner('�샇�뒪�똿')" class="row">
+                <div class="col-lg-8 fontcolor_green">
+                    <label class="issue-label"><span class="fontcolor_green" translate="hostingField.info">�샇�뒪�똿 �젙蹂�</span>
+                        &nbsp;&nbsp;<span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code>&nbsp;&nbsp;�샇�뒪�똿 �씠由� �겢由��떆 �꽑�깮�맂 �씠由꾩쓽 �샇�뒪�똿 �젙蹂닿� 議고쉶�맗�땲�떎.</span>
+                    </label>
                 </div>
             </div>
 
-            <div class="row">
+            <div ng-show="fn.containsPartner('�샇�뒪�똿')" class="row">
                 <div class="col-lg-4">
                     <div class="form-group mb10">
                         <label class="issue-label"> <span translate="hostingField.name">�샇�뒪�똿 �씠由�</span> </label>
                         <js-autocomplete-single data-input-name="hostingField"
-                                                selected-model="vm.form.hostingFields"
+                                                selected-model="vm.form.issueHostingFields"
                                                 search="vm.hostingName"
-                                                source="fn.getHostingFieldList(vm.hostingName, vm.form.hostingFields, vm.autoCompletePage.hostingField.page, fn.getHostingFieldListCallBack)"
+                                                source="fn.getIssueHostingFieldList(vm.hostingName, vm.form.issueHostingFields, vm.autoCompletePage.hostingField.page, fn.getIssueHostingFieldListCallBack)"
                                                 page="vm.autoCompletePage.hostingField.page"
                                                 total-page="vm.autoCompletePage.hostingField.totalPage"
                                                 input-disabled="false"

--
Gitblit v1.8.0