From 4e7fd5fe57b6a5de647c69f64f6b8ae924bcc49a Mon Sep 17 00:00:00 2001
From: wyu <kknd09321@nate.com>
Date: 수, 15 12월 2021 14:44:42 +0900
Subject: [PATCH] 이슈 상세 업체/ISP/호스팅 url 정보 추가

---
 src/main/webapp/views/issue/issueDetail.html |  163 +++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 124 insertions(+), 39 deletions(-)

diff --git a/src/main/webapp/views/issue/issueDetail.html b/src/main/webapp/views/issue/issueDetail.html
index f04369e..811a577 100644
--- a/src/main/webapp/views/issue/issueDetail.html
+++ b/src/main/webapp/views/issue/issueDetail.html
@@ -86,8 +86,8 @@
 <!--    �긽�꽭 �솕硫�   -->
 <div class="support-ticket-content-w" ng-controller="issueDetailController">
     <div class="support-ticket-content">
-        <span ng-if="vm.viewer.parentIssueVo != null" class="badge" ng-style="{'background-color' : vm.viewer.issueStatusVo.color, 'border-color' : vm.viewer.issueStatusVo.color, 'color' : '#FFFFFF' }">
-            <span>�긽�쐞 �씠�뒋:{{vm.viewer.parentIssueVo.title}}</span>
+        <span ng-if="vm.viewer.parentIssueVo != null" class="badge" ng-style="{'background-color' : '#353535', 'border-color' : vm.viewer.issueStatusVo.color, 'color' : '#FFFFFF' }">
+            <span class="cursor" ng-click="fn.issueBack()">�긽�쐞 �씠�뒋:{{vm.viewer.parentIssueVo.title}}</span>
         </span>
 
         <div class="">
@@ -97,13 +97,13 @@
             <span class="ticket-header">
                 <div class="tasks-header-w">
                     <span class="tags">
-                        <span class="tag">{{vm.viewer.projectVo.projectKey}}-{{vm.viewer.issueNumber}} &nbsp; / &nbsp; {{vm.viewer.projectVo.name}}</span>
+                        <span class="tag">{{vm.viewer.projectVo.projectKey}}-{{vm.viewer.issueNumber}} &nbsp; / &nbsp; {{vm.viewer.projectVo.name}} &nbsp; <span ng-if="vm.viewer.isApi == 'Y'">/</span> &nbsp; <span ng-if="vm.viewer.isApi == 'Y'" class="badge" ng-style="{'background-color' : '#EF8D9A', 'border-color' : '#EF8D9A', 'color' : '#FFFFFF' }">API</span></span>
                     </span>
                 </div>
             </span>
 
             <a class="show-ticket-info cursor">
-                <i class="os-icon os-icon-email-forward mr-20" ng-click="fn.sendMail(vm.viewer.id, vm.viewer.projectVo.id)" data-toggle="tooltip" data-placement="right" title="�떎瑜� �궗�슜�옄�뿉寃� �씠�뒋 蹂대궡湲�"></i>
+                <i class="os-icon os-icon-email-forward mr-20" ng-if="vm.viewer.modifyPermissionCheck" ng-click="fn.sendMailAll()" data-toggle="tooltip" data-placement="right" title="�떎瑜� �궗�슜�옄�뿉寃� �씠�뒋 蹂대궡湲�"></i>
                 <i class="os-icon os-icon-airplay mr-20" ng-click="fn.versionView(vm.viewer.id)" data-toggle="tooltip" data-placement="right" title="�씠�뒋 蹂�寃� �씠�젰 �긽�꽭 蹂닿린"></i>
                 <i class="os-icon os-icon-calendar-time mr-20" ng-if="vm.viewer.modifyPermissionCheck"
                    ng-click="fn.reservation(vm.viewer.id)" data-toggle="tooltip" data-placement="right" title="�씠�뒋 諛쒖깮 �삁�빟 �븯湲�"></i>
