test_instalasi_simrs/app/Http/Controllers/MasterAsuransiController.php
2025-04-27 22:36:03 +07:00

98 lines
2.7 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\MsAsuransi;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class MasterAsuransiController extends Controller
{
/**
* Display a listing of the resource.
*/
public function index()
{
//get data 10
$MsAsuransi = MsAsuransi::paginate(10);
return view('admin.master.MsAsuransi.index', compact('MsAsuransi'));
}
/**
* Show the form for creating a new resource.
*/
public function create()
{
return view('admin.master.MsAsuransi.Input-Form');
}
/**
* Store a newly created resource in storage.
*/
public function store(Request $request)
{
$request->validate([
'NamaAsuransi' => 'required|string|max:255',
]);
$MsAsuransi = new MsAsuransi();
$MsAsuransi->NamaAsuransi = $request->NamaAsuransi;
$MsAsuransi->save();
return redirect()->route('master-asuransi.index')->with('success', 'Data asuransi berhasil ditambahkan');
}
/**
* Display the specified resource.
*/
public function show(string $id)
{
$MsAsuransi = MsAsuransi::findOrFail($id);
return view('admin.master.MsAsuransi.show-form', compact('MsAsuransi'));
}
/**
* Show the form for editing the specified resource.
*/
public function edit(string $id)
{
$MsAsuransi = MsAsuransi::findOrFail($id);
return view('admin.master.MsAsuransi.edit-form', compact('MsAsuransi'));
}
/**
* Update the specified resource in storage.
*/
public function update(Request $request, string $id)
{
$request->validate([
'NamaAsuransi' => 'required|string|max:255',
]);
$MsAsuransi = MsAsuransi::findOrFail($id);
$MsAsuransi->NamaAsuransi = $request->NamaAsuransi;
$MsAsuransi->save();
return redirect()->route('master-asuransi.index')->with('success', 'Data asuransi berhasil diperbarui');
}
/**
* Remove the specified resource from storage.
*/
public function destroy(string $id)
{
$MsAsuransi = MsAsuransi::findOrFail($id);
// Check if the Asuransi is used in any Registrasi
$dataExistsAsuransi = DB::table('tr_registrasi')->where('IdAsuransi', $MsAsuransi->IdAsuransi)->exists();
if ($dataExistsAsuransi) {
return redirect()->route('master-asuransi.index')->with('error', 'Asuransi tidak dapat dihapus karena sudah terdaftar dalam registrasi');
}
$MsAsuransi->delete();
return redirect()->route('master-asuransi.index')->with('success', 'Data asuransi berhasil dihapus');
}
}