<?php
namespace App\Http\Controllers;
use App\Models\IndukOpd;
use App\Models\IndikatorOpd;
use Illuminate\Http\Request;
use App\Models\IndikatorPemerintah;
use App\Models\visiRpjmd;
use Illuminate\Support\Facades\Auth;
class CapaianKerjaController extends Controller
{
protected $routeName = 'capaian_kerja';
protected $viewName = 'capaian_kerja';
protected $title = 'Capaian Kerja';
public function index()
{
//
$route = $this->routeName;
$title = $this->title;
$indukOpd = IndukOpd::pluck('nama', 'id');
if(Auth::user()->roles->first()->name !== "Admin"){
$indukOpd = IndukOpd::where('id', Auth::user()->induk_opd_id)->pluck('nama', 'id');
}
$tahun = visiRpjmd::get();
$tahunArray = [];
foreach ($tahun as $item) {
$range = range($item->tahun_awal, $item->tahun_akhir);
$tahunArray = array_merge($tahunArray, $range);
}
// Hilangkan duplikat (karena 2025-2026 muncul dua kali)
$tahunArray = array_unique($tahunArray);
sort($tahunArray); // Urutkan lagi
$induk_opd_arr = $indukOpd;
return view('capaian_kerja.index',compact('route','title', 'induk_opd_arr', 'tahunArray'));
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
if($request->indikator_pemerintah_id){
$indikator = IndikatorPemerintah::where('id', $id)->first();
$indikator->update([
'capaian_satu' => is_numeric($request->capaian_satu) ? $request->capaian_satu : 0,
'capaian_dua' => is_numeric($request->capaian_dua) ? $request->capaian_dua : 0,
'capaian_tiga' => is_numeric($request->capain_tiga) ? $request->capain_tiga : 0,
'capaian_empat' => is_numeric($request->capaian_empat) ? $request->capaian_empat : 0,
]);
} else{
$indikator = IndikatorOpd::where('id', $id)->first();
$indikator->update([
'capaian_satu' => is_numeric($request->capaian_satu) ? $request->capaian_satu : 0,
'capaian_dua' => is_numeric($request->capaian_dua) ? $request->capaian_dua : 0,
'capaian_tiga' => is_numeric($request->capain_tiga) ? $request->capain_tiga : 0,
'capaian_empat' => is_numeric($request->capaian_empat) ? $request->capaian_empat : 0,
]);
}
return redirect(route('capaian_kerja.index'))->with(['success'=>'Berhasil Menambah data Capaian Kerja']);
try {
} catch (\Throwable $th) {
//throw $th;
}
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]