@@ -139,6 +139,7 @@
 
                                                 <span ng-if="vm.viewer.departmentVos.length < 1" translate="common.noDepartment">�떞�떦遺��꽌媛� �뾾�뒿�땲�떎.</span>
                                                             <i class="fa fa-edit fa-2x issue-status-edit cursor"
+                                                               ng-if="vm.viewer.modifyPermissionCheck"
                                                                ng-click="fn.modifyIssueDepartment()" data-toggle="tooltip" data-placement="right" title="�떞�떦�옄 蹂�寃� �븯湲�"></i>
                                             </div>
                                         </div>
@@ -165,8 +166,8 @@
                     <div class="col-md-4">
                         <div class="form-group">
                             <label class="issue-detail-label"><span translate="common.importance">以묒슂�룄</span></label>
-                            <label class="issue-detail-label offset-1"><span translate="common.priority">�슦�꽑 �닚�쐞</span></label>
-                            <label class="issue-detail-label offset-1"><span translate="issue.issueStatus">�씠�뒋 �긽�깭</span></label>
+                            <label class="issue-detail-label offset-detail-1"><span translate="common.priority">�슦�꽑 �닚�쐞</span></label>
+                            <label class="issue-detail-label offset-detail-2"><span translate="issue.issueStatus">�씠�뒋 �긽�깭</span></label>
                             <div class="">
                                 <span class="badge" ng-style="{'background-color' : vm.viewer.severityVo.color, 'border-color' : vm.viewer.severityVo.color, 'color' : '#FFFFFF' }" translate="{{vm.viewer.severityVo.name}}"></span>
 
@@ -188,7 +189,8 @@
                 <div class="row">
                     <div class="col-md-4">
                         <div class="form-group">
-                            <h6 class="info_font" translate="common.detectingInfo">�깘吏��젙蹂�</h6>
+                            <h6 class="info_detail_font" translate="common.detectingInfo">�깘吏��젙蹂�</h6>
+                            <span class="issue-detail-label" style="position: relative; top: 1rem" ng-show="vm.viewer.issueCustomFields == ''">�궗�슜�옄 �젙�쓽 �븘�뱶媛믪씠 �뾾�뒿�땲�떎.</span>
                         </div>
                     </div>
                 </div>
@@ -196,7 +198,6 @@
                 <div class="row">
                     <div class="col-md-2" ng-repeat="issueCustomField in vm.viewer.issueCustomFields">
                         <label class="issue-detail-label">{{::issueCustomField.customFieldVo.name}}</label>
-
                         <div ng-switch on="issueCustomField.customFieldVo.customFieldType">
                             <!-- 湲곕낯 �엯�젰 -->
                             <div ng-switch-when="INPUT">
@@ -204,6 +205,43 @@
                                 <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span>
                                 <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span>
                             </div>
+
+                            <div ng-switch-when="NUMBER">
+                                <!--    �씫湲� 紐⑤뱶   -->
+                                <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span>
+                                <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span>
+                            </div>
+
+                            <div ng-switch-when="DATETIME">
+                                <!--    �씫湲� 紐⑤뱶   -->
+                                <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span>
+                                <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span>
+                            </div>
+
+                            <div ng-switch-when="IP_ADDRESS">
+                                <!--    �씫湲� 紐⑤뱶   -->
+                                <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span>
+                                <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span>
+                            </div>
+
+                            <div ng-switch-when="EMAIL">
+                                <!--    �씫湲� 紐⑤뱶   -->
+                                <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span>
+                                <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span>
+                            </div>
+
+                            <div ng-switch-when="SITE">
+                                <!--    �씫湲� 紐⑤뱶   -->
+                                <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span>
+                                <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span>
+                            </div>
+
+                            <div ng-switch-when="TEL">
+                                <!--    �씫湲� 紐⑤뱶   -->
+                                <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span>
+                                <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span>
+                            </div>
+
 
                             <!-- �떒�씪 ���젆�듃 -->
                             <div ng-switch-when="SINGLE_SELECT">
@@ -217,15 +255,18 @@
                                 ng-repeat="useValue in issueCustomField.useValues">{{::useValue.value}}, </span>
                                 <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span>
                             </div>
