86 lines
2.8 KiB
PHP
86 lines
2.8 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Models\Penjualan;
|
|
use Illuminate\Http\Request;
|
|
|
|
class PenjualanController extends Controller
|
|
{
|
|
public function cetak()
|
|
{
|
|
$data['title'] = 'Laporan Data Penjualan';
|
|
$data['rows'] = Penjualan::leftJoin('tb_produk', 'tb_produk.kode_produk', '=', 'tb_penjualan.kode_produk')
|
|
->orderBy('tb_penjualan.kode_produk')
|
|
->orderBy('tanggal', 'DESC')
|
|
->get();
|
|
return view('penjualan.cetak', $data);
|
|
}
|
|
|
|
public function index(Request $request)
|
|
{
|
|
$data['q'] = $request->input('q');
|
|
$data['title'] = 'Data Penjualan';
|
|
$data['limit'] = 25;
|
|
$data['rows'] = Penjualan::where('nama_produk', 'like', '%' . $data['q'] . '%')
|
|
->orWhere('tb_penjualan.kode_produk', 'like', '%' . $data['q'] . '%')
|
|
->leftJoin('tb_produk', 'tb_produk.kode_produk', '=', 'tb_penjualan.kode_produk')
|
|
->orderBy('tanggal', 'DESC')
|
|
->paginate($data['limit'])->withQueryString();
|
|
return view('penjualan.index', $data);
|
|
}
|
|
|
|
public function create()
|
|
{
|
|
$data['title'] = 'Tambah Penjualan';
|
|
return view('penjualan.create', $data);
|
|
}
|
|
|
|
public function store(Request $request)
|
|
{
|
|
$request->validate([
|
|
'tanggal' => 'required',
|
|
'kode_produk' => 'required',
|
|
'jumlah' => 'required',
|
|
], [
|
|
'tanggal.required' => 'Tanggal harus diisi',
|
|
'kode_produk.required' => 'Produk harus diisi',
|
|
'jumlah.required' => 'Jumlah harus diisi',
|
|
]);
|
|
$penjualan = new Penjualan($request->all());
|
|
$penjualan->save();
|
|
return redirect('penjualan')->with('message', 'Data berhasil ditambah!');
|
|
}
|
|
|
|
public function edit(Penjualan $penjualan)
|
|
{
|
|
$data['row'] = $penjualan;
|
|
$data['title'] = 'Ubah Penjualan';
|
|
return view('penjualan.edit', $data);
|
|
}
|
|
|
|
public function update(Request $request, Penjualan $penjualan)
|
|
{
|
|
$request->validate([
|
|
'tanggal' => 'required',
|
|
'kode_produk' => 'required',
|
|
'jumlah' => 'required',
|
|
], [
|
|
'tanggal.required' => 'Tanggal harus diisi',
|
|
'kode_produk.required' => 'Produk harus diisi',
|
|
'jumlah.required' => 'Jumlah harus diisi',
|
|
]);
|
|
$penjualan->tanggal = $request->tanggal;
|
|
$penjualan->kode_produk = $request->kode_produk;
|
|
$penjualan->jumlah = $request->jumlah;
|
|
$penjualan->save();
|
|
return redirect('penjualan')->with('message', 'Data berhasil diubah!');
|
|
}
|
|
|
|
public function destroy(Penjualan $penjualan)
|
|
{
|
|
$penjualan->delete();
|
|
return redirect('penjualan')->with('message', 'Data berhasil dihapus!');
|
|
}
|
|
}
|