enhanced by codex

This commit is contained in:
Fiqh Pratama
2025-10-12 20:47:43 +07:00
parent 6b2e658070
commit 9375d2b45c
19 changed files with 556 additions and 187 deletions
@@ -747,6 +747,9 @@ class ReportController extends Controller
} }
} }
$totalKategori = array_sum($nominals);
$pettyCashAmount = $budget && $budget->amount ? $budget->amount : 0;
return view('backend.pages.report.generate_jurnal', [ return view('backend.pages.report.generate_jurnal', [
'pageInfo' => [ 'pageInfo' => [
'title' => 'Generate Reports For Jurnal', 'title' => 'Generate Reports For Jurnal',
@@ -758,6 +761,8 @@ class ReportController extends Controller
'kategori_bca' => $kategori_bca, 'kategori_bca' => $kategori_bca,
'nominals' => $nominals, 'nominals' => $nominals,
'budget' => $budget, 'budget' => $budget,
'totalKategori' => $totalKategori,
'pettyCashAmount' => $pettyCashAmount,
]); ]);
} }
} }
@@ -93,10 +93,16 @@ class FormEntertainmentPresentationController extends Controller
} }
} }
$outstandingForms = $forms->filter(function ($form) {
return is_null($form->final_approved_at) || is_null($form->final_approved_by);
});
session()->put('redirect_url', route('forms.entertainment')); session()->put('redirect_url', route('forms.entertainment'));
return view('backend.pages.forms.entertainment.index', [ return view('backend.pages.forms.entertainment.index', [
'forms' => $forms, 'forms' => $forms,
'availableBudget' => $availableBudget, 'availableBudget' => $availableBudget,
'outstandingCount' => $outstandingForms->count(),
'outstandingTotal' => $outstandingForms->sum('total'),
]); ]);
} }
@@ -697,13 +703,18 @@ class FormEntertainmentPresentationController extends Controller
return redirect()->back(); return redirect()->back();
} }
public function reject($id) public function reject(Request $request, $id)
{ {
$this->checkAuthorization(auth()->user(), ['approval.reject']); $this->checkAuthorization(auth()->user(), ['approval.reject']);
$request->validate([
'remarks' => 'required|string|max:500',
]);
$form = FormEntertaimentPresentation::findOrfail($id); $form = FormEntertaimentPresentation::findOrfail($id);
$form->update([ $form->update([
'status' => 'Rejected' 'status' => 'Rejected',
'remarks' => $request->remarks,
]); ]);
$heads = $form->user->getCabangAndRegionHead(); $heads = $form->user->getCabangAndRegionHead();
@@ -94,11 +94,17 @@ class FormMeetingSeminarController extends Controller
} }
} }
$outstandingForms = $forms->filter(function ($form) {
return is_null($form->final_approved_at) || is_null($form->final_approved_by);
});
session()->put('redirect_url', route('forms.meeting')); session()->put('redirect_url', route('forms.meeting'));
return view('backend.pages.forms.meeting.index', [ return view('backend.pages.forms.meeting.index', [
'forms' => $forms, 'forms' => $forms,
'availableBudget' => $availableBudget 'availableBudget' => $availableBudget,
'outstandingCount' => $outstandingForms->count(),
'outstandingTotal' => $outstandingForms->sum('total'),
]); ]);
} }
@@ -751,13 +757,18 @@ class FormMeetingSeminarController extends Controller
return redirect()->back(); return redirect()->back();
} }
public function reject($id) public function reject(Request $request, $id)
{ {
$this->checkAuthorization(auth()->user(), ['approval.reject']); $this->checkAuthorization(auth()->user(), ['approval.reject']);
$request->validate([
'remarks' => 'required|string|max:500',
]);
$form = FormMeetingSeminar::findOrfail($id); $form = FormMeetingSeminar::findOrfail($id);
$form->update([ $form->update([
'status' => 'Rejected' 'status' => 'Rejected',
'remarks' => $request->remarks,
]); ]);
$heads = $form->user->getCabangAndRegionHead(); $heads = $form->user->getCabangAndRegionHead();
@@ -91,11 +91,17 @@ class FormOtherController extends Controller
} }
} }
$outstandingForms = $forms->filter(function ($form) {
return is_null($form->final_approved_at) || is_null($form->final_approved_by);
});
session()->put('redirect_url', route('forms.other')); session()->put('redirect_url', route('forms.other'));
return view('backend.pages.forms.other.index', [ return view('backend.pages.forms.other.index', [
'forms' => $forms, 'forms' => $forms,
'availableBudget' => $availableBudget 'availableBudget' => $availableBudget,
'outstandingCount' => $outstandingForms->count(),
'outstandingTotal' => $outstandingForms->sum('total'),
]); ]);
} }
@@ -694,13 +700,18 @@ class FormOtherController extends Controller
return redirect()->back(); return redirect()->back();
} }
public function reject($id) public function reject(Request $request, $id)
{ {
$this->checkAuthorization(auth()->user(), ['approval.reject']); $this->checkAuthorization(auth()->user(), ['approval.reject']);
$request->validate([
'remarks' => 'required|string|max:500',
]);
$form = FormOthers::findOrfail($id); $form = FormOthers::findOrfail($id);
$form->update([ $form->update([
'status' => 'Rejected' 'status' => 'Rejected',
'remarks' => $request->remarks,
]); ]);
$heads = $form->user->getCabangAndRegionHead(); $heads = $form->user->getCabangAndRegionHead();
@@ -95,10 +95,16 @@ class FormUpCountryController extends Controller
$forms = $forms; $forms = $forms;
} }
$outstandingForms = $forms->filter(function ($form) {
return is_null($form->final_approved_at) || is_null($form->final_approved_by);
});
session()->put('redirect_url', route('forms.up-country')); session()->put('redirect_url', route('forms.up-country'));
return view('backend.pages.forms.upcountry.index', [ return view('backend.pages.forms.upcountry.index', [
'forms' => $forms, 'forms' => $forms,
'availableBudget' => $availableBudget 'availableBudget' => $availableBudget,
'outstandingCount' => $outstandingForms->count(),
'outstandingTotal' => $outstandingForms->sum('total'),
]); ]);
} }
@@ -94,11 +94,17 @@ class FormVehicleController extends Controller
} }
} }
$outstandingForms = $forms->filter(function ($form) {
return is_null($form->final_approved_at) || is_null($form->final_approved_by);
});
session()->put('redirect_url', route('forms.vehicle')); session()->put('redirect_url', route('forms.vehicle'));
return view('backend.pages.forms.vehicle.index', [ return view('backend.pages.forms.vehicle.index', [
'forms' => $forms, 'forms' => $forms,
'availableBudget' => $availableBudget 'availableBudget' => $availableBudget,
'outstandingCount' => $outstandingForms->count(),
'outstandingTotal' => $outstandingForms->sum('total'),
]); ]);
} }
@@ -24,6 +24,7 @@ class FormEntertaimentPresentation extends Model
'bukti_total', 'bukti_total',
'account_number', 'account_number',
'status', 'status',
'remarks',
'approved_at', 'approved_at',
'approved2_at', 'approved2_at',
'approved_by', 'approved_by',
+1
View File
@@ -27,6 +27,7 @@ class FormMeetingSeminar extends Model
'bukti_hotel', 'bukti_hotel',
'account_number', 'account_number',
'status', 'status',
'remarks',
'approved_at', 'approved_at',
'approved2_at', 'approved2_at',
'approved_by', 'approved_by',
+1
View File
@@ -21,6 +21,7 @@ class FormOthers extends Model
'bukti_total', 'bukti_total',
'account_number', 'account_number',
'status', 'status',
'remarks',
'approved_at', 'approved_at',
'approved2_at', 'approved2_at',
'approved_by', 'approved_by',
@@ -432,13 +432,11 @@
</button> </button>
</form> </form>
<form action="{{ route('forms.entertainment.reject', $form->id) }}" method="POST" class="d-inline"onsubmit="return confirm('Are you sure you want to reject this form?');"> <button type="button"
@csrf class="btn btn-danger btn-sm open-reject-modal"
@method('PUT') data-action="{{ route('forms.entertainment.reject', $form->id) }}">
<button type="submit" class="btn btn-danger btn-sm">
Reject Reject
</button> </button>
</form>
@else @else
@if ($form->approved_at) @if ($form->approved_at)
{{ \Carbon\Carbon::parse($form->approved_at)->locale('id')->isoFormat('D MMMM Y') }} {{ \Carbon\Carbon::parse($form->approved_at)->locale('id')->isoFormat('D MMMM Y') }}
@@ -591,13 +589,11 @@
</button> </button>
</form> </form>
<form action="{{ route('forms.meeting.reject', $form->id) }}" method="POST" class="d-inline"onsubmit="return confirm('Are you sure you want to reject this form?');"> <button type="button"
@csrf class="btn btn-danger btn-sm open-reject-modal"
@method('PUT') data-action="{{ route('forms.meeting.reject', $form->id) }}">
<button type="submit" class="btn btn-danger btn-sm">
Reject Reject
</button> </button>
</form>
@else @else
@if ($form->approved_at) @if ($form->approved_at)
{{ \Carbon\Carbon::parse($form->approved_at)->locale('id')->isoFormat('D MMMM Y') }} {{ \Carbon\Carbon::parse($form->approved_at)->locale('id')->isoFormat('D MMMM Y') }}
@@ -748,13 +744,11 @@
</button> </button>
</form> </form>
<form action="{{ route('forms.other.reject', $form->id) }}" method="POST" class="d-inline"onsubmit="return confirm('Are you sure you want to reject this form?');"> <button type="button"
@csrf class="btn btn-danger btn-sm open-reject-modal"
@method('PUT') data-action="{{ route('forms.other.reject', $form->id) }}">
<button type="submit" class="btn btn-danger btn-sm"> Reject
Reject </button>
</button>
</form>
@else @else
@if ($form->approved_at) @if ($form->approved_at)
{{ \Carbon\Carbon::parse($form->approved_at)->locale('id')->isoFormat('D MMMM Y') }} {{ \Carbon\Carbon::parse($form->approved_at)->locale('id')->isoFormat('D MMMM Y') }}
@@ -22,10 +22,10 @@
</section> </section>
<section class="content"> <section class="content">
<div class="container-fluid"> <div class="container-fluid">
<div class="row"> <div class="row row-cols-1 row-cols-md-2 row-cols-xl-5 g-3">
<!-- Total Expense --> <!-- Total Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-info"> <div class="small-box bg-info flex-fill">
<div class="inner"> <div class="inner">
<h3>Rp {{ number_format($forms->sum('total'), 0, ',', '.') }}</h3> <h3>Rp {{ number_format($forms->sum('total'), 0, ',', '.') }}</h3>
<p>Total Expense</p> <p>Total Expense</p>
@@ -36,8 +36,8 @@
</div> </div>
</div> </div>
<!-- Approved Expense --> <!-- Approved Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-success"> <div class="small-box bg-success flex-fill">
<div class="inner"> <div class="inner">
<h3>Rp {{ number_format($forms->whereIn('status', ['Approved', 'Closed'])->sum('approved_total'), 0, ',', '.') }}</h3> <h3>Rp {{ number_format($forms->whereIn('status', ['Approved', 'Closed'])->sum('approved_total'), 0, ',', '.') }}</h3>
<p>Approved Expenses</p> <p>Approved Expenses</p>
@@ -48,8 +48,8 @@
</div> </div>
</div> </div>
<!-- Pending Expense --> <!-- Pending Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-warning"> <div class="small-box bg-warning flex-fill">
<div class="inner"> <div class="inner">
<h3 class="text-white">Rp {{ number_format($forms->where('status', 'On Progress')->sum('total'), 0, ',', '.') }}</h3> <h3 class="text-white">Rp {{ number_format($forms->where('status', 'On Progress')->sum('total'), 0, ',', '.') }}</h3>
<p class="text-white">Pending Expenses</p> <p class="text-white">Pending Expenses</p>
@@ -59,9 +59,22 @@
</div> </div>
</div> </div>
</div> </div>
<!-- Outstanding Expense -->
<div class="col d-flex">
<div class="small-box bg-danger flex-fill">
<div class="inner">
<h3>{{ $outstandingCount }}</h3>
<p>Outstanding Expenses</p>
<p class="mb-0"><small>Total Rp {{ number_format($outstandingTotal, 0, ',', '.') }}</small></p>
</div>
<div class="icon">
<i class="fas fa-exclamation-triangle"></i>
</div>
</div>
</div>
@if($availableBudget > 0) @if($availableBudget > 0)
<div class="col-lg-3 col-6"> <div class="col d-flex">
<div class="small-box bg-purple"> <div class="small-box bg-purple flex-fill">
<div class="inner"> <div class="inner">
<h3 class="text-white">Rp {{ number_format($availableBudget, 0, ',', '.') }}</h3> <h3 class="text-white">Rp {{ number_format($availableBudget, 0, ',', '.') }}</h3>
<p class="text-white">Available Budget</p> <p class="text-white">Available Budget</p>
@@ -170,13 +183,11 @@
</button> </button>
</form> </form>
<form action="{{ route('forms.entertainment.reject', $item->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to reject this item?');"> <button type="button"
@csrf class="btn btn-danger btn-sm open-reject-modal"
@method('PUT') data-action="{{ route('forms.entertainment.reject', $item->id) }}">
<button type="submit" class="btn btn-danger btn-sm"> Reject
Reject </button>
</button>
</form>
@endif @endif
@endif @endif
@if ($item->approved_at) @if ($item->approved_at)
@@ -197,13 +208,11 @@
</button> </button>
</form> </form>
<form action="{{ route('forms.entertainment.reject', $item->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to reject this item?');"> <button type="button"
@csrf class="btn btn-danger btn-sm open-reject-modal"
@method('PUT') data-action="{{ route('forms.entertainment.reject', $item->id) }}">
<button type="submit" class="btn btn-danger btn-sm"> Reject
Reject </button>
</button>
</form>
@endif @endif
@endif @endif
@if ($item->approved2_at) @if ($item->approved2_at)
@@ -411,6 +420,35 @@
</div> </div>
</div> </div>
</section> </section>
<section>
<div class="modal fade" id="rejectModal" tabindex="-1" role="dialog" aria-labelledby="rejectModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<form id="rejectForm" method="POST" action="">
@csrf
@method('PUT')
<div class="modal-header">
<h5 class="modal-title" id="rejectModalLabel">Reject Expense</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="rejectRemarks">Remarks <span class="text-danger">*</span></label>
<textarea class="form-control" name="remarks" id="rejectRemarks" rows="3" required></textarea>
</div>
<p class="mb-0 text-muted small">Pengajuan akan ditolak setelah Anda mengirimkan catatan ini.</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-danger">Reject</button>
</div>
</form>
</div>
</div>
</div>
</section>
@endsection @endsection
@section('scripts') @section('scripts')
@@ -451,6 +489,23 @@
}); });
} }
// Handle Reject Button Click
$(document).on('click', '.open-reject-modal', function () {
const rejectUrl = $(this).data('action');
$('#rejectForm').attr('action', rejectUrl);
$('#rejectRemarks').val('');
$('#rejectModal').modal('show');
});
$('#rejectModal').on('shown.bs.modal', function () {
$('#rejectRemarks').trigger('focus');
});
$('#rejectModal').on('hidden.bs.modal', function () {
$('#rejectForm').attr('action', '');
$('#rejectRemarks').val('');
});
// Handle Approve Button Click // Handle Approve Button Click
$(document).on('click', '.open-approve-modal', function() { $(document).on('click', '.open-approve-modal', function() {
const approveUrl = $(this).data('id'); const approveUrl = $(this).data('id');
@@ -88,23 +88,19 @@
@if (auth()->user()->can('approval.approve') && $form->status == 'On Progress') @if (auth()->user()->can('approval.approve') && $form->status == 'On Progress')
<button type="button" class="btn btn-success final-approve-modal" data-id="{{ route('forms.entertainment.approve', $form->id) }}">Approve 1</button> <button type="button" class="btn btn-success final-approve-modal" data-id="{{ route('forms.entertainment.approve', $form->id) }}">Approve 1</button>
<form action="{{ route('forms.entertainment.reject', $form->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to approve this item?');"> <button type="button"
@csrf class="btn btn-danger open-reject-modal"
@method('PUT') data-action="{{ route('forms.entertainment.reject', $form->id) }}">
<button type="submit" class="btn btn-danger"> Reject
Reject </button>
</button>
</form>
@elseif(auth()->user()->can('approval2.approve') && $form->status == 'Approved 1') @elseif(auth()->user()->can('approval2.approve') && $form->status == 'Approved 1')
<button type="button" class="btn btn-success open-approve-modal" data-id="{{ route('forms.entertainment.approve2', $form->id) }}">Approve 2</button> <button type="button" class="btn btn-success open-approve-modal" data-id="{{ route('forms.entertainment.approve2', $form->id) }}">Approve 2</button>
<form action="{{ route('forms.entertainment.reject', $form->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to approve this item?');"> <button type="button"
@csrf class="btn btn-danger open-reject-modal"
@method('PUT') data-action="{{ route('forms.entertainment.reject', $form->id) }}">
<button type="submit" class="btn btn-danger"> Reject
Reject </button>
</button>
</form>
@elseif(auth()->user()->can('final_approval.approve') && $form->status == 'Approved 2') @elseif(auth()->user()->can('final_approval.approve') && $form->status == 'Approved 2')
<button type="button" class="btn btn-primary open-approve-modal" data-id="{{ route('forms.entertainment.final-approve', $form->id) }}">Final Approve</button> <button type="button" class="btn btn-primary open-approve-modal" data-id="{{ route('forms.entertainment.final-approve', $form->id) }}">Final Approve</button>
@endif @endif
@@ -253,6 +249,35 @@
</div> </div>
</div> </div>
</section> </section>
<section>
<div class="modal fade" id="rejectModal" tabindex="-1" role="dialog" aria-labelledby="rejectModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<form id="rejectForm" method="POST" action="">
@csrf
@method('PUT')
<div class="modal-header">
<h5 class="modal-title" id="rejectModalLabel">Reject Expense</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="rejectRemarks">Remarks <span class="text-danger">*</span></label>
<textarea class="form-control" name="remarks" id="rejectRemarks" rows="3" required></textarea>
</div>
<p class="mb-0 text-muted small">Pengajuan akan ditolak setelah Anda mengirimkan catatan ini.</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-danger">Reject</button>
</div>
</form>
</div>
</div>
</div>
</section>
@endsection @endsection
@section('scripts') @section('scripts')
@@ -267,7 +292,23 @@
</script> </script>
<script> <script>
$(document).on('click', '.open-approve-modal', function() { $(document).on('click', '.open-reject-modal', function () {
const rejectUrl = $(this).data('action');
$('#rejectForm').attr('action', rejectUrl);
$('#rejectRemarks').val('');
$('#rejectModal').modal('show');
});
$('#rejectModal').on('shown.bs.modal', function () {
$('#rejectRemarks').trigger('focus');
});
$('#rejectModal').on('hidden.bs.modal', function () {
$('#rejectForm').attr('action', '');
$('#rejectRemarks').val('');
});
$(document).on('click', '.open-approve-modal', function() {
const approveUrl = $(this).data('id'); const approveUrl = $(this).data('id');
// Show spinner and hide content initially // Show spinner and hide content initially
@@ -22,10 +22,10 @@
</section> </section>
<section class="content"> <section class="content">
<div class="container-fluid"> <div class="container-fluid">
<div class="row"> <div class="row row-cols-1 row-cols-md-2 row-cols-xl-5 g-3">
<!-- Total Expense --> <!-- Total Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-info"> <div class="small-box bg-info flex-fill">
<div class="inner"> <div class="inner">
<h3>Rp {{ number_format($forms->sum('total'), 0, ',', '.') }}</h3> <h3>Rp {{ number_format($forms->sum('total'), 0, ',', '.') }}</h3>
<p>Total Expense</p> <p>Total Expense</p>
@@ -36,8 +36,8 @@
</div> </div>
</div> </div>
<!-- Approved Expense --> <!-- Approved Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-success"> <div class="small-box bg-success flex-fill">
<div class="inner"> <div class="inner">
<h3>Rp {{ number_format($forms->whereIn('status', ['Approved', 'Closed'])->sum('approved_total'), 0, ',', '.') }}</h3> <h3>Rp {{ number_format($forms->whereIn('status', ['Approved', 'Closed'])->sum('approved_total'), 0, ',', '.') }}</h3>
<p>Approved Expenses</p> <p>Approved Expenses</p>
@@ -48,8 +48,8 @@
</div> </div>
</div> </div>
<!-- Pending Expense --> <!-- Pending Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-warning"> <div class="small-box bg-warning flex-fill">
<div class="inner"> <div class="inner">
<h3 class="text-white">Rp {{ number_format($forms->where('status', 'On Progress')->sum('total'), 0, ',', '.') }}</h3> <h3 class="text-white">Rp {{ number_format($forms->where('status', 'On Progress')->sum('total'), 0, ',', '.') }}</h3>
<p class="text-white">Pending Expenses</p> <p class="text-white">Pending Expenses</p>
@@ -59,9 +59,22 @@
</div> </div>
</div> </div>
</div> </div>
<!-- Outstanding Expense -->
<div class="col d-flex">
<div class="small-box bg-danger flex-fill">
<div class="inner">
<h3>{{ $outstandingCount }}</h3>
<p>Outstanding Expenses</p>
<p class="mb-0"><small>Total Rp {{ number_format($outstandingTotal, 0, ',', '.') }}</small></p>
</div>
<div class="icon">
<i class="fas fa-exclamation-triangle"></i>
</div>
</div>
</div>
@if($availableBudget > 0) @if($availableBudget > 0)
<div class="col-lg-3 col-6"> <div class="col d-flex">
<div class="small-box bg-purple"> <div class="small-box bg-purple flex-fill">
<div class="inner"> <div class="inner">
<h3 class="text-white">Rp {{ number_format($availableBudget, 0, ',', '.') }}</h3> <h3 class="text-white">Rp {{ number_format($availableBudget, 0, ',', '.') }}</h3>
<p class="text-white">Available Budget</p> <p class="text-white">Available Budget</p>
@@ -160,13 +173,11 @@
</button> </button>
</form> </form>
<form action="{{ route('forms.meeting.reject', $item->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to reject this item?');"> <button type="button"
@csrf class="btn btn-danger btn-sm open-reject-modal"
@method('PUT') data-action="{{ route('forms.meeting.reject', $item->id) }}">
<button type="submit" class="btn btn-danger btn-sm"> Reject
Reject </button>
</button>
</form>
@endif @endif
@endif @endif
@if ($item->approved_at) @if ($item->approved_at)
@@ -187,13 +198,11 @@
</button> </button>
</form> </form>
<form action="{{ route('forms.meeting.reject', $item->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to reject this item?');"> <button type="button"
@csrf class="btn btn-danger btn-sm open-reject-modal"
@method('PUT') data-action="{{ route('forms.meeting.reject', $item->id) }}">
<button type="submit" class="btn btn-danger btn-sm"> Reject
Reject </button>
</button>
</form>
@endif @endif
@endif @endif
@if ($item->approved2_at) @if ($item->approved2_at)
@@ -423,6 +432,35 @@
</div> </div>
</div> </div>
</section> </section>
<section>
<div class="modal fade" id="rejectModal" tabindex="-1" role="dialog" aria-labelledby="rejectModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<form id="rejectForm" method="POST" action="">
@csrf
@method('PUT')
<div class="modal-header">
<h5 class="modal-title" id="rejectModalLabel">Reject Expense</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="rejectRemarks">Remarks <span class="text-danger">*</span></label>
<textarea class="form-control" name="remarks" id="rejectRemarks" rows="3" required></textarea>
</div>
<p class="mb-0 text-muted small">Pengajuan akan ditolak setelah Anda mengirimkan catatan ini.</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-danger">Reject</button>
</div>
</form>
</div>
</div>
</div>
</section>
@endsection @endsection
@section('scripts') @section('scripts')
@@ -463,6 +501,23 @@
}); });
} }
// Handle Reject Button Click
$(document).on('click', '.open-reject-modal', function () {
const rejectUrl = $(this).data('action');
$('#rejectForm').attr('action', rejectUrl);
$('#rejectRemarks').val('');
$('#rejectModal').modal('show');
});
$('#rejectModal').on('shown.bs.modal', function () {
$('#rejectRemarks').trigger('focus');
});
$('#rejectModal').on('hidden.bs.modal', function () {
$('#rejectForm').attr('action', '');
$('#rejectRemarks').val('');
});
// Handle Approve Button Click // Handle Approve Button Click
$(document).on('click', '.open-approve-modal', function() { $(document).on('click', '.open-approve-modal', function() {
const approveUrl = $(this).data('id'); const approveUrl = $(this).data('id');
@@ -84,23 +84,19 @@
@if (auth()->user()->can('approval.approve') && $form->status == 'On Progress') @if (auth()->user()->can('approval.approve') && $form->status == 'On Progress')
<button type="button" class="btn btn-success final-approve-modal" data-id="{{ route('forms.meeting.approve', $form->id) }}">Approve 1</button> <button type="button" class="btn btn-success final-approve-modal" data-id="{{ route('forms.meeting.approve', $form->id) }}">Approve 1</button>
<form action="{{ route('forms.meeting.reject', $form->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to approve this item?');"> <button type="button"
@csrf class="btn btn-danger open-reject-modal"
@method('PUT') data-action="{{ route('forms.meeting.reject', $form->id) }}">
<button type="submit" class="btn btn-danger"> Reject
Reject </button>
</button>
</form>
@elseif(auth()->user()->can('approval2.approve') && $form->status == 'Approved 1') @elseif(auth()->user()->can('approval2.approve') && $form->status == 'Approved 1')
<button type="button" class="btn btn-success open-approve-modal" data-id="{{ route('forms.meeting.approve2', $form->id) }}">Approve 2</button> <button type="button" class="btn btn-success open-approve-modal" data-id="{{ route('forms.meeting.approve2', $form->id) }}">Approve 2</button>
<form action="{{ route('forms.meeting.reject', $form->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to approve this item?');"> <button type="button"
@csrf class="btn btn-danger open-reject-modal"
@method('PUT') data-action="{{ route('forms.meeting.reject', $form->id) }}">
<button type="submit" class="btn btn-danger"> Reject
Reject </button>
</button>
</form>
@elseif(auth()->user()->can('final_approval.approve') && $form->status == 'Approved 2') @elseif(auth()->user()->can('final_approval.approve') && $form->status == 'Approved 2')
<button type="button" class="btn btn-primary open-approve-modal" data-id="{{ route('forms.meeting.final-approve', $form->id) }}">Final Approve</button> <button type="button" class="btn btn-primary open-approve-modal" data-id="{{ route('forms.meeting.final-approve', $form->id) }}">Final Approve</button>
@endif @endif
@@ -271,6 +267,35 @@
</div> </div>
</div> </div>
</section> </section>
<section>
<div class="modal fade" id="rejectModal" tabindex="-1" role="dialog" aria-labelledby="rejectModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<form id="rejectForm" method="POST" action="">
@csrf
@method('PUT')
<div class="modal-header">
<h5 class="modal-title" id="rejectModalLabel">Reject Expense</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="rejectRemarks">Remarks <span class="text-danger">*</span></label>
<textarea class="form-control" name="remarks" id="rejectRemarks" rows="3" required></textarea>
</div>
<p class="mb-0 text-muted small">Pengajuan akan ditolak setelah Anda mengirimkan catatan ini.</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-danger">Reject</button>
</div>
</form>
</div>
</div>
</div>
</section>
@endsection @endsection
@section('scripts') @section('scripts')
@@ -309,6 +334,22 @@
</script> </script>
<script> <script>
$(document).on('click', '.open-reject-modal', function () {
const rejectUrl = $(this).data('action');
$('#rejectForm').attr('action', rejectUrl);
$('#rejectRemarks').val('');
$('#rejectModal').modal('show');
});
$('#rejectModal').on('shown.bs.modal', function () {
$('#rejectRemarks').trigger('focus');
});
$('#rejectModal').on('hidden.bs.modal', function () {
$('#rejectForm').attr('action', '');
$('#rejectRemarks').val('');
});
// Handle Approve Button Click // Handle Approve Button Click
$(document).on('click', '.open-approve-modal', function() { $(document).on('click', '.open-approve-modal', function() {
const approveUrl = $(this).data('id'); const approveUrl = $(this).data('id');
@@ -22,10 +22,10 @@
</section> </section>
<section class="content"> <section class="content">
<div class="container-fluid"> <div class="container-fluid">
<div class="row"> <div class="row row-cols-1 row-cols-md-2 row-cols-xl-5 g-3">
<!-- Total Expense --> <!-- Total Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-info"> <div class="small-box bg-info flex-fill">
<div class="inner"> <div class="inner">
<h3>Rp {{ number_format($forms->sum('total'), 0, ',', '.') }}</h3> <h3>Rp {{ number_format($forms->sum('total'), 0, ',', '.') }}</h3>
<p>Total Expense</p> <p>Total Expense</p>
@@ -36,8 +36,8 @@
</div> </div>
</div> </div>
<!-- Approved Expense --> <!-- Approved Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-success"> <div class="small-box bg-success flex-fill">
<div class="inner"> <div class="inner">
<h3>Rp {{ number_format($forms->whereIn('status', ['Approved', 'Closed'])->sum('approved_total'), 0, ',', '.') }}</h3> <h3>Rp {{ number_format($forms->whereIn('status', ['Approved', 'Closed'])->sum('approved_total'), 0, ',', '.') }}</h3>
<p>Approved Expenses</p> <p>Approved Expenses</p>
@@ -48,8 +48,8 @@
</div> </div>
</div> </div>
<!-- Pending Expense --> <!-- Pending Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-warning"> <div class="small-box bg-warning flex-fill">
<div class="inner"> <div class="inner">
<h3 class="text-white">Rp {{ number_format($forms->where('status', 'On Progress')->sum('total'), 0, ',', '.') }}</h3> <h3 class="text-white">Rp {{ number_format($forms->where('status', 'On Progress')->sum('total'), 0, ',', '.') }}</h3>
<p class="text-white">Pending Expenses</p> <p class="text-white">Pending Expenses</p>
@@ -59,9 +59,22 @@
</div> </div>
</div> </div>
</div> </div>
<!-- Outstanding Expense -->
<div class="col d-flex">
<div class="small-box bg-danger flex-fill">
<div class="inner">
<h3>{{ $outstandingCount }}</h3>
<p>Outstanding Expenses</p>
<p class="mb-0"><small>Total Rp {{ number_format($outstandingTotal, 0, ',', '.') }}</small></p>
</div>
<div class="icon">
<i class="fas fa-exclamation-triangle"></i>
</div>
</div>
</div>
@if($availableBudget > 0) @if($availableBudget > 0)
<div class="col-lg-3 col-6"> <div class="col d-flex">
<div class="small-box bg-purple"> <div class="small-box bg-purple flex-fill">
<div class="inner"> <div class="inner">
<h3 class="text-white">Rp {{ number_format($availableBudget, 0, ',', '.') }}</h3> <h3 class="text-white">Rp {{ number_format($availableBudget, 0, ',', '.') }}</h3>
<p class="text-white">Available Budget</p> <p class="text-white">Available Budget</p>
@@ -168,13 +181,11 @@
</button> </button>
</form> </form>
<form action="{{ route('forms.other.reject', $item->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to reject this item?');"> <button type="button"
@csrf class="btn btn-danger btn-sm open-reject-modal"
@method('PUT') data-action="{{ route('forms.other.reject', $item->id) }}">
<button type="submit" class="btn btn-danger btn-sm"> Reject
Reject </button>
</button>
</form>
@endif @endif
@endif @endif
@if ($item->approved_at) @if ($item->approved_at)
@@ -195,13 +206,11 @@
</button> </button>
</form> </form>
<form action="{{ route('forms.other.reject', $item->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to reject this item?');"> <button type="button"
@csrf class="btn btn-danger btn-sm open-reject-modal"
@method('PUT') data-action="{{ route('forms.other.reject', $item->id) }}">
<button type="submit" class="btn btn-danger btn-sm"> Reject
Reject </button>
</button>
</form>
@endif @endif
@endif @endif
@if ($item->approved2_at) @if ($item->approved2_at)
@@ -397,6 +406,35 @@
</div> </div>
</div> </div>
</section> </section>
<section>
<div class="modal fade" id="rejectModal" tabindex="-1" role="dialog" aria-labelledby="rejectModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<form id="rejectForm" method="POST" action="">
@csrf
@method('PUT')
<div class="modal-header">
<h5 class="modal-title" id="rejectModalLabel">Reject Expense</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="rejectRemarks">Remarks <span class="text-danger">*</span></label>
<textarea class="form-control" name="remarks" id="rejectRemarks" rows="3" required></textarea>
</div>
<p class="mb-0 text-muted small">Pengajuan akan ditolak setelah Anda mengirimkan catatan ini.</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-danger">Reject</button>
</div>
</form>
</div>
</div>
</div>
</section>
@endsection @endsection
@section('scripts') @section('scripts')
@@ -437,6 +475,23 @@
}); });
} }
// Handle Reject Button Click
$(document).on('click', '.open-reject-modal', function () {
const rejectUrl = $(this).data('action');
$('#rejectForm').attr('action', rejectUrl);
$('#rejectRemarks').val('');
$('#rejectModal').modal('show');
});
$('#rejectModal').on('shown.bs.modal', function () {
$('#rejectRemarks').trigger('focus');
});
$('#rejectModal').on('hidden.bs.modal', function () {
$('#rejectForm').attr('action', '');
$('#rejectRemarks').val('');
});
// Handle Approve Button Click // Handle Approve Button Click
$(document).on('click', '.open-approve-modal', function() { $(document).on('click', '.open-approve-modal', function() {
const approveUrl = $(this).data('id'); const approveUrl = $(this).data('id');
@@ -78,23 +78,19 @@
@if (auth()->user()->can('approval.approve') && $form->status == 'On Progress') @if (auth()->user()->can('approval.approve') && $form->status == 'On Progress')
<button type="button" class="btn btn-success final-approve-modal" data-id="{{ route('forms.other.approve', $form->id) }}">Approve 1</button> <button type="button" class="btn btn-success final-approve-modal" data-id="{{ route('forms.other.approve', $form->id) }}">Approve 1</button>
<form action="{{ route('forms.other.reject', $form->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to approve this item?');"> <button type="button"
@csrf class="btn btn-danger open-reject-modal"
@method('PUT') data-action="{{ route('forms.other.reject', $form->id) }}">
<button type="submit" class="btn btn-danger"> Reject
Reject </button>
</button>
</form>
@elseif(auth()->user()->can('approval2.approve') && $form->status == 'Approved 1') @elseif(auth()->user()->can('approval2.approve') && $form->status == 'Approved 1')
<button type="button" class="btn btn-success open-approve-modal" data-id="{{ route('forms.other.approve2', $form->id) }}">Approve 2</button> <button type="button" class="btn btn-success open-approve-modal" data-id="{{ route('forms.other.approve2', $form->id) }}">Approve 2</button>
<form action="{{ route('forms.other.reject', $form->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Are you sure you want to approve this item?');"> <button type="button"
@csrf class="btn btn-danger open-reject-modal"
@method('PUT') data-action="{{ route('forms.other.reject', $form->id) }}">
<button type="submit" class="btn btn-danger"> Reject
Reject </button>
</button>
</form>
@elseif(auth()->user()->can('final_approval.approve') && $form->status == 'Approved 2') @elseif(auth()->user()->can('final_approval.approve') && $form->status == 'Approved 2')
<button type="button" class="btn btn-primary open-approve-modal" data-id="{{ route('forms.other.final-approve', $form->id) }}">Final Approve</button> <button type="button" class="btn btn-primary open-approve-modal" data-id="{{ route('forms.other.final-approve', $form->id) }}">Final Approve</button>
@endif @endif
@@ -231,6 +227,35 @@
</div> </div>
</div> </div>
</section> </section>
<section>
<div class="modal fade" id="rejectModal" tabindex="-1" role="dialog" aria-labelledby="rejectModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<form id="rejectForm" method="POST" action="">
@csrf
@method('PUT')
<div class="modal-header">
<h5 class="modal-title" id="rejectModalLabel">Reject Expense</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="rejectRemarks">Remarks <span class="text-danger">*</span></label>
<textarea class="form-control" name="remarks" id="rejectRemarks" rows="3" required></textarea>
</div>
<p class="mb-0 text-muted small">Pengajuan akan ditolak setelah Anda mengirimkan catatan ini.</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-danger">Reject</button>
</div>
</form>
</div>
</div>
</div>
</section>
@endsection @endsection
@section('scripts') @section('scripts')
@@ -245,6 +270,22 @@
</script> </script>
<script> <script>
$(document).on('click', '.open-reject-modal', function () {
const rejectUrl = $(this).data('action');
$('#rejectForm').attr('action', rejectUrl);
$('#rejectRemarks').val('');
$('#rejectModal').modal('show');
});
$('#rejectModal').on('shown.bs.modal', function () {
$('#rejectRemarks').trigger('focus');
});
$('#rejectModal').on('hidden.bs.modal', function () {
$('#rejectForm').attr('action', '');
$('#rejectRemarks').val('');
});
// Handle Approve Button Click // Handle Approve Button Click
$(document).on('click', '.open-approve-modal', function() { $(document).on('click', '.open-approve-modal', function() {
const approveUrl = $(this).data('id'); const approveUrl = $(this).data('id');
@@ -22,10 +22,10 @@
</section> </section>
<section class="content"> <section class="content">
<div class="container-fluid"> <div class="container-fluid">
<div class="row"> <div class="row row-cols-1 row-cols-md-2 row-cols-xl-5 g-3">
<!-- Total Expense --> <!-- Total Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-info"> <div class="small-box bg-info flex-fill">
<div class="inner"> <div class="inner">
<h3>Rp {{ number_format($forms->sum('total'), 0, ',', '.') }}</h3> <h3>Rp {{ number_format($forms->sum('total'), 0, ',', '.') }}</h3>
<p>Total Expense</p> <p>Total Expense</p>
@@ -36,8 +36,8 @@
</div> </div>
</div> </div>
<!-- Approved Expense --> <!-- Approved Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-success"> <div class="small-box bg-success flex-fill">
<div class="inner"> <div class="inner">
<h3>Rp {{ number_format($forms->whereIn('status', ['Approved', 'Closed'])->sum('approved_total'), 0, ',', '.') }}</h3> <h3>Rp {{ number_format($forms->whereIn('status', ['Approved', 'Closed'])->sum('approved_total'), 0, ',', '.') }}</h3>
<p>Approved Expenses</p> <p>Approved Expenses</p>
@@ -48,8 +48,8 @@
</div> </div>
</div> </div>
<!-- Pending Expense --> <!-- Pending Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-warning"> <div class="small-box bg-warning flex-fill">
<div class="inner"> <div class="inner">
<h3 class="text-white">Rp {{ number_format($forms->where('status', 'On Progress')->sum('total'), 0, ',', '.') }}</h3> <h3 class="text-white">Rp {{ number_format($forms->where('status', 'On Progress')->sum('total'), 0, ',', '.') }}</h3>
<p class="text-white">Pending Expenses</p> <p class="text-white">Pending Expenses</p>
@@ -59,18 +59,31 @@
</div> </div>
</div> </div>
</div> </div>
@if($availableBudget > 0) <!-- Outstanding Expense -->
<div class="col-lg-3 col-6"> <div class="col d-flex">
<div class="small-box bg-purple"> <div class="small-box bg-danger flex-fill">
<div class="inner"> <div class="inner">
<h3 class="text-white">Rp {{ number_format($availableBudget, 0, ',', '.') }}</h3> <h3>{{ $outstandingCount }}</h3>
<p class="text-white">Available Budget</p> <p>Outstanding Expenses</p>
</div> <p class="mb-0"><small>Total Rp {{ number_format($outstandingTotal, 0, ',', '.') }}</small></p>
<div class="icon"> </div>
<i class="fas fa-money-bill"></i> <div class="icon">
</div> <i class="fas fa-exclamation-triangle"></i>
</div> </div>
</div> </div>
</div>
@if($availableBudget > 0)
<div class="col d-flex">
<div class="small-box bg-purple flex-fill">
<div class="inner">
<h3 class="text-white">Rp {{ number_format($availableBudget, 0, ',', '.') }}</h3>
<p class="text-white">Available Budget</p>
</div>
<div class="icon">
<i class="fas fa-money-bill"></i>
</div>
</div>
</div>
@endif @endif
</div> </div>
</div> </div>
@@ -22,10 +22,10 @@
</section> </section>
<section class="content"> <section class="content">
<div class="container-fluid"> <div class="container-fluid">
<div class="row"> <div class="row row-cols-1 row-cols-md-2 row-cols-xl-5 g-3">
<!-- Total Expense --> <!-- Total Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-info"> <div class="small-box bg-info flex-fill">
<div class="inner"> <div class="inner">
<h3>Rp {{ number_format($forms->sum('total'), 0, ',', '.') }}</h3> <h3>Rp {{ number_format($forms->sum('total'), 0, ',', '.') }}</h3>
<p>Total Expense</p> <p>Total Expense</p>
@@ -36,8 +36,8 @@
</div> </div>
</div> </div>
<!-- Approved Expense --> <!-- Approved Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-success"> <div class="small-box bg-success flex-fill">
<div class="inner"> <div class="inner">
<h3>Rp {{ number_format($forms->whereIn('status', ['Approved', 'Closed'])->sum('approved_total'), 0, ',', '.') }}</h3> <h3>Rp {{ number_format($forms->whereIn('status', ['Approved', 'Closed'])->sum('approved_total'), 0, ',', '.') }}</h3>
<p>Approved Expenses</p> <p>Approved Expenses</p>
@@ -48,8 +48,8 @@
</div> </div>
</div> </div>
<!-- Pending Expense --> <!-- Pending Expense -->
<div class="col-6 {{ $availableBudget > 0 ? 'col-lg-3' : 'col-lg-4' }}"> <div class="col d-flex">
<div class="small-box bg-warning"> <div class="small-box bg-warning flex-fill">
<div class="inner"> <div class="inner">
<h3 class="text-white">Rp {{ number_format($forms->where('status', 'On Progress')->sum('total'), 0, ',', '.') }}</h3> <h3 class="text-white">Rp {{ number_format($forms->where('status', 'On Progress')->sum('total'), 0, ',', '.') }}</h3>
<p class="text-white">Pending Expenses</p> <p class="text-white">Pending Expenses</p>
@@ -59,9 +59,22 @@
</div> </div>
</div> </div>
</div> </div>
<!-- Outstanding Expense -->
<div class="col d-flex">
<div class="small-box bg-danger flex-fill">
<div class="inner">
<h3>{{ $outstandingCount }}</h3>
<p>Outstanding Expenses</p>
<p class="mb-0"><small>Total Rp {{ number_format($outstandingTotal, 0, ',', '.') }}</small></p>
</div>
<div class="icon">
<i class="fas fa-exclamation-triangle"></i>
</div>
</div>
</div>
@if($availableBudget > 0) @if($availableBudget > 0)
<div class="col-lg-3 col-6"> <div class="col d-flex">
<div class="small-box bg-purple"> <div class="small-box bg-purple flex-fill">
<div class="inner"> <div class="inner">
<h3 class="text-white">Rp {{ number_format($availableBudget, 0, ',', '.') }}</h3> <h3 class="text-white">Rp {{ number_format($availableBudget, 0, ',', '.') }}</h3>
<p class="text-white">Available Budget</p> <p class="text-white">Available Budget</p>
@@ -84,40 +84,48 @@
@endforeach @endforeach
<!-- cash in advance --> <!-- Cash in Bank BCA -->
@php
$cashInBankValue = $pettyCashAmount - $totalKategori;
$rowIndex = $kategori->count() + 1;
@endphp
<tr> <tr>
<td>{{ $kategori->count() + 1 }}</td> <td>{{ $rowIndex }}</td>
<td>Cash in Balance</td> <td>Cash in Bank BCA</td>
<td>170 600 00</td> <td>{{ $kategori_bca->account_number }}</td>
<td>@php @if ($cashInBankValue >= 0)
$crValue = $budget && $budget->amount != 0 ? $budget->amount : 0; @php
$crValue -= $totalDr ; $totalDr += $cashInBankValue;
echo $crValue == 0 ? '' : number_format($crValue, 0, ',', ','); @endphp
@endphp</td> <td>{{ $cashInBankValue == 0 ? '' : number_format($cashInBankValue, 0, ',', ',') }}</td>
<td> <td></td>
@else
</td> @php
$totalCr += abs($cashInBankValue);
@endphp
<td></td>
<td>{{ number_format(abs($cashInBankValue), 0, ',', ',') }}</td>
@endif
</tr> </tr>
<!-- petty cash --> <!-- petty cash -->
<tr> <tr>
<td>{{ $kategori->count() + 1 }}</td> <td>{{ $rowIndex + 1 }}</td>
<td>Petty Cash</td> <td>Petty Cash</td>
<td></td> <td></td>
<td></td> <td></td>
<td> <td>
@php @php
$crValue = $budget && $budget->amount != 0 ? $budget->amount : 0; $totalCr += $pettyCashAmount;
$totalCr += $crValue; echo $pettyCashAmount == 0 ? '' : number_format($pettyCashAmount, 0, ',', ',');
echo $crValue == 0 ? '' : number_format($crValue, 0, ',', ',');
@endphp @endphp
</td> </td>
</tr> </tr>
{{-- Static Rows --}} {{-- Static Rows --}}
<tr> <tr>
<td>{{ $kategori->count() + 2 }}</td> <td>{{ $rowIndex + 2 }}</td>
<td>Cash Advance (Opening Balance)</td> <td>Cash Advance (Opening Balance)</td>
<td>{{ $kategori_bca->account_number }}</td> <td>{{ $kategori_bca->account_number }}</td>
<td></td> <td></td>
@@ -130,7 +138,7 @@
</tr> </tr>
<tr> <tr>
<td>{{ $kategori->count() + 3 }}</td> <td>{{ $rowIndex + 3 }}</td>
<td>Cash Advance (Ending Balance)</td> <td>Cash Advance (Ending Balance)</td>
<td>{{ $kategori_bca->account_number }}</td> <td>{{ $kategori_bca->account_number }}</td>
<td> <td>