@extends('layouts.app', ['class' => 'g-sidenav-show bg-gray-100'])
@section('content')
@include('layouts.navbars.auth.topnav', ['title' => $title ?? 'Perpindahan Barang'])
{{-- Header & Filter Card --}}
@php
$formatKg = function ($value) {
$formatted = number_format((float) $value, 2, ',', '.');
return rtrim(rtrim($formatted, '0'), ',');
};
@endphp
{{-- Pending Approval Card --}}
@if (isset($pending_approvals) && $pending_approvals->count() > 0)
| Action |
No |
Jenis |
Jumlah Bag |
Total Berat |
Dari Layout |
Ke Layout |
Requester |
Approver |
Tanggal Request |
Status |
@foreach ($pending_approvals as $index => $approval)
@php
$requestType = $approval->request_type ?? 'PLACEMENT_REQUEST';
$requestTypeClass = match ($requestType) {
'REVISION_REQUESTED' => 'bg-info',
default => 'bg-secondary',
};
$requestTypeText = match ($requestType) {
'REVISION_REQUESTED' => 'REVISI',
default => 'PLACEMENT',
};
@endphp
|
View
|
{{ $loop->iteration }}
|
{{ $requestTypeText }}
|
{{ $approval->total_bags }} Bag
|
{{ $formatKg($approval->total_berat ?? 0) }} kg
|
@if (($approval->total_from_layouts ?? 0) > 1)
{{ $approval->total_from_layouts }} layout asal
@else
{{ $approval->from_layout_name ?? '-' }}
@endif
|
{{ $approval->to_layout_name ?? '-' }}
|
{{ $approval->requester_fullname ?? ($approval->requester_name ?? '-') }}
|
{{ $approval->approver_fullname ?? ($approval->approver_name ?? '-') }}
|
{{ \Carbon\Carbon::parse($approval->request_date)->format('d/m/Y') }}
|
{{ $approval->status }}
|
@endforeach
@endif
{{-- Data Table --}}
| Action |
No |
No. Dokumen |
Dari Layout |
Ke Layout |
Tanggal |
Total Bag |
Total Berat |
Status |
@foreach ($movements as $index => $movement)
@php
$docStatus = $movement->status ?? 'ACTIVE';
$canEditCancel = false;
$canReverseRevision = $docStatus === 'ACTIVE';
$canSubmitRevision = $docStatus === 'REVERSED';
$canCancelReversed = $docStatus === 'REVERSED';
$statusClass = match ($docStatus) {
'PENDING' => 'bg-warning',
'ACTIVE' => 'bg-success',
'REVERSED' => 'bg-secondary',
'REVISION_REQUESTED' => 'bg-info',
'REVISION_COMPLETED' => 'bg-primary',
'CANCELED' => 'bg-danger',
default => 'bg-secondary',
};
$statusText = match ($docStatus) {
'PENDING' => 'PENDING',
'ACTIVE' => 'ACTIVE',
'REVERSED' => 'REVERSED',
'REVISION_REQUESTED' => 'REVISION REQUESTED',
'REVISION_COMPLETED' => 'REVISION COMPLETED',
'CANCELED' => 'CANCELED',
default => $docStatus,
};
@endphp
|
|
{{ $index + 1 }} |
{{ $movement->pnd_doc_no ?? '-' }}
|
@if (($movement->from_layout_count ?? 0) > 1)
Multi Layout
@else
{{ $movement->from_layout_name ?? '-' }}
@endif
|
{{ $movement->to_layout_name ?? '-' }}
|
{{ \Carbon\Carbon::parse($movement->trs_date)->format('d/m/Y H:i') }}
|
{{ $movement->total_bags ?? 0 }} bag
|
{{ $formatKg($movement->total_berat ?? 0) }} kg |
{{ $statusText }}
|
@endforeach
@endsection
@push('js')
@endpush