TIF_NGANJUK_E41220418/app/Http/Controllers/Admin/HistoriPesananController.php

60 lines
1.9 KiB
PHP

<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use App\Models\BookingFoto;
use App\Models\TransaksiBuket;
use Illuminate\Http\Request;
class HistoriPesananController extends Controller
{
public function index()
{
$riwayatBuket = TransaksiBuket::whereIn('status_transaksi', ['selesai', 'ditolak'])
->latest()->get();
$riwayatFoto = BookingFoto::whereIn('status_booking', ['selesai', 'ditolak'])
->latest()->get();
return view('admin.pesanan.riwayat', compact('riwayatBuket', 'riwayatFoto'));
}
public function updateStatus(Request $request, $id)
{
// Cek Kategori: Apakah ini Buket atau Foto?
$kategori = $request->kategori; // 'buket' atau 'foto'
$transaksi = null;
$noInvoice = "";
// LOGIKA PEMILIHAN TABEL
if ($kategori == 'buket') {
// --- CASE BUKET ---
$transaksi = \App\Models\TransaksiBuket::findOrFail($id);
if ($request->jenis == 'selesai') {
$transaksi->status_transaksi = 'selesai'; // Nama kolom: status_transaksi
$noInvoice = $transaksi->no_invoice;
}
} elseif ($kategori == 'foto') {
// --- CASE FOTO ---
$transaksi = \App\Models\BookingFoto::findOrFail($id);
if ($request->jenis == 'selesai') {
$transaksi->status_booking = 'selesai'; // Nama kolom: status_booking
$noInvoice = $transaksi->no_invoice;
}
}
// SIMPAN PERUBAHAN
if ($transaksi) {
$transaksi->save();
session()->flash('success', "Pesanan {$noInvoice} berhasil diselesaikan!");
return response()->json(['success' => true]);
}
return response()->json(['success' => false, 'message' => 'Data tidak ditemukan'], 404);
}
}