fix(so/dd/eo/penilai): perbaikan otorisasi untuk paparan, pelaporan, penambahan revisi pembayaran, data pembading dan ubah class bg-agi-50 ke light:bg-agi-50
This commit is contained in:
@@ -110,7 +110,9 @@ class PembayaranController extends Controller
|
||||
public function edit($id)
|
||||
{
|
||||
$permohonan = Permohonan::find($id);
|
||||
return view('lpj::pembayaran.form', compact('permohonan'));
|
||||
|
||||
$persetujuanPenawaran = PersetujuanPenawaran::where('permohonan_id', $permohonan->id)->first();
|
||||
return view('lpj::pembayaran.form', compact('permohonan', 'persetujuanPenawaran'));
|
||||
}
|
||||
|
||||
public function store(PersetujuanPenawaranRequest $request)
|
||||
@@ -119,27 +121,44 @@ class PembayaranController extends Controller
|
||||
$validated['created_by'] = Auth::id();
|
||||
$validated['status'] = '0';
|
||||
|
||||
if (isset($validated['penawaran_id'])) {
|
||||
$persetujuanPenawaran = PersetujuanPenawaran::create(
|
||||
['penawaran_id' => $validated['penawaran_id']],
|
||||
$validated,
|
||||
);
|
||||
$persetujuanPenawaran = PersetujuanPenawaran::where('permohonan_id', $validated['permohonan_id'] ?? null)->first();
|
||||
$permohonan = Permohonan::find(request()->get('permohonan_id'));
|
||||
if ($persetujuanPenawaran) {
|
||||
// if (isset($validated['penawaran_id'])) {
|
||||
|
||||
// $persetujuanPenawaran = PersetujuanPenawaran::create(
|
||||
// ['penawaran_id' => $validated['penawaran_id']],
|
||||
// $validated,
|
||||
// );
|
||||
|
||||
$persetujuanPenawaran->fill($validated);
|
||||
|
||||
if ($request->hasFile('bukti_bayar')) {
|
||||
$folderPath = 'persetujuan_penawaran/' . $validated['penawaran_id'];
|
||||
$persetujuanPenawaran->bukti_bayar = $request->file('bukti_bayar')->store($folderPath, 'public');
|
||||
}
|
||||
|
||||
$persetujuanPenawaran->save();
|
||||
|
||||
$permohonan->approve_bayar_by = null;
|
||||
$permohonan->approve_bayar_at = null;
|
||||
$permohonan->status = 'done';
|
||||
$permohonan->save();
|
||||
} else {
|
||||
$persetujuanPenawaran = PersetujuanPenawaran::create(
|
||||
$validated
|
||||
);
|
||||
|
||||
$folderPath = 'persetujuan_penawaran/' . $validated['penawaran_id'];
|
||||
|
||||
if ($request->hasFile('bukti_bayar')) {
|
||||
$persetujuanPenawaran->bukti_bayar = $request->file('bukti_bayar')->store($folderPath, 'public');
|
||||
}
|
||||
$persetujuanPenawaran->save();
|
||||
}
|
||||
|
||||
$folderPath = 'persetujuan_penawaran/' . $validated['penawaran_id'];
|
||||
|
||||
if ($request->hasFile('bukti_bayar')) {
|
||||
$persetujuanPenawaran->bukti_bayar = $request->file('bukti_bayar')->store($folderPath, 'public');
|
||||
}
|
||||
|
||||
$persetujuanPenawaran->save();
|
||||
|
||||
// Update the status of the related permohonan to 'spk'
|
||||
$permohonan = Permohonan::find(request()->get('permohonan_id'));
|
||||
|
||||
if ($permohonan) {
|
||||
$permohonan->status_bayar = request()->get('status_bayar');
|
||||
$permohonan->save();
|
||||
@@ -183,12 +202,15 @@ class PembayaranController extends Controller
|
||||
if ($permohonan) {
|
||||
|
||||
if ($request->type === 'revisi') {
|
||||
$data['status'] = 'revisi-pembayaran';
|
||||
$data['status_bayar'] = 'belum_bayar';
|
||||
} else {
|
||||
$data['status_bayar'] = 'sudah_bayar';
|
||||
$data['status'] = 'proses-laporan';
|
||||
}
|
||||
|
||||
if ($permohonan->jenis_penilaian_id == 2) {
|
||||
$data['status_bayar'] = 'sudah_bayar';
|
||||
$data['status'] = 'spk';
|
||||
}
|
||||
|
||||
@@ -203,7 +225,6 @@ class PembayaranController extends Controller
|
||||
$data['keterangan']
|
||||
);
|
||||
|
||||
$data['status'] = 'proses-laporan';
|
||||
}
|
||||
|
||||
$permohonan->update($data);
|
||||
@@ -233,12 +254,19 @@ class PembayaranController extends Controller
|
||||
// abort(403, 'Sorry! You are not allowed to view users.');
|
||||
}
|
||||
|
||||
$query = Permohonan::query()->where(['status_bayar' => 'belum_bayar', 'jenis_penilaian_id' => 1])
|
||||
->whereNotIn('id', function ($subquery) {
|
||||
$query = Permohonan::query()->where(function ($query) {
|
||||
$query->where(['status_bayar' => 'belum_bayar', 'jenis_penilaian_id' => 1])
|
||||
->orWhere('status', 'revisi-pembayaran');
|
||||
})
|
||||
->where(function ($query) {
|
||||
$query->whereNotIn('id', function ($subquery) {
|
||||
$subquery->select('permohonan_id')
|
||||
->from('persetujuan_penawaran')
|
||||
->whereNotNull('permohonan_id');
|
||||
});
|
||||
})
|
||||
->orWhere('status', 'revisi-pembayaran');
|
||||
});
|
||||
|
||||
|
||||
// Pencarian berdasarkan parameter search
|
||||
if ($request->has('search') && !empty($request->get('search'))) {
|
||||
|
||||
@@ -610,6 +610,8 @@ class PenilaianController extends Controller
|
||||
|
||||
public function updatePermohonan($permohonan, $status, $approvalField, $message)
|
||||
{
|
||||
|
||||
|
||||
$permohonan->update([
|
||||
'status' => $status,
|
||||
$approvalField => Auth::user()->id,
|
||||
@@ -727,8 +729,8 @@ class PenilaianController extends Controller
|
||||
'tujuanPenilaian',
|
||||
'nilaiPlafond',
|
||||
'penilaian.userPenilai' => function ($q) {
|
||||
$q->where('role', 'penilai')->with(['user', 'team.regions'])->first();
|
||||
},
|
||||
$q->where('role', 'penilai')->with(['user', 'team.regions']);
|
||||
},
|
||||
'penilai',
|
||||
'approveSo',
|
||||
'approveEo',
|
||||
|
||||
@@ -1090,7 +1090,7 @@ class SurveyorController extends Controller
|
||||
'address', 'village_code', 'district_code', 'city_code', 'province_code',
|
||||
'nama', 'type','warna','lokasi', 'total', 'diskon', 'harga_diskon',
|
||||
'sumber_data', 'harga', 'tahun','transmisi','telepon',
|
||||
'kordinat_lat', 'kordinat_lng', 'tahun_pembuatan','merek_buatan','kapasitas','power','kondisi','tanggal'
|
||||
'kordinat_lat', 'kordinat_lng', 'tahun_pembuatan','merek_buatan','kapasitas','power','kondisi','tanggal', 'harga_penawaran'
|
||||
];
|
||||
|
||||
|
||||
@@ -1100,7 +1100,7 @@ class SurveyorController extends Controller
|
||||
'tahun', 'luas_tanah', 'luas_bangunan', 'tahun_bangunan',
|
||||
'status_nara_sumber', 'harga', 'harga_diskon', 'diskon', 'total', 'nama_nara_sumber',
|
||||
'peruntukan', 'penawaran', 'telepon','hak_properti',
|
||||
'kordinat_lat', 'kordinat_lng', 'jenis_aset','foto_objek','tanggal'
|
||||
'kordinat_lat', 'kordinat_lng', 'jenis_aset','foto_objek','tanggal', 'harga_penawaran'
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1113,7 +1113,7 @@ class SurveyorController extends Controller
|
||||
if (is_array($inputValue) && isset($inputValue[$index])) {
|
||||
$value = $inputValue[$index];
|
||||
// Format hanya untuk harga, harga_diskon, dan total
|
||||
if (in_array($field, ['harga', 'harga_diskon', 'total'])) {
|
||||
if (in_array($field, ['harga', 'harga_diskon', 'total', 'harga_penawaran'])) {
|
||||
$value = preg_replace('/[^0-9]/', '', $value); // Hapus karakter non-angka
|
||||
}
|
||||
$pembanding[$field] = $value;
|
||||
@@ -1155,7 +1155,7 @@ class SurveyorController extends Controller
|
||||
'address', 'village_code', 'district_code', 'city_code', 'province_code',
|
||||
'luas_tanah', 'luas_tanah_bagunan', 'total', 'diskon', 'harga_diskon',
|
||||
'status_nara_sumber', 'harga', 'nama_nara_sumber','hak_properti','telepon',
|
||||
'kordinat_lat', 'kordinat_lng', 'jenis_aset','penawaran', 'tanggal',
|
||||
'kordinat_lat', 'kordinat_lng', 'jenis_aset','penawaran', 'tanggal','harga_penawaran'
|
||||
];
|
||||
|
||||
$inspeksi = Inspeksi::where('permohonan_id', $request->input('permohonan_id'))
|
||||
|
||||
Reference in New Issue
Block a user