MIF_E31220412/app/Http/Controllers/PaketBarangController.php

62 lines
1.6 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\PaketBarang;
use Illuminate\Http\Request;
class PaketBarangController extends Controller
{
/**
* Update jumlah barang dalam paket
*/
public function update(Request $request, $id)
{
$request->validate([
'jumlah' => 'required|integer|min:1',
]);
$paketBarang = PaketBarang::findOrFail($id);
// Cek stok barang yang tersedia
$barangData = \App\Http\Controllers\BarangController::getBarangData();
$barangStok = 0;
foreach ($barangData as $barang) {
if ($barang['id'] == $paketBarang->barang_id) {
$barangStok = $barang['stok'];
break;
}
}
// Validasi jumlah tidak melebihi stok
if ($request->jumlah > $barangStok) {
return response()->json([
'success' => false,
'message' => 'Jumlah melebihi stok tersedia'
], 400);
}
$paketBarang->jumlah = $request->jumlah;
$paketBarang->save();
return response()->json([
'success' => true,
'message' => 'Jumlah barang berhasil diperbarui'
]);
}
/**
* Hapus barang dari paket
*/
public function destroy($id)
{
$paketBarang = PaketBarang::findOrFail($id);
$paketBarang->delete();
return response()->json([
'success' => true,
'message' => 'Barang berhasil dihapus dari paket'
]);
}
}