<div class="col-xxl-6">
|
<div class="element-box">
|
<div class="os-progress-bar">
|
<div class="bar-labels">
|
<div class="bar-label-left">
|
<h5 translate="dashboard.managementRisk">위험 관리</h5>
|
<small translate="dashboard.updateIssueAndStatusUpdate">빈번한 담당자 변경, 잦은 상태 변경 등 이슈 처리에 위험 요소가 있다고 보여지는 이슈 목록</small>
|
</div>
|
<div class="bar-label-right">
|
<form class="form-inline justify-content-sm-end" method="post" action="/widget/downloadExcel" name="riskIssueWidgetForm">
|
<input type="hidden" name="downloadWidgetType" value="RISK_ISSUE">
|
<div class="btn-group">
|
<button class="btn btn-light btn-rounded dropdown-toggle" data-toggle="dropdown"
|
type="button"><i class="os-icon os-icon-download"></i></button>
|
<div class="dropdown-menu left-menu">
|
<a class="dropdown-item cursor" form-submit="riskIssueWidgetForm">
|
<i class="fa fa-download"></i>
|
<span translate="dashboard.downloadToExcel">엑셀로 다운로드</span>
|
</a>
|
</div>
|
</div>
|
</form>
|
</div>
|
</div>
|
<div class="row mt-20">
|
<div class="col-sm-6 b-r">
|
<div class="el-tablo centered">
|
<div class="label" translate="dashboard.reversalStatusUpdate">
|
번복되는 상태 변경
|
</div>
|
<div class="value text-danger mt-10" >
|
<i class="os-icon os-icon-alert-circle"></i>
|
<strong style="vertical-align:top!important;">{{vm.riskIssueWidget.changeIssueStatusCount}}</strong>
|
</div>
|
</div>
|
</div>
|
<div class="col-sm-6">
|
<div class="el-tablo centered">
|
<div class="label" translate="dashboard.reversalAssigneeUpdate">
|
빈번한 담당자 변경
|
</div>
|
<div class="value text-danger mt-10">
|
<i class="os-icon os-icon-user-male-circle" ></i>
|
<strong style="vertical-align:top!important;">{{vm.riskIssueWidget.changeAssigneeCount}}</strong>
|
</div>
|
</div>
|
</div>
|
</div>
|
|
<div class="mt-30 dashboard-widget-height">
|
<table class="table table-dash table-lightborder width600 table-layout-fixed">
|
<thead>
|
<tr>
|
<th class="text-center width-80-p" translate="dashboard.division">
|
구분
|
</th>
|
<th class="text-center" translate="issue.issueTitle">
|
이슈 제목
|
</th>
|
<th class="text-center width-80-p" translate="common.status">
|
상태
|
</th>
|
<th class="text-center width-120-p" translate="common.assignee">
|
담당자
|
</th>
|
</tr>
|
</thead>
|
<tbody>
|
<tr ng-repeat="issue in vm.riskIssueWidget.issues">
|
<td class="text-center">
|
<span class="fs-12">
|
<i class="os-icon os-icon-user-male-circle text-danger"
|
ng-if="issue.changeAssigneeType"></i>
|
<i class="os-icon os-icon-alert-circle text-danger"
|
ng-if="issue.changeIssueStatusType"></i>
|
</span>
|
</td>
|
<td class="text-left titlename cursor">
|
<span ng-click="fn.moveIssue(issue)">{{issue.title}}</span>
|
</td>
|
<td class="text-center">
|
{{issue.issueStatusName}}
|
</td>
|
<td class="text-center">
|
<div owl-profile-over class="" table-user-image="issue" target="issueUsers"></div>
|
</td>
|
</tr>
|
<tr ng-show="vm.riskIssueWidget.issues.length < 1">
|
<td colspan="4" translate="common.noData">데이터가 없습니다.</td>
|
</tr>
|
</tbody>
|
</table>
|
</div>
|
|
<div class="controls-below-table text-center">
|
<ul uib-pagination
|
boundary-links-numbes="true"
|
items-per-page="5"
|
total-items="vm.riskIssueWidget.page.totalCount"
|
ng-model="vm.page.selectedPage"
|
max-size="5"
|
ng-click="fn.findRiskIssueWidget(vm.page.selectedPage - 1)"
|
class="pagination pagination-sm"
|
previous-text="<"
|
next-text=">"
|
first-text=""
|
last-text="">
|
</ul>
|
</div>
|
</div>
|
</div>
|
</div>
|