add pengecekan jika melebihi budget

This commit is contained in:
Jagad R R
2025-01-09 14:17:28 +07:00
parent 154b3a274b
commit 210203f964
11 changed files with 203 additions and 30 deletions
@@ -23,6 +23,7 @@ use App\Helpers\AuditTrailHelper;
use App\Helpers\NextCloudHelper;
use App\Rules\FileType;
use App\Models\Admin;
use App\Helpers\BudgetHelper;
class FormUpCountryController extends Controller
{
@@ -63,7 +64,8 @@ class FormUpCountryController extends Controller
session()->put('redirect_url', route('forms.up-country'));
return view('backend.pages.forms.upcountry.index', [
'forms' => $forms
'forms' => $forms,
'availableBudget' => BudgetHelper::getAvailableBudget()
]);
}
@@ -92,7 +94,7 @@ class FormUpCountryController extends Controller
return view('backend.pages.forms.upcountry.view', [
'form' => $form,
'rayons' => Rayon::all()
'rayons' => Rayon::all(),
]);
}
@@ -193,6 +195,12 @@ class FormUpCountryController extends Controller
'hotel' => $request->hotel ?? 0,
];
// Check if the total nominal exceeds the available budget
if(array_sum($data_nominal) > BudgetHelper::getAvailableBudget()) {
session()->flash('error', 'The total nominal exceeds the available budget.');
return redirect()->back();
}
// Save the form data
$form = FormUpCountry::create([
'expense_number' => $expense_number,
@@ -360,6 +368,12 @@ class FormUpCountryController extends Controller
'hotel' => $request->hotel ?? 0,
];
// Check if the total nominal exceeds the available budget
if(array_sum($data_nominal) > BudgetHelper::getAvailableBudget()) {
session()->flash('error', 'The total nominal exceeds the available budget.');
return redirect()->back();
}
// Save the form data
$form->update([
'rayon_id' => $request->rayon_id,
@@ -395,6 +409,12 @@ class FormUpCountryController extends Controller
'hotel' => $request->hotel ? $form->hotel : 0,
];
// Check if the total nominal exceeds the available budget
if(array_sum($approved_data) > BudgetHelper::getAvailableBudget()) {
session()->flash('error', 'The total nominal exceeds the available budget.');
return redirect()->back();
}
$form->update([
'approved_at' => now(),
'approved_by' => auth()->user()->id,