Files
CKB/resources/views/kpi/targets/show.blade.php

193 lines
10 KiB
PHP

@extends('layouts.backapp')
@section('content')
<div class="kt-content kt-grid__item kt-grid__item--fluid kt-grid kt-grid--hor" id="kt_content">
<div class="kt-container kt-container--fluid kt-grid__item kt-grid__item--fluid">
<div class="kt-portlet kt-portlet--mobile">
<div class="kt-portlet__head kt-portlet__head--lg">
<div class="kt-portlet__head-label">
<h3 class="kt-portlet__head-title">
Detail Target KPI
</h3>
</div>
<div class="kt-portlet__head-toolbar">
<div class="kt-portlet__head-actions">
<a href="{{ route('kpi.targets.edit', $target->id) }}" class="btn btn-warning">
<i class="fas fa-edit"></i> Edit
</a>
<a href="{{ route('kpi.targets.index') }}" class="btn btn-secondary">
<i class="fas fa-arrow-left"></i> Kembali
</a>
</div>
</div>
</div>
<div class="kt-portlet__body">
<div class="row">
<div class="col-md-6">
<table class="table table-borderless">
<tr>
<td width="150"><strong>Mekanik</strong></td>
<td>: {{ $target->user->name }}</td>
</tr>
<tr>
<td><strong>Email</strong></td>
<td>: {{ $target->user->email }}</td>
</tr>
<tr>
<td><strong>Dealer</strong></td>
<td>: {{ $target->user->dealer->name ?? 'N/A' }}</td>
</tr>
<tr>
<td><strong>Target Nilai</strong></td>
<td>: {{ number_format($target->target_value) }} Pekerjaan</td>
</tr>
<tr>
<td><strong>Status</strong></td>
<td>:
@if($target->is_active)
<span class="badge badge-success">Aktif</span>
@else
<span class="badge badge-secondary">Nonaktif</span>
@endif
</td>
</tr>
</table>
</div>
<div class="col-md-6">
<table class="table table-borderless">
<tr>
<td width="150"><strong>Jenis Target</strong></td>
<td>: <span class="badge badge-info">Target Permanen</span></td>
</tr>
<tr>
<td><strong>Berlaku Sejak</strong></td>
<td>: {{ $target->created_at->format('d/m/Y') }}</td>
</tr>
<tr>
<td><strong>Dibuat</strong></td>
<td>: {{ $target->created_at->format('d/m/Y H:i') }}</td>
</tr>
<tr>
<td><strong>Terakhir Update</strong></td>
<td>: {{ $target->updated_at->format('d/m/Y H:i') }}</td>
</tr>
<tr>
<td><strong>Total Pencapaian</strong></td>
<td>: {{ $target->achievements->count() }} Bulan</td>
</tr>
</table>
</div>
</div>
@if($target->description)
<div class="row mt-3">
<div class="col-12">
<h6><strong>Deskripsi:</strong></h6>
<p class="text-muted">{{ $target->description }}</p>
</div>
</div>
@endif
<!-- Achievement History -->
<div class="row mt-4">
<div class="col-12">
<h5><i class="fas fa-chart-line"></i> Riwayat Pencapaian Bulanan</h5>
@if($target->achievements->count() > 0)
<div class="table-responsive">
<table class="table table-striped table-sm">
<thead>
<tr>
<th>Periode</th>
<th>Target</th>
<th>Aktual</th>
<th>Pencapaian</th>
<th>Status</th>
</tr>
</thead>
<tbody>
@foreach($target->achievements->sortByDesc('year')->sortByDesc('month') as $achievement)
<tr>
<td>{{ $achievement->getPeriodDisplayName() }}</td>
<td>{{ number_format($achievement->target_value) }}</td>
<td>{{ number_format($achievement->actual_value) }}</td>
<td>{{ number_format($achievement->achievement_percentage, 1) }}%</td>
<td>
<span class="badge badge-{{ $achievement->status_color }}">
@switch($achievement->status)
@case('exceeded')
Melebihi Target
@break
@case('good')
Baik
@break
@case('fair')
Cukup
@break
@case('poor')
Kurang
@break
@default
Tidak Diketahui
@endswitch
</span>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="alert alert-info">
<i class="fas fa-info-circle"></i> Belum ada data pencapaian untuk target ini.
</div>
@endif
</div>
</div>
<!-- Summary Statistics -->
@if($target->achievements->count() > 0)
<div class="row mt-4">
<div class="col-12">
<h5><i class="fas fa-chart-bar"></i> Statistik Pencapaian</h5>
<div class="row">
<div class="col-md-3">
<div class="card bg-primary text-white">
<div class="card-body text-center">
<h4>{{ $target->achievements->count() }}</h4>
<small>Total Pencapaian</small>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card bg-success text-white">
<div class="card-body text-center">
<h4>{{ $target->achievements->where('achievement_percentage', '>=', 100)->count() }}</h4>
<small>Target Tercapai</small>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card bg-info text-white">
<div class="card-body text-center">
<h4>{{ number_format($target->achievements->avg('achievement_percentage'), 1) }}%</h4>
<small>Rata-rata Pencapaian</small>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card bg-warning text-white">
<div class="card-body text-center">
<h4>{{ number_format($target->achievements->max('achievement_percentage'), 1) }}%</h4>
<small>Pencapaian Tertinggi</small>
</div>
</div>
</div>
</div>
</div>
</div>
@endif
</div>
</div>
</div>
</div>
@endsection