diff --git a/app/Exports/JenisLaporanExport.php b/app/Exports/JenisLaporanExport.php new file mode 100644 index 0000000..c647ee6 --- /dev/null +++ b/app/Exports/JenisLaporanExport.php @@ -0,0 +1,46 @@ +id, + $row->code, + $row->name, + $row->created_at + ]; + } + + public function headings(): array + { + return [ + 'ID', + 'Code', + 'Name', + 'Created At' + ]; + } + + public function columnFormats(): array + { + return [ + 'A' => NumberFormat::FORMAT_NUMBER, + 'D' => NumberFormat::FORMAT_DATE_DATETIME + ]; + } +} diff --git a/app/Exports/KJPPExport.php b/app/Exports/KJPPExport.php index 86f3473..3b0cb13 100644 --- a/app/Exports/KJPPExport.php +++ b/app/Exports/KJPPExport.php @@ -53,7 +53,7 @@ class KJPPExport implements WithColumnFormatting, WithHeadings, FromCollection, 'ID', 'Code', 'Name', - 'Jenis Kantor / Cabang', + 'Jenis Kantor', 'Nomor Ijin Usaha', 'Province Code', 'City Code', diff --git a/app/Exports/PenawaranTenderExport.php b/app/Exports/PenawaranTenderExport.php new file mode 100644 index 0000000..ba00879 --- /dev/null +++ b/app/Exports/PenawaranTenderExport.php @@ -0,0 +1,63 @@ +id, + $row->code, + $row->nama_kjpp_sebelumnya, + $row->biaya_kjpp_sebelumnya, + $row->tanggal_penilaian_sebelumnya, + $row->nomor_registrasi, + $row->tujuan_penilaian_kjpp_id, + $row->jenis_laporan_id, + $row->start_date, + $row->end_date, + $row->catatan, + $row->created_at + ]; + } + + public function headings(): array + { + return [ + 'ID', + 'Nomor Penawaran', + 'Nama KJPP Sebelumnya', + 'Biaya KJPP Sebelumnya', + 'Tanggal Penilaian Sebelumnya', + 'Nomor Registrasi', + 'Tujuan Penilaian KJPP ID', + 'Jenis Laporan ID', + 'Start Date', + 'End Date', + 'Catatan', + 'Created At' + ]; + } + + public function columnFormats(): array + { + return [ + 'A' => NumberFormat::FORMAT_NUMBER, + 'B' => NumberFormat::FORMAT_NUMBER, + 'E' => NumberFormat::FORMAT_DATE_DATETIME + ]; + } +} diff --git a/app/Exports/TujuanPenilaianKJPPExport.php b/app/Exports/TujuanPenilaianKJPPExport.php new file mode 100644 index 0000000..073db3a --- /dev/null +++ b/app/Exports/TujuanPenilaianKJPPExport.php @@ -0,0 +1,46 @@ +id, + $row->code, + $row->name, + $row->created_at + ]; + } + + public function headings(): array + { + return [ + 'ID', + 'Code', + 'Name', + 'Created At' + ]; + } + + public function columnFormats(): array + { + return [ + 'A' => NumberFormat::FORMAT_NUMBER, + 'D' => NumberFormat::FORMAT_DATE_DATETIME + ]; + } +} diff --git a/app/Http/Controllers/AuthorizationController.php b/app/Http/Controllers/AuthorizationController.php new file mode 100644 index 0000000..5f6d270 --- /dev/null +++ b/app/Http/Controllers/AuthorizationController.php @@ -0,0 +1,200 @@ +get()); + return view('lpj::authorization.index'); + } + + public function store(BranchRequest $request) + { + $validate = $request->validated(); + + if ($validate) { + try { + // Save to database + Branch::create($validate); + return redirect() + ->route('basicdata.branch.index') + ->with('success', 'Branch created successfully'); + } catch (Exception $e) { + return redirect() + ->route('basicdata.branch.create') + ->with('error', 'Failed to create branch'); + } + } + } + + public function create() + { + return view('lpj::branch.create'); + } + + public function edit($id) + { + $branch = Branch::find($id); + return view('lpj::branch.create', compact('branch')); + } + + public function update(BranchRequest $request, $id) + { + $validate = $request->validated(); + + if ($validate) { + try { + // Update in database + $branch = Branch::find($id); + $branch->update($validate); + return redirect() + ->route('basicdata.branch.index') + ->with('success', 'Branch updated successfully'); + } catch (Exception $e) { + return redirect() + ->route('basicdata.branch.edit', $id) + ->with('error', 'Failed to update branch'); + } + } + } + + public function destroy($id) + { + try { + // Delete from database + $branch = Branch::find($id); + $branch->delete(); + + echo json_encode(['success' => true, 'message' => 'Branch deleted successfully']); + } catch (Exception $e) { + echo json_encode(['success' => false, 'message' => 'Failed to delete branch']); + } + } + + public function dataForDatatables(Request $request) + { + // if (is_null($this->user) || !$this->user->can('branch.view')) { + //abort(403, 'Sorry! You are not allowed to view users.'); + // } + + // Retrieve data from the database + $query = Permohonan::query(); + // Get the total count of records + $totalRecords = $query->count(); + + // Apply pagination if provided + if ($request->has('page') && $request->has('size')) { + $page = $request->get('page'); + $size = $request->get('size'); + $offset = ($page - 1) * $size; // Calculate the offset + + $query->skip($offset)->take($size); + } + + // Get the filtered count of records + $filteredRecords = $query->count(); + + // Get the data for the current page + // $data = $query->get(); + $data = $query->select('permohonan.id', 'permohonan.nomor_registrasi' + , 'branches.name AS branche_name' + , 'debitures.name AS debiture_name' + // , 'tujuan_penilaian.name AS debiture_name' + , DB::raw("CONCAT(tujuan_penilaian.code,' - ', tujuan_penilaian.name) AS nama_tujuan_penilaian") + , 'users.name AS account_officer') + ->leftJoin('branches', 'branches.id', '=', 'permohonan.branch_id') + ->leftJoin('debitures', 'debitures.id', '=', 'permohonan.debiture_id') + ->leftJoin('tujuan_penilaian', 'tujuan_penilaian.id', '=', 'permohonan.tujuan_penilaian_id') + ->leftJoin('users', 'users.id', '=', 'permohonan.user_id') + ->get(); + // Calculate the page count + $pageCount = ceil($totalRecords / $request->get('size')); + + // Calculate the current page number + $currentPage = 0 + 1; + + // Return the response data as a JSON object + return response()->json([ + 'draw' => $request->get('draw'), + 'recordsTotal' => $totalRecords, + 'recordsFiltered' => $filteredRecords, + 'pageCount' => $pageCount, + 'page' => $currentPage, + 'totalCount' => $totalRecords, + 'data' => $data, + ]); + /* + // Apply search filter if provided + if ($request->has('search') && !empty($request->get('search'))) { + $search = $request->get('search'); + $query->where(function ($q) use ($search) { + $q->where('code', 'LIKE', "%$search%"); + $q->orWhere('name', 'LIKE', "%$search%"); + }); + } + + // Apply sorting if provided + if ($request->has('sortOrder') && !empty($request->get('sortOrder'))) { + $order = $request->get('sortOrder'); + $column = $request->get('sortField'); + $query->orderBy($column, $order); + } + + // Get the total count of records + $totalRecords = $query->count(); + + // Apply pagination if provided + if ($request->has('page') && $request->has('size')) { + $page = $request->get('page'); + $size = $request->get('size'); + $offset = ($page - 1) * $size; // Calculate the offset + + $query->skip($offset)->take($size); + } + + // Get the filtered count of records + $filteredRecords = $query->count(); + + // Get the data for the current page + $data = $query->get(); + + // Calculate the page count + $pageCount = ceil($totalRecords / $request->get('size')); + + // Calculate the current page number + $currentPage = 0 + 1; + + // Return the response data as a JSON object + return response()->json([ + 'draw' => $request->get('draw'), + 'recordsTotal' => $totalRecords, + 'recordsFiltered' => $filteredRecords, + 'pageCount' => $pageCount, + 'page' => $currentPage, + 'totalCount' => $totalRecords, + 'data' => $data, + ]); + */ + } + + public function export() + { + return Excel::download(new BranchExport, 'branch.xlsx'); + } + } diff --git a/app/Http/Controllers/JenisLaporanController.php b/app/Http/Controllers/JenisLaporanController.php new file mode 100644 index 0000000..ed93164 --- /dev/null +++ b/app/Http/Controllers/JenisLaporanController.php @@ -0,0 +1,174 @@ +validated(); + + if ($validate) { + try { + JenisLaporan::create($validate); + return redirect() + ->route('basicdata.jenis_laporan.index') + ->with('success', 'Jenis Laporan created successfully'); + } catch (Throwable $e) { + return redirect() + ->route('basicdata.jenis_laporan.create') + ->with('success', 'Failed to create Jenis Laporan: ' . $e); + } + } + } + + /** + * Show the specified resource. + */ + public function show($id) + { + // return view('lpj::show'); + } + + /** + * Show the form for editing the specified resource. + */ + public function edit($id) + { + $jenisLaporan = JenisLaporan::find($id); + return view('lpj::jenis_laporan.create', compact('jenisLaporan')); + } + + /** + * Update the specified resource in storage. + */ + public function update(JenisLaporanRequest $request, $id) + { + $validate = $request->validated(); + + if ($validate) { + try { + $jenisLaporan = JenisLaporan::find($id); + $jenisLaporan->update($validate); + return redirect() + ->route('basicdata.jenis_laporan.index') + ->with('success', 'Jenis Laporan updated successfully'); + } catch (Throwable $e) { + return redirect() + ->route('basicdata.jenis_laporan.edit', $id) + ->with('success', 'Failed to update Jenis Laporan: ' . $e); + } + } + } + + /** + * Remove the specified resource from storage. + */ + public function destroy($id) + { + try { + // Delete from database + $jenisLaporan = JenisLaporan::find($id); + $jenisLaporan->delete(); + + echo json_encode(['success' => true, 'message' => 'Jenis Laporan deleted successfully']); + } catch (Throwable $e) { + echo json_encode(['success' => false, 'message' => 'Failed to delete jenis Laporan']); + } + } + + public function dataForDatatables(Request $request) + { + if (is_null($this->user) || !$this->user->can('jenis_jaminan.view')) { + //abort(403, 'Sorry! You are not allowed to view users.'); + } + + // Retrieve data from the database + $query = JenisLaporan::query(); + + // Apply search filter if provided + if ($request->has('search') && !empty($request->get('search'))) { + $search = $request->get('search'); + $query->where(function ($q) use ($search) { + $q->where('code', 'LIKE', "%$search%"); + $q->orWhere('name', 'LIKE', "%$search%"); + }); + } + + // Apply sorting if provided + if ($request->has('sortOrder') && !empty($request->get('sortOrder'))) { + $order = $request->get('sortOrder'); + $column = $request->get('sortField'); + $query->orderBy($column, $order); + } + + // Get the total count of records + $totalRecords = $query->count(); + + // Apply pagination if provided + if ($request->has('page') && $request->has('size')) { + $page = $request->get('page'); + $size = $request->get('size'); + $offset = ($page - 1) * $size; // Calculate the offset + + $query->skip($offset)->take($size); + } + + // Get the filtered count of records + $filteredRecords = $query->count(); + + // Get the data for the current page + $data = $query->get(); + + // Calculate the page count + $pageCount = ceil($totalRecords / $request->get('size')); + + // Calculate the current page number + $currentPage = 0 + 1; + + // Return the response data as a JSON object + return response()->json([ + 'draw' => $request->get('draw'), + 'recordsTotal' => $totalRecords, + 'recordsFiltered' => $filteredRecords, + 'pageCount' => $pageCount, + 'page' => $currentPage, + 'totalCount' => $totalRecords, + 'data' => $data, + ]); + } + + public function export() + { + return Excel::download(new JenisLaporanExport, 'jenis_laporan.xlsx'); + } +} diff --git a/app/Http/Controllers/KJPPController.php b/app/Http/Controllers/KJPPController.php index f1f613b..99a0c2f 100644 --- a/app/Http/Controllers/KJPPController.php +++ b/app/Http/Controllers/KJPPController.php @@ -40,7 +40,15 @@ class KJPPController extends Controller $jenis_aset = JenisJaminan::all(); $provinces = Province::all(); - return view('lpj::kjpp.create', compact('branch', 'ijin_usaha', 'jenis_aset', 'provinces')); + // Generate KJPP Number + $lastKjpp = KJPP::orderBy('code', 'desc')->first(); + $nextNumber = $lastKjpp ? intval(substr($lastKjpp->code, 1, 6)) + 1 : 1; + $kjppNumber = 'K' . str_pad($nextNumber, 6, '0', STR_PAD_LEFT); + + // Combine KJPP number with branch code + $fullKjppNumber = $kjppNumber; + + return view('lpj::kjpp.create', compact('branch', 'ijin_usaha', 'jenis_aset', 'provinces', 'fullKjppNumber')); } /** @@ -62,6 +70,9 @@ class KJPPController extends Controller Storage::copy('public/test/default.pdf', 'public/uploads_pdf/' . $filename); } + $validated['ijin_usaha_id'] = json_encode($request->input('ijin_usaha_id')); + $validated['jenis_aset_id'] = json_encode($request->input('jenis_aset_id')); + // Tambahkan nama file ke data yang divalidasi $validated['attachment'] = $filename; @@ -127,7 +138,10 @@ class KJPPController extends Controller if ($file !== null) { // Jika ada file dari database maka hapus file yang lama ke file yang baru $kjpp = KJPP::find($id); - // Storage::delete('public/uploads_pdf/' . $kjpp->attachment); + // Jika filenya ada default.pdf jangan dihapus + if ($kjpp->attachment !== 'default.pdf') { + Storage::delete('public/uploads_pdf/' . $kjpp->attachment); + } // Simpan file yang diunggah $file->storeAs('public/uploads_pdf', $filename); $validated['attachment'] = $filename; diff --git a/app/Http/Controllers/RegistrasiController.php b/app/Http/Controllers/RegistrasiController.php new file mode 100644 index 0000000..6884abd --- /dev/null +++ b/app/Http/Controllers/RegistrasiController.php @@ -0,0 +1,271 @@ +user) || !$this->user->can('debitur.view')) { + //abort(403, 'Sorry! You are not allowed to view users.'); + } + + // Retrieve data from the database + $query = Permohonan::query()->where('status','=','preregister'); + + // Apply search filter if provided + if ($request->has('search') && !empty($request->get('search'))) { + $search = $request->get('search'); + $query->where(function ($q) use ($search) { + $q->where('nomor_registrasi', 'LIKE', '%' . $search . '%'); + $q->orWhere('tanggal_permohonan', 'LIKE', '%' . $search . '%'); + $q->orWhereRelation('user', 'name', 'LIKE', '%' . $search . '%'); + $q->orWhereRelation('debiture', 'name', 'LIKE', '%' . $search . '%'); + $q->orWhereRelation('tujuanPenilaian', 'name', 'LIKE', '%' . $search . '%'); + $q->orWhereRelation('branch', 'name', 'LIKE', '%' . $search . '%'); + $q->orWhere('status', 'LIKE', '%' . $search . '%'); + }); + } + + // Apply sorting if provided + if ($request->has('sortOrder') && !empty($request->get('sortOrder'))) { + $order = $request->get('sortOrder'); + $column = $request->get('sortField'); + $query->orderBy($column, $order); + } + + // Get the total count of records + $totalRecords = $query->count(); + + // Apply pagination if provided + if ($request->has('page') && $request->has('size')) { + $page = $request->get('page'); + $size = $request->get('size'); + $offset = ($page - 1) * $size; // Calculate the offset + + $query->skip($offset)->take($size); + } + + // Get the filtered count of records + $filteredRecords = $query->count(); + + // Get the data for the current page + $data = $query->with(['user', 'debiture', 'branch', 'tujuanPenilaian'])->get(); + + // Calculate the page count + $pageCount = ceil($totalRecords / $request->get('size')); + + // Calculate the current page number + $currentPage = 0 + 1; + + // Return the response data as a JSON object + return response()->json([ + 'draw' => $request->get('draw'), + 'recordsTotal' => $totalRecords, + 'recordsFiltered' => $filteredRecords, + 'pageCount' => $pageCount, + 'page' => $currentPage, + 'totalCount' => $totalRecords, + 'data' => $data, + ]); + } + + public function edit($id) + { + return view('lpj::registrasi.edit', compact('id')); + } + + public function setData(Request $request): JsonResponse + { + $data = array(); + $datas = array(); + + if (request()->ajax()) { + $id = $request->id; + $datas = Permohonan::findOrFail($id); + $data['status'] = 'success'; + if ($datas) { + $jenisPenilaians=null; + $regions=null; + $regions=Regions::pluck('name', 'id'); + $jenisPenilaians=JenisPenilaian::pluck('name', 'id'); + + $data['regions'] = $regions; + $data['jenisPenilaians'] = $jenisPenilaians; + $data['datas'] = $datas; + $data['message'] = 'data successfully found'; + } else { + $data['datas'] = null; + $data['message'] = 'data not found'; + } + } else { + $data['status'] = 'error'; + $data['message'] = 'no ajax request'; + } + + return response()->json($data); + } + + public function update(Request $request, $id): JsonResponse + { + // init + $data = array(); + $dataku = array(); + $tindakan = null; + if (request()->ajax()) { + $validator = RegistrasiController::rulesEditnya($request, $id); + + if ($validator['fails']) { + $data['message'] = $validator['errors']; + $data['status'] = 'error'; + } + else + { + try { + + $tindakan=$request->tindakan; + $dataku = ['registrasi_by' => Auth::id(), + 'registrasi_at' => now() + ]; + + if($tindakan==0) + { + $dataku['jenis_penilaian_id'] =$request->jenis_penilaian; + $dataku['region_id'] =$request->region; + $dataku['status'] = 'registered'; + } + else + { + $dataku['registrasi_catatan'] =$request->catatan; + $dataku['status'] = 'revisi'; + } + + $data['dataku'] =$dataku; + + $modal = Permohonan::find($id); + + $modal->update($dataku); + // + $data['status'] = 'success'; + $data['message'] = 'Regitrasi '.$modal->nomor_registrasi.' successfully'; + } catch (Exception $e) { + + $data['status'] = 'error'; + $data['message'] = 'Jenis Fasilitas Kredit updated failed.'; + } + } + + } else { + $data['status'] = 'error'; + $data['message'] = 'no ajax request'; + } + + return response()->json($data); + + } + + public function rulesEditnya($request, $id) + { + $tindakan=null; + $jenis_penilaian=null; + $validate_catatan=''; + $tindakan=$request->tindakan; + $jenis_penilaian=$request->jenis_penilaian; + + $validateIt = [ + // 'name' diambil dari definisi parameter yang di kirim pada POST Data + 'tindakan' => 'required', + ]; + + $messageIt = [ + 'tindakan.required' => 'Silahkan pilih Tindakan' + ]; + + if($tindakan==0) + { + $validateIt['jenis_penilaian'] = ['required']; + $messageIt ['jenis_penilaian.required']= 'Silahkan pilih Jenis Penilaian'; + + // INTERNAL + if(1==$jenis_penilaian) + { + $validateIt['region'] = ['required']; + $messageIt ['region.required']= 'Silahkan pilih Region'; + } + } + elseif($tindakan==1) + { + $validateIt['catatan'] = ['required']; + $messageIt ['catatan.required']= 'Silahkan isi Catatan'; + } + + $validator = Validator::make($request->all(), $validateIt, $messageIt); + + $data['fails'] = $validator->fails(); + $data['errors'] = $validator->errors(); + + return $data; + } + + public function show($id) + { + $permohonan = Permohonan::find($id); + return view('lpj::registrasi.show', compact('id','permohonan')); + } + + public function showData(Request $request): JsonResponse + { + $data = array(); + $datas = array(); + + if (request()->ajax()) { + $id = $request->id; + $datas = Permohonan::findOrFail($id); + $data['status'] = 'success'; + if ($datas) { + $data['datas'] = $datas; + $data['message'] = 'data successfully found'; + } else { + $data['datas'] = null; + $data['message'] = 'data not found'; + } + } else { + $data['status'] = 'error'; + $data['message'] = 'no ajax request'; + } + + return response()->json($data); + } + } diff --git a/app/Http/Controllers/TeamsController.php b/app/Http/Controllers/TeamsController.php index bf0a39b..e360132 100644 --- a/app/Http/Controllers/TeamsController.php +++ b/app/Http/Controllers/TeamsController.php @@ -2,18 +2,19 @@ namespace Modules\Lpj\Http\Controllers; -use App\Http\Controllers\Controller; -use Illuminate\Http\RedirectResponse; +use Exception; use Illuminate\Http\Request; use Illuminate\Http\Response; -use Modules\Lpj\Models\Regions; -use Modules\Usermanagement\Models\User; use Modules\Lpj\Models\Teams; -use Modules\Lpj\Models\TeamsUsers; -use Modules\Lpj\Http\Requests\TeamsRequest; +use Modules\Lpj\Models\Regions; use Illuminate\Support\Facades\DB; -use Modules\Lpj\Exports\TeamPenilaianExport; +use Modules\Lpj\Models\TeamsUsers; +use App\Http\Controllers\Controller; use Maatwebsite\Excel\Facades\Excel; +use Illuminate\Http\RedirectResponse; +use Modules\Usermanagement\Models\User; +use Modules\Lpj\Http\Requests\TeamsRequest; +use Modules\Lpj\Exports\TeamPenilaianExport; class TeamsController extends Controller { @@ -39,8 +40,8 @@ class TeamsController extends Controller // cek user apakah sudah ada di tabel teams_users $userTeam = TeamsUsers::pluck('user_id')->toArray(); $user = User::whereNotIn('id', $userTeam) - ->with('roles') - ->get(); + ->with('roles') + ->get(); return view('lpj::teams.form', compact('region', 'user')); } @@ -69,15 +70,15 @@ class TeamsController extends Controller DB::commit(); return redirect() - ->route('basicdata.teams.index') - ->with('success', 'Data saved successfully. '); + ->route('basicdata.teams.index') + ->with('success', 'Data saved successfully. '); } catch (Exception $e) { DB::rollBack(); return redirect() - ->route('basicdata.teams.create') - ->with('error', 'Failed to save data. '); + ->route('basicdata.teams.create') + ->with('error', 'Failed to save data. '); } } @@ -100,8 +101,8 @@ class TeamsController extends Controller $region = Regions::all(); $usedUsers = TeamsUsers::where('teams_id', '!=', $id)->pluck('user_id')->toArray(); $user = User::whereNotIn('id', $usedUsers) - ->with('roles') - ->get(); + ->with('roles') + ->get(); // Ambil user yang sudah ada di tim ini $selectedUsers = $teams->teamsUsers->pluck('user_id')->toArray(); @@ -136,15 +137,15 @@ class TeamsController extends Controller DB::commit(); return redirect() - ->route('basicdata.teams.index') - ->with('success', 'Data updated successfully. '); + ->route('basicdata.teams.index') + ->with('success', 'Data updated successfully. '); } catch (Exception $e) { DB::rollBack(); return redirect() - ->route('basicdata.teams.create') - ->with('error', 'Failed to update data. '); + ->route('basicdata.teams.create') + ->with('error', 'Failed to update data. '); } } @@ -165,7 +166,6 @@ class TeamsController extends Controller DB::commit(); echo json_encode(['success' => true, 'message' => 'Team has been deleted successfully']); - } catch (Exception $e) { DB::rollBack(); echo json_encode(['success' => false, 'message' => 'Failed to delete Team']); @@ -190,8 +190,8 @@ class TeamsController extends Controller $search = $request->get('search'); $query->where(function ($q) use ($search) { $q->where('teams.name', 'LIKE', "%$search%") - ->orWhere('regions.name', 'LIKE', "%$search%") - ->orWhere('users.name', 'LIKE', "%$search%"); + ->orWhere('regions.name', 'LIKE', "%$search%") + ->orWhere('users.name', 'LIKE', "%$search%"); }); } @@ -255,6 +255,4 @@ class TeamsController extends Controller { return Excel::download(new TeamPenilaianExport(), 'team-penilai.xlsx'); } - - } diff --git a/app/Http/Controllers/TenderController.php b/app/Http/Controllers/TenderController.php index d23fd30..6829346 100644 --- a/app/Http/Controllers/TenderController.php +++ b/app/Http/Controllers/TenderController.php @@ -2,14 +2,24 @@ namespace Modules\Lpj\Http\Controllers; -use App\Http\Controllers\Controller; -use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; use Illuminate\Http\Response; use Modules\Lpj\Models\Penawaran; +use App\Http\Controllers\Controller; +use Maatwebsite\Excel\Facades\Excel; +use Modules\Lpj\Models\PenawaranTender; +use Modules\Lpj\Exports\PenawaranTenderExport; +use Modules\Lpj\Http\Requests\TenderPenawaranRequest; +use Modules\Lpj\Models\JenisLaporan; +use Modules\Lpj\Models\KJPP; +use Modules\Lpj\Models\Permohonan; +use Modules\Lpj\Models\StatusPermohonan; +use Modules\Lpj\Models\TujuanPenilaianKJPP; class TenderController extends Controller { + public $user; + /** * Display a listing of the resource. */ @@ -21,33 +31,44 @@ class TenderController extends Controller /** * Show the form for creating a new resource. */ - public function penawaran_create() + public function penawaran_create($id) { - return view('lpj::penawaran/create'); + $penawaran = PenawaranTender::find($id); + + $status = StatusPermohonan::all(); + $tujuan_penilaian_kjpp = TujuanPenilaianKJPP::all(); + $jenis_laporan = JenisLaporan::all(); + $kjpp = KJPP::all(); + + return view('lpj::penawaran/create', compact('status', 'tujuan_penilaian_kjpp', 'jenis_laporan', 'kjpp', 'penawaran', 'id')); } /** * Store a newly created resource in storage. */ - public function penawaran_store(Request $request): RedirectResponse + public function penawaran_store(TenderPenawaranRequest $request, $id) { - // $validated = $request->validate([ - // 'nama_kjpp_sebelumnya' => 'required|string', - // 'biaya_kjpp_sebelumnya' => 'required|numeric', - // 'tgl_penilaian_sebelumnya' => 'required|date', - // 'nama_kjpp_1' => 'required|exists:kjpps,id', - // 'nama_kjpp_2' => 'required|exists:kjpps,id', - // 'nama_kjpp_3' => 'required|exists:kjpps,id', - // 'data_jaminan_legalitas' => 'required|string', - // 'tujuan_penilaian' => 'required|in:Penjaminan Hutang,Lelang,Revaluasi Aset', - // 'jenis_laporan' => 'required|in:Short report,Full report', - // 'batas_waktu' => 'required|date', - // 'catatan' => 'nullable|string' - // ]); + $validated = $request->validated(); - // Penawaran::create($validated); + if ($validated) { + $penawaran = PenawaranTender::find($id); - // return redirect()->back()->with('success', 'Data berhasil disimpan!'); + $validated['nomor_registrasi'] = $penawaran->nomor_registrasi; + + $validated['nama_kjpp_sebelumnya'] = json_encode($request->input('nama_kjpp_sebelumnya')); + + dd($validated); + + PenawaranTender::create($validated); + + return redirect() + ->route('tender.penawaran.index') + ->with('success', 'Data Penawaran created successfully'); + } else { + return redirect() + ->route('tender.penawaran.createPenawaran', $id) + ->with('error', 'Validation failed'); + } } /** @@ -55,7 +76,8 @@ class TenderController extends Controller */ public function penawaran_show($id) { - return view('lpj::show'); + $penawaran = PenawaranTender::find($id); + return view('lpj::penawaran.show', compact('id', 'penawaran')); } /** @@ -69,7 +91,7 @@ class TenderController extends Controller /** * Update the specified resource in storage. */ - public function update(Request $request, $id): RedirectResponse + public function update(Request $request, $id) { // } @@ -82,6 +104,73 @@ class TenderController extends Controller // } + public function datatablesPenawaran(Request $request) + { + if (is_null($this->user) || !$this->user->can('penawaran.view')) { + //abort(403, 'Sorry! You are not allowed to view users.'); + } + + // Retrieve data from the database + $query = PenawaranTender::query(); + + // Apply search filter if provided + if ($request->has('search') && !empty($request->get('search'))) { + $search = $request->get('search'); + $query->where(function ($q) use ($search) { + $q->where('code', 'LIKE', "%$search%"); + $q->orWhere('nama_kjpp_sebelumnya', 'LIKE', "%$search%"); + $q->orWhere('tanggal_penilaian_sebelumnya', 'LIKE', "%$search%"); + }); + } + + // Apply sorting if provided + if ($request->has('sortOrder') && !empty($request->get('sortOrder'))) { + $order = $request->get('sortOrder'); + $column = $request->get('sortField'); + $query->orderBy($column, $order); + } + + // Get the total count of records + $totalRecords = $query->count(); + + // Apply pagination if provided + if ($request->has('page') && $request->has('size')) { + $page = $request->get('page'); + $size = $request->get('size'); + $offset = ($page - 1) * $size; // Calculate the offset + + $query->skip($offset)->take($size); + } + + // Get the filtered count of records + $filteredRecords = $query->count(); + + // Get the data for the current page + $data = $query->get(); + + // Calculate the page count + $pageCount = ceil($totalRecords / $request->get('size')); + + // Calculate the current page number + $currentPage = 0 + 1; + + // Return the response data as a JSON object + return response()->json([ + 'draw' => $request->get('draw'), + 'recordsTotal' => $totalRecords, + 'recordsFiltered' => $filteredRecords, + 'pageCount' => $pageCount, + 'page' => $currentPage, + 'totalCount' => $totalRecords, + 'data' => $data, + ]); + } + + public function exportPenawaran() + { + return Excel::download(new PenawaranTenderExport, 'kjpp.xlsx'); + } + public function proses_penawaran_index() { return view('lpj::proses_penawaran/index'); diff --git a/app/Http/Controllers/TujuanPenilaianKJPPController.php b/app/Http/Controllers/TujuanPenilaianKJPPController.php new file mode 100644 index 0000000..1ee7c9c --- /dev/null +++ b/app/Http/Controllers/TujuanPenilaianKJPPController.php @@ -0,0 +1,174 @@ +validated(); + + if ($validate) { + try { + TujuanPenilaianKJPP::create($validate); + return redirect() + ->route('basicdata.tujuan_penilaian_kjpp.index') + ->with('success', 'Tujuan Penilaian KJPP created successfully'); + } catch (Throwable $e) { + return redirect() + ->route('basicdata.tujuan_penilaian_kjpp.create') + ->with('success', 'Failed to create Tujuan Penilaian KJPP: ' . $e); + } + } + } + + /** + * Show the specified resource. + */ + public function show($id) + { + return view('lpj::show'); + } + + /** + * Show the form for editing the specified resource. + */ + public function edit($id) + { + $tujuanPenilaianKJPP = TujuanPenilaianKJPP::find($id); + return view('lpj::tujuan_penilaian_kjpp.create', compact('tujuanPenilaianKJPP')); + } + + /** + * Update the specified resource in storage. + */ + public function update(JenisPenilaianKJPPRequest $request, $id) + { + $validate = $request->validated(); + + if ($validate) { + try { + $tujuanPenilaianKJPP = TujuanPenilaianKJPP::find($id); + $tujuanPenilaianKJPP->update($validate); + return redirect() + ->route('basicdata.tujuan_penilaian_kjpp.index') + ->with('success', 'Tujuan Penilaian KJPP updated successfully'); + } catch (Throwable $e) { + return redirect() + ->route('basicdata.tujuan_penilaian_kjpp.edit', $id) + ->with('success', 'Failed to update Tujuan Penilaian KJPP: ' . $e); + } + } + } + + /** + * Remove the specified resource from storage. + */ + public function destroy($id) + { + try { + // Delete from database + $tujuanPenilaianKJPP = TujuanPenilaianKJPP::find($id); + $tujuanPenilaianKJPP->delete(); + + echo json_encode(['success' => true, 'message' => 'Tujuan Penilaian deleted successfully']); + } catch (Throwable $e) { + echo json_encode(['success' => false, 'message' => 'Failed to delete deleted']); + } + } + + public function dataForDatatables(Request $request) + { + if (is_null($this->user) || !$this->user->can('jenis_jaminan.view')) { + //abort(403, 'Sorry! You are not allowed to view users.'); + } + + // Retrieve data from the database + $query = TujuanPenilaianKJPP::query(); + + // Apply search filter if provided + if ($request->has('search') && !empty($request->get('search'))) { + $search = $request->get('search'); + $query->where(function ($q) use ($search) { + $q->where('code', 'LIKE', "%$search%"); + $q->orWhere('name', 'LIKE', "%$search%"); + }); + } + + // Apply sorting if provided + if ($request->has('sortOrder') && !empty($request->get('sortOrder'))) { + $order = $request->get('sortOrder'); + $column = $request->get('sortField'); + $query->orderBy($column, $order); + } + + // Get the total count of records + $totalRecords = $query->count(); + + // Apply pagination if provided + if ($request->has('page') && $request->has('size')) { + $page = $request->get('page'); + $size = $request->get('size'); + $offset = ($page - 1) * $size; // Calculate the offset + + $query->skip($offset)->take($size); + } + + // Get the filtered count of records + $filteredRecords = $query->count(); + + // Get the data for the current page + $data = $query->get(); + + // Calculate the page count + $pageCount = ceil($totalRecords / $request->get('size')); + + // Calculate the current page number + $currentPage = 0 + 1; + + // Return the response data as a JSON object + return response()->json([ + 'draw' => $request->get('draw'), + 'recordsTotal' => $totalRecords, + 'recordsFiltered' => $filteredRecords, + 'pageCount' => $pageCount, + 'page' => $currentPage, + 'totalCount' => $totalRecords, + 'data' => $data, + ]); + } + + public function export() + { + return Excel::download(new TujuanPenilaianKJPPExport, 'jenis_laporan.xlsx'); + } +} diff --git a/app/Http/Requests/JenisLaporanRequest.php b/app/Http/Requests/JenisLaporanRequest.php new file mode 100644 index 0000000..76babb0 --- /dev/null +++ b/app/Http/Requests/JenisLaporanRequest.php @@ -0,0 +1,46 @@ + 'required|max:5', + 'name' => 'required|max:255', + ]; + + if ($this->method() == 'PUT') { + $rules['code'] = 'required|max:5|unique:jenis_laporan,code,' . $this->id; + } else { + $rules['code'] = 'required|max:5|unique:jenis_laporan,code'; + } + + return $rules; + } + + /** + * Determine if the user is authorized to make this request. + */ + public function authorize(): bool + { + return true; + } + + public function messages(): array + { + return [ + 'code.required' => 'Kode Jenis Laporan Wajib diisi!', + 'code.max' => 'Kode Jenis Laporan maksimum 5 huruf!', + 'code.unique' => 'Kode Jenis Laporan tidak boleh sama!', + 'name.required' => 'Nama Jenis Laporan Wajib diisi!', + 'name.max' => 'Nama Jenis Laporan Wajib diisi!' + ]; + } +} diff --git a/app/Http/Requests/JenisPenilaianKJPPRequest.php b/app/Http/Requests/JenisPenilaianKJPPRequest.php new file mode 100644 index 0000000..851b00c --- /dev/null +++ b/app/Http/Requests/JenisPenilaianKJPPRequest.php @@ -0,0 +1,45 @@ + 'required|max:5', + 'name' => 'required|max:255', + ]; + + if ($this->method() == 'PUT') { + $rules['code'] = 'required|max:5|unique:tujuan_penilaian_kjpp,code,' . $this->id; + } else { + $rules['code'] = 'required|max:5|unique:tujuan_penilaian_kjpp,code'; + } + + return $rules; + } + /** + * Determine if the user is authorized to make this request. + */ + public function authorize(): bool + { + return true; + } + + public function messages(): array + { + return [ + 'code.required' => 'Kode Tujuan Penilaian KJPP Wajib diisi!', + 'code.max' => 'Kode Tujuan Penilaian KJPP maksimum 5 huruf!', + 'code.unique' => 'Kode Tujuan Penilaian KJPP tidak boleh sama!', + 'name.required' => 'Nama Tujuan Penilaian KJPP Wajib diisi!', + 'name.max' => 'Nama Tujuan Penilaian KJPP Wajib diisi!' + ]; + } +} diff --git a/app/Http/Requests/KJPPRequest.php b/app/Http/Requests/KJPPRequest.php index 3b5c637..e3e6fe4 100644 --- a/app/Http/Requests/KJPPRequest.php +++ b/app/Http/Requests/KJPPRequest.php @@ -32,8 +32,10 @@ class KJPPRequest extends FormRequest 'nomor_hp_pic_admin' => 'required|numeric|digits_between:10,15', 'nama_pic_marketing' => 'required|string|not_regex:/^\d+$/|max:255', 'nomor_hp_pic_marketing' => 'required|numeric|digits_between:10,15', - 'ijin_usaha_id' => 'nullable', - 'jenis_aset_id' => 'nullable', + 'ijin_usaha_id' => 'required|array', + 'ijin_usaha_id.*' => 'exists:ijin_usaha,code', + 'jenis_aset_id' => 'required|array', + 'jenis_aset_id.*' => 'exists:jenis_jaminan,code', 'attachment' => 'nullable|mimes:pdf|max:1024' ]; @@ -54,14 +56,6 @@ class KJPPRequest extends FormRequest return true; } - public function prepareForValidation(): void - { - $this->merge([ - 'ijin_usaha_id' => json_encode($this->ijin_usaha_id), - 'jenis_aset_id' => json_encode($this->jenis_aset_id) - ]); - } - public function messages(): array { return [ @@ -106,6 +100,10 @@ class KJPPRequest extends FormRequest 'nomor_hp_pic_marketing.required' => 'Nomor HP PIC Marketing Wajib diisi!', 'nomor_hp_pic_marketing.numeric' => 'Nomor HP PIC Marketing harus berupa angka!', 'nomor_hp_pic_marketing.digits_between' => 'Nomor HP PIC Marketing minimum 10 digit dan maksimum 15 digit!', + 'ijin_usaha_id.required' => 'Ijin Usaha Wajib diisi!', + 'ijin_usaha_id.min' => 'Ijin Usaha Wajib diisi minimal satu atau lebih!', + 'jenis_aset_id.required' => 'Jenis Aset Wajib diisi!', + 'jenis_aset_id.min' => 'Jenis Aset Wajib diisi minimal satu atau lebih!', 'attachment.mimes' => 'Attachment harus berformat pdf!', 'attachment.max' => 'Attachment berukuran maksimum 1 MB!', ]; diff --git a/app/Http/Requests/TenderPenawaranRequest.php b/app/Http/Requests/TenderPenawaranRequest.php new file mode 100644 index 0000000..16ed5bc --- /dev/null +++ b/app/Http/Requests/TenderPenawaranRequest.php @@ -0,0 +1,75 @@ + 'required|array', + 'nama_kjpp_sebelumnya.*' => 'exists:kjpp,name', + 'biaya_kjpp_sebelumnya' => 'required|numeric', + 'tanggal_penilaian_sebelumnya' => 'required', + 'nomor_registrasi' => 'required', + 'tujuan_penilaian_kjpp_id' => 'required', + 'jenis_laporan_id' => 'required', + 'start_date' => 'required', + 'end_date' => 'required', + 'catatan' => 'nullable', + 'status' => 'required' + ]; + + if ($this->method() == 'PUT') { + $rules['code'] = 'required|max:50|unique:penawaran,code,' . $this->id; + } else { + $rules['code'] = 'required|max:50|unique:penawaran,code'; + } + + return $rules; + } + + /** + * Determine if the user is authorized to make this request. + */ + public function authorize(): bool + { + return true; + } + + public function messages(): array + { + return [ + 'code.required' => 'Kode Penawaran Wajib diisi!', + 'code.max' => 'Kode Penawaran maksimal 255 huruf!', + 'code.unique' => 'Kode Penawaran tidak boleh sama!', + 'nama_kjpp_sebelumnya.required' => 'Nama KJPP Sebelumnya Wajib diisi!', + 'biaya_kjpp_sebelumnya.required' => 'Biaya KJPP Sebelumnya Wajib diisi!', + 'biaya_kjpp_sebelumnya.numeric' => 'Biaya KJPP Sebelumnya harus berupa angka!', + 'tanggal_penilaian_sebelumnya.required' => 'Tanggal Penilaian Sebelumnya Wajib diisi!', + 'nomor_registrasi.required' => 'Nomor Registrasi Wajib diisi!', + 'tujuan_penilaian_kjpp_id.required' => 'Tujuan Penilaian KJPP Wajib diisi!', + 'jenis_laporan_id.required' => 'Jenis Laporan Wajib diisi!', + 'start_date.required' => 'Tanggal Awal Wajib diisi!', + 'end_date.required' => 'Tanggal Akhir Wajib diisi!', + 'status.required' => 'Status Wajib diisi!' + ]; + } + + public function withValidator($validator) + { + $validator->after(function ($validator) { + $startDate = strtotime($this->input('start_date')); + $endDate = strtotime($this->input('end_date')); + + if ($endDate < $startDate) { + $validator->errors()->add('end_date', 'Tanggal Akhir tidak boleh lebih awal dari Tanggal Awal.'); + } + }); + } +} diff --git a/app/Models/JenisLaporan.php b/app/Models/JenisLaporan.php new file mode 100644 index 0000000..13e248e --- /dev/null +++ b/app/Models/JenisLaporan.php @@ -0,0 +1,22 @@ +belongsTo(User::class); } - public function branch(){ + public function branch() + { return $this->belongsTo(Branch::class); } - public function tujuanPenilaian(){ + public function tujuanPenilaian() + { return $this->belongsTo(TujuanPenilaian::class); } - public function debiture(){ + public function debiture() + { return $this->belongsTo(Debiture::class); } - public function documents(){ + public function documents() + { return $this->hasMany(DokumenJaminan::class); } - public function nilaiPlafond(){ + public function nilaiPlafond() + { return $this->belongsTo(NilaiPlafond::class); } - public function jenisFasilitasKredit(){ + public function jenisFasilitasKredit() + { return $this->belongsTo(JenisFasilitasKredit::class); } - public function penilaian(){ + public function penilaian() + { return $this->belongsTo(Penilaian::class, 'nomor_registrasi', 'nomor_registrasi'); } } diff --git a/app/Models/PermohonanJaminan.php b/app/Models/PermohonanJaminan.php new file mode 100644 index 0000000..86e4b3f --- /dev/null +++ b/app/Models/PermohonanJaminan.php @@ -0,0 +1,23 @@ +id(); + $table->string('code')->unique()->index(); + $table->string('name'); + $table->boolean('status')->default(true)->nullable(); + $table->char('authorized_status', 1)->nullable(); + $table->timestamp('authorized_at')->nullable(); + $table->unsignedBigInteger('authorized_by')->nullable(); + $table->timestamps(); + $table->softDeletes(); + + $table->unsignedBigInteger('deleted_by')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('tujuan_penilaian_kjpp'); + } +}; diff --git a/database/migrations/2024_09_26_041326_create_jenis_laporan_table.php b/database/migrations/2024_09_26_041326_create_jenis_laporan_table.php new file mode 100644 index 0000000..f47da7a --- /dev/null +++ b/database/migrations/2024_09_26_041326_create_jenis_laporan_table.php @@ -0,0 +1,36 @@ +id(); + $table->string('code')->unique()->index(); + $table->string('name'); + $table->boolean('status')->default(true)->nullable(); + $table->char('authorized_status', 1)->nullable(); + $table->timestamp('authorized_at')->nullable(); + $table->unsignedBigInteger('authorized_by')->nullable(); + $table->timestamps(); + $table->softDeletes(); + + $table->unsignedBigInteger('deleted_by')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('jenis_laporan'); + } +}; diff --git a/database/migrations/2024_09_26_043440_create_penawaran_table.php b/database/migrations/2024_09_26_043440_create_penawaran_table.php new file mode 100644 index 0000000..403faaf --- /dev/null +++ b/database/migrations/2024_09_26_043440_create_penawaran_table.php @@ -0,0 +1,44 @@ +id(); + $table->string('code'); + $table->string('nama_kjpp_sebelumnya'); + $table->string('biaya_kjpp_sebelumnya'); + $table->datetime('tanggal_penilaian_sebelumnya'); + $table->string('nomor_registrasi'); + $table->foreignId('tujuan_penilaian_kjpp_id')->constrained('tujuan_penilaian_kjpp'); + $table->foreignId('jenis_laporan_id')->constrained('jenis_laporan'); + $table->date('start_date'); + $table->date('end_date'); + $table->text('catatan'); + $table->boolean('status')->default(true)->nullable(); + $table->char('authorized_status', 1)->nullable(); + $table->timestamp('authorized_at')->nullable(); + $table->unsignedBigInteger('authorized_by')->nullable(); + $table->timestamps(); + $table->softDeletes(); + + $table->unsignedBigInteger('deleted_by')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('penawaran'); + } +}; diff --git a/database/migrations/2024_09_26_043449_create_persetujuan_penawaran_table.php b/database/migrations/2024_09_26_043449_create_persetujuan_penawaran_table.php new file mode 100644 index 0000000..025fb96 --- /dev/null +++ b/database/migrations/2024_09_26_043449_create_persetujuan_penawaran_table.php @@ -0,0 +1,43 @@ +id(); + $table->foreignId('penawaran_id')->constrained('penawaran'); + $table->string('nomor_proposal_penawaran'); + $table->date('tanggal_proposal_penawaran'); + $table->string('biaya_final'); + $table->datetime('sls_resume'); + $table->datetime('sla_final'); + $table->string('catatan'); + $table->string('attachment'); + $table->foreignId('region_id')->constrained('regions'); + $table->boolean('status')->default(true)->nullable(); + $table->char('authorized_status', 1)->nullable(); + $table->timestamp('authorized_at')->nullable(); + $table->unsignedBigInteger('authorized_by')->nullable(); + $table->timestamps(); + $table->softDeletes(); + + $table->unsignedBigInteger('deleted_by')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('persetujuan_penawaran'); + } +}; diff --git a/database/migrations/2024_09_26_043525_create_detail_penawaran_table.php b/database/migrations/2024_09_26_043525_create_detail_penawaran_table.php new file mode 100644 index 0000000..6a185db --- /dev/null +++ b/database/migrations/2024_09_26_043525_create_detail_penawaran_table.php @@ -0,0 +1,39 @@ +id(); + $table->foreignId('kjpp_rekanan_id')->constrained('kjpp'); + $table->foreignId('penawaran_id')->constrained('penawaran'); + $table->string('biaya_penawaran'); + $table->string('attachment'); + $table->string('dokumen_persetujuan'); + $table->boolean('status')->default(true)->nullable(); + $table->char('authorized_status', 1)->nullable(); + $table->timestamp('authorized_at')->nullable(); + $table->unsignedBigInteger('authorized_by')->nullable(); + $table->timestamps(); + $table->softDeletes(); + + $table->unsignedBigInteger('deleted_by')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('detail_penawaran'); + } +}; diff --git a/database/migrations/2024_09_30_021444_update_kjpp_table.php b/database/migrations/2024_09_30_021444_update_kjpp_table.php new file mode 100644 index 0000000..1ffb5a1 --- /dev/null +++ b/database/migrations/2024_09_30_021444_update_kjpp_table.php @@ -0,0 +1,30 @@ +string('ijin_usaha_id')->change(); + $table->string('jenis_aset_id')->change(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('kjpp', function (Blueprint $table) { + $table->string('ijin_usaha_id')->nullable()->change(); + $table->string('jenis_aset_id')->nullable()->change(); + }); + } +}; diff --git a/database/migrations/2024_10_01_070143_update_penawaran_table.php b/database/migrations/2024_10_01_070143_update_penawaran_table.php new file mode 100644 index 0000000..dc5cd40 --- /dev/null +++ b/database/migrations/2024_10_01_070143_update_penawaran_table.php @@ -0,0 +1,28 @@ +char('status')->change(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('penawaran', function (Blueprint $table) { + $table->boolean('status')->default(true)->nullable(); + }); + } +}; diff --git a/database/migrations/2024_10_01_095350_update_permohonan_table.php b/database/migrations/2024_10_01_095350_update_permohonan_table.php new file mode 100644 index 0000000..98794df --- /dev/null +++ b/database/migrations/2024_10_01_095350_update_permohonan_table.php @@ -0,0 +1,32 @@ +text('registrasi_catatan')->nullable()->comment('kebutuhan untuk feature Registrasi'); + $table->unsignedBigInteger('registrasi_by')->nullable()->after('registrasi_catatan')->comment('kebutuhan untuk feature Registrasi'); + $table->timestamp('registrasi_at')->nullable()->after('registrasi_by')->comment('kebutuhan untuk feature Registrasi'); + $table->unsignedBigInteger('jenis_penilaian_id')->nullable()->after('registrasi_at')->comment('kebutuhan untuk feature Registrasi'); + $table->unsignedBigInteger('region_id')->nullable()->after('jenis_penilaian_id')->comment('kebutuhan untuk feature Registrasi'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('permohonan', function (Blueprint $table) { + + }); + } +}; diff --git a/module.json b/module.json index 1c7fd40..47e9b8e 100644 --- a/module.json +++ b/module.json @@ -1,305 +1,343 @@ { - "name": "Lpj", - "alias": "lpj", - "database": "", - "description": "", - "keywords": [], - "priority": 0, - "providers": [ - "Modules\\Lpj\\Providers\\LpjServiceProvider" + "name": "Lpj", + "alias": "lpj", + "database": "", + "description": "", + "keywords": [], + "priority": 0, + "providers": [ + "Modules\\Lpj\\Providers\\LpjServiceProvider" + ], + "files": [], + "menu": { + "main": [ + { + "title": "Permohonan", + "path": "permohonan", + "icon": "ki-filled ki-questionnaire-tablet text-lg", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Registrasi", + "path": "registrasi", + "icon": "ki-filled ki-file-added text-lg", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","admin" + ] + }, + { + "title": "Tender", + "path": "tender", + "icon": "ki-filled ki-category text-lg", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","admin" + ], + "sub": [ + { + "title": "Data Penawaran", + "path": "tender.penawaran", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","admin" + ] + }, + { + "title": "Data Proses Penawaran", + "path": "tender.proses_penawaran", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","admin" + ] + }, + { + "title": "Data Penawaran Ulang", + "path": "tender.penawaran_ulang", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","admin" + ] + } + ] + }, + { + "title": "Pembatalan", + "path": "", + "icon": "ki-filled ki-file-deleted text-lg text-danger", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Data Debitur", + "path": "debitur", + "icon": "ki-filled ki-people text-lg", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Authorization", + "path": "authorization", + "icon": "ki-filled ki-security-user text-lg", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-eo" + ] + }, + { + "title": "Assignment", + "path": "penilaian", + "icon": "ki-filled ki-badge text-lg", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator" + ] + }, + { + "title": "Activity", + "path": "activity", + "icon": "ki-filled ki-calendar-edit text-lg", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo","admin" + ] + }, + { + "title": "Laporan", + "path": "", + "icon": "ki-filled ki-filter-tablet text-lg", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo","admin" + ] + } ], - "files": [], - "menu": { - "main": [ - { - "title": "Permohonan", - "path": "permohonan", - "icon": "ki-filled ki-questionnaire-tablet text-lg", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "Administrator" - ] - }, - { - "title": "Tender", - "path": "tender", - "icon": "ki-filled ki-category text-lg", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "Administrator" - ], - "sub": [ - { - "title": "Data Penawaran", - "path": "tender.penawaran", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Data Proses Penawaran", - "path": "tender.proses_penawaran", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Data Penawaran Ulang", - "path": "tender.penawaran_ulang", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - } - ] - }, - { - "title": "Pembatalan", - "path": "", - "icon": "ki-filled ki-file-deleted text-lg", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "Administrator" - ] - }, - { - "title": "Data Debitur", - "path": "debitur", - "icon": "ki-filled ki-people text-lg", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "Administrator" - ] - }, - { - "title": "Authorization", - "path": "authorization", - "icon": "ki-filled ki-some-files text-lg", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "Administrator" - ] - }, - { - "title": "Assignment", - "path": "penilaian", - "icon": "ki-filled ki-badge", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "senior officer" - ] - }, - { - "title": "Activity", - "path": "activity", - "icon": "ki-filled ki-questionnaire-tablet text-lg", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "Administrator" - ] - }, - { - "title": "Team Activity", - "path": "activity.progres", - "icon": "ki-filled ki-questionnaire-tablet text-lg", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "senior officer" - ] - }, - { - "title": "Surveyor", - "path": "surveyor", - "icon": "ki-filled ki-notepad-edit text-lg", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "Administrator" - ] - }, - - { - "title": "Laporan", - "path": "", - "icon": "ki-filled ki-some-files text-lg", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "Administrator" - ] - } + "master": [ + { + "title": "Basic Data", + "path": "basicdata", + "icon": "ki-filled ki-category text-lg", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo","admin" ], - "master": [ - { - "title": "Basic Data", - "path": "basicdata", - "icon": "ki-filled ki-category text-lg", - "classes": "", - "attributes": [], - "permission": "", - "roles": [ - "Administrator" - ], - "sub": [ - { - "title": "Cabang", - "path": "basicdata.branch", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Mata Uang", - "path": "basicdata.currency", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Jenis Fasilitas Kredit", - "path": "basicdata.jenis-fasilitas-kredit", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Jenis Legalitas Jaminan", - "path": "basicdata.jenis-legalitas-jaminan", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Jenis Aset", - "path": "basicdata.jenis-jaminan", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Jenis Dokumen", - "path": "basicdata.jenis-dokumen", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Tujuan Penilaian", - "path": "basicdata.tujuan-penilaian", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Nilai Plafond", - "path": "basicdata.nilai-plafond", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Hubungan Pemilik Jaminan", - "path": "basicdata.hubungan-pemilik-jaminan", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Hubungan Penghuni Jaminan", - "path": "basicdata.hubungan-penghuni-jaminan", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Arah Mata Angin", - "path": "basicdata.arah-mata-angin", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Status Permohonan", - "path": "basicdata.status-permohonan", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Region", - "path": "basicdata.region", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Staff Appraisal", - "path": "basicdata.teams", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Jenis Penilaian", - "path": "basicdata.jenis-penilaian", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "KJPP", - "path": "basicdata.kjpp", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - }, - { - "title": "Ijin Usaha", - "path": "basicdata.ijin_usaha", - "classes": "", - "attributes": [], - "permission": "", - "roles": [] - } - ] - } - ], - "system": [] - } + "sub": [ + { + "title": "Cabang", + "path": "basicdata.branch", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Mata Uang", + "path": "basicdata.currency", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Jenis Fasilitas Kredit", + "path": "basicdata.jenis-fasilitas-kredit", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Jenis Legalitas Jaminan", + "path": "basicdata.jenis-legalitas-jaminan", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Jenis Aset", + "path": "basicdata.jenis-jaminan", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Jenis Dokumen", + "path": "basicdata.jenis-dokumen", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Tujuan Penilaian", + "path": "basicdata.tujuan-penilaian", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Nilai Plafond", + "path": "basicdata.nilai-plafond", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Hubungan Pemilik Jaminan", + "path": "basicdata.hubungan-pemilik-jaminan", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Hubungan Penghuni Jaminan", + "path": "basicdata.hubungan-penghuni-jaminan", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","pemohon-ao","pemohon-eo" + ] + }, + { + "title": "Arah Mata Angin", + "path": "basicdata.arah-mata-angin", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator" + ] + }, + { + "title": "Status Permohonan", + "path": "basicdata.status-permohonan", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator" + ] + }, + { + "title": "Region", + "path": "basicdata.region", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","admin","so" + ] + }, + { + "title": "Staff Appraisal", + "path": "basicdata.teams", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","so" + ] + }, + { + "title": "Jenis Penilaian", + "path": "basicdata.jenis-penilaian", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","admin","so" + ] + }, + { + "title": "KJPP", + "path": "basicdata.kjpp", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","admin" + ] + }, + { + "title": "Tujuan Penilaian KJPP", + "path": "basicdata.tujuan_penilaian_kjpp", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","admin" + ] + }, + { + "title": "Ijin Usaha", + "path": "basicdata.ijin_usaha", + "classes": "", + "attributes": [], + "permission": "", + "roles": [ + "administrator","admin" + ] + } + ] + } + ], + "system": [] + } } diff --git a/resources/views/authorization/index.blade.php b/resources/views/authorization/index.blade.php new file mode 100644 index 0000000..320d9bb --- /dev/null +++ b/resources/views/authorization/index.blade.php @@ -0,0 +1,138 @@ +@extends('layouts.main') + +@section('breadcrumbs') + {{ Breadcrumbs::render('authorization') }} +@endsection + +@section('content') +
+
+
+

+ Daftar Authorization +

+ +
+
+
+ + + + + + + + + + + + +
+ + + Nomor Permohonan + + + Cabang + + + Debitur + + + Tujuan Penilain + + + Account Officer + + Action
+
+ +
+
+
+@endsection + +@push('scripts') + + +@endpush + diff --git a/resources/views/jenis_laporan/create.blade.php b/resources/views/jenis_laporan/create.blade.php new file mode 100644 index 0000000..64d0bb4 --- /dev/null +++ b/resources/views/jenis_laporan/create.blade.php @@ -0,0 +1,77 @@ +@extends('layouts.main') + +@section('breadcrumbs') + {{ Breadcrumbs::render(request()->route()->getName()) }} +@endsection + +@section('content') +
+ @if (isset($jenisLaporan->id)) +
+ + @method('PUT') + @else + + @endif + @csrf +
+
+

+ {{ isset($jenisLaporan->id) ? 'Edit' : 'Tambah' }} Jenis Laporan +

+
+ Back +
+
+
+ @if (isset($jenisLaporan->id)) +
+ +
+ + @error('code') + {{ $message }} + @enderror +
+
+ @else +
+ +
+ + @error('code') + {{ $message }} + @enderror +
+
+ @endif +
+ +
+ + @error('name') + {{ $message }} + @enderror +
+
+
+ +
+
+
+
+
+@endsection diff --git a/resources/views/jenis_laporan/index.blade.php b/resources/views/jenis_laporan/index.blade.php new file mode 100644 index 0000000..fb1f6b8 --- /dev/null +++ b/resources/views/jenis_laporan/index.blade.php @@ -0,0 +1,153 @@ +@extends('layouts.main') + +@section('breadcrumbs') + {{ Breadcrumbs::render('basicdata.jenis_laporan') }} +@endsection + +@section('content') +
+
+
+

+ Daftar Jenis Laporan +

+ +
+
+
+ + + + + + + + + +
+ + + Kode Laporan + + + Jenis Laporan + + Action
+
+ +
+
+
+@endsection + +@push('scripts') + + + +@endpush diff --git a/resources/views/kjpp/create.blade.php b/resources/views/kjpp/create.blade.php index 977fe3f..c03ab45 100644 --- a/resources/views/kjpp/create.blade.php +++ b/resources/views/kjpp/create.blade.php @@ -32,7 +32,7 @@
+ value="{{ isset($kjpp->id) ? $kjpp->code : (empty($kjpp->id) ? $fullKjppNumber : old('code')) }}"> @error('code') {{ $message }} @enderror @@ -49,11 +49,11 @@
- +
- @if (isset($ijin_usaha)) @@ -345,46 +346,42 @@ -
- @foreach ($ijin_usaha as $row) -
-
- @foreach ($jenis_aset as $row) -
diff --git a/resources/views/kjpp/index.blade.php b/resources/views/kjpp/index.blade.php index 20777a5..dccdacd 100644 --- a/resources/views/kjpp/index.blade.php +++ b/resources/views/kjpp/index.blade.php @@ -45,7 +45,7 @@ - Jenis Kantor / Cabang + Jenis Kantor Action @@ -130,7 +130,7 @@ title: 'Nama KJPP', }, jenis_kantor: { - title: 'Jenis Kantor / Cabang', + title: 'Jenis Kantor', }, actions: { title: 'Action', diff --git a/resources/views/kjpp/show.blade.php b/resources/views/kjpp/show.blade.php index 14e9ae3..35762c9 100644 --- a/resources/views/kjpp/show.blade.php +++ b/resources/views/kjpp/show.blade.php @@ -33,7 +33,7 @@
- +

@foreach ($branches as $branch) @@ -63,7 +63,7 @@ {{ $district->name }} @endforeach , @foreach ($cities as $city) - {{ $city->name }} + {{ ucwords(strtolower($city->name)) }} @endforeach , @foreach ($provinces as $province) {{ $province->name }} @@ -148,32 +148,50 @@ -

- @foreach ($ijin_usahas as $row) - - @endforeach +
+ @if (isset($kjpp->ijin_usaha_id)) +
+ @foreach (json_decode($kjpp->ijin_usaha_id, true) as $ijin_code) + @php + $ijin_usaha = $ijin_usahas->firstWhere('code', $ijin_code); + @endphp + @if ($ijin_usaha) +
+ {{ $ijin_usaha->name }} +
+ @endif + @endforeach +
+ @else +
No + business license + selected.
+ @endif
-
- @foreach ($jenis_jaminan as $row) - - @endforeach +
+ @if (isset($kjpp->jenis_aset_id)) + @foreach (json_decode($kjpp->jenis_aset_id, true) as $aset_code) + @php + $jenis_aset = $jenis_jaminan->firstWhere('code', $aset_code); + @endphp + @if ($jenis_aset) + + {{ $jenis_aset->name }} + + @endif + @endforeach + @else + + No asset type selected. + + @endif
diff --git a/resources/views/penawaran/create.blade.php b/resources/views/penawaran/create.blade.php index 08ec062..c494a4e 100644 --- a/resources/views/penawaran/create.blade.php +++ b/resources/views/penawaran/create.blade.php @@ -1,22 +1,195 @@ @extends('layouts.main') @section('breadcrumbs') - {{ Breadcrumbs::render('tender.penawaran') }} + {{ Breadcrumbs::render(request()->route()->getName(), request()->route('id')) }} @endsection @section('content')
+
+ @csrf -
-
-

- Tambah Data Penawaran -

- +
+
+

+ Tambah Data Penawaran +

+ +
+
+
+ +
+ + @error('nomor_registrasi') + {{ $message }} + @enderror +
+
+
+ +
+ + @error('code') + {{ $message }} + @enderror +
+
+
+ +
+ + @error('nama_kjpp_sebelumnya') + {{ $message }} + @enderror +
+
+
+ +
+ + @error('biaya_kjpp_sebelumnya') + {{ $message }} + @enderror +
+ +
+ + @error('tanggal_penilaian_sebelumnya') + {{ $message }} + @enderror +
+
+
+ +
+ + @error('tujuan_penilaian_kjpp_id') + {{ $message }} + @enderror +
+ +
+ + @error('jenis_laporan_id') + {{ $message }} + @enderror +
+
+
+ +
+ + @error('start_date') + {{ $message }} + @enderror +
+ +
+ + @error('end_date') + {{ $message }} + @enderror +
+
+
+ +
+ + @error('catatan') + {{ $message }} + @enderror +
+
+
+ + +
+
+ +
+
-
- {{-- @include('lpj::debitur.form') --}} -
-
+
@endsection diff --git a/resources/views/penawaran/index.blade.php b/resources/views/penawaran/index.blade.php index 9158891..93b5ad2 100644 --- a/resources/views/penawaran/index.blade.php +++ b/resources/views/penawaran/index.blade.php @@ -7,15 +7,173 @@ @section('content')
-
+

Data Penawaran

+
+
+ +
+ +
+
+ + + + + + + + + + +
+ + + Nomor Penawaran + + + Nama KJPP Sebelumnya + + + Tanggal Penilaian Sebelumnya + + Action
+
+
@endsection + +@push('scripts') + + + + +@endpush diff --git a/resources/views/penawaran/show.blade.php b/resources/views/penawaran/show.blade.php new file mode 100644 index 0000000..2c5454d --- /dev/null +++ b/resources/views/penawaran/show.blade.php @@ -0,0 +1,36 @@ +@extends('layouts.main') + +@section('breadcrumbs') + {{ Breadcrumbs::render(request()->route()->getName(), request()->route('id')) }} +@endsection + +@section('content') +
+
+
+

+ Detail Penawaran +

+ +
+
+
+ +
+

+ {{ $penawaran->nomor_registrasi }} +

+
+
+ +
+
+
+@endsection diff --git a/resources/views/permohonan/authorization/show.blade.php b/resources/views/permohonan/authorization/show.blade.php index 0267b19..af77b06 100644 --- a/resources/views/permohonan/authorization/show.blade.php +++ b/resources/views/permohonan/authorization/show.blade.php @@ -244,7 +244,7 @@
+
+
+ +
+@endsection +@include('lpj::registrasi.js.editjs') diff --git a/resources/views/registrasi/index.blade.php b/resources/views/registrasi/index.blade.php new file mode 100644 index 0000000..68d8f5f --- /dev/null +++ b/resources/views/registrasi/index.blade.php @@ -0,0 +1,169 @@ +@extends('layouts.main') + +@section('breadcrumbs') + {{ Breadcrumbs::render('registrasi') }} +@endsection + +@section('content') +
+
+
+

+ Daftar Registrasi +

+
+
+ +
+ +
+
+
+
+ + + + + + + + + + + + + + +
+ + + Nomor Registrasi + + + Tanggal Permohonan + + + User Pemohon + + + Cabang Pemohon + + + Debitur + + + Tujuan Penilaian + + + Status + + Action
+
+ +
+
+
+@endsection + +@push('scripts') + + +@endpush + diff --git a/resources/views/registrasi/js/editjs.blade.php b/resources/views/registrasi/js/editjs.blade.php new file mode 100644 index 0000000..b26360f --- /dev/null +++ b/resources/views/registrasi/js/editjs.blade.php @@ -0,0 +1,196 @@ +@push('scripts') + +@endpush diff --git a/resources/views/registrasi/js/showjs.blade.php b/resources/views/registrasi/js/showjs.blade.php new file mode 100644 index 0000000..5309d38 --- /dev/null +++ b/resources/views/registrasi/js/showjs.blade.php @@ -0,0 +1,148 @@ +@push('scripts') + +@endpush diff --git a/resources/views/registrasi/show.blade.php b/resources/views/registrasi/show.blade.php new file mode 100644 index 0000000..d599468 --- /dev/null +++ b/resources/views/registrasi/show.blade.php @@ -0,0 +1,316 @@ +@extends('layouts.main') + +@section('breadcrumbs') + {{ Breadcrumbs::render(request()->route()->getName()) }} +@endsection +@php + // $route = Route::currentRouteName(); + // dd($route); registrasi.show + $route = explode('.', Route::currentRouteName()); +@endphp +@section('content') +
+
+
+

+ Data Permohonan +

+ + +
+
+
+

+ Nomor Register Permohonan: +

+ + {{ $permohonan->nomor_registrasi }} + +
+ +
+

+ Pemohon: +

+ + {{ $permohonan->user->nik }} | {{ $permohonan->user->name }} | {{ $permohonan->user->branch->name }} + +
+ +
+

+ Tujan Permohonan: +

+ + {{ $permohonan->tujuanPenilaian->name }} + +
+ +
+
+ +
+
+

+ Detail Debutur +

+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + +
+ Name + + {{ $permohonan->debiture->name ?? "" }} +
+ Email + + {{ $permohonan->debiture->email ?? "" }} +
+ Phone + + {{ $permohonan->debiture->phone ?? "" }} +
+ Address + + {{ $permohonan->debiture->address ?? "" }} +
+   + + {{ $permohonan->debiture->village->name ?? "" }}, {{ $permohonan->debiture->district->name ?? "" }}, {{ $permohonan->debiture->city->name ?? "" }}, {{ $permohonan->debiture->province->name ?? "" }} - {{ $permohonan->debiture->village->postal_code ?? "" }} +
+
+
+ + + + + + + + + + + + + + + + + +
+ Cabang + + {{ $permohonan->debiture->branch->name ?? "" }} +
+ CIF + + {{ $permohonan->debiture->cif ?? "" }} +
+ Nomor Rekening + + {{ $permohonan->debiture->nomor_rekening ?? "" }} +
+ NPWP + + {{ $permohonan->debiture->npwp ?? "" }} +
+
+
+
+
+ +
+
+

+ Data Jaminan +

+
+
+ @foreach($permohonan->debiture->documents as $dokumen) +
+ + +
+ @endforeach +
+
+ + +
+
+

+ Registrasi +

+ +
+
+
+ + @method('PUT') + @csrf + +
+ +
+    + +
+
+
+ +
+ + +
+
+
+ +
+ + +
+
+
+ +
+ + +
+
+
+ +
+
+
+
+
+ +@endsection +@include('lpj::registrasi.js.showjs') +@include('lpj::registrasi.js.editjs') diff --git a/resources/views/tujuan_penilaian_kjpp/create.blade.php b/resources/views/tujuan_penilaian_kjpp/create.blade.php new file mode 100644 index 0000000..92dd1b2 --- /dev/null +++ b/resources/views/tujuan_penilaian_kjpp/create.blade.php @@ -0,0 +1,77 @@ +@extends('layouts.main') + +@section('breadcrumbs') + {{ Breadcrumbs::render(request()->route()->getName()) }} +@endsection + +@section('content') +
+ @if (isset($tujuanPenilaianKJPP->id)) +
+ + @method('PUT') + @else + + @endif + @csrf +
+
+

+ {{ isset($tujuanPenilaianKJPP->id) ? 'Edit' : 'Tambah' }} Tujuan Penilaian KJPP +

+
+ Back +
+
+
+ @if (isset($tujuanPenilaianKJPP->id)) +
+ +
+ + @error('code') + {{ $message }} + @enderror +
+
+ @else +
+ +
+ + @error('code') + {{ $message }} + @enderror +
+
+ @endif +
+ +
+ + @error('name') + {{ $message }} + @enderror +
+
+
+ +
+
+
+
+
+@endsection diff --git a/resources/views/tujuan_penilaian_kjpp/index.blade.php b/resources/views/tujuan_penilaian_kjpp/index.blade.php new file mode 100644 index 0000000..e41fc78 --- /dev/null +++ b/resources/views/tujuan_penilaian_kjpp/index.blade.php @@ -0,0 +1,154 @@ +@extends('layouts.main') + +@section('breadcrumbs') + {{ Breadcrumbs::render('basicdata.tujuan_penilaian_kjpp') }} +@endsection + +@section('content') +
+
+
+

+ Daftar Tujuan Penilaian KJPP +

+ +
+
+
+ + + + + + + + + +
+ + + Kode Tujuan Penilaian KJPP + + + Nama Tujuan Penilaian KJPP + + Action
+
+ +
+
+
+@endsection + +@push('scripts') + + + +@endpush diff --git a/routes/breadcrumbs.php b/routes/breadcrumbs.php index a2bebea..6a1814d 100644 --- a/routes/breadcrumbs.php +++ b/routes/breadcrumbs.php @@ -52,6 +52,21 @@ $trail->push('Edit Jenis Aset'); }); + Breadcrumbs::for('basicdata.jenis_laporan', function (BreadcrumbTrail $trail) { + $trail->parent('basicdata'); + $trail->push('Jenis Laporan', route('basicdata.jenis_laporan.index')); + }); + + Breadcrumbs::for('basicdata.jenis_laporan.create', function (BreadcrumbTrail $trail) { + $trail->parent('basicdata.jenis_laporan'); + $trail->push('Tambah Jenis Laporan', route('basicdata.jenis_laporan.create')); + }); + + Breadcrumbs::for('basicdata.jenis_laporan.edit', function (BreadcrumbTrail $trail) { + $trail->parent('basicdata.jenis_laporan'); + $trail->push('Edit Jenis Laporan'); + }); + Breadcrumbs::for('basicdata.tujuan-penilaian', function (BreadcrumbTrail $trail) { $trail->parent('basicdata'); $trail->push('Tujuan Penilaian', route('basicdata.tujuan-penilaian.index')); @@ -67,6 +82,21 @@ $trail->push('Edit Tujuan Penilaian'); }); + Breadcrumbs::for('basicdata.tujuan_penilaian_kjpp', function (BreadcrumbTrail $trail) { + $trail->parent('basicdata'); + $trail->push('Tujuan Penilaian KJPP', route('basicdata.tujuan_penilaian_kjpp.index')); + }); + + Breadcrumbs::for('basicdata.tujuan_penilaian_kjpp.create', function (BreadcrumbTrail $trail) { + $trail->parent('basicdata.tujuan_penilaian_kjpp'); + $trail->push('Tambah Tujuan Penilaian KJPP', route('basicdata.tujuan_penilaian_kjpp.create')); + }); + + Breadcrumbs::for('basicdata.tujuan_penilaian_kjpp.edit', function (BreadcrumbTrail $trail) { + $trail->parent('basicdata.tujuan_penilaian_kjpp'); + $trail->push('Edit Tujuan Penilaian KJPP'); + }); + Breadcrumbs::for('basicdata.jenis-dokumen', function (BreadcrumbTrail $trail) { $trail->parent('basicdata'); $trail->push('Jenis Dokumen', route('basicdata.jenis-dokumen.index')); @@ -188,6 +218,7 @@ $trail->push('Edit Status Permohonan'); }); + // KJPP Breadcrumbs::for('basicdata.kjpp', function (BreadcrumbTrail $trail) { $trail->parent('basicdata'); $trail->push('KJPP', route('basicdata.kjpp.index')); @@ -203,6 +234,13 @@ $trail->push('Edit KJPP'); }); + Breadcrumbs::for('basicdata.kjpp.show', function (BreadcrumbTrail $trail) { + $trail->parent('basicdata.kjpp'); + $trail->push('Show KJPP'); + }); + // End KJPP + + // Ijin Usaha Breadcrumbs::for('basicdata.ijin_usaha', function (BreadcrumbTrail $trail) { $trail->parent('basicdata'); $trail->push('Ijin Usaha', route('basicdata.ijin_usaha.index')); @@ -364,11 +402,22 @@ $trail->push('Data Penawaran', route('tender.penawaran.index')); }); + Breadcrumbs::for('tender.penawaran.show', function (BreadcrumbTrail $trail, $id) { + $trail->parent('tender'); + $trail->push('Detail Penawaran', route('tender.penawaran.show', $id)); + }); + + Breadcrumbs::for('tender.penawaran.createPenawaran', function (BreadcrumbTrail $trail, $id) { + $trail->parent('tender.penawaran'); + $trail->push('Tambah Data Penawaran', route('tender.penawaran.createPenawaran', $id)); + }); + Breadcrumbs::for('tender.proses.penawaran', function (BreadcrumbTrail $trail) { $trail->parent('tender'); $trail->push('Data Proses Penawaran', route('tender.proses_penawaran.index')); }); + Breadcrumbs::for('tender.penawaran.ulang', function (BreadcrumbTrail $trail) { $trail->parent('tender'); $trail->push('Data Penawaran Ulang', route('tender.penawaran_ulang.index')); @@ -382,3 +431,17 @@ $trail->parent('surveyor'); $trail->push('Detail'); }); + + Breadcrumbs::for('registrasi', function (BreadcrumbTrail $trail) { + $trail->push('Registrasi', route('registrasi.index')); + }); + + Breadcrumbs::for('registrasi.edit', function (BreadcrumbTrail $trail) { + $trail->parent('registrasi'); + $trail->push('Tambah Registrasi'); + }); + + Breadcrumbs::for('registrasi.show', function (BreadcrumbTrail $trail) { + $trail->parent('registrasi'); + $trail->push('Detail Permohona'); + }); diff --git a/routes/registrasi.php b/routes/registrasi.php new file mode 100644 index 0000000..8beb9ae --- /dev/null +++ b/routes/registrasi.php @@ -0,0 +1,25 @@ +group(function () { + + // andy add + // Route::name('registrasi.')->prefix('registrasi')->group(function () { + Route::controller(RegistrasiController::class)->group(function(){ + // Route::get('/', [RegistrasiController::class, 'index'])->name('registrasi.index'); + Route::get('/registrasi', 'index')->name('registrasi.index'); + Route::get('/registrasi/datatables', 'dataForDatatables')->name('registrasi.datatables'); + + // show data + Route::get('/registrasi/{registrasi}', 'show')->name('registrasi.show'); + Route::post('registrasi/showData', 'setData')->name('registrasi.showData'); + + Route::post('registrasi/setData', 'setData')->name('registrasi.setData'); + Route::get('/registrasi/{registrasi}/edit', 'edit')->name('registrasi.edit'); + Route::put('/registrasi/{registrasi}', 'update')->name('registrasi.update'); + + }); + // andy add +}); + diff --git a/routes/web.php b/routes/web.php index f32bf45..6c9fd1c 100644 --- a/routes/web.php +++ b/routes/web.php @@ -13,6 +13,7 @@ use Modules\Lpj\Http\Controllers\IjinUsahaController; use Modules\Lpj\Http\Controllers\JenisDokumenController; use Modules\Lpj\Http\Controllers\JenisFasilitasKreditController; use Modules\Lpj\Http\Controllers\JenisJaminanController; + use Modules\Lpj\Http\Controllers\JenisLaporanController; use Modules\Lpj\Http\Controllers\JenisLegalitasJaminanController; use Modules\Lpj\Http\Controllers\JenisPenilaianController; use Modules\Lpj\Http\Controllers\KJPPController; @@ -25,86 +26,110 @@ use Modules\Lpj\Http\Controllers\StatusPermohonanController; use Modules\Lpj\Http\Controllers\TeamsController; use Modules\Lpj\Http\Controllers\TenderController; use Modules\Lpj\Http\Controllers\TujuanPenilaianController; + use Modules\Lpj\Http\Controllers\TujuanPenilaianKJPPController; + + // use Modules\Lpj\Http\Controllers\ActivityController; use Modules\Lpj\Http\Controllers\SurveyorController; -/* -|-------------------------------------------------------------------------- -| Web Routes -|-------------------------------------------------------------------------- -| -| Here is where you can register web routes for your application. These -| routes are loaded by the RouteServiceProvider within a group which -| contains the "web" middleware group. Now create something great! -| -*/ + /* + |-------------------------------------------------------------------------- + | Web Routes + |-------------------------------------------------------------------------- + | + | Here is where you can register web routes for your application. These + | routes are loaded by the RouteServiceProvider within a group which + | contains the "web" middleware group. Now create something great! + | + */ -Route::middleware(['auth'])->group(function () { - Route::name('basicdata.')->prefix('basic-data')->group(function () { - Route::name('jenis-fasilitas-kredit.')->prefix('jenis-fasilitas-kredit')->group(function () { - Route::get('restore/{id}', [JenisFasilitasKreditController::class, 'restore'])->name('restore'); - Route::get('datatables', [JenisFasilitasKreditController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [JenisFasilitasKreditController::class, 'export'])->name('export'); - }); - Route::resource('jenis-fasilitas-kredit', JenisFasilitasKreditController::class); + Route::middleware(['auth'])->group(function () { + Route::name('basicdata.')->prefix('basic-data')->group(function () { + Route::name('jenis-fasilitas-kredit.')->prefix('jenis-fasilitas-kredit')->group(function () { + Route::get('restore/{id}', [JenisFasilitasKreditController::class, 'restore'])->name('restore'); + Route::get('datatables', [JenisFasilitasKreditController::class, 'dataForDatatables'])->name( + 'datatables', + ); + Route::get('export', [JenisFasilitasKreditController::class, 'export'])->name('export'); + }); + Route::resource('jenis-fasilitas-kredit', JenisFasilitasKreditController::class); - Route::name('jenis-legalitas-jaminan.')->prefix('jenis-legalitas-jaminan')->group(function () { - Route::get('restore/{id}', [JenisLegalitasJaminanController::class, 'restore'])->name('restore'); - Route::get('datatables', [JenisLegalitasJaminanController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [JenisLegalitasJaminanController::class, 'export'])->name('export'); - }); - Route::resource('jenis-legalitas-jaminan', JenisLegalitasJaminanController::class); + Route::name('jenis-legalitas-jaminan.')->prefix('jenis-legalitas-jaminan')->group(function () { + Route::get('restore/{id}', [JenisLegalitasJaminanController::class, 'restore'])->name('restore'); + Route::get('datatables', [JenisLegalitasJaminanController::class, 'dataForDatatables'])->name( + 'datatables', + ); + Route::get('export', [JenisLegalitasJaminanController::class, 'export'])->name('export'); + }); + Route::resource('jenis-legalitas-jaminan', JenisLegalitasJaminanController::class); - Route::name('jenis-jaminan.')->prefix('jenis-aset')->group(function () { - Route::get('legalitas/{id}', [JenisJaminanController::class, 'legalitasJaminan'])->name('legalitas'); - Route::get('restore/{id}', [JenisJaminanController::class, 'restore'])->name('restore'); - Route::get('datatables', [JenisJaminanController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [JenisJaminanController::class, 'export'])->name('export'); - }); - Route::resource('jenis-jaminan', JenisJaminanController::class); + Route::name('jenis-jaminan.')->prefix('jenis-jaminan')->group(function () { + Route::get('legalitas/{id}', [JenisJaminanController::class, 'legalitasJaminan'])->name('legalitas'); + Route::get('restore/{id}', [JenisJaminanController::class, 'restore'])->name('restore'); + Route::get('datatables', [JenisJaminanController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [JenisJaminanController::class, 'export'])->name('export'); + }); + Route::resource('jenis-jaminan', JenisJaminanController::class); - Route::name('tujuan-penilaian.')->prefix('tujuan-penilaian')->group(function () { - Route::get('restore/{id}', [TujuanPenilaianController::class, 'restore'])->name('restore'); - Route::get('datatables', [TujuanPenilaianController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [TujuanPenilaianController::class, 'export'])->name('export'); - }); - Route::resource('tujuan-penilaian', TujuanPenilaianController::class); + Route::name('tujuan-penilaian.')->prefix('tujuan-penilaian')->group(function () { + Route::get('restore/{id}', [TujuanPenilaianController::class, 'restore'])->name('restore'); + Route::get('datatables', [TujuanPenilaianController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [TujuanPenilaianController::class, 'export'])->name('export'); + }); + Route::resource('tujuan-penilaian', TujuanPenilaianController::class); - Route::name('jenis-dokumen.')->prefix('jenis-dokumen')->group(function () { - Route::get('restore/{id}', [JenisDokumenController::class, 'restore'])->name('restore'); - Route::get('datatables', [JenisDokumenController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [JenisDokumenController::class, 'export'])->name('export'); - }); - Route::resource('jenis-dokumen', JenisDokumenController::class); - Route::name('currency.')->prefix('mata-uang')->group(function () { - Route::get('restore/{id}', [CurrencyController::class, 'restore'])->name('restore'); - Route::get('datatables', [CurrencyController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [CurrencyController::class, 'export'])->name('export'); - }); + Route::name('tujuan_penilaian_kjpp.')->prefix('tujuan_penilaian_kjpp')->group(function () { + Route::get('datatables', [TujuanPenilaianKJPPController::class, 'dataForDatatables'])->name( + 'datatables', + ); + Route::get('export', [TujuanPenilaianKJPPController::class, 'export'])->name('export'); + }); + Route::resource('tujuan_penilaian_kjpp', TujuanPenilaianKJPPController::class); - Route::resource('mata-uang', CurrencyController::class, [ - 'names' => [ - 'index' => 'currency.index', - 'show' => 'currency.show', - 'create' => 'currency.create', - 'store' => 'currency.store', - 'edit' => 'currency.edit', - 'update' => 'currency.update', - 'destroy' => 'currency.destroy', - ], - ]); + Route::name('jenis-dokumen.')->prefix('jenis-dokumen')->group(function () { + Route::get('restore/{id}', [JenisDokumenController::class, 'restore'])->name('restore'); + Route::get('datatables', [JenisDokumenController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [JenisDokumenController::class, 'export'])->name('export'); + }); + Route::resource('jenis-dokumen', JenisDokumenController::class); + Route::name('currency.')->prefix('mata-uang')->group(function () { + Route::get('restore/{id}', [CurrencyController::class, 'restore'])->name('restore'); + Route::get('datatables', [CurrencyController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [CurrencyController::class, 'export'])->name('export'); + }); - Route::name('branch.')->prefix('cabang')->group(function () { - Route::get('restore/{id}', [BranchController::class, 'restore'])->name('restore'); - Route::get('datatables', [BranchController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [BranchController::class, 'export'])->name('export'); - }); + Route::name('debitur.')->prefix('debitur')->group(function () { + Route::get('restore/{id}', [DebitureController::class, 'restore'])->name('restore'); + Route::get('datatables', [DebitureController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [DebitureController::class, 'export'])->name('export'); + + + Route::name('jaminan.')->prefix('{id}/jaminan')->group(function () { + Route::get('download/{dokumen}', [DokumenJaminanController::class, 'download'])->name('download'); + Route::get('/', [DokumenJaminanController::class, 'index'])->name('index'); + Route::get('create', [DokumenJaminanController::class, 'create'])->name('create'); + Route::get('{jaminan}/edit', [DokumenJaminanController::class, 'edit'])->name('edit'); + Route::put('{jaminan}', [DokumenJaminanController::class, 'update'])->name('update'); + Route::post('store', [DokumenJaminanController::class, 'store'])->name('store'); + Route::delete('{jaminan}', [DokumenJaminanController::class, 'destroy'])->name('destroy'); + }); + + Route::name('pemilik.')->prefix('{id}/pemilik')->group(function () { + Route::get('/', [PemilikJaminanController::class, 'index'])->name('index'); + Route::get('create', [PemilikJaminanController::class, 'create'])->name('create'); + Route::get('{pemilik}/edit', [PemilikJaminanController::class, 'edit'])->name('edit'); + Route::put('{pemilik}', [PemilikJaminanController::class, 'update'])->name('update'); + Route::post('store', [PemilikJaminanController::class, 'store'])->name('store'); + Route::delete('{pemilik}', [PemilikJaminanController::class, 'destroy'])->name('destroy'); + }); + }); + + Route::resource('debitur', DebitureController::class); + + Route::name('branch.')->prefix('cabang')->group(function () { + Route::get('restore/{id}', [BranchController::class, 'restore'])->name('restore'); + Route::get('datatables', [BranchController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [BranchController::class, 'export'])->name('export'); + }); Route::resource('cabang', BranchController::class, [ 'names' => [ @@ -118,46 +143,45 @@ Route::middleware(['auth'])->group(function () { ], ]); - Route::name('nilai-plafond.')->prefix('nilai-plafond')->group(function () { - Route::get('restore/{id}', [NilaiPlafondController::class, 'restore'])->name('restore'); - Route::get('datatables', [NilaiPlafondController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [NilaiPlafondController::class, 'export'])->name('export'); - }); - Route::resource('nilai-plafond', NilaiPlafondController::class); + Route::name('nilai-plafond.')->prefix('nilai-plafond')->group(function () { + Route::get('restore/{id}', [NilaiPlafondController::class, 'restore'])->name('restore'); + Route::get('datatables', [NilaiPlafondController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [NilaiPlafondController::class, 'export'])->name('export'); + }); + Route::resource('nilai-plafond', NilaiPlafondController::class); - Route::name('hubungan-pemilik-jaminan.')->prefix('hubungan-pemilik-jaminan')->group(function () { - Route::get('restore/{id}', [HubunganPemilikJaminanController::class, 'restore'])->name('restore'); - Route::get('datatables', [HubunganPemilikJaminanController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [HubunganPemilikJaminanController::class, 'export'])->name('export'); - }); - Route::resource('hubungan-pemilik-jaminan', HubunganPemilikJaminanController::class); + Route::name('hubungan-pemilik-jaminan.')->prefix('hubungan-pemilik-jaminan')->group(function () { + Route::get('restore/{id}', [HubunganPemilikJaminanController::class, 'restore'])->name('restore'); + Route::get('datatables', [HubunganPemilikJaminanController::class, 'dataForDatatables'])->name( + 'datatables', + ); + Route::get('export', [HubunganPemilikJaminanController::class, 'export'])->name('export'); + }); + Route::resource('hubungan-pemilik-jaminan', HubunganPemilikJaminanController::class); - Route::name('hubungan-penghuni-jaminan.')->prefix('hubungan-penghuni-jaminan')->group(function () { - Route::get('restore/{id}', [HubunganPenghuniJaminanController::class, 'restore'])->name('restore'); - Route::get('datatables', [HubunganPenghuniJaminanController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [HubunganPenghuniJaminanController::class, 'export'])->name('export'); - }); - Route::resource('hubungan-penghuni-jaminan', HubunganPenghuniJaminanController::class); + Route::name('hubungan-penghuni-jaminan.')->prefix('hubungan-penghuni-jaminan')->group(function () { + Route::get('restore/{id}', [HubunganPenghuniJaminanController::class, 'restore'])->name('restore'); + Route::get('datatables', [HubunganPenghuniJaminanController::class, 'dataForDatatables'])->name( + 'datatables', + ); + Route::get('export', [HubunganPenghuniJaminanController::class, 'export'])->name('export'); + }); + Route::resource('hubungan-penghuni-jaminan', HubunganPenghuniJaminanController::class); - Route::name('arah-mata-angin.')->prefix('arah-mata-angin')->group(function () { - Route::get('restore/{id}', [ArahMataAnginController::class, 'restore'])->name('restore'); - Route::get('datatables', [ArahMataAnginController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [ArahMataAnginController::class, 'export'])->name('export'); - }); - Route::resource('arah-mata-angin', ArahMataAnginController::class); + Route::name('arah-mata-angin.')->prefix('arah-mata-angin')->group(function () { + Route::get('restore/{id}', [ArahMataAnginController::class, 'restore'])->name('restore'); + Route::get('datatables', [ArahMataAnginController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [ArahMataAnginController::class, 'export'])->name('export'); + }); + Route::resource('arah-mata-angin', ArahMataAnginController::class); - Route::name('status-permohonan.')->prefix('status-permohonan')->group(function () { - Route::get('restore/{id}', [StatusPermohonanController::class, 'restore'])->name('restore'); - Route::get('datatables', [StatusPermohonanController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [StatusPermohonanController::class, 'export'])->name('export'); - }); - Route::resource('status-permohonan', StatusPermohonanController::class); + Route::name('status-permohonan.')->prefix('status-permohonan')->group(function () { + Route::get('restore/{id}', [StatusPermohonanController::class, 'restore'])->name('restore'); + Route::get('datatables', [StatusPermohonanController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [StatusPermohonanController::class, 'export'])->name('export'); + }); + Route::resource('status-permohonan', StatusPermohonanController::class); Route::name('region.')->prefix('region')->group(function () { Route::get('restore/{id}', [RegionController::class, 'restore'])->name('restore'); @@ -229,12 +253,11 @@ Route::middleware(['auth'])->group(function () { ], ]); - Route::name('branch.')->prefix('cabang')->group(function () { - Route::get('restore/{id}', [BranchController::class, 'restore'])->name('restore'); - Route::get('datatables', [BranchController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [BranchController::class, 'export'])->name('export'); - }); + Route::name('branch.')->prefix('cabang')->group(function () { + Route::get('restore/{id}', [BranchController::class, 'restore'])->name('restore'); + Route::get('datatables', [BranchController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [BranchController::class, 'export'])->name('export'); + }); Route::resource('cabang', BranchController::class, [ 'names' => [ @@ -248,37 +271,37 @@ Route::middleware(['auth'])->group(function () { ], ]); - Route::name('nilai-plafond.')->prefix('nilai-plafond')->group(function () { - Route::get('restore/{id}', [NilaiPlafondController::class, 'restore'])->name('restore'); - Route::get('datatables', [NilaiPlafondController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [NilaiPlafondController::class, 'export'])->name('export'); - }); - Route::resource('nilai-plafond', NilaiPlafondController::class); + Route::name('nilai-plafond.')->prefix('nilai-plafond')->group(function () { + Route::get('restore/{id}', [NilaiPlafondController::class, 'restore'])->name('restore'); + Route::get('datatables', [NilaiPlafondController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [NilaiPlafondController::class, 'export'])->name('export'); + }); + Route::resource('nilai-plafond', NilaiPlafondController::class); - Route::name('hubungan-pemilik-jaminan.')->prefix('hubungan-pemilik-jaminan')->group(function () { - Route::get('restore/{id}', [HubunganPemilikJaminanController::class, 'restore'])->name('restore'); - Route::get('datatables', [HubunganPemilikJaminanController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [HubunganPemilikJaminanController::class, 'export'])->name('export'); - }); - Route::resource('hubungan-pemilik-jaminan', HubunganPemilikJaminanController::class); + Route::name('hubungan-pemilik-jaminan.')->prefix('hubungan-pemilik-jaminan')->group(function () { + Route::get('restore/{id}', [HubunganPemilikJaminanController::class, 'restore'])->name('restore'); + Route::get('datatables', [HubunganPemilikJaminanController::class, 'dataForDatatables'])->name( + 'datatables', + ); + Route::get('export', [HubunganPemilikJaminanController::class, 'export'])->name('export'); + }); + Route::resource('hubungan-pemilik-jaminan', HubunganPemilikJaminanController::class); - Route::name('hubungan-penghuni-jaminan.')->prefix('hubungan-penghuni-jaminan')->group(function () { - Route::get('restore/{id}', [HubunganPenghuniJaminanController::class, 'restore'])->name('restore'); - Route::get('datatables', [HubunganPenghuniJaminanController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [HubunganPenghuniJaminanController::class, 'export'])->name('export'); - }); - Route::resource('hubungan-penghuni-jaminan', HubunganPenghuniJaminanController::class); + Route::name('hubungan-penghuni-jaminan.')->prefix('hubungan-penghuni-jaminan')->group(function () { + Route::get('restore/{id}', [HubunganPenghuniJaminanController::class, 'restore'])->name('restore'); + Route::get('datatables', [HubunganPenghuniJaminanController::class, 'dataForDatatables'])->name( + 'datatables', + ); + Route::get('export', [HubunganPenghuniJaminanController::class, 'export'])->name('export'); + }); + Route::resource('hubungan-penghuni-jaminan', HubunganPenghuniJaminanController::class); - Route::name('arah-mata-angin.')->prefix('arah-mata-angin')->group(function () { - Route::get('restore/{id}', [ArahMataAnginController::class, 'restore'])->name('restore'); - Route::get('datatables', [ArahMataAnginController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [ArahMataAnginController::class, 'export'])->name('export'); - }); - Route::resource('arah-mata-angin', ArahMataAnginController::class); + Route::name('arah-mata-angin.')->prefix('arah-mata-angin')->group(function () { + Route::get('restore/{id}', [ArahMataAnginController::class, 'restore'])->name('restore'); + Route::get('datatables', [ArahMataAnginController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [ArahMataAnginController::class, 'export'])->name('export'); + }); + Route::resource('arah-mata-angin', ArahMataAnginController::class); Route::name('jaminan.')->prefix('{id}/jaminan')->group(function () { Route::get('download/{dokumen}', [DokumenJaminanController::class, 'download'])->name('download'); @@ -299,137 +322,68 @@ Route::middleware(['auth'])->group(function () { Route::delete('{pemilik}', [PemilikJaminanController::class, 'destroy'])->name('destroy'); }); - Route::name('status-permohonan.')->prefix('status-permohonan')->group(function () { - Route::get('restore/{id}', [StatusPermohonanController::class, 'restore'])->name('restore'); - Route::get('datatables', [StatusPermohonanController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [StatusPermohonanController::class, 'export'])->name('export'); - }); - Route::resource('status-permohonan', StatusPermohonanController::class); + Route::name('status-permohonan.')->prefix('status-permohonan')->group(function () { + Route::get('restore/{id}', [StatusPermohonanController::class, 'restore'])->name('restore'); + Route::get('datatables', [StatusPermohonanController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [StatusPermohonanController::class, 'export'])->name('export'); + }); + Route::resource('status-permohonan', StatusPermohonanController::class); - Route::name('kjpp.')->prefix('kjpp')->group(function () { - Route::get('datatables', [KJPPController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [KJPPController::class, 'export'])->name('export'); - }); + // Start Activity KJPP route + Route::name('kjpp.')->prefix('kjpp')->group(function () { + Route::get('datatables', [KJPPController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [KJPPController::class, 'export'])->name('export'); + }); - Route::resource('kjpp', KJPPController::class); + Route::resource('kjpp', KJPPController::class); + // End Activity KJPP route - Route::name('ijin_usaha.')->prefix('ijin_usaha')->group(function () { - Route::get('datatables', [IjinUsahaController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [IjinUsahaController::class, 'export'])->name('export'); - }); + // Start Activity Ijin Usaha route + Route::name('ijin_usaha.')->prefix('ijin_usaha')->group(function () { + Route::get('datatables', [IjinUsahaController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [IjinUsahaController::class, 'export'])->name('export'); + }); - Route::resource('ijin_usaha', IjinUsahaController::class); - }); + Route::resource('ijin_usaha', IjinUsahaController::class); + // End Activity Ijin Usaha route - Route::name('debitur.')->prefix('debitur')->group(function () { - Route::get('restore/{id}', [DebitureController::class, 'restore'])->name('restore'); - Route::get('datatables', [DebitureController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [DebitureController::class, 'export'])->name('export'); + // Start Activity Jenis Laporan route + Route::name('jenis_laporan.')->prefix('jenis_laporan')->group(function () { + Route::get('datatables', [JenisLaporanController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [JenisLaporanController::class, 'export'])->name('export'); + }); + Route::resource('jenis_laporan', JenisLaporanController::class); + // End Activity Jenis Laporan route - Route::name('jaminan.')->prefix('{id}/jaminan')->group(function () { - Route::get('download/{dokumen}', [DokumenJaminanController::class, 'download'])->name('download'); - Route::get('/', [DokumenJaminanController::class, 'index'])->name('index'); - Route::get('create', [DokumenJaminanController::class, 'create'])->name('create'); - Route::get('{jaminan}/edit', [DokumenJaminanController::class, 'edit'])->name('edit'); - Route::put('{jaminan}', [DokumenJaminanController::class, 'update'])->name('update'); - Route::post('store', [DokumenJaminanController::class, 'store'])->name('store'); - Route::delete('{jaminan}', [DokumenJaminanController::class, 'destroy'])->name('destroy'); - }); - - Route::name('pemilik.')->prefix('{id}/pemilik')->group(function () { - Route::get('/', [PemilikJaminanController::class, 'index'])->name('index'); - Route::get('create', [PemilikJaminanController::class, 'create'])->name('create'); - Route::get('{pemilik}/edit', [PemilikJaminanController::class, 'edit'])->name('edit'); - Route::put('{pemilik}', [PemilikJaminanController::class, 'update'])->name('update'); - Route::post('store', [PemilikJaminanController::class, 'store'])->name('store'); - Route::delete('{pemilik}', [PemilikJaminanController::class, 'destroy'])->name('destroy'); - }); - }); - - Route::resource('debitur', DebitureController::class); - - - /** - * Route start Penilaian - */ - - Route::name('penilaian.')->prefix('penilaian')->group(function () { - Route::get('restore/{id}', [PenilaianController::class, 'restore'])->name('restore'); - Route::get('datatables', [PenilaianController::class, 'dataForDatatables'])->name('datatables'); - Route::get('export', [PenilaianController::class, 'export'])->name('export'); - Route::get('/getUserTeams/{id}', [PenilaianController::class, 'getUserTeams']); - - Route::get('/', [PenilaianController::class, 'index'])->name('index'); - Route::get('{id}/assignment', [PenilaianController::class, 'assignment'])->name('assignment'); - Route::put('{id}', [PenilaianController::class, 'update'])->name('update'); - Route::put('revisi/{nomor_registrasi}', [PenilaianController::class, 'revisi'])->name('revisi'); - Route::post('create', [PenilaianController::class, 'create'])->name('create'); - Route::post('store', [PenilaianController::class, 'store'])->name('store'); - }); - - /** - * Route end Penilaian - */ - - /** - * Route start activity - */ - - Route::name('activity.')->prefix('activity')->group(function () { - Route::get('restore/{id}', [ActivityController::class, 'restore'])->name('restore'); - Route::get('datatables', [ActivityController::class, 'dataForDatatables'])->name('datatables'); - Route::get('export', [ActivityController::class, 'export'])->name('export'); - Route::get('/', [ActivityController::class, 'index'])->name('index'); - - Route::get('/{id}/show', [ActivityController::class, 'show'])->name('show'); - Route::get('download/{id}', [ActivityController::class, 'download'])->name('download'); - Route::get('senior', [ActivityController::class, 'senior'])->name('senior'); - - Route::name('progres.')->prefix('progres')->group(function () { - Route::get('/', [ActivityController::class, 'progres_activity'])->name('index'); - Route::get('/datatables/{id}', [ActivityController::class, 'dataTablesForActivity'])->name('datatables'); }); - Route::get('/teams/{regionId}', [ActivityController::class, 'dataTablesForActivity']); - - }); - - /** - * Route end activity - */ - - Route::name('permohonan.')->prefix('permohonan')->group(function () { - Route::get('{id}/create', [PermohonanController::class, 'createPermohonan'])->name('create.debitur'); - Route::get('download/{id}', [PermohonanController::class, 'download'])->name('download'); - Route::get('restore/{id}', [PermohonanController::class, 'restore'])->name('restore'); - Route::get('datatables', [PermohonanController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [PermohonanController::class, 'export'])->name('export'); - }); + Route::name('permohonan.')->prefix('permohonan')->group(function () { + Route::get('{id}/create', [PermohonanController::class, 'createPermohonan'])->name('create.debitur'); + Route::get('download/{id}', [PermohonanController::class, 'download'])->name('download'); + Route::get('restore/{id}', [PermohonanController::class, 'restore'])->name('restore'); + Route::get('datatables', [PermohonanController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [PermohonanController::class, 'export'])->name('export'); + }); Route::resource('permohonan', PermohonanController::class); - Route::get('authorization', [PermohonanController::class, 'authorization'])->name('authorization.index'); - Route::get('authorization/datatables', [PermohonanController::class, 'dataForAuthorization']) - ->name('authorization.datatables'); - Route::get('authorization/{id}/edit', [PermohonanController::class, 'showAuthorization'])->name( - 'authorization.show', - ); - Route::put('authorization/{id}', [PermohonanController::class, 'updateAuthorization'])->name( - 'authorization.update', - ); + Route::get('authorization', [PermohonanController::class, 'authorization'])->name('authorization.index'); + Route::get('authorization/datatables', [PermohonanController::class, 'dataForAuthorization'])->name( + 'authorization.datatables', + ); + Route::get('authorization/{id}/edit', [PermohonanController::class, 'showAuthorization'])->name( + 'authorization.show', + ); + Route::put('authorization/{id}', [PermohonanController::class, 'updateAuthorization'])->name( + 'authorization.update', + ); - Route::name('debitur.')->prefix('debitur')->group(function () { - Route::get('restore/{id}', [DebitureController::class, 'restore'])->name('restore'); - Route::get('datatables', [DebitureController::class, 'dataForDatatables']) - ->name('datatables'); - Route::get('export', [DebitureController::class, 'export'])->name('export'); + Route::name('debitur.')->prefix('debitur')->group(function () { + Route::get('restore/{id}', [DebitureController::class, 'restore'])->name('restore'); + Route::get('datatables', [DebitureController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [DebitureController::class, 'export'])->name('export'); Route::name('jaminan.')->prefix('{id}/jaminan')->group(function () { @@ -454,41 +408,59 @@ Route::middleware(['auth'])->group(function () { Route::resource('debitur', DebitureController::class); - Route::name('tender.')->prefix('tender')->group(function () { - // Penawaran - Route::get('penawaran', [TenderController::class, 'penawaran_index'])->name('penawaran.index'); - Route::get('penawaran/create', [TenderController::class, 'penawaran_create'])->name('penawaran.create'); + Route::name('tender.')->prefix('tender')->group(function () { + // Penawaran + Route::get('penawaran', [TenderController::class, 'penawaran_index'])->name('penawaran.index'); + Route::get('penawaran/{id}/show', [TenderController::class, 'penawaran_show'])->name('penawaran.show'); + Route::get('penawaran/{id}/create', [TenderController::class, 'penawaran_create'])->name( + 'penawaran.createPenawaran', + ); + Route::post('penawaran/{id}/store', [TenderController::class, 'penawaran_store'])->name( + 'penawaran.storePenawaran', + ); + Route::post('penawaran/{id}/update', [TenderController::class, 'penawaran_store'])->name( + 'penawaran.updatePenawaran', + ); + Route::get('penawaran/exportPenawaran', [TenderController::class, 'exportPenawaran'])->name( + 'penawaran.exportPenawaran', + ); + Route::get('penawaran/datatables', [TenderController::class, 'datatablesPenawaran'])->name( + 'penawaran.datatables', + ); // Proses Penawaran Route::get('proses_penawaran', [TenderController::class, 'proses_penawaran_index'])->name( 'proses_penawaran.index', ); - // Penawaran Ulang - Route::get('penawaran_ulang', [TenderController::class, 'penawaran_ulang_index'])->name( - 'penawaran_ulang.index', - ); + // Penawaran Ulang + Route::get('penawaran_ulang', [TenderController::class, 'penawaran_ulang_index'])->name( + 'penawaran_ulang.index', + ); + }); + + Route::name('penilaian.')->prefix('penilaian')->group(function () { + Route::get('restore/{id}', [PenilaianController::class, 'restore'])->name('restore'); + Route::get('datatables', [PenilaianController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [PenilaianController::class, 'export'])->name('export'); + Route::get('/getUserTeams/{id}', [PenilaianController::class, 'getUserTeams']); + + Route::get('/', [PenilaianController::class, 'index'])->name('index'); + Route::get('{id}/assignment', [PenilaianController::class, 'assignment'])->name('assignment'); + Route::put('{id}', [PenilaianController::class, 'update'])->name('update'); + Route::put('revisi/{nomor_registrasi}', [PenilaianController::class, 'revisi'])->name('revisi'); + Route::post('create', [PenilaianController::class, 'create'])->name('create'); + Route::post('store', [PenilaianController::class, 'store'])->name('store'); + }); + + Route::name('activity.')->prefix('activity')->group(function () { + Route::get('restore/{id}', [ActivityController::class, 'restore'])->name('restore'); + Route::get('datatables', [ActivityController::class, 'dataForDatatables'])->name('datatables'); + Route::get('export', [ActivityController::class, 'export'])->name('export'); + Route::get('/', [ActivityController::class, 'index'])->name('index'); + Route::get('/{id}/show', [ActivityController::class, 'show'])->name('show'); + Route::get('download/{id}', [ActivityController::class, 'download'])->name('download'); + }); }); - - /** - * Route start surveyor - */ - - Route::name('surveyor.')->prefix('surveyor')->group(function () { - Route::get('restore/{id}', [SurveyorController::class, 'restore'])->name('restore'); - Route::get('datatables', [SurveyorController::class, 'dataForDatatables'])->name('datatables'); - Route::get('export', [SurveyorController::class, 'export'])->name('export'); - Route::get('/', [SurveyorController::class, 'index'])->name('index'); - - Route::get('/{id}/show', [SurveyorController::class, 'show'])->name('show'); - Route::get('download/{id}', [SurveyorController::class, 'download'])->name('download'); - }); - - /** - * Route end activity - */ - - - -}); + require __DIR__ . '/registrasi.php';