sigd/app/Http/Controllers/Emisi/Folu3BController.php

49 lines
1.4 KiB
PHP

<?php
namespace App\Http\Controllers\Emisi;
use App\Http\Controllers\Controller;
use App\Models\SettingForm;
use App\Models\SettingFormDetail;
use App\Services\Emisi\Folu3BService;
use Illuminate\Http\Request;
class Folu3BController extends Controller
{
protected $service;
public function __construct(Folu3BService $service)
{
$this->service = $service;
}
public function data($sector, $code, $inventoryYear)
{
// Fetch the form from the database based on sector and code
$form = SettingForm::rowActive()->where('sector', $sector)->where('code', $code)->first();
if (!$form) {
abort(404, 'Page not found');
}
// Fetch form details
$formDetails = SettingFormDetail::rowActive()->where('form_code', $code)->orderByRowNum()->get();
// Fetch activity form and activity form details using service
$activityForm = $this->service->getActivityForm($sector, $code, $inventoryYear);
$activityFormId = $activityForm->id ?? null;
$activityFormDetails = $this->service->getActivityFormDetails($activityFormId);
return compact('form', 'formDetails', 'activityForm', 'activityFormDetails');
}
public function save(Request $request, $code, $inventoryYear)
{
if ($code) {
$result = $this->service->save($code, $inventoryYear);
return $result;
}
}
}