+
                         </div>
+
                     </div>
-                    <div class="pdt0" style="position: relative; bottom: 1rem">
+                    <!--�씠誘몄� 誘몃━蹂닿린-->
+                    <div class="col-md-2">
                         <issue-detail-image-preview images="vm.images"></issue-detail-image-preview>
                     </div>
                     <div ng-show="vm.images.length < 1" class="detail-not-elements width-100">
-                        <span></span>
                     </div>
                 </div>
+
 
                            <!-- <div class="">
                                 <label class="issue-detail-label"><span>{{vm.viewer.issueCustomFieldValueVos[0].useValue}}</span> </label>
@@ -236,15 +277,16 @@
                             </div>-->
                 <hr>
 <!--                <span class="tag">{{vm.viewer.projectVo.projectKey}}-{{vm.viewer.issueNumber}} &nbsp; / &nbsp; {{vm.viewer.projectVo.name}}</span>-->
-                <div class="row">
+            <div class="issue-detail-label">
+                <div ng-show="fn.containsPartner('�뾽泥�')" class="row">
                     <div class="col-sm-2">
                         <div class="form-group">
-                            <h6 class="info_font" translate="companyField.info">�뾽泥댁젙蹂�</h6>
+                            <h6 class="info_detail_font" translate="companyField.info">�뾽泥댁젙蹂�</h6>
                         </div>
                     </div>
                 </div>
 
-                <div class="row">
+                <div ng-show="fn.containsPartner('�뾽泥�')" class="row">
                     <div class="col-sm-2">
                         <div class="form-group">
                             <span translate="companyField.companyName">�뾽泥대챸</span>:
@@ -274,7 +316,16 @@
                         <div class="form-group">
                             <div class="">
                                 <span translate="companyField.email">�씠硫붿씪</span>:
-                                <span class="email_color">{{vm.viewer.issueCompanyVos[0].email}}</span>
+                                <span class="email_color cursor" ng-click="fn.sendMailVo(vm.viewer.issueCompanyVos)">{{vm.viewer.issueCompanyVos[0].email}}</span>
+                            </div>
+                        </div>
+                    </div>
+
+                    <div class="col-sm-2">
+                        <div class="form-group">
+                            <div class="">
+                                <span translate="companyField.url">url</span>:
+                                <span>{{vm.viewer.issueCompanyVos[0].url}}</span>
                             </div>
                         </div>
                     </div>
@@ -288,16 +339,17 @@
                         </div>
                     </div>
                 </div>
-
-                <div class="row">
+            </div>
+            <div class="issue-detail-label">
+                <div ng-show="fn.containsPartner('ISP');" class="row">
                     <div class="col-sm-2">
                         <div class="form-group">
-                            <h6 class="info_font" translate="ispField.info">ISP�젙蹂�</h6>
+                            <h6 class="info_detail_font" translate="ispField.info">ISP�젙蹂�</h6>
                         </div>
                     </div>
                 </div>
 
-                <div class="row">
+                <div ng-show="fn.containsPartner('ISP');" class="row">
                     <div class="col-sm-2">
                         <div class="form-group">
                             <span translate="ispField.ispName">ISP紐�</span>:
@@ -334,7 +386,16 @@
                         <div class="form-group">
                             <div class="">
                                 <span translate="ispField.email">�씠硫붿씪</span>:
-                                <span class="email_color">{{vm.viewer.issueIspVos[0].email}}</span>
+                                <span class="email_color cursor" ng-click="fn.sendMailVo(vm.viewer.issueIspVos)">{{vm.viewer.issueIspVos[0].email}}</span>
+                            </div>
+                        </div>
+                    </div>
+
+                    <div class="col-sm-2">
+                        <div class="form-group">
+                            <div class="">
+                                <span translate="companyField.url">url</span>:
+                                <span>{{vm.viewer.issueIspVos[0].url}}</span>
                             </div>
                         </div>
                     </div>
@@ -348,16 +409,18 @@
                         </div>
                     </div>
                 </div>
