solve praktik budidaya
This commit is contained in:
@@ -178,8 +178,14 @@ class PraktikBudidayaController extends Controller
|
||||
|
||||
$teknik_pemangkasan = array_values($teknik_pemangkasan);
|
||||
|
||||
if ((int) ($validatedData['frekuensi_pemangkasan_komoditas_utama'] ?? 0) === FrekuensiPemangkasanUtama::TIDAK_PERNAH->value) {
|
||||
$teknik_pemangkasan = [];
|
||||
}
|
||||
|
||||
$petani = Petani::findOrFail($petaniId);
|
||||
|
||||
$pemupukanTidakPernah = (int) ($validatedData['pemberian_pupuk'] ?? 0) === PemberianPupuk::TIDAK_PERNAH->value;
|
||||
|
||||
$praktikBudidaya = $petani->praktikBudidaya()->create([
|
||||
'petani_id' => $petani->id,
|
||||
'uid' => 'PB-' . strtoupper(Str::random(10)),
|
||||
@@ -193,12 +199,12 @@ class PraktikBudidayaController extends Controller
|
||||
'deskripsi_penyerbukan_manual' => $validatedData['alasan_tidak_penyerbukan'] ?? null,
|
||||
'tingkat_keberhasilan_penyerbukan' => $validatedData['tingkat_keberhasilan_penyerbukan'] ?? null,
|
||||
'pemberian_pupuk' => $validatedData['pemberian_pupuk'] ?? null,
|
||||
'jenis_pupuk' => $validatedData['jenis_pupuk'] ?? null,
|
||||
'frekuensi_pemberian_pupuk' => ($validatedData['frekuensi_pemupukan'] ?? null) === 'Lainnya' ? ($validatedData['frekuensi_pemupukan_lainnya'] ?? null) : ($validatedData['frekuensi_pemupukan'] ?? null),
|
||||
'estimasi_dosis_pupuk_organik' => $validatedData['estimasi_dosis_pupuk_organik'] ?? null,
|
||||
'estimasi_dosis_pupuk_anorganik' => $validatedData['estimasi_dosis_pupuk_anorganik'] ?? null,
|
||||
'waktu_pemberian_pupuk' => ($validatedData['waktu_pemberian_pupuk'] ?? null) === 'Lainnya' ? ($validatedData['waktu_pemberian_pupuk_lainnya'] ?? null) : ($validatedData['waktu_pemberian_pupuk'] ?? null),
|
||||
'cara_pemberian_pupuk' => ($validatedData['cara_pemberian_pupuk'] ?? null) === 'Lainnya' ? ($validatedData['cara_pemberian_pupuk_lainnya'] ?? null) : ($validatedData['cara_pemberian_pupuk'] ?? null),
|
||||
'jenis_pupuk' => $pemupukanTidakPernah ? null : ($validatedData['jenis_pupuk'] ?? null),
|
||||
'frekuensi_pemberian_pupuk' => $pemupukanTidakPernah ? null : (($validatedData['frekuensi_pemupukan'] ?? null) === 'Lainnya' ? ($validatedData['frekuensi_pemupukan_lainnya'] ?? null) : ($validatedData['frekuensi_pemupukan'] ?? null)),
|
||||
'estimasi_dosis_pupuk_organik' => $pemupukanTidakPernah ? null : ($validatedData['estimasi_dosis_pupuk_organik'] ?? null),
|
||||
'estimasi_dosis_pupuk_anorganik' => $pemupukanTidakPernah ? null : ($validatedData['estimasi_dosis_pupuk_anorganik'] ?? null),
|
||||
'waktu_pemberian_pupuk' => $pemupukanTidakPernah ? null : (($validatedData['waktu_pemberian_pupuk'] ?? null) === 'Lainnya' ? ($validatedData['waktu_pemberian_pupuk_lainnya'] ?? null) : ($validatedData['waktu_pemberian_pupuk'] ?? null)),
|
||||
'cara_pemberian_pupuk' => $pemupukanTidakPernah ? null : (($validatedData['cara_pemberian_pupuk'] ?? null) === 'Lainnya' ? ($validatedData['cara_pemberian_pupuk_lainnya'] ?? null) : ($validatedData['cara_pemberian_pupuk'] ?? null)),
|
||||
'created_by' => auth()->id(),
|
||||
'updated_by' => auth()->id(),
|
||||
], [
|
||||
@@ -554,6 +560,12 @@ class PraktikBudidayaController extends Controller
|
||||
}
|
||||
}
|
||||
$teknikPemangkasan = array_values($teknik_pemangkasan);
|
||||
|
||||
if ((int) ($validatedData['frekuensi_pemangkasan_komoditas_utama'] ?? 0) === FrekuensiPemangkasanUtama::TIDAK_PERNAH->value) {
|
||||
$teknikPemangkasan = [];
|
||||
}
|
||||
|
||||
$pemupukanTidakPernah = (int) ($validatedData['pemberian_pupuk'] ?? 0) === PemberianPupuk::TIDAK_PERNAH->value;
|
||||
|
||||
$dataPraktikBudidaya = [
|
||||
'tenaga_kerja' => $validatedData['tenaga_kerja'],
|
||||
@@ -566,12 +578,12 @@ class PraktikBudidayaController extends Controller
|
||||
'deskripsi_penyerbukan_manual' => $validatedData['alasan_tidak_penyerbukan'] ?? null,
|
||||
'tingkat_keberhasilan_penyerbukan' => $validatedData['tingkat_keberhasilan_penyerbukan'] ?? null,
|
||||
'pemberian_pupuk' => $validatedData['pemberian_pupuk'] ?? null,
|
||||
'jenis_pupuk' => $validatedData['jenis_pupuk'] ?? null,
|
||||
'frekuensi_pemberian_pupuk' => ($validatedData['frekuensi_pemupukan'] ?? null) === 'Lainnya' ? ($validatedData['frekuensi_pemupukan_lainnya'] ?? null) : ($validatedData['frekuensi_pemupukan'] ?? null),
|
||||
'estimasi_dosis_pupuk_organik' => $validatedData['estimasi_dosis_pupuk_organik'] ?? null,
|
||||
'estimasi_dosis_pupuk_anorganik' => $validatedData['estimasi_dosis_pupuk_anorganik'] ?? null,
|
||||
'waktu_pemberian_pupuk' => ($validatedData['waktu_pemberian_pupuk'] ?? null) === 'Lainnya' ? ($validatedData['waktu_pemberian_pupuk_lainnya'] ?? null) : ($validatedData['waktu_pemberian_pupuk'] ?? null),
|
||||
'cara_pemberian_pupuk' => ($validatedData['cara_pemberian_pupuk'] ?? null) === 'Lainnya' ? ($validatedData['cara_pemberian_pupuk_lainnya'] ?? null) : ($validatedData['cara_pemberian_pupuk'] ?? null),
|
||||
'jenis_pupuk' => $pemupukanTidakPernah ? null : ($validatedData['jenis_pupuk'] ?? null),
|
||||
'frekuensi_pemberian_pupuk' => $pemupukanTidakPernah ? null : (($validatedData['frekuensi_pemupukan'] ?? null) === 'Lainnya' ? ($validatedData['frekuensi_pemupukan_lainnya'] ?? null) : ($validatedData['frekuensi_pemupukan'] ?? null)),
|
||||
'estimasi_dosis_pupuk_organik' => $pemupukanTidakPernah ? null : ($validatedData['estimasi_dosis_pupuk_organik'] ?? null),
|
||||
'estimasi_dosis_pupuk_anorganik' => $pemupukanTidakPernah ? null : ($validatedData['estimasi_dosis_pupuk_anorganik'] ?? null),
|
||||
'waktu_pemberian_pupuk' => $pemupukanTidakPernah ? null : (($validatedData['waktu_pemberian_pupuk'] ?? null) === 'Lainnya' ? ($validatedData['waktu_pemberian_pupuk_lainnya'] ?? null) : ($validatedData['waktu_pemberian_pupuk'] ?? null)),
|
||||
'cara_pemberian_pupuk' => $pemupukanTidakPernah ? null : (($validatedData['cara_pemberian_pupuk'] ?? null) === 'Lainnya' ? ($validatedData['cara_pemberian_pupuk_lainnya'] ?? null) : ($validatedData['cara_pemberian_pupuk'] ?? null)),
|
||||
];
|
||||
}
|
||||
|
||||
@@ -675,6 +687,17 @@ class PraktikBudidayaController extends Controller
|
||||
}
|
||||
}
|
||||
|
||||
return back()->with('success', 'Data berhasil diperbarui.');
|
||||
return $this->redirectBackToFragment($request)->with('success', 'Data berhasil diperbarui.');
|
||||
}
|
||||
|
||||
private function redirectBackToFragment(Request $request)
|
||||
{
|
||||
$fragment = $request->input('redirect_fragment');
|
||||
|
||||
if (!is_string($fragment) || !preg_match('/^[A-Za-z0-9_-]+$/', $fragment)) {
|
||||
return back();
|
||||
}
|
||||
|
||||
return redirect()->to(Str::before(url()->previous(), '#') . '#' . $fragment);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,10 +32,10 @@ class SurveyProduktivitasController extends Controller
|
||||
]);
|
||||
}
|
||||
|
||||
return back()->with('success', 'Data produktivitas berhasil disimpan.');
|
||||
return $this->redirectBackToFragment($request)->with('success', 'Data produktivitas berhasil disimpan.');
|
||||
}
|
||||
|
||||
public function destroy($petaniId, $surveyProduktivitasId)
|
||||
public function destroy($petaniId, $surveyProduktivitasId, Request $request)
|
||||
{
|
||||
$surveyProduktivitas = SurveyProduktivitas::where('petani_id', $petaniId)
|
||||
->where('id', $surveyProduktivitasId)
|
||||
@@ -44,6 +44,17 @@ class SurveyProduktivitasController extends Controller
|
||||
$surveyProduktivitas->save();
|
||||
$surveyProduktivitas->delete();
|
||||
|
||||
return back()->with('success', 'Data produktivitas berhasil dihapus.');
|
||||
return $this->redirectBackToFragment($request)->with('success', 'Data produktivitas berhasil dihapus.');
|
||||
}
|
||||
|
||||
private function redirectBackToFragment(Request $request)
|
||||
{
|
||||
$fragment = $request->input('redirect_fragment');
|
||||
|
||||
if (!is_string($fragment) || !preg_match('/^[A-Za-z0-9_-]+$/', $fragment)) {
|
||||
return back();
|
||||
}
|
||||
|
||||
return redirect()->to(Str::before(url()->previous(), '#') . '#' . $fragment);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user