35 lines
1.5 KiB
PHP
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.');
|
|
}
|
|
}
|