-
-                <div class="row">
+            </div>
+            <div class="issue-detail-label">
+                <div ng-show="fn.containsPartner('�샇�뒪�똿');" class="row">
                     <div class="col-sm-2">
                         <div class="form-group">
-                            <h6 class="info_font" translate="hostingField.info">�샇�뒪�똿�젙蹂�</h6>
+                            <h6 class="info_detail_font" translate="hostingField.info">�샇�뒪�똿�젙蹂�</h6>
                         </div>
                     </div>
                 </div>
 
-                <div class="row">
+                <div ng-show="fn.containsPartner('�샇�뒪�똿');" class="row">
+
                     <div class="col-sm-2">
                         <div class="form-group">
                             <span translate="hostingField.hostingName">�샇�뒪�똿紐�</span>:
@@ -394,7 +457,16 @@
                         <div class="form-group">
                             <div class="">
                                 <span translate="hostingField.email">�씠硫붿씪</span>:
-                                <span class="email_color">{{vm.viewer.issueHostingVos[0].email}}</span>
+                                <span class="email_color cursor" ng-click="fn.sendMailVo(vm.viewer.issueHostingVos)">{{vm.viewer.issueHostingVos[0].email}}</span>
+                            </div>
+                        </div>
+                    </div>
+
+                    <div class="col-sm-2">
+                        <div class="form-group">
+                            <div class="">
+                                <span translate="companyField.url">url</span>:
+                                <span>{{vm.viewer.issueHostingVos[0].url}}</span>
                             </div>
                         </div>
                     </div>
@@ -408,15 +480,14 @@
                         </div>
                     </div>
                 </div>
-
-
+            </div>
 
                 <div class="row mt-30">
                     <div class="col-md-10">
-                        <span class="info_font h3" translate="issue.relationIssue">�뿰愿� �씠�뒋</span>
+                        <span class="info_detail_font h3" translate="issue.relationIssue">�뿰愿� �씠�뒋</span>
                     </div>
                     <div class="col-md-1">
-                        <button class="btn btn-darkgrey offset-12" ng-click="fn.addRelationIssueTableConfig()" type="button"><span translate="issue.settingTableDisplay">�뀒�씠釉� �몴�떆 �꽕�젙</span></button>
+                        <button class="btn btn-darkgrey offset-10" ng-click="fn.addRelationIssueTableConfig()" type="button"><span translate="issue.settingTableDisplay">�뀒�씠釉� �몴�떆 �꽕�젙</span></button>
                     </div>
                 </div>
 
@@ -441,7 +512,7 @@
                             <js-autocomplete-single data-input-name="issue"
                                                     selected-model="vm.form.issues"
                                                     search="vm.issueName"
-                                                    source="fn.getIssueList(vm.issueName, vm.form.issues, vm.autoCompletePage.issue.page, fn.getIssueListCallBack)"
+                                                    source="fn.getIssueList(vm.issueName, vm.issueTypeId, vm.form.issues, vm.autoCompletePage.issue.page, fn.getIssueListCallBack)"
                                                     page="vm.autoCompletePage.issue.page"
                                                     total-page="vm.autoCompletePage.issue.totalPage"
                                                     input-disabled="false"
@@ -449,21 +520,33 @@
                                                     extra-settings="{ displayProp : 'title' , idProp : 'id', imageable : false, imagePathProp : '',
                                             type : '', maxlength : 200, autoResize : true, stopRemoveBodyEvent : true }"></js-autocomplete-single>
                         </div>
-                        <div class="col-auto vertical-middle">
-                            <button type="button" class="btn btn-primary form-control input-sm"
+                        <div class="col-auto vertical-middle" style="display: flex">
+                            <button type="button" class="btn btn-primary"
+                                    ng-if="vm.viewer.modifyPermissionCheck"
                                     ng-click="fn.addRelationIssue()"
                                     translate="issue.addRelationIssue">�뿰愿� �씠�뒋 異붽�</button>
