OWL ITS + 탐지시스템(인터넷 진흥원)
wyu
2021-11-18 a9104b7bc9016b32f43f4fcbe4e3d7b29edef3b3
src/main/webapp/views/issue/issueDetail.html
@@ -1,10 +1,12 @@
<!-- 이슈 목록 -->
<!--
<div class="support-tickets">
    <div class="support-tickets-header">
<!--        <div class="tickets-control">-->
<!--            <h5 translate="issue.issueList">-->
<!--                이슈 목록-->
<!--            </h5>-->
<!--        </div>-->
        <div class="tickets-control">
            <h5 translate="issue.issueList">
                이슈 목록
            </h5>
        </div>
        <div class="tickets-filter">
            <div class="dataTables_length">
@@ -50,8 +52,9 @@
        </div>
    </div>
    <!--    테이블 -->
-->
<!-- 테이블 -->
<!--
    <div class="support-ticket ">
        <div class="st-body">
            <div class="table-responsive">
@@ -60,8 +63,9 @@
            </div>
        </div>
    </div>
    <!--    페이징 -->
-->
<!--    페이징 -->
<!--
    <div class="controls-below-table text-center">
        <ul uib-pagination
            boundary-links-numbes="true"
@@ -78,19 +82,40 @@
        </ul>
    </div>
</div>
-->
<!--    상세 화면   -->
<div class="support-ticket-content-w" ng-controller="issueDetailController">
    <div class="support-ticket-content">
        <div class="support-ticket-content-header issue-detail-word-break">
            <h3 class="ticket-header">
                <div class="tasks-header-w mb-10">
                <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>
                </div>
                {{vm.viewer.title}}
            </h3>
            <div class="col-sm-2">
                <div class="form-group">
                    <label class="issue-detail-label"><span translate="issue.issueType">이슈 타입</span> </label>
                    <span class="status-pill smaller"
                          ng-style="{'background-color': vm.viewer.issueTypeVo.color }"></span><span>{{vm.viewer.issueTypeVo.name}}</span>
                </div>
            </div>
            <div class="col-sm-2">
                <div class="form-group">
                    {{vm.viewer.registerDate}}
                </div>
            </div>
            <div class="form-group">
                <label class="issue-detail-label"><span translate="common.register">등록자</span></label>
                <span class="select3-selection__choice">
                        <span class="avatar-w"><img ng-src="{{vm.viewer.registerVo.profile}}"></span>
                        <span>{{vm.viewer.registerVo.byName}}</span>
                    </span>
            </div>
            <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>
@@ -109,41 +134,60 @@
                <div class="row mt-20">
                    <div class="col-md-4">
                        <div class="form-group">
                            <div class="row">
                                <div class="col-xxl-12">
                                    <div class="form-group">
                                        <label class="issue-detail-label"><span translate="common.assigneeTeam">담당부서</span> </label>
                                        <div class="">
                                            <div class="select3-selection__choicediv">
                                                <span class="select3-selection__choice" ng-repeat="user in vm.viewer.userVos">
                                                    <span class="avatar-w"><img ng-src="{{::user.profile}}"></span>
                                                    <span>{{::user.byName}}</span>
                                                </span>
                                                <span ng-if="vm.viewer.userVos.length < 1" translate="common.noAssignee">담당자가 없습니다.</span>
                                                            <i class="fa fa-edit fa-2x issue-status-edit cursor"
                                                               ng-click="fn.modifyIssueUser()" data-toggle="tooltip" data-placement="right" title="담당자 변경 하기"></i>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                    <div class="col-md-4">
                        <div class="form-group">
                            <div class="col-md-8">
                                <div class="form-group">
                                    <label class="issue-detail-label"><span translate="common.period">기간</span></label>
                                    <div class="">
                                        <span translate="{{vm.viewer.startDate}}"></span> ~ <span
                                            translate="{{vm.viewer.completeDate}}"></span>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                    <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>
                            <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>
                            </div>
                        </div>
                    </div>
                                <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>
                    <div class="col-md-4">
                        <div class="form-group">
                            <label class="issue-detail-label"><span translate="common.priority">우선 순위</span></label>
                            <div class="">
                                    <span class="badge"
                                          ng-style="{'background-color' : vm.viewer.priorityVo.color, 'border-color' : vm.viewer.priorityVo.color, 'color' : '#FFFFFF' }"
                                          translate="{{vm.viewer.priorityVo.name}}"></span>
                            </div>
                        </div>
                    </div>
                                <span class="badge offset-1" ng-style="{'background-color' : vm.viewer.priorityVo.color, 'border-color' : vm.viewer.priorityVo.color, 'color' : '#FFFFFF' }" translate="{{vm.viewer.priorityVo.name}}"></span>
                    <div class="col-md-4">
                        <div class="form-group">
                            <label class="issue-detail-label"><span translate="issue.issueStatus">이슈 상태</span></label>
                            <!--    권한을 갖고 있을 때 -->
                            <div ng-if="vm.viewer.modifyPermissionCheck">
                                <span class="editForm badge mr-5"
                                      ng-style="{'background-color' : vm.viewer.issueStatusVo.color, 'border-color' : vm.viewer.issueStatusVo.color, 'color' : '#FFFFFF' }">{{vm.viewer.issueStatusVo.name}}</span>
                                <i class="fa fa-edit fa-2x issue-status-edit cursor"
                                   ng-click="fn.modifyIssueStatus()" data-toggle="tooltip" data-placement="right" title="일감 상태 변경 하기"></i>
                            </div>
                            <!--    권한이 없을 때    -->
                            <div ng-if="!vm.viewer.modifyPermissionCheck">
                                <span class="editForm badge mr-5"
                                      ng-style="{'background-color' : vm.viewer.issueStatusVo.color, 'border-color' : vm.viewer.issueStatusVo.color, 'color' : '#FFFFFF' }">{{vm.viewer.issueStatusVo.name}}</span>
                                <!--    권한을 갖고 있을 때 -->
                                <span ng-if="vm.viewer.modifyPermissionCheck">
                                    <span class="editForm badge mr-5 offset-1" ng-style="{'background-color' : vm.viewer.issueStatusVo.color, 'border-color' : vm.viewer.issueStatusVo.color, 'color' : '#FFFFFF' }">{{vm.viewer.issueStatusVo.name}}</span><i class="fa fa-edit fa-2x issue-status-edit cursor" ng-click="fn.modifyIssueStatus()" data-toggle="tooltip" data-placement="right" title="일감 상태 변경 하기"></i>
                                </span>
                                <!--    권한이 없을 때    -->
                                <span ng-if="!vm.viewer.modifyPermissionCheck">
                                    <span class="editForm badge mr-5 offset-1" ng-style="{'background-color' : vm.viewer.issueStatusVo.color, 'border-color' : vm.viewer.issueStatusVo.color, 'color' : '#FFFFFF' }">{{vm.viewer.issueStatusVo.name}}</span>
                                </span>
                            </div>
                        </div>
                    </div>
