Files
database-pertani-web/app/Http/Controllers/Web/Bumdes/RantaiNilaiBumdesController.php
T
2026-11-05 19:20:05 +07:00

35 lines
1.5 KiB
PHP

<?php
namespace App\Http\Controllers\Web\Bumdes;
use App\Http\Controllers\Controller;
use App\Http\Requests\Bumdes\BumdesRequest;
use App\Http\Requests\Bumdes\StoreRantaiNilaiBumdesRequest;
use App\Models\Bumdes\PengurusBumdes;
use App\Services\Bumdes\PengurusBumdesService;
use Illuminate\Http\RedirectResponse;
use Illuminate\View\View;
class RantaiNilaiBumdesController extends Controller
{
public function __construct(private readonly PengurusBumdesService $service) {}
public function index(BumdesRequest $request, PengurusBumdes $pengurusBumdes): View
{
return view('bumdes.rantai-nilai.index', $this->service->sectionData($pengurusBumdes));
}
public function store(StoreRantaiNilaiBumdesRequest $request, PengurusBumdes $pengurusBumdes): RedirectResponse
{
$this->service->saveSection($pengurusBumdes, $request->validated(), 'rantai-nilai');
$nextSection = $request->validated('redirect_fragment');
$postharvestSection = in_array($nextSection, ['section-rantai-pengeringan', 'section-rantai-fermentasi', 'section-rantai-premium-harga'], true);
$canContinue = $request->boolean($postharvestSection ? 'melakukan_pengolahan_pascapanen' : 'melakukan_jual_beli');
$nextSection = $canContinue ? $nextSection : null;
return redirect()->to(route('bumdes.rantai-nilai.index', $pengurusBumdes).($nextSection ? '#'.$nextSection : ''))
->with('success', 'Data Rantai Nilai & Akses Pasar berhasil disimpan.');
}
}