get(); return response()->json([ 'message' => 'Data asuransi berhasil diambil', 'data' => $data ], 200); } catch (\Exception $e) { return response()->json([ 'message' => 'Terjadi kesalahan saat mengambil data asuransi', 'error' => $e->getMessage() ], 500); } } public function tambahAsuransi(Request $request) { DB::beginTransaction(); try { $validated = $request->validate([ 'NamaAsuransi' => 'required|string|max:100', ]); $asuransi = Ms_Asuransi::create([ 'NamaAsuransi' => $validated['NamaAsuransi'], 'statusenabled' => true, ]); DB::commit(); return response()->json([ 'message' => 'Asuransi berhasil ditambahkan', 'data' => $asuransi ], 201); } catch (\Exception $e) { DB::rollBack(); return response()->json([ 'message' => 'Terjadi kesalahan saat menambahkan asuransi', 'error' => $e->getMessage() ], 500); } } public function updateAsuransi(Request $request, $id) { DB::beginTransaction(); try { $validated = $request->validate([ 'NamaAsuransi' => 'required|string|max:100', ]); $asuransi = Ms_Asuransi::findOrFail($id); $asuransi->update([ 'NamaAsuransi' => $validated['NamaAsuransi'], ]); DB::commit(); return response()->json([ 'message' => 'Asuransi berhasil diperbarui', 'data' => $asuransi ], 200); } catch (\Illuminate\Database\Eloquent\ModelNotFoundException $e) { DB::rollBack(); return response()->json([ 'message' => 'Asuransi tidak ditemukan' ], 404); } catch (\Exception $e) { DB::rollBack(); return response()->json([ 'message' => 'Terjadi kesalahan saat memperbarui asuransi', 'error' => $e->getMessage() ], 500); } } public function hapusAsuransi($id) { DB::beginTransaction(); try { $asuransi = Ms_Asuransi::findOrFail($id); $asuransi->statusenabled = false; $asuransi->save(); DB::commit(); return response()->json([ 'message' => 'Asuransi berhasil dinonaktifkan', 'data' => $asuransi ], 200); } catch (\Exception $e) { DB::rollBack(); return response()->json([ 'message' => 'Terjadi kesalahan saat menghapus asuransi', 'error' => $e->getMessage() ], 500); } } }