@@ -151,30 +195,18 @@
                <div class="row">
                    <div class="col-md-4">
                        <div class="form-group">
                            <label class="issue-detail-label"><span translate="issue.issueType">이슈 타입</span> </label>
                            <label class="issue-detail-label"><span translate="common.detectingInfo">탐지정보</span> </label>
                            <div class="">
                                <span class="status-pill smaller"
                                      ng-style="{'background-color': vm.viewer.issueTypeVo.color }"></span><span>{{vm.viewer.issueTypeVo.name}}</span>
                                <label class="issue-detail-label"><span translate="common.diffuserURL">유포자URL</span> </label>
                                <label class="issue-detail-label offset-2"><span translate="common.country">국가</span></label>
                                <div class="">
                                    <span>200.11.13.123</span>
                                    <span class="country">US</span>
                                </div>
<!--                                <span ng-if="vm.viewer.userVos.length < 1" translate="common.noAssignee">담당자가 없습니다.</span>-->
                            </div>
                        </div>
                    </div>
                    <div class="col-md-4">
                        <div class="form-group">
                            <label class="issue-detail-label"><span translate="common.period">기간</span></label>
                            <div class="">
                                <span translate="{{vm.viewer.startDate}}"></span> ~ <span
                                    translate="{{vm.viewer.completeDate}}"></span>
                            </div>
                        </div>
                    </div>
                    <div class="col-md-4">
                        <div class="form-group">
                            <label class="issue-detail-label"><span translate="common.changeDate">변경일</span> </label>
                            <div class="">
                                {{vm.viewer.modifyDate}}
                            </div>
                        </div>
                    </div>
                </div>
@@ -204,27 +236,7 @@
                    </div>
                </div>
                <div class="row">
                    <div class="col-xxl-12">
                        <div class="form-group">
                            <label class="issue-detail-label"><span translate="common.assigneeTeam">담당부서</span> </label>
                            <div class="">
                                <div class="select3-selection__choicediv">
                                    <span class="select3-selection__choice" ng-repeat="user in vm.viewer.userVos">
                                        <span class="avatar-w"><img ng-src="{{::user.profile}}"></span>
                                        <span>{{::user.byName}}</span>
                                    </span>
                                    <span ng-if="vm.viewer.userVos.length < 1" translate="common.noAssignee">
                                        담당자가 없습니다.
                                    </span>
                                    <i class="fa fa-edit fa-2x issue-status-edit cursor"
                                       ng-click="fn.modifyIssueUser()" data-toggle="tooltip" data-placement="right" title="담당자 변경 하기"></i>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="row">
                    <div class="col-md-4" ng-repeat="issueCustomField in vm.viewer.issueCustomFields">
@@ -255,11 +267,10 @@
                </div>
                <h6 class="todo-content-subheader mt-20" translate="issue.relationIssue">연관 일감</h6>
                <!--    테이블 -->
                <div class="mt-10 issue-detail-word-break width-100">
                    <js-table data="vm.viewer.issueRelationVos" table-configs="vm.relTableConfigs"
                                  event="relTableEvent" detail-view="true" hide-header="false" use-sort="false"></js-table>
                              event="relTableEvent" detail-view="true" hide-header="false" use-sort="false"></js-table>
                    <div class="row">
                        <div class="col-sm-4">
@@ -294,6 +305,33 @@
                    </div>
                </div>
                <h6 class="todo-content-subheader mt-20" translate="issue.downIssue">하위 일감</h6>
                <!--    테이블 -->
                <div class="mt-10 issue-detail-word-break width-100">
                    <js-table data="vm.viewer.issueDownVos" table-configs="vm.downTableConfigs"
                              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)"
                                                    page="vm.autoCompletePageDown.issue.page"
                                                    total-page="vm.autoCompletePageDown.issue.totalPage"
                                                    input-disabled="false"
                                                    translation-texts="{ empty : 'common.emptyIssue' }"
                                                    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"
                                    ng-click="fn.addDownIssue()"
                                    translate="issue.addDownIssue">추가</button>
                        </div>
                    </div>
                </div>
                <h6 class="todo-content-subheader mt-20" translate="common.content">내용</h6>
                <div class="box mt-10 issue-detail-word-break width-100" >
@@ -506,4 +544,4 @@
            </div>
        </div>
    </div>
</div>
</div>