+                            <button type="button" class="btn btn-sm btn-primary btn-roundRel  offset-1"
+                                    ng-if="vm.viewer.modifyPermissionCheck"
+                                    ng-click="fn.addRelationIssueForm(vm.viewer.id)">
+                                <i class="os-icon os-icon-plus"><span></span></i>
+                            </button>
                         </div>
 
                     </div>
                 </div>
 
                 <div class="row mt-30">
-                    <div class="col-md-10">
-                        <span class="info_font h3" translate="issue.downIssue">�븯�쐞 �씠�뒋</span>
+                    <div class="col-md-8">
+                        <span class="info_detail_font h3" translate="issue.downIssue">�븯�쐞 �씠�뒋</span>
                     </div>
-                    <div class="col-md-1">
-                        <button class="btn btn-darkgrey offset-12"  ng-click="fn.addDownIssueTableConfig()" type="button"><span translate="issue.settingTableDisplay">�뀒�씠釉� �몴�떆 �꽕�젙</span></button>
+                    <div class="col-sm-2">
+                        <a><button type="button" class="btn btn-darkgrey offset-7" ng-if="vm.viewer.modifyPermissionCheck"
+                                ng-click="fn.modifyDownIssueStatus()">
+                                <span ng-if="vm.viewer.modifyPermissionCheck" translate="common.updateDownIssueAllStatus">�븯�쐞�씠�뒋 �긽�깭 �쟾泥� 蹂�寃�</span>
+                        </button></a>
+                    </div>
+                    <div class="col-sm-1">
+                        <button class="btn btn-darkgrey offset-10"  ng-click="fn.addDownIssueTableConfig()" type="button"><span translate="issue.settingTableDisplay">�뀒�씠釉� �몴�떆 �꽕�젙</span></button>
                     </div>
                 </div>
 
@@ -473,11 +556,12 @@
                               event="downTableEvent" detail-view="true" hide-header="false" use-sort="false"></js-table>
 
                     <div class="row">
+
                         <div class="col-sm-6">
                             <js-autocomplete-single data-input-name="issue"
                                                     selected-model="vm.form.issuesDown"
                                                     search="vm.issueNameDown"
-                                                    source="fn.getIssueList(vm.issueNameDown, vm.form.issuesDown, vm.autoCompletePageDown.issue.page, fn.getIssueListCallBack)"
+                                                    source="fn.getDownIssueList(vm.issueNameDown, vm.issueTypeId, vm.form.issuesDown, vm.autoCompletePageDown.issue.page, fn.getDownIssueListCallBack)"
                                                     page="vm.autoCompletePageDown.issue.page"
                                                     total-page="vm.autoCompletePageDown.issue.totalPage"
                                                     input-disabled="false"
@@ -485,8 +569,9 @@
                                                     extra-settings="{ displayProp : 'title' , idProp : 'id', imageable : false, imagePathProp : '',
                                             type : '', maxlength : 200, autoResize : true, stopRemoveBodyEvent : true }"></js-autocomplete-single>
                         </div>
-                        <div class="col-auto vertical-middle">
-                            <button type="button" class="btn btn-primary form-control input-sm"
+                        <div class="col-auto vertical-middle" style="display: flex">
+                            <button type="button" class="btn btn-primary"
+                                    ng-if="vm.viewer.modifyPermissionCheck"
                                     ng-click="fn.addDownIssue()"
                                     translate="issue.addDownIssue">異붽�</button>
                         </div>
@@ -496,7 +581,7 @@
 
                 <h6 class="todo-content-subheader mt-30" translate="common.content">�궡�슜</h6>
                 <div class="box mt-10 issue-detail-word-break width-100" >
-                    <div ng-bind-html="$root.$sce.trustAsHtml(vm.viewer.description)"></div>
+                    <div class="issue-detail-tab" ng-bind-html="$root.$sce.trustAsHtml(vm.viewer.description)"></div>
                     <span class="fc-grey" ng-if="!$root.isDefined(vm.viewer.description)" translate="common.noContent">
                         �궡�슜�씠 �뾾�뒿�땲�떎.
                     </span>

--
Gitblit v1.8.0