Merge branch 'branch-jagad' into 'main'
Branch jagad See merge request fiqhpratama1/xpendify!26
This commit is contained in:
@@ -74,4 +74,4 @@ NEXT_CLOUD_PASSWORD=userdev12345
|
||||
NEXT_CLOUD_PATHPREFIX=""
|
||||
|
||||
WABLAS_HOST=https://bdg.wablas.com
|
||||
WABLAS_TOKEN=5iCaiP0nEgfl3lzrdsZGb9TvNYuwFZF8s4rp8AYwCx5OrYeiKXgixFMo9nDWNrJN
|
||||
WABLAS_TOKEN=5iCaiP0nEgfl3lzrdsZGb9TvNYuwFZF8s4rp8AYwCx5OrYeiKXgixFMo9nDWNrJN.IF98hujz
|
||||
|
||||
@@ -40,4 +40,11 @@ class BudgetHelper
|
||||
|
||||
return $availableBudget;
|
||||
}
|
||||
|
||||
public static function getClosingDate($cabang_id)
|
||||
{
|
||||
$budget = BudgetControl::where('cabang_id', $cabang_id)->orderBy('created_at', 'desc')->first();
|
||||
|
||||
return $budget->closing_at;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,11 +22,36 @@ class DashboardController extends Controller
|
||||
{
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$forms = [
|
||||
'vehicle' => FormVehicleRunningCost::query(),
|
||||
'upcountry' => FormUpCountry::query(),
|
||||
'entertainment' => FormEntertaimentPresentation::query(),
|
||||
'meeting' => FormMeetingSeminar::query(),
|
||||
'others' => FormOthers::query(),
|
||||
'vehicle' => FormVehicleRunningCost::whereMonth('tanggal', date('m'))
|
||||
->whereYear('tanggal', date('Y'))
|
||||
->where('tanggal', '<=', date('Y-m-10'))
|
||||
->whereRaw('DAY(CURDATE()) <= 10')
|
||||
->orderBy('tanggal', 'desc')
|
||||
->get(),
|
||||
'upcountry' => FormUpCountry::whereMonth('tanggal', date('m'))
|
||||
->whereYear('tanggal', date('Y'))
|
||||
->where('tanggal', '<=', date('Y-m-10'))
|
||||
->whereRaw('DAY(CURDATE()) <= 10')
|
||||
->orderBy('tanggal', 'desc')
|
||||
->get(),
|
||||
'entertainment' => FormEntertaimentPresentation::whereMonth('tanggal', date('m'))
|
||||
->whereYear('tanggal', date('Y'))
|
||||
->where('tanggal', '<=', date('Y-m-10'))
|
||||
->whereRaw('DAY(CURDATE()) <= 10')
|
||||
->orderBy('tanggal', 'desc')
|
||||
->get(),
|
||||
'meeting' => FormMeetingSeminar::whereMonth('created_at', date('m'))
|
||||
->whereYear('created_at', date('Y'))
|
||||
->where('created_at', '<=', date('Y-m-10'))
|
||||
->whereRaw('DAY(CURDATE()) <= 10')
|
||||
->orderBy('created_at', 'desc')
|
||||
->get(),
|
||||
'others' => FormOthers::whereMonth('tanggal', date('m'))
|
||||
->whereYear('tanggal', date('Y'))
|
||||
->where('tanggal', '<=', date('Y-m-10'))
|
||||
->whereRaw('DAY(CURDATE()) <= 10')
|
||||
->orderBy('tanggal', 'desc')
|
||||
->get(),
|
||||
];
|
||||
|
||||
if ($role == 'Admin Region' || $role == 'Marketing Operational Manager Region') {
|
||||
|
||||
@@ -32,7 +32,13 @@ class FormEntertainmentPresentationController extends Controller
|
||||
$this->checkAuthorization(auth()->user(), ['forms.entertainment.view']);
|
||||
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$forms = FormEntertaimentPresentation::get();
|
||||
$forms = FormEntertaimentPresentation::whereMonth('tanggal', date('m'))
|
||||
->whereYear('tanggal', date('Y'))
|
||||
->where('tanggal', '<=', date('Y-m-10'))
|
||||
->whereRaw('DAY(CURDATE()) <= 10')
|
||||
->orderBy('tanggal', 'desc')
|
||||
->get();
|
||||
|
||||
$availableBudget = null;
|
||||
|
||||
if ($role == 'Admin Region' || $role == 'Marketing Operational Manager Region') {
|
||||
@@ -59,7 +65,8 @@ class FormEntertainmentPresentationController extends Controller
|
||||
}
|
||||
else if ($role == 'Medical Representatif') {
|
||||
$forms = $forms->where('user_id', auth()->user()->id);
|
||||
$availableBudget = BudgetHelper::getAvailableBudget($forms->first()->user->cabang->cabang->id);
|
||||
$cabang_id = UserHasCabang::where('user_id', auth()->user()->id)->first()->cabang_id;
|
||||
$availableBudget = BudgetHelper::getAvailableBudget($cabang_id);
|
||||
}
|
||||
else {
|
||||
$forms = $forms;
|
||||
@@ -104,12 +111,13 @@ class FormEntertainmentPresentationController extends Controller
|
||||
public function store(Request $request)
|
||||
{
|
||||
$this->checkAuthorization(auth()->user(), ['forms.entertainment.create']);
|
||||
$cabang_id = UserHasCabang::where('user_id', auth()->user()->id)->first()->cabang_id;
|
||||
|
||||
$request->validate([
|
||||
'tanggal' => 'required',
|
||||
'jenis' => 'required|in:entertainment,presentation,sponsorship',
|
||||
'keterangan' => 'required',
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget(),
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget($cabang_id),
|
||||
'name' => 'required',
|
||||
'alamat' => 'required',
|
||||
'nik_or_npwp' => 'required',
|
||||
@@ -216,19 +224,20 @@ class FormEntertainmentPresentationController extends Controller
|
||||
{
|
||||
$this->checkAuthorization(auth()->user(), ['forms.entertainment.edit']);
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$form = FormEntertaimentPresentation::findOrfail($id);
|
||||
$cabang_id = UserHasCabang::where('user_id', $form->user_id)->first()->cabang_id;
|
||||
|
||||
$request->validate([
|
||||
'tanggal' => 'required',
|
||||
'jenis' => 'required|in:entertainment,presentation,sponsorship',
|
||||
'keterangan' => 'required',
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget(),
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget($cabang_id),
|
||||
'name' => 'required',
|
||||
'alamat' => 'required',
|
||||
'nik_or_npwp' => 'required',
|
||||
'bukti_total' => ['nullable', 'file', 'max:51200', new FileType(['php', 'exe', 'js', 'sh', 'bat', 'exe', 'sh', 'php', 'vbs'])],
|
||||
]);
|
||||
|
||||
$form = FormEntertaimentPresentation::findOrfail($id);
|
||||
if($form->status != 'On Progress' && $role == 'Medical Representatif') {
|
||||
session()->flash('error', 'You cannot edit this form because it has been approved or rejected.');
|
||||
return redirect()->back();
|
||||
@@ -280,7 +289,8 @@ class FormEntertainmentPresentationController extends Controller
|
||||
]);
|
||||
|
||||
$form = FormEntertaimentPresentation::findOrfail($id);
|
||||
if($form->total > BudgetHelper::getAvailableBudget()) {
|
||||
$cabang_id = UserHasCabang::where('user_id', $form->user_id)->first()->cabang_id;
|
||||
if($form->total > BudgetHelper::getAvailableBudget($cabang_id)) {
|
||||
session()->flash('error', 'The total nominal exceeds the available budget.');
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
@@ -32,7 +32,13 @@ class FormMeetingSeminarController extends Controller
|
||||
$this->checkAuthorization(auth()->user(), ['forms.meeting.view']);
|
||||
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$forms = FormMeetingSeminar::get();
|
||||
$forms = FormMeetingSeminar::whereMonth('created_at', date('m'))
|
||||
->whereYear('created_at', date('Y'))
|
||||
->where('created_at', '<=', date('Y-m-10'))
|
||||
->whereRaw('DAY(CURDATE()) <= 10')
|
||||
->orderBy('created_at', 'desc')
|
||||
->get();
|
||||
|
||||
$availableBudget = null;
|
||||
|
||||
if ($role == 'Admin Region' || $role == 'Marketing Operational Manager Region') {
|
||||
@@ -59,7 +65,8 @@ class FormMeetingSeminarController extends Controller
|
||||
}
|
||||
else if ($role == 'Medical Representatif') {
|
||||
$forms = $forms->where('user_id', auth()->user()->id);
|
||||
$availableBudget = BudgetHelper::getAvailableBudget($forms->first()->user->cabang->cabang->id);
|
||||
$cabang_id = UserHasCabang::where('user_id', auth()->user()->id)->first()->cabang_id;
|
||||
$availableBudget = BudgetHelper::getAvailableBudget($cabang_id);
|
||||
}
|
||||
else {
|
||||
$forms = $forms;
|
||||
@@ -175,7 +182,8 @@ class FormMeetingSeminarController extends Controller
|
||||
];
|
||||
|
||||
// Check if the total nominal exceeds the available budget
|
||||
if(array_sum($data_nominal) > BudgetHelper::getAvailableBudget()) {
|
||||
$cabang_id = UserHasCabang::where('user_id', auth()->user()->id)->first()->cabang_id;
|
||||
if(array_sum($data_nominal) > BudgetHelper::getAvailableBudget($cabang_id)) {
|
||||
session()->flash('error', 'The total nominal exceeds the available budget.');
|
||||
return redirect()->back();
|
||||
}
|
||||
@@ -254,6 +262,7 @@ class FormMeetingSeminarController extends Controller
|
||||
{
|
||||
$this->checkAuthorization(auth()->user(), ['forms.meeting.edit']);
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$form = FormMeetingSeminar::findOrfail($id);
|
||||
|
||||
$request->validate([
|
||||
'allowance' => 'nullable|numeric',
|
||||
@@ -264,7 +273,6 @@ class FormMeetingSeminarController extends Controller
|
||||
'bukti_hotel' => ['nullable', 'file', 'max:51200', new FileType(['php', 'exe', 'js', 'sh', 'bat', 'exe', 'sh', 'php', 'vbs'])],
|
||||
]);
|
||||
|
||||
$form = FormMeetingSeminar::findOrfail($id);
|
||||
if($form->status != 'On Progress' && $role == 'Medical Representatif') {
|
||||
session()->flash('error', 'You cannot edit this form because it has been approved or rejected.');
|
||||
return redirect()->back();
|
||||
@@ -322,7 +330,8 @@ class FormMeetingSeminarController extends Controller
|
||||
];
|
||||
|
||||
// Check if the total nominal exceeds the available budget
|
||||
if(array_sum($data_nominal) > BudgetHelper::getAvailableBudget()) {
|
||||
$cabang_id = UserHasCabang::where('user_id', $form->user_id)->first()->cabang_id;
|
||||
if(array_sum($data_nominal) > BudgetHelper::getAvailableBudget($cabang_id)) {
|
||||
session()->flash('error', 'The total nominal exceeds the available budget.');
|
||||
return redirect()->back();
|
||||
}
|
||||
@@ -356,7 +365,8 @@ class FormMeetingSeminarController extends Controller
|
||||
];
|
||||
|
||||
// Check if the total nominal exceeds the available budget
|
||||
if(array_sum($approved_data) > BudgetHelper::getAvailableBudget()) {
|
||||
$cabang_id = UserHasCabang::where('user_id', $form->user_id)->first()->cabang_id;
|
||||
if(array_sum($approved_data) > BudgetHelper::getAvailableBudget($cabang_id)) {
|
||||
session()->flash('error', 'The total nominal exceeds the available budget.');
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
@@ -32,7 +32,13 @@ class FormOtherController extends Controller
|
||||
$this->checkAuthorization(auth()->user(), ['forms.other.view']);
|
||||
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$forms = FormOthers::get();
|
||||
$forms = FormOthers::whereMonth('tanggal', date('m'))
|
||||
->whereYear('tanggal', date('Y'))
|
||||
->where('tanggal', '<=', date('Y-m-10'))
|
||||
->whereRaw('DAY(CURDATE()) <= 10')
|
||||
->orderBy('tanggal', 'desc')
|
||||
->get();
|
||||
|
||||
$availableBudget = null;
|
||||
|
||||
if ($role == 'Admin Region' || $role == 'Marketing Operational Manager Region') {
|
||||
@@ -59,7 +65,9 @@ class FormOtherController extends Controller
|
||||
}
|
||||
else if ($role == 'Medical Representatif') {
|
||||
$forms = $forms->where('user_id', auth()->user()->id);
|
||||
$availableBudget = BudgetHelper::getAvailableBudget($forms->first()->user->cabang->cabang->id);
|
||||
$cabang_id = UserHasCabang::where('user_id', auth()->user()->id)->first()->cabang_id;
|
||||
|
||||
$availableBudget = BudgetHelper::getAvailableBudget($cabang_id);
|
||||
}
|
||||
else {
|
||||
$forms = $forms;
|
||||
@@ -107,12 +115,13 @@ class FormOtherController extends Controller
|
||||
public function store(Request $request)
|
||||
{
|
||||
$this->checkAuthorization(auth()->user(), ['forms.other.create']);
|
||||
$cabang_id = UserHasCabang::where('user_id', auth()->user()->id)->first()->cabang_id;
|
||||
|
||||
$request->validate([
|
||||
'kategori_id' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'keterangan' => 'required',
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget(),
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget($cabang_id),
|
||||
'bukti_total' => ['nullable', 'file', 'max:51200', new FileType(['php', 'exe', 'js', 'sh', 'bat', 'exe', 'sh', 'php', 'vbs'])],
|
||||
]);
|
||||
|
||||
@@ -214,16 +223,17 @@ class FormOtherController extends Controller
|
||||
{
|
||||
$this->checkAuthorization(auth()->user(), ['forms.other.edit']);
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$form = FormOthers::findOrfail($id);
|
||||
$cabang_id = UserHasCabang::where('user_id', $form->user_id)->first()->cabang_id;
|
||||
|
||||
$request->validate([
|
||||
'kategori_id' => 'required',
|
||||
'tanggal' => 'required|date',
|
||||
'keterangan' => 'required',
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget(),
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget($cabang_id),
|
||||
'bukti_total' => ['nullable', 'file', 'max:51200', new FileType(['php', 'exe', 'js', 'sh', 'bat', 'exe', 'sh', 'php', 'vbs'])],
|
||||
]);
|
||||
|
||||
$form = FormOthers::findOrfail($id);
|
||||
if($form->status != 'On Progress' && $role == 'Medical Representatif') {
|
||||
session()->flash('error', 'You cannot edit this form because it has been approved or rejected.');
|
||||
return redirect()->back();
|
||||
@@ -273,7 +283,8 @@ class FormOtherController extends Controller
|
||||
]);
|
||||
|
||||
$form = FormOthers::findOrfail($id);
|
||||
if($form->total > BudgetHelper::getAvailableBudget()) {
|
||||
$cabang_id = UserHasCabang::where('user_id', $form->user_id)->first()->cabang_id;
|
||||
if($form->total > BudgetHelper::getAvailableBudget($cabang_id)) {
|
||||
session()->flash('error', 'The total nominal exceeds the available budget.');
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
@@ -32,7 +32,13 @@ class FormUpCountryController extends Controller
|
||||
$this->checkAuthorization(auth()->user(), ['forms.country.view']);
|
||||
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$forms = FormUpCountry::get();
|
||||
$forms = FormUpCountry::whereMonth('tanggal', date('m'))
|
||||
->whereYear('tanggal', date('Y'))
|
||||
->where('tanggal', '<=', date('Y-m-10'))
|
||||
->whereRaw('DAY(CURDATE()) <= 10')
|
||||
->orderBy('tanggal', 'desc')
|
||||
->get();
|
||||
|
||||
$availableBudget = null;
|
||||
|
||||
if ($role == 'Admin Region' || $role == 'Marketing Operational Manager Region') {
|
||||
@@ -59,7 +65,9 @@ class FormUpCountryController extends Controller
|
||||
}
|
||||
else if ($role == 'Medical Representatif') {
|
||||
$forms = $forms->where('user_id', auth()->user()->id);
|
||||
$availableBudget = BudgetHelper::getAvailableBudget($forms->first()->user->cabang->cabang->id);
|
||||
$cabang_id = UserHasCabang::where('user_id', auth()->user()->id)->first()->cabang_id;
|
||||
|
||||
$availableBudget = BudgetHelper::getAvailableBudget($cabang_id);
|
||||
}
|
||||
else {
|
||||
$forms = $forms;
|
||||
@@ -199,7 +207,8 @@ class FormUpCountryController extends Controller
|
||||
];
|
||||
|
||||
// Check if the total nominal exceeds the available budget
|
||||
if(array_sum($data_nominal) > BudgetHelper::getAvailableBudget()) {
|
||||
$cabang_id = UserHasCabang::where('user_id', auth()->user()->id)->first()->cabang_id;
|
||||
if(array_sum($data_nominal) > BudgetHelper::getAvailableBudget($cabang_id)) {
|
||||
session()->flash('error', 'The total nominal exceeds the available budget.');
|
||||
return redirect()->back();
|
||||
}
|
||||
@@ -372,7 +381,8 @@ class FormUpCountryController extends Controller
|
||||
];
|
||||
|
||||
// Check if the total nominal exceeds the available budget
|
||||
if(array_sum($data_nominal) > BudgetHelper::getAvailableBudget()) {
|
||||
$cabang_id = UserHasCabang::where('user_id', $form->user_id)->first()->cabang_id;
|
||||
if(array_sum($data_nominal) > BudgetHelper::getAvailableBudget($cabang_id)) {
|
||||
session()->flash('error', 'The total nominal exceeds the available budget.');
|
||||
return redirect()->back();
|
||||
}
|
||||
@@ -413,7 +423,8 @@ class FormUpCountryController extends Controller
|
||||
];
|
||||
|
||||
// Check if the total nominal exceeds the available budget
|
||||
if(array_sum($approved_data) > BudgetHelper::getAvailableBudget()) {
|
||||
$cabang_id = UserHasCabang::where('user_id', $form->user_id)->first()->cabang_id;
|
||||
if(array_sum($approved_data) > BudgetHelper::getAvailableBudget($cabang_id)) {
|
||||
session()->flash('error', 'The total nominal exceeds the available budget.');
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
@@ -32,7 +32,13 @@ class FormVehicleController extends Controller
|
||||
$this->checkAuthorization(auth()->user(), ['forms.vehicle.view']);
|
||||
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$forms = FormVehicleRunningCost::get();
|
||||
$forms = FormVehicleRunningCost::whereMonth('tanggal', date('m'))
|
||||
->whereYear('tanggal', date('Y'))
|
||||
->where('tanggal', '<=', date('Y-m-10'))
|
||||
->whereRaw('DAY(CURDATE()) <= 10')
|
||||
->orderBy('tanggal', 'desc')
|
||||
->get();
|
||||
|
||||
$availableBudget = null;
|
||||
|
||||
if ($role == 'Admin Region' || $role == 'Marketing Operational Manager Region') {
|
||||
@@ -59,7 +65,9 @@ class FormVehicleController extends Controller
|
||||
}
|
||||
else if ($role == 'Medical Representatif') {
|
||||
$forms = $forms->where('user_id', auth()->user()->id);
|
||||
$availableBudget = BudgetHelper::getAvailableBudget($forms->first()->user->cabang->cabang->id);
|
||||
$cabang_id = UserHasCabang::where('user_id', auth()->user()->id)->first()->cabang_id;
|
||||
|
||||
$availableBudget = BudgetHelper::getAvailableBudget($cabang_id);
|
||||
}
|
||||
else {
|
||||
$forms = $forms;
|
||||
@@ -104,11 +112,12 @@ class FormVehicleController extends Controller
|
||||
public function store(Request $request)
|
||||
{
|
||||
$this->checkAuthorization(auth()->user(), ['forms.vehicle.create']);
|
||||
$cabang_id = UserHasCabang::where('user_id', auth()->user()->id)->first()->cabang_id;
|
||||
|
||||
$request->validate([
|
||||
'tanggal' => 'required',
|
||||
'liter' => 'required',
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget(),
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget($cabang_id),
|
||||
'jarak' => 'required',
|
||||
'tipe_bensin' => 'required|in:pertalite,pertamax',
|
||||
'nopol' => 'required',
|
||||
@@ -217,11 +226,13 @@ class FormVehicleController extends Controller
|
||||
{
|
||||
$this->checkAuthorization(auth()->user(), ['forms.vehicle.edit']);
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$form = FormVehicleRunningCost::findOrfail($id);
|
||||
$cabang_id = UserHasCabang::where('user_id', $form->user_id)->first()->cabang_id;
|
||||
|
||||
$request->validate([
|
||||
'tanggal' => 'required',
|
||||
'liter' => 'required',
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget(),
|
||||
'total' => 'required|numeric|min:1|max:' . BudgetHelper::getAvailableBudget($cabang_id),
|
||||
'jarak' => 'required',
|
||||
'tipe_bensin' => 'required|in:pertalite,pertamax',
|
||||
'nopol' => 'required',
|
||||
@@ -229,7 +240,6 @@ class FormVehicleController extends Controller
|
||||
'bukti_total' => ['nullable', 'file', 'max:51200', new FileType(['php', 'exe', 'js', 'sh', 'bat', 'exe', 'sh', 'php', 'vbs'])],
|
||||
]);
|
||||
|
||||
$form = FormVehicleRunningCost::findOrfail($id);
|
||||
if($form->status != 'On Progress' && $role == 'Medical Representatif') {
|
||||
session()->flash('error', 'You cannot edit this form because it has been approved or rejected.');
|
||||
return redirect()->back();
|
||||
@@ -282,7 +292,8 @@ class FormVehicleController extends Controller
|
||||
]);
|
||||
|
||||
$form = FormVehicleRunningCost::findOrfail($id);
|
||||
if($form->total > BudgetHelper::getAvailableBudget()) {
|
||||
$cabang_id = UserHasCabang::where('user_id', $form->user_id)->first()->cabang_id;
|
||||
if($form->total > BudgetHelper::getAvailableBudget($cabang_id)) {
|
||||
session()->flash('error', 'The total nominal exceeds the available budget.');
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user