MIF_E31210809/app/Http/Controllers/TransaksiController.php

69 lines
1.8 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Imports\TransaksiImport;
use App\Models\Obat;
use App\Models\Transaksi;
use Illuminate\Http\Request;
use Maatwebsite\Excel\Facades\Excel;
class TransaksiController extends Controller
{
public function index()
{
$transaksi = Transaksi::OrderByDesc('id')->get();
$transaksiCount = Transaksi::count();
return view('layouts.pages.transaksi', compact('transaksi', 'transaksiCount'));
}
public function store(Request $request)
{
$request->validate([
'tanggal' => 'required|date',
'obat' => 'required',
]);
$transaksi = Transaksi::create([
'tanggal' => $request->tanggal,
'obat' => $request->obat,
]);
return redirect()->route('transaksi')->with('message', 'Transaksi berhasil disimpan.');
}
public function update(Request $request, $id)
{
$request->validate([
'tanggal' => 'required|date',
'obat' => 'required',
]);
$transaksi = Transaksi::findOrFail($id);
$transaksi->update([
'tanggal' => $request->tanggal,
'obat' => $request->obat,
]);
return redirect()->route('transaksi')->with('message', 'Transaksi berhasil diperbarui.');
}
public function delete($id)
{
$transaksi = Transaksi::findOrFail($id);
$transaksi->delete();
return redirect()->route('transaksi')->with('message', 'Data berhasil dihapus.');
}
public function import(Request $request)
{
$request->validate([
'file' => 'required|mimes:xls,xlsx'
]);
Excel::import(new TransaksiImport, $request->file('file'));
return redirect()->back()->with('success', 'Data berhasil diimport